DICOM PS3.18 2018a - Web Services

6.10.3 Transactions
Prev | 6.10 RS Non-patient Instance (NPI) Storage | Next

### 6.10.3 Transactions

The NPI Service defines the transactions listed in Table 6.10.3-1

Table 6.10.3-1. NPI Service Transactions

Transaction | Method | Resource | Payload | Description
--- | --- | --- | --- | ---
Request | Response
RetrieveCapabilities | OPTIONS | / | N/A | Capabilities Description | Retrieves a description of the capabilities of the NPI Service, including transactions, resources, query parameters, etc.
Retrieve | GET | /{npi-name}/{uid} | N/A | Instance and/or Status Report | Retrieves an Instance, specified by the target resource in an Acceptable DICOM Media Type.
Store | POST | /{npi-name}{/uid} | Instance(s) | Status Report | Stores one or more DICOM Instances in a DICOM media type, contained in the request payload, in the location referenced by the target resource URL.
Search | GET | /{npi-name} ?{params*} | N/A | Result(s) and/or Status Report | Searches the target resource for Instances that match the search parameters and returns a list of matches in an Acceptable DICOM Media Type.

The npi-name specifies the type of resource(s) contained in the payload.

Table 6.10.3-2 shows the target resources permitted for each transaction.

Table 6.10.3-2. Resources by Transaction

Resource | URI | Retrieve | Store | Search | Capabilities
--- | --- | --- | --- | --- | ---
NPI Service | / |  |  |  | X
All Instances | /{npi-name} |  | X | X |
Instance | /{npi-name}/{uid} | X | X |  |

#### 6.10.3.1 Retrieve Capabilities Transaction

The Retrieve Capabilities transaction retrieves a machine-readable description of the NPI service implemented by an origin server. The response contains a machine-readable Capabilities Description. The Capabilities Description describes the transactions, resources, representations, etc. that are supported by the service(s).

An origin server implementation of an NPI Service shall support the Retrieve Capabilities transaction.

##### 6.10.3.1.1 Request

The Retrieve Capabilities request uses the OPTIONS method and has the following format:

        OPTIONS SP / SP version CRLF
        Accept: 1#media-type CRLF
        *(header-field CRLF)
        CRLF

###### 6.10.3.1.1.1 Resource

The target URL shall reference the Base URI ("/") of the service.

###### 6.10.3.1.1.2 Query Parameters

There are no additional Query Parameters.

###### 6.10.3.1.1.3 Request Header Fields

Table 6.10.3.1.1.3-1 shows the most common Mandatory, Conditional, and Optional header fields for this transaction.

Table 6.10.3.1.1.3-1. Request Header Fields

Header Fields | Value | Usage | Description
--- | --- | --- | ---
Accept | media-range | M | See 6.1.1.7.
Accept-Charset | 1#charset | O | See 6.1.2.3.

###### 6.10.3.1.1.4 Request Payload

The request has no payload.

##### 6.10.3.1.2 Behavior

The origin server shall return a machine-readable description of its capabilities in an Acceptable Media Type.

##### 6.10.3.1.3 Response

The format of the response is as follows:

        version SP status-code SP reason-phrase CRLF
        Content-Type: media-type CRLF
        *(header-field CRLF)
        CRLF
        payload

###### 6.10.3.1.3.1 Status Codes

A success response shall have a status code of 200 (OK) or 204 (No Content).

A failure response shall have a 400 or 500 level status code.

###### 6.10.3.1.3.2 Response Header Fields

Table 6.10.3.1.3.2-1. Response Header Fields

Header Field | Value | Usage | Requirements
--- | --- | --- | ---
Content-Type | media-type | M |
Content-Length | uint | C | Shall be present if no transfer coding has been applied. Shall be absent otherwise.
Transfer-Encoding | encoding | C | Shall be present if a transfer coding has been applied. Shall be absent otherwise.

###### 6.10.3.1.3.3 Response Payload

A success response shall have a payload containing a Capabilities Description in the Selected Media Type.

A failure response shall have a payload describing the error.

Prev | Up | Next
6.10.2.2 Character Set | Home | 6.10.3.2 Retrieve Transaction

DICOM PS3.18 2018a - Web Services