Overview - dsimaging/dsio-filters-api GitHub Wiki

The Dentsply Sirona Intraoral Filters API is a RESTful API that can be used to manage image resources and to apply custom filters.

The API is separated into two functional categories:

  1. Images : includes the methods for managing image resources
  2. Filters: includes the methods for applying filters to image resources.

The API can be used as described in this documentation without the presence of Sidexis software.

Creating Image Resources

To apply a filter, an image resource must be created first with an image that was acquired with the Modality API. There are two different ways to create this resource:

  1. Upload a PNG file and ImageInfo obtained from the Modality API.
  2. Reference an existing image acquired in an active modality session. The modality session must be active (not ended) in order to apply a filter to this image.

In you intend to only apply a filter once at the time of acquisition, then it is easier to use the second option and create the ImageResource using an active modality session.

If you would like to apply a filter at a later time after the acquisition processed is finished, then you must use the first option and upload the image along with the ImageInfo. In order to support the use of the Dentsply Sirona Intraoral Filters API for these images, you must persist the image and the ImageInfo data in your application. The image must be retained in its original format (i.e., 16-bit grayscale PNG).

Use Cases

Each of the filters described in this API (AE, Supreme, and Select) has been optimized for the corresponding sensor type supported by the Modality API. To determine the appropriate filter for a specific image, use the family property of SensorInfo (which is also part of ImageInfo).

The family property will include one of the following:

  • Velocity - in this case use the AE Filter API
  • Supreme - in this case use the Supreme Filter API
  • Select - in this case use the Select Filter API.

Document Structure

Each API call described in the documentation is divided into several sections. Let's look at those more closely.

API calls are described on either the Images or the Filters page of the documentation. If you are looking for methods that retrieve or upload intraoral images from compatible sensors, you will find them on the Images page. For methods that apply the custom filters themselves, these are described on the Filters page.

Methods

In this section you can find a brief introduction of what each API method does and how it can be used. The methods supported by the DS Intraoral Filters can be categorized by the following actions:

  1. GET – Retrieves image resources
  2. POST – Creates an image resource from a Modality session
  3. DELETE – Deletes an image resource.

The verbs GET, POST, and DELETE represent different ways in which an API method can accomplish a specific task. Each request also requires a base URL, which includes the version of the REST API, forming the following as an example:

https://localhost:43809/api/dsio/filters/v1

To refine the request further, choose either the images or the filters path, and any additional routes, described by the API, to complete the request, as in the following example for the Get Image Resource method:

https://localhost:43809/api/dsio/filters/v1/images/{id}

Authorization

This section contains a list of authorization methods that support and validate API requests.

Requests

Many of the methods in the Filters API include a request body, sometimes referred to as a payload, as an object in the form of JSON data. The POST methods described on the Images and Filters pages are examples of this implementation.

Path Parameters

Some methods require path parameters. A common path parameter for images methods is the id, which is part of the endpoint needed for actions such as retrieving an image resource:

(GET /images/{id})

In another example, the id and the filters/unmap parameter are both required to remove mapping and return the image to its original state:

(POST /images/{id}/images/filters/unmap)