Skip to content

Latest commit

 

History

History
52 lines (29 loc) · 4.5 KB

use-the-medical-imaging-server-apis.md

File metadata and controls

52 lines (29 loc) · 4.5 KB

Use DICOMweb™ Standard APIs with Medical Imaging Server for DICOM

This tutorial gives on overview of how to use the DICOMweb™ Standard APIs with the Medical Imaging Server for DICOM.

The Medical Imaging Server for DICOM supports a subset of the DICOMweb™ Standard. Support includes:

  • Store (STOW-RS)
  • Retrieve (WADO-RS)
  • Search (QIDO-RS)

Additionally, the following non-standard API(s) are supported:

  • Delete
  • Change Feed

You can learn more about our support of the various DICOM Web Standard APIs in our Conformance Statement.

Prerequisites

In order to use the DICOMweb™ Standard APIs, you must have an instance of the Medical Imaging Server for DICOM deployed. If you have not already deployed the Medical Imaging Server, Deploy the Medical Imaging Server to Azure.

Once deployment is complete, you can use the Azure Portal to navigate to the newly created App Service to see the details and the service url. Make sure to specify the version as part of the url when making requests. More information can be found in the Api Versioning Documentation

Overview of various methods to use with Medical Imaging Server for DICOM

Because the Medical Imaging Server for DICOM is exposed as a REST API, you can access it using any modern development language. For language-agnostic information on working with the service, please refer to our Conformance Statement.

To see language-specific examples, please see the examples below. Alternatively, if you open the Postman Collection, you can see examples in several languages including Go, Java, Javascript, C#, PHP, C, NodeJS, Objective-C, OCaml, PowerShell, Python, Ruby, and Swift.

C#

The C# examples use the library included in this repo to simplify access to the API. Refer to the C# examples to learn how to use C# with the Medical Imaging Server for DICOM.

cURL

cURL is a common command line tool for calling web endpoints that is available for nearly any operating system. Download cURL to get started. To use the examples, you'll need to replace the server name with your instance name, and download the example DICOM files in this repo to a known location on your local file system. Refer to the cURL examples to learn how to use cURL with the Medical Imaging Server for DICOM.

Postman

Postman is an excellent tool for designing, building and testing REST APIs. Download Postman to get started. You can learn how to effectively use Postman at the Postman learning site.

One important caveat with Postman and the DICOMweb™ Standard: Postman can only support uploading DICOM files using the single part payload defined in the DICOM standard. This is because Postman cannot support custom separators in a multipart/related POST request. For more information, please see postmanlabs/postman-app-support#576 for more information on this bug. Thus all examples in the Postman collection for uploading DICOM documents using a multipart request are prefixed with [will not work - see description]. The examples for uploading using a single part request are included in the collection and are prefixed with "Store-Single-Instance".

To use the Postman collection, you'll need to download the collection locally and import the collection through Postman, which are available here: Postman Collection Examples. In the collection when you are asked to specify the base url, it is the full url of your service appended with the version (ex. https://<app_service_url>/v<version>/) For more information on versioning visit the Api Versioning Documentation.

Summary

This tutorial provided an overview of the APIs supported by the Medical Imaging Server for DICOM. Get started using these APIs with the following tools: