Skip to content

Latest commit

 

History

History
3917 lines (2780 loc) · 100 KB

File metadata and controls

3917 lines (2780 loc) · 100 KB

API v1 Reference

Aignostics Platform API v1.0.0-ga

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

The Aignostics Platform is a cloud-based service that enables organizations to access advanced computational pathology applications through a secure API. The platform provides standardized access to Aignostics' portfolio of computational pathology solutions, with Atlas H&E-TME serving as an example of the available API endpoints.

To begin using the platform, your organization must first be registered by our business support team. If you don't have an account yet, please contact your account manager or email support@aignostics.com to get started.

More information about our applications can be found on https://platform.aignostics.com.

How to authorize and test API endpoints:

  1. Click the "Authorize" button in the right corner below
  2. Click "Authorize" button in the dialog to log in with your Aignostics Platform credentials
  3. After successful login, you'll be redirected back and can use "Try it out" on any endpoint

Note: You only need to authorize once per session. The lock icons next to endpoints will show green when authorized.

Base URLs:

Authentication

Scope Scope Description

Public

list_applications_v1_applications_get

Code samples

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('/api/v1/applications', headers = headers)

print(r.json())
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/api/v1/applications',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET /v1/applications

List available applications

Returns the list of the applications, available to the caller.

The application is available if any of the versions of the application is assigned to the caller’s organization. The response is paginated and sorted according to the provided parameters.

Parameters

Name In Type Required Description
page query integer false none
page-size query integer false none
sort query any false Sort the results by one or more fields. Use + for ascending and - for descending order.
Detailed descriptions

sort: Sort the results by one or more fields. Use + for ascending and - for descending order.

Available fields:

  • application_id
  • name
  • description
  • regulatory_classes

Examples:

  • ?sort=application_id - Sort by application_id ascending
  • ?sort=-name - Sort by name descending
  • ?sort=+description&sort=name - Sort by description ascending, then name descending

Example responses

200 Response

[
  {
    "application_id": "he-tme",
    "name": "Atlas H&E-TME",
    "regulatory_classes": [
      "RUO"
    ],
    "description": "The Atlas H&E TME is an AI application designed to examine FFPE (formalin-fixed, paraffin-embedded) tissues stained with H&E (hematoxylin and eosin), delivering comprehensive insights into the tumor microenvironment.",
    "latest_version": {
      "number": "1.0.0",
      "released_at": "2025-09-01T19:01:05.401Z"
    }
  },
  {
    "application_id": "test-app",
    "name": "Test Application",
    "regulatory_classes": [
      "RUO"
    ],
    "description": "This is the test application with two algorithms: TissueQc and Tissue Segmentation",
    "latest_version": {
      "number": "2.0.0",
      "released_at": "2025-09-02T19:01:05.401Z"
    }
  }
]

422 Response

{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK A list of applications available to the caller Inline
401 Unauthorized Unauthorized - Invalid or missing authentication None
422 Unprocessable Entity Validation Error HTTPValidationError

Response Schema

Status Code 200

Response List Applications V1 Applications Get

Name Type Required Restrictions Description
Response List Applications V1 Applications Get [ApplicationReadShortResponse] false none [Response schema for List available applications and Read Application by Id endpoints]
» ApplicationReadShortResponse ApplicationReadShortResponse false none Response schema for List available applications and Read Application by Id endpoints
»» application_id string true none Application ID
»» name string true none Application display name
»» regulatory_classes [string] true none Regulatory classes, to which the applications comply with. Possible values include: RUO, IVDR, FDA.
»» description string true none Describing what the application can do
»» latest_version any false none The version with highest version number available to the user

anyOf

Name Type Required Restrictions Description
»»» anonymous ApplicationVersion false none none
»»»» number string true none The number of the latest version
»»»» released_at string(date-time) true none The timestamp for when the application version was made available in the Platform

or

Name Type Required Restrictions Description
»»» anonymous null false none none

To perform this operation, you must be authenticated by means of one of the following methods: OAuth2AuthorizationCodeBearer

read_application_by_id_v1_applications__application_id__get

Code samples

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('/api/v1/applications/{application_id}', headers = headers)

print(r.json())
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/api/v1/applications/{application_id}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET /v1/applications/{application_id}

Read Application By Id

Retrieve details of a specific application by its ID.

Parameters

Name In Type Required Description
application_id path string true none

Example responses

200 Response

{
  "application_id": "he-tme",
  "name": "Atlas H&E-TME",
  "regulatory_classes": [
    "RUO"
  ],
  "description": "The Atlas H&E TME is an AI application designed to examine FFPE (formalin-fixed, paraffin-embedded) tissues stained with H&E (hematoxylin and eosin), delivering comprehensive insights into the tumor microenvironment.",
  "versions": [
    {
      "number": "1.0.0",
      "released_at": "2025-09-15T10:30:45.123Z"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK Successful Response ApplicationReadResponse
403 Forbidden Forbidden - You don't have permission to see this application None
404 Not Found Not Found - Application with the given ID does not exist None
422 Unprocessable Entity Validation Error HTTPValidationError

To perform this operation, you must be authenticated by means of one of the following methods: OAuth2AuthorizationCodeBearer

application_version_details_v1_applications__application_id__versions__version__get

Code samples

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('/api/v1/applications/{application_id}/versions/{version}', headers = headers)

print(r.json())
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/api/v1/applications/{application_id}/versions/{version}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET /v1/applications/{application_id}/versions/{version}

Application Version Details

Get the application version details.

Allows caller to retrieve information about application version based on provided application version ID.

Parameters

Name In Type Required Description
application_id path string true none
version path string true none

Example responses

200 Response

{
  "version_number": "0.4.4",
  "changelog": "New deployment",
  "input_artifacts": [
    {
      "name": "whole_slide_image",
      "mime_type": "image/tiff",
      "metadata_schema": {
        "type": "object",
        "$defs": {
          "LungCancerMetadata": {
            "type": "object",
            "title": "LungCancerMetadata",
            "required": [
              "type",
              "tissue"
            ],
            "properties": {
              "type": {
                "enum": [
                  "lung"
                ],
                "type": "string",
                "const": "lung",
                "title": "Type"
              },
              "tissue": {
                "enum": [
                  "lung",
                  "lymph node",
                  "liver",
                  "adrenal gland",
                  "bone",
                  "brain"
                ],
                "type": "string",
                "title": "Tissue"
              }
            },
            "additionalProperties": false
          }
        },
        "title": "ExternalImageMetadata",
        "$schema": "http://json-schema.org/draft-07/schema#",
        "required": [
          "checksum_crc32c",
          "base_mpp",
          "width",
          "height",
          "cancer"
        ],
        "properties": {
          "stain": {
            "enum": [
              "H&E"
            ],
            "type": "string",
            "const": "H&E",
            "title": "Stain",
            "default": "H&E"
          },
          "width": {
            "type": "integer",
            "title": "Width",
            "maximum": 150000,
            "minimum": 1
          },
          "cancer": {
            "anyOf": [
              false
            ],
            "title": "Cancer"
          },
          "height": {
            "type": "integer",
            "title": "Height",
            "maximum": 150000,
            "minimum": 1
          },
          "base_mpp": {
            "type": "number",
            "title": "Base Mpp",
            "maximum": 0.5,
            "minimum": 0.125
          },
          "mime_type": {
            "enum": [
              "application/dicom",
              "image/tiff"
            ],
            "type": "string",
            "title": "Mime Type",
            "default": "image/tiff"
          },
          "checksum_crc32c": {
            "type": "string",
            "title": "Checksum Crc32C"
          }
        },
        "description": "Metadata corresponding to an external image.",
        "additionalProperties": false
      }
    }
  ],
  "output_artifacts": [
    {
      "name": "tissue_qc:tiff_heatmap",
      "mime_type": "image/tiff",
      "metadata_schema": {
        "type": "object",
        "title": "HeatmapMetadata",
        "$schema": "http://json-schema.org/draft-07/schema#",
        "required": [
          "checksum_crc32c",
          "width",
          "height",
          "class_colors"
        ],
        "properties": {
          "width": {
            "type": "integer",
            "title": "Width"
          },
          "height": {
            "type": "integer",
            "title": "Height"
          },
          "base_mpp": {
            "type": "number",
            "title": "Base Mpp",
            "maximum": 0.5,
            "minimum": 0.125
          },
          "mime_type": {
            "enum": [
              "image/tiff"
            ],
            "type": "string",
            "const": "image/tiff",
            "title": "Mime Type",
            "default": "image/tiff"
          },
          "class_colors": {
            "type": "object",
            "title": "Class Colors",
            "additionalProperties": {
              "type": "array",
              "maxItems": 3,
              "minItems": 3,
              "prefixItems": [
                {
                  "type": "integer",
                  "maximum": 255,
                  "minimum": 0
                },
                {
                  "type": "integer",
                  "maximum": 255,
                  "minimum": 0
                },
                {
                  "type": "integer",
                  "maximum": 255,
                  "minimum": 0
                }
              ]
            }
          },
          "checksum_crc32c": {
            "type": "string",
            "title": "Checksum Crc32C"
          }
        },
        "description": "Metadata corresponding to a segmentation heatmap file.",
        "additionalProperties": false
      },
      "scope": "ITEM",
      "visibility": "EXTERNAL"
    }
  ],
  "released_at": "2025-04-16T08:45:20.655972Z"
}

422 Response

{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK Successful Response VersionReadResponse
403 Forbidden Forbidden - You don't have permission to see this version None
404 Not Found Not Found - Application version with given ID is not available to you or does not exist None
422 Unprocessable Entity Validation Error HTTPValidationError

To perform this operation, you must be authenticated by means of one of the following methods: OAuth2AuthorizationCodeBearer

list_runs_v1_runs_get

Code samples

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('/api/v1/runs', headers = headers)

print(r.json())
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/api/v1/runs',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET /v1/runs

List Runs

List runs with filtering, sorting, and pagination capabilities.

Returns paginated runs that were submitted by the user.

Parameters

Name In Type Required Description
application_id query any false Optional application ID filter
application_version query any false Optional Version Name
external_id query any false Optionally filter runs by items with this external ID
custom_metadata query any false Use PostgreSQL JSONPath expressions to filter runs by their custom_metadata.
page query integer false none
page_size query integer false none
sort query any false Sort the results by one or more fields. Use + for ascending and - for descending order.
Detailed descriptions

custom_metadata: Use PostgreSQL JSONPath expressions to filter runs by their custom_metadata.

URL Encoding Required

Important: JSONPath expressions contain special characters that must be URL-encoded when used in query parameters. Most HTTP clients handle this automatically, but when constructing URLs manually, please ensure proper encoding.

Examples (Clear Format):
  • Field existence: $.study - Runs that have a study field defined
  • Exact value match: $.study ? (@ == "high") - Runs with specific study value
  • Numeric comparison: $.confidence_score ? (@ > 0.75) - Runs with confidence score greater than 0.75
  • Array operations: $.tags[*] ? (@ == "draft") - Runs with tags array containing "draft"
  • Complex conditions: $.resources ? (@.gpu_count > 2 && @.memory_gb >= 16) - Runs with high resource requirements
Examples (URL-Encoded Format):
  • Field existence: %24.study
  • Exact value match: %24.study%20%3F%20(%40%20%3D%3D%20%22high%22)
  • Numeric comparison: %24.confidence_score%20%3F%20(%40%20%3E%200.75)
  • Array operations: %24.tags%5B*%5D%20%3F%20(%40%20%3D%3D%20%22draft%22)
  • Complex conditions: %24.resources%20%3F%20(%40.gpu_count%20%3E%202%20%26%26%20%40.memory_gb%20%3E%3D%2016)
Notes
  • JSONPath expressions are evaluated using PostgreSQL's @? operator
  • The $. prefix is automatically added to root-level field references if missing
  • String values in conditions must be enclosed in double quotes
  • Use && for AND operations and || for OR operations
  • Regular expressions use like_regex with standard regex syntax
  • Please remember to URL-encode the entire JSONPath expression when making HTTP requests

sort: Sort the results by one or more fields. Use + for ascending and - for descending order.

Available fields:

  • run_id
  • application_id
  • version_number
  • custom_metadata
  • statistics
  • submitted_at
  • submitted_by
  • terminated_at
  • termination_reason

Examples:

  • ?sort=submitted_at - Sort by creation time (ascending)
  • ?sort=-submitted_at - Sort by creation time (descending)
  • ?sort=state&sort=-submitted_at - Sort by state, then by time (descending)

Example responses

200 Response

[
  {
    "run_id": "dded282c-8ebd-44cf-8ba5-9a234973d1ec",
    "application_id": "he-tme",
    "version_number": "0.4.4",
    "state": "PENDING",
    "output": "NONE",
    "termination_reason": "ALL_ITEMS_PROCESSED",
    "error_code": "SCHEDULER.ITEMS_WITH_ERROR_THRESHOLD_REACHED",
    "error_message": "Run canceled given errors on more than 10 items.",
    "statistics": {
      "item_count": 0,
      "item_pending_count": 0,
      "item_processing_count": 0,
      "item_user_error_count": 0,
      "item_system_error_count": 0,
      "item_skipped_count": 0,
      "item_succeeded_count": 0
    },
    "custom_metadata": {
      "department": "D1",
      "study": "abc-1"
    },
    "custom_metadata_checksum": "f54fe109",
    "submitted_at": "2019-08-24T14:15:22Z",
    "submitted_by": "auth0|123456",
    "terminated_at": "2024-01-15T10:30:45.123Z",
    "num_preceding_items_org": 0,
    "num_preceding_items_platform": 0
  }
]

Responses

Status Meaning Description Schema
200 OK Successful Response Inline
404 Not Found Run not found None
422 Unprocessable Entity Validation Error HTTPValidationError

Response Schema

Status Code 200

Response List Runs V1 Runs Get

Name Type Required Restrictions Description
Response List Runs V1 Runs Get [RunReadResponse] false none [Response schema for Get run details endpoint]
» RunReadResponse RunReadResponse false none Response schema for Get run details endpoint
»» run_id string(uuid) true none UUID of the application
»» application_id string true none Application id
»» version_number string true none Application version number
»» state RunState true none none
»» output RunOutput true none none
»» termination_reason any true none The termination reason of the run. When the run is not in TERMINATED state, the termination_reason is null. If all items of of the run are processed (successfully or with an error), then termination_reason is set to ALL_ITEMS_PROCESSED. If the run is cancelled by the user, the value is set to CANCELED_BY_USER. If the run reaches the threshold of number of failed items, the Platform cancels the run and sets the termination_reason to CANCELED_BY_SYSTEM.

anyOf

Name Type Required Restrictions Description
»»» anonymous RunTerminationReason false none none

or

Name Type Required Restrictions Description
»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»» error_code any true none When the termination_reason is set to CANCELED_BY_SYSTEM, the error_code is set to define the structured description of the error.

anyOf

Name Type Required Restrictions Description
»»» anonymous string false none none

or

Name Type Required Restrictions Description
»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»» error_message any true none When the termination_reason is set to CANCELED_BY_SYSTEM, the error_message is set to provide more insights to the error cause.

anyOf

Name Type Required Restrictions Description
»»» anonymous string false none none

or

Name Type Required Restrictions Description
»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»» statistics RunItemStatistics true none none
»»» item_count integer true none Total number of the items in the run
»»» item_pending_count integer true none The number of items in PENDING state
»»» item_processing_count integer true none The number of items in PROCESSING state
»»» item_user_error_count integer true none The number of items in TERMINATED state, and the item termination reason is USER_ERROR
»»» item_system_error_count integer true none The number of items in TERMINATED state, and the item termination reason is SYSTEM_ERROR
»»» item_skipped_count integer true none The number of items in TERMINATED state, and the item termination reason is SKIPPED
»»» item_succeeded_count integer true none The number of items in TERMINATED state, and the item termination reason is SUCCEEDED
»» custom_metadata any false none Optional JSON metadata that was stored in alongside the run by the user

anyOf

Name Type Required Restrictions Description
»»» anonymous object false none none

or

Name Type Required Restrictions Description
»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»» custom_metadata_checksum any false none The checksum of the custom_metadata field. Can be used in the PUT /runs/{run-id}/custom_metadatarequest to avoid unwanted override of the values in concurrent requests.

anyOf

Name Type Required Restrictions Description
»»» anonymous string false none none

or

Name Type Required Restrictions Description
»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»» submitted_at string(date-time) true none Timestamp showing when the run was triggered
»» submitted_by string true none Id of the user who triggered the run
»» terminated_at any false none Timestamp showing when the run reached a terminal state.

anyOf

Name Type Required Restrictions Description
»»» anonymous string(date-time) false none none

or

Name Type Required Restrictions Description
»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»» num_preceding_items_org any false none How many Items from other Runs in the same Organization are due to begin processing before this Run's next Item does.

anyOf

Name Type Required Restrictions Description
»»» anonymous integer false none none

or

Name Type Required Restrictions Description
»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»» num_preceding_items_platform any false none How many Items from other Runs are due to begin processing before this Run's next Item does.

anyOf

Name Type Required Restrictions Description
»»» anonymous integer false none none

or

Name Type Required Restrictions Description
»»» anonymous null false none none
Enumerated Values
Property Value
state PENDING
state PROCESSING
state TERMINATED
output NONE
output PARTIAL
output FULL
anonymous ALL_ITEMS_PROCESSED
anonymous CANCELED_BY_SYSTEM
anonymous CANCELED_BY_USER

To perform this operation, you must be authenticated by means of one of the following methods: OAuth2AuthorizationCodeBearer

create_run_v1_runs_post

Code samples

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('/api/v1/runs', headers = headers)

print(r.json())
const inputBody = '{
  "application_id": "he-tme",
  "version_number": "1.0.0-beta1",
  "custom_metadata": {
    "department": "D1",
    "study": "abc-1"
  },
  "items": [
    {
      "external_id": "slide_1",
      "input_artifacts": [
        {
          "download_url": "https://example-bucket.s3.amazonaws.com/slide1.tiff?signature=...",
          "metadata": {
            "checksum_base64_crc32c": "64RKKA==",
            "height_px": 87761,
            "media-type": "image/tiff",
            "resolution_mpp": 0.2628238,
            "specimen": {
              "disease": "LUNG_CANCER",
              "tissue": "LUNG"
            },
            "staining_method": "H&E",
            "width_px": 136223
          },
          "name": "input_slide"
        }
      ]
    }
  ]
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/api/v1/runs',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

POST /v1/runs

Initiate Run

This endpoint initiates a processing run for a selected application and version, and returns a run_id for tracking purposes.

Slide processing occurs asynchronously, allowing you to retrieve results for individual slides as soon as they complete processing. The system typically processes slides in batches. Below is an example of the required payload for initiating an Atlas H&E TME processing run.

Payload

The payload includes application_id, optional version_number, and items base fields.

application_id is the unique identifier for the application. version_number is the semantic version to use. If not provided, the latest available version will be used.

items includes the list of the items to process (slides, in case of HETA application). Every item has a set of standard fields defined by the API, plus the custom_metadata, specific to the chosen application.

Example payload structure with the comments:

{
    application_id: "he-tme",
    version_number: "1.0.0-beta",
    items: [{
        "external_id": "slide_1",
        "custom_metadata": {"project": "sample-study"},
        "input_artifacts": [{
            "name": "user_slide",
            "download_url": "https://...",
            "metadata": {
                "specimen": {
                  "disease": "LUNG_CANCER",
                  "tissue": "LUNG"
                },
                "staining_method": "H&E",
                "width_px": 136223,
                "height_px": 87761,
                "resolution_mpp": 0.2628238,
                "media-type":"image/tiff",
                "checksum_base64_crc32c": "64RKKA=="
            }
        }]
    }]
}
Parameter Description
application_id required Unique ID for the application
version_number optional Semantic version of the application. If not provided, the latest available version will be used
items required List of submitted items i.e. whole slide images (WSIs) with parameters described below.
external_id required Unique WSI name or ID for easy reference to items, provided by the caller. The external_id should be unique across all items of the run.
input_artifacts required List of provided artifacts for a WSI; at the moment Atlas H&E-TME receives only 1 artifact per slide (the slide itself), but for some other applications this can be a slide and a segmentation map
name required Type of artifact; Atlas H&E-TME supports only "input_slide"
download_url required Signed URL to the input file in the S3 or GCS; Should be valid for at least 6 days
specimen: disease required Supported cancer types for Atlas H&E-TME (see full list in Atlas H&E-TME manual)
specimen: tissue required Supported tissue types for Atlas H&E-TME (see full list in Atlas H&E-TME manual)
staining_method required WSI stain bio-marker; Atlas H&E-TME supports only "H&E"
width_px required Integer value. Number of pixels of the WSI in the X dimension.
height_px required Integer value. Number of pixels of the WSI in the Y dimension.
resolution_mpp required Resolution of WSI in micrometers per pixel; check allowed range in Atlas H&E-TME manual
media-type required Supported media formats; available values are: image/tiff (for .tiff or .tif WSI), application/dicom (for DICOM ), application/zip (for zipped DICOM), and application/octet-stream (for .svs WSI)
checksum_base64_crc32c required Base64-encoded big-endian CRC32C checksum of the WSI image

Response

The endpoint returns the run UUID. After that, the job is scheduled for the execution in the background.

To check the status of the run, call GET v1/runs/{run_id} endpoint with the returned run UUID.

Rejection

Apart from the authentication, authorization, and malformed input error, the request can be rejected when specific quota limit is exceeded. More details on quotas is described in the documentation

Body parameter

{
  "application_id": "he-tme",
  "version_number": "1.0.0-beta1",
  "custom_metadata": {
    "department": "D1",
    "study": "abc-1"
  },
  "items": [
    {
      "external_id": "slide_1",
      "input_artifacts": [
        {
          "download_url": "https://example-bucket.s3.amazonaws.com/slide1.tiff?signature=...",
          "metadata": {
            "checksum_base64_crc32c": "64RKKA==",
            "height_px": 87761,
            "media-type": "image/tiff",
            "resolution_mpp": 0.2628238,
            "specimen": {
              "disease": "LUNG_CANCER",
              "tissue": "LUNG"
            },
            "staining_method": "H&E",
            "width_px": 136223
          },
          "name": "input_slide"
        }
      ]
    }
  ]
}

Parameters

Name In Type Required Description
body body RunCreationRequest true none

Example responses

201 Response

{
  "run_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}

Responses

Status Meaning Description Schema
201 Created Successful Response RunCreationResponse
400 Bad Request Bad Request - Input validation failed None
403 Forbidden Forbidden - You don't have permission to create this run None
404 Not Found Application version not found None
422 Unprocessable Entity Validation Error HTTPValidationError

To perform this operation, you must be authenticated by means of one of the following methods: OAuth2AuthorizationCodeBearer

get_run_v1_runs__run_id__get

Code samples

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('/api/v1/runs/{run_id}', headers = headers)

print(r.json())
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/api/v1/runs/{run_id}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET /v1/runs/{run_id}

Get run details

This endpoint allows the caller to retrieve the current status of a run along with other relevant run details. A run becomes available immediately after it is created through the POST /v1/runs/ endpoint.

To download the output results, use GET /v1/runs/{run_id}/ items to get outputs for all slides. Access to a run is restricted to the user who created it.

Parameters

Name In Type Required Description
run_id path string(uuid) true Run id, returned by POST /v1/runs/ endpoint

Example responses

200 Response

{
  "run_id": "dded282c-8ebd-44cf-8ba5-9a234973d1ec",
  "application_id": "he-tme",
  "version_number": "0.4.4",
  "state": "PENDING",
  "output": "NONE",
  "termination_reason": "ALL_ITEMS_PROCESSED",
  "error_code": "SCHEDULER.ITEMS_WITH_ERROR_THRESHOLD_REACHED",
  "error_message": "Run canceled given errors on more than 10 items.",
  "statistics": {
    "item_count": 0,
    "item_pending_count": 0,
    "item_processing_count": 0,
    "item_user_error_count": 0,
    "item_system_error_count": 0,
    "item_skipped_count": 0,
    "item_succeeded_count": 0
  },
  "custom_metadata": {
    "department": "D1",
    "study": "abc-1"
  },
  "custom_metadata_checksum": "f54fe109",
  "submitted_at": "2019-08-24T14:15:22Z",
  "submitted_by": "auth0|123456",
  "terminated_at": "2024-01-15T10:30:45.123Z",
  "num_preceding_items_org": 0,
  "num_preceding_items_platform": 0
}

Responses

Status Meaning Description Schema
200 OK Successful Response RunReadResponse
403 Forbidden Forbidden - You don't have permission to see this run None
404 Not Found Run not found because it was deleted. None
422 Unprocessable Entity Validation Error HTTPValidationError

To perform this operation, you must be authenticated by means of one of the following methods: OAuth2AuthorizationCodeBearer

cancel_run_v1_runs__run_id__cancel_post

Code samples

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('/api/v1/runs/{run_id}/cancel', headers = headers)

print(r.json())
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/api/v1/runs/{run_id}/cancel',
{
  method: 'POST',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

POST /v1/runs/{run_id}/cancel

Cancel Run

The run can be canceled by the user who created the run.

The execution can be canceled any time while the run is not in the terminated state. The pending items of a canceled run will not be processed and will not add to the cost.

When the run is canceled, the already completed items remain available for download.

Parameters

Name In Type Required Description
run_id path string(uuid) true Run id, returned by POST /runs/ endpoint

Example responses

202 Response

null

Responses

Status Meaning Description Schema
202 Accepted Successful Response Inline
403 Forbidden Forbidden - You don't have permission to cancel this run None
404 Not Found Run not found None
409 Conflict Conflict - The Run is already cancelled None
422 Unprocessable Entity Validation Error HTTPValidationError

Response Schema

To perform this operation, you must be authenticated by means of one of the following methods: OAuth2AuthorizationCodeBearer

list_run_items_v1_runs__run_id__items_get

Code samples

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('/api/v1/runs/{run_id}/items', headers = headers)

print(r.json())
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/api/v1/runs/{run_id}/items',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET /v1/runs/{run_id}/items

List Run Items

List items in a run with filtering, sorting, and pagination capabilities.

Returns paginated items within a specific run. Results can be filtered by item_id, external_ids, custom_metadata, terminated_at, and termination_reason using JSONPath expressions.

JSONPath Metadata Filtering

Use PostgreSQL JSONPath expressions to filter items using their custom_metadata.

Examples:

  • Field existence: $.case_id - Results that have a case_id field defined
  • Exact value match: $.priority ? (@ == "high") - Results with high priority
  • Numeric comparison: $.confidence_score ? (@ > 0.95) - Results with high confidence
  • Array operations: $.flags[*] ? (@ == "reviewed") - Results flagged as reviewed
  • Complex conditions: $.metrics ? (@.accuracy > 0.9 && @.recall > 0.8) - Results meeting performance thresholds

Notes

  • JSONPath expressions are evaluated using PostgreSQL's @? operator
  • The $. prefix is automatically added to root-level field references if missing
  • String values in conditions must be enclosed in double quotes
  • Use && for AND operations and || for OR operations

Parameters

Name In Type Required Description
run_id path string(uuid) true Run id, returned by POST /v1/runs/ endpoint
item_id__in query any false Filter for item ids
external_id__in query any false Filter for items by their external_id from the input payload
state query any false Filter items by their state
termination_reason query any false Filter items by their termination reason. Only applies to TERMINATED items.
custom_metadata query any false JSONPath expression to filter items by their custom_metadata
page query integer false none
page_size query integer false none
sort query any false Sort the items by one or more fields. Use + for ascending and - for descending order.
Detailed descriptions

sort: Sort the items by one or more fields. Use + for ascending and - for descending order. Available fields:

  • item_id
  • external_id
  • custom_metadata
  • terminated_at
  • termination_reason

Examples:

  • ?sort=item_id - Sort by id of the item (ascending)
  • ?sort=-external_id - Sort by external ID (descending)
  • ?sort=custom_metadata&sort=-external_id - Sort by metadata, then by external ID (descending)

Example responses

200 Response

[
  {
    "item_id": "4d8cd62e-a579-4dae-af8c-3172f96f8f7c",
    "external_id": "slide_1",
    "custom_metadata": {},
    "custom_metadata_checksum": "f54fe109",
    "queue_position_org": 0,
    "queue_position_platform": 0,
    "state": "PENDING",
    "output": "NONE",
    "termination_reason": "SUCCEEDED",
    "error_message": "This item was not processed because the threshold of 3 items finishing in error state (user or system error) was reached before the item was processed.",
    "terminated_at": "2024-01-15T10:30:45.123Z",
    "output_artifacts": [
      {
        "output_artifact_id": "3f78e99c-5d35-4282-9e82-63c422f3af1b",
        "name": "tissue_qc:tiff_heatmap",
        "metadata": {},
        "state": "PENDING",
        "termination_reason": "SUCCEEDED",
        "output": "NONE",
        "error_message": "string",
        "download_url": "http://example.com",
        "error_code": "string"
      }
    ],
    "error_code": "string"
  }
]

Responses

Status Meaning Description Schema
200 OK Successful Response Inline
404 Not Found Run not found None
422 Unprocessable Entity Validation Error HTTPValidationError

Response Schema

Status Code 200

Response List Run Items V1 Runs Run Id Items Get

Name Type Required Restrictions Description
Response List Run Items V1 Runs Run Id Items Get [ItemResultReadResponse] false none [Response schema for items in List Run Items endpoint]
» ItemResultReadResponse ItemResultReadResponse false none Response schema for items in List Run Items endpoint
»» item_id string(uuid) true none Item UUID generated by the Platform
»» external_id string true none The external_id of the item from the user payload
»» custom_metadata any true none The custom_metadata of the item that has been provided by the user on run creation.

anyOf

Name Type Required Restrictions Description
»»» anonymous object false none none

or

Name Type Required Restrictions Description
»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»» custom_metadata_checksum any false none The checksum of the custom_metadata field.Can be used in the PUT /runs/{run-id}/items/{external_id}/custom_metadatarequest to avoid unwanted override of the values in concurrent requests.

anyOf

Name Type Required Restrictions Description
»»» anonymous string false none none

or

Name Type Required Restrictions Description
»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»» queue_position_org any false none The position of the item in the organization's queue.

anyOf

Name Type Required Restrictions Description
»»» anonymous integer false none none

or

Name Type Required Restrictions Description
»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»» queue_position_platform any false none The position of the item in the platform's queue.

anyOf

Name Type Required Restrictions Description
»»» anonymous integer false none none

or

Name Type Required Restrictions Description
»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»» state ItemState true none none
»» output ItemOutput true none none
»» termination_reason any false none When the state is TERMINATED this will explain whySUCCEEDED -> Successful processing.USER_ERROR -> Failed because the provided input was invalid.SYSTEM_ERROR -> There was an error in the model or platform.SKIPPED -> Was cancelled

anyOf

Name Type Required Restrictions Description
»»» anonymous ItemTerminationReason false none none

or

Name Type Required Restrictions Description
»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»» error_message any false none The error message in case the termination_reason is in USER_ERROR or SYSTEM_ERROR

anyOf

Name Type Required Restrictions Description
»»» anonymous string false none none

or

Name Type Required Restrictions Description
»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»» terminated_at any false none Timestamp showing when the item reached a terminal state.

anyOf

Name Type Required Restrictions Description
»»» anonymous string(date-time) false none none

or

Name Type Required Restrictions Description
»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»» output_artifacts [OutputArtifactResultReadResponse] true none The list of the results generated by the application algorithm. The number of files and theirtypes depend on the particular application version, call /v1/versions/{version_id} to getthe details.
»»» OutputArtifactResultReadResponse OutputArtifactResultReadResponse false none none
»»»» output_artifact_id string(uuid) true none The Id of the artifact. Used internally
»»»» name string true none Name of the output from the output schema from the /v1/versions/{version_id} endpoint.
»»»» metadata any false none The metadata of the output artifact, provided by the application. Can only be None if the artifact itself was deleted.

anyOf

Name Type Required Restrictions Description
»»»»» anonymous object false none none

or

Name Type Required Restrictions Description
»»»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»»»» state ArtifactState true none none
»»»» termination_reason any false none The reason for termination when state is TERMINATED

anyOf

Name Type Required Restrictions Description
»»»»» anonymous ArtifactTerminationReason false none none

or

Name Type Required Restrictions Description
»»»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»»»» output ArtifactOutput true none none
»»»» error_message any false none Error message when artifact is in error state

anyOf

Name Type Required Restrictions Description
»»»»» anonymous string false none none

or

Name Type Required Restrictions Description
»»»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»»»» download_url any true none The download URL to the output file. The URL is valid for 1 hour after the endpoint is called.A new URL is generated every time the endpoint is called.

anyOf

Name Type Required Restrictions Description
»»»»» anonymous string(uri) false none none

or

Name Type Required Restrictions Description
»»»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»»»» error_code any true read-only Error code describing the error that occurred during artifact processing.

anyOf

Name Type Required Restrictions Description
»»»»» anonymous string false none none

or

Name Type Required Restrictions Description
»»»»» anonymous null false none none

continued

Name Type Required Restrictions Description
»» error_code any true read-only Error code describing the error that occurred during item processing.

anyOf

Name Type Required Restrictions Description
»»» anonymous string false none none

or

Name Type Required Restrictions Description
»»» anonymous null false none none
Enumerated Values
Property Value
state PENDING
state PROCESSING
state TERMINATED
output NONE
output FULL
anonymous SUCCEEDED
anonymous USER_ERROR
anonymous SYSTEM_ERROR
anonymous SKIPPED
state PENDING
state PROCESSING
state TERMINATED
anonymous SUCCEEDED
anonymous USER_ERROR
anonymous SYSTEM_ERROR
anonymous SKIPPED
output NONE
output AVAILABLE
output DELETED_BY_USER
output DELETED_BY_SYSTEM

To perform this operation, you must be authenticated by means of one of the following methods: OAuth2AuthorizationCodeBearer

get_item_by_run_v1_runs__run_id__items__external_id__get

Code samples

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('/api/v1/runs/{run_id}/items/{external_id}', headers = headers)

print(r.json())
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/api/v1/runs/{run_id}/items/{external_id}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET /v1/runs/{run_id}/items/{external_id}

Get Item By Run

Retrieve details of a specific item (slide) by its external ID and the run ID.

Parameters

Name In Type Required Description
run_id path string(uuid) true The run id, returned by POST /runs/ endpoint
external_id path string true The external_id that was defined for the item by the customer that triggered the run.

Example responses

200 Response

{
  "item_id": "4d8cd62e-a579-4dae-af8c-3172f96f8f7c",
  "external_id": "slide_1",
  "custom_metadata": {},
  "custom_metadata_checksum": "f54fe109",
  "queue_position_org": 0,
  "queue_position_platform": 0,
  "state": "PENDING",
  "output": "NONE",
  "termination_reason": "SUCCEEDED",
  "error_message": "This item was not processed because the threshold of 3 items finishing in error state (user or system error) was reached before the item was processed.",
  "terminated_at": "2024-01-15T10:30:45.123Z",
  "output_artifacts": [
    {
      "output_artifact_id": "3f78e99c-5d35-4282-9e82-63c422f3af1b",
      "name": "tissue_qc:tiff_heatmap",
      "metadata": {},
      "state": "PENDING",
      "termination_reason": "SUCCEEDED",
      "output": "NONE",
      "error_message": "string",
      "download_url": "http://example.com",
      "error_code": "string"
    }
  ],
  "error_code": "string"
}

Responses

Status Meaning Description Schema
200 OK Successful Response ItemResultReadResponse
403 Forbidden Forbidden - You don't have permission to see this item None
404 Not Found Not Found - Item with given ID does not exist None
422 Unprocessable Entity Validation Error HTTPValidationError

To perform this operation, you must be authenticated by means of one of the following methods: OAuth2AuthorizationCodeBearer

delete_run_items_v1_runs__run_id__artifacts_delete

Code samples

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.delete('/api/v1/runs/{run_id}/artifacts', headers = headers)

print(r.json())
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/api/v1/runs/{run_id}/artifacts',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

DELETE /v1/runs/{run_id}/artifacts

Delete Run Items

This endpoint allows the caller to explicitly delete artifacts generated by a run. It can only be invoked when the run has reached a final state, i.e. PROCESSED, CANCELED_SYSTEM, or CANCELED_USER. Note that by default, all artifacts are automatically deleted 30 days after the run finishes, regardless of whether the caller explicitly requests such deletion.

Parameters

Name In Type Required Description
run_id path string(uuid) true Run id, returned by POST /runs/ endpoint

Example responses

200 Response

null

Responses

Status Meaning Description Schema
200 OK Run artifacts deleted Inline
404 Not Found Run not found None
422 Unprocessable Entity Validation Error HTTPValidationError

Response Schema

To perform this operation, you must be authenticated by means of one of the following methods: OAuth2AuthorizationCodeBearer

put_run_custom_metadata_v1_runs__run_id__custom_metadata_put

Code samples

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('/api/v1/runs/{run_id}/custom-metadata', headers = headers)

print(r.json())
const inputBody = '{
  "custom_metadata": {
    "department": "D1",
    "study": "abc-1"
  },
  "custom_metadata_checksum": "f54fe109"
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/api/v1/runs/{run_id}/custom-metadata',
{
  method: 'PUT',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

PUT /v1/runs/{run_id}/custom-metadata

Put Run Custom Metadata

Update the custom metadata of a run with the specified run_id.

Optionally, a checksum may be provided along the custom metadata JSON. It can be used to verify if the custom metadata was updated since the last time it was accessed. If the checksum is provided, it must match the existing custom metadata in the system, ensuring that the current custom metadata value to be overwritten is acknowledged by the user. If no checksum is provided, submitted metadata directly overwrites the existing metadata, without any checks.

The latest custom metadata and checksum can be retrieved for the run via the GET /v1/runs/{run_id} endpoint.

Note on deadlines: Run deadlines must be set during run creation and cannot be modified afterward. Any deadline changes in custom metadata will be ignored by the system.

Body parameter

{
  "custom_metadata": {
    "department": "D1",
    "study": "abc-1"
  },
  "custom_metadata_checksum": "f54fe109"
}

Parameters

Name In Type Required Description
run_id path string(uuid) true Run id, returned by POST /runs/ endpoint
body body CustomMetadataUpdateRequest true none

Example responses

200 Response

{
  "custom_metadata_checksum": "string"
}

Responses

Status Meaning Description Schema
200 OK Custom metadata successfully updated CustomMetadataUpdateResponse
403 Forbidden Forbidden - You don't have permission to update this run None
404 Not Found Run not found None
412 Precondition Failed Precondition Failed - Checksum mismatch, resource has been modified None
422 Unprocessable Entity Validation Error HTTPValidationError

To perform this operation, you must be authenticated by means of one of the following methods: OAuth2AuthorizationCodeBearer

put_item_custom_metadata_by_run_v1_runs__run_id__items__external_id__custom_metadata_put

Code samples

import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.put('/api/v1/runs/{run_id}/items/{external_id}/custom-metadata', headers = headers)

print(r.json())
const inputBody = '{
  "custom_metadata": {
    "department": "D1",
    "study": "abc-1"
  },
  "custom_metadata_checksum": "f54fe109"
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/api/v1/runs/{run_id}/items/{external_id}/custom-metadata',
{
  method: 'PUT',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

PUT /v1/runs/{run_id}/items/{external_id}/custom-metadata

Put Item Custom Metadata By Run

Update the custom metadata of the item with the specified external_id, belonging to the specified run.

Optionally, a checksum may be provided along the custom metadata JSON. It can be used to verify if the custom metadata was updated since the last time it was accessed. If the checksum is provided, it must match the existing custom metadata in the system, ensuring that the current custom metadata value to be overwritten is acknowledged by the user. If no checksum is provided, submitted metadata directly overwrites the existing metadata, without any checks.

The latest custom metadata and checksum can be retrieved for individual items via GET /v1/runs/{run_id}/items/{external_id}, and for all items of a run via GET /v1/runs/{run_id}/items.

Body parameter

{
  "custom_metadata": {
    "department": "D1",
    "study": "abc-1"
  },
  "custom_metadata_checksum": "f54fe109"
}

Parameters

Name In Type Required Description
run_id path string(uuid) true The run id, returned by POST /runs/ endpoint
external_id path string true The external_id that was defined for the item by the customer that triggered the run.
body body CustomMetadataUpdateRequest true none

Example responses

200 Response

{
  "custom_metadata_checksum": "string"
}

Responses

Status Meaning Description Schema
200 OK Custom metadata successfully updated CustomMetadataUpdateResponse
403 Forbidden Forbidden - You don't have permission to update this item None
404 Not Found Item not found None
412 Precondition Failed Precondition Failed - Checksum mismatch None
422 Unprocessable Entity Validation Error HTTPValidationError

To perform this operation, you must be authenticated by means of one of the following methods: OAuth2AuthorizationCodeBearer

get_me_v1_me_get

Code samples

import requests
headers = {
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.get('/api/v1/me', headers = headers)

print(r.json())
const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/api/v1/me',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET /v1/me

Get current user

Retrieves your identity details, including name, email, and organization. This is useful for verifying that the request is being made under the correct user profile and organization context, as well as confirming that the expected environment variables are correctly set (in case you are using Python SDK)

Example responses

200 Response

{
  "user": {
    "id": "auth0|123456",
    "email": "user@domain.com",
    "email_verified": true,
    "name": "Jane Doe",
    "given_name": "Jane",
    "family_name": "Doe",
    "nickname": "jdoe",
    "picture": "https://example.com/jdoe.jpg",
    "updated_at": "2023-10-05T14:48:00.000Z"
  },
  "organization": {
    "id": "org_123456",
    "name": "aignx",
    "display_name": "Aignostics GmbH",
    "aignostics_bucket_hmac_access_key_id": "YOUR_HMAC_ACCESS_KEY_ID",
    "aignostics_bucket_hmac_secret_access_key": "YOUR/HMAC/SECRET_ACCESS_KEY",
    "aignostics_bucket_name": "aignostics-platform-bucket",
    "aignostics_bucket_protocol": "gs",
    "aignostics_logfire_token": "your-logfire-token",
    "aignostics_sentry_dsn": "https://2354s3#ewsha@o44.ingest.us.sentry.io/34345123432"
  }
}

Responses

Status Meaning Description Schema
200 OK Successful Response MeReadResponse

To perform this operation, you must be authenticated by means of one of the following methods: OAuth2AuthorizationCodeBearer

Schemas

ApplicationReadResponse

{
  "application_id": "he-tme",
  "name": "Atlas H&E-TME",
  "regulatory_classes": [
    "RUO"
  ],
  "description": "The Atlas H&E TME is an AI application designed to examine FFPE (formalin-fixed, paraffin-embedded) tissues stained with H&E (hematoxylin and eosin), delivering comprehensive insights into the tumor microenvironment.",
  "versions": [
    {
      "number": "1.0.0",
      "released_at": "2025-09-15T10:30:45.123Z"
    }
  ]
}

ApplicationReadResponse

Properties

Name Type Required Restrictions Description
application_id string true none Application ID
name string true none Application display name
regulatory_classes [string] true none Regulatory classes, to which the applications comply with. Possible values include: RUO, IVDR, FDA.
description string true none Describing what the application can do
versions [ApplicationVersion] true none All version numbers available to the user

ApplicationReadShortResponse

{
  "application_id": "he-tme",
  "name": "Atlas H&E-TME",
  "regulatory_classes": [
    "RUO"
  ],
  "description": "The Atlas H&E TME is an AI application designed to examine FFPE (formalin-fixed, paraffin-embedded) tissues stained with H&E (hematoxylin and eosin), delivering comprehensive insights into the tumor microenvironment.",
  "latest_version": {
    "number": "1.0.0",
    "released_at": "2025-09-15T10:30:45.123Z"
  }
}

ApplicationReadShortResponse

Properties

Name Type Required Restrictions Description
application_id string true none Application ID
name string true none Application display name
regulatory_classes [string] true none Regulatory classes, to which the applications comply with. Possible values include: RUO, IVDR, FDA.
description string true none Describing what the application can do
latest_version any false none The version with highest version number available to the user

anyOf

Name Type Required Restrictions Description
» anonymous ApplicationVersion false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

ApplicationVersion

{
  "number": "1.0.0",
  "released_at": "2025-09-15T10:30:45.123Z"
}

ApplicationVersion

Properties

Name Type Required Restrictions Description
number string true none The number of the latest version
released_at string(date-time) true none The timestamp for when the application version was made available in the Platform

ArtifactOutput

"NONE"

ArtifactOutput

Properties

Name Type Required Restrictions Description
ArtifactOutput string false none none
Enumerated Values
Property Value
ArtifactOutput NONE
ArtifactOutput AVAILABLE
ArtifactOutput DELETED_BY_USER
ArtifactOutput DELETED_BY_SYSTEM

ArtifactState

"PENDING"

ArtifactState

Properties

Name Type Required Restrictions Description
ArtifactState string false none none
Enumerated Values
Property Value
ArtifactState PENDING
ArtifactState PROCESSING
ArtifactState TERMINATED

ArtifactTerminationReason

"SUCCEEDED"

ArtifactTerminationReason

Properties

Name Type Required Restrictions Description
ArtifactTerminationReason string false none none
Enumerated Values
Property Value
ArtifactTerminationReason SUCCEEDED
ArtifactTerminationReason USER_ERROR
ArtifactTerminationReason SYSTEM_ERROR
ArtifactTerminationReason SKIPPED

CustomMetadataUpdateRequest

{
  "custom_metadata": {
    "department": "D1",
    "study": "abc-1"
  },
  "custom_metadata_checksum": "f54fe109"
}

CustomMetadataUpdateRequest

Properties

Name Type Required Restrictions Description
custom_metadata any false none JSON metadata that should be set for the run

anyOf

Name Type Required Restrictions Description
» anonymous object false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
custom_metadata_checksum any false none Optional field to verify that the latest custom metadata was known. If set to the checksum retrieved via the /runs endpoint, it must match the checksum of the current value in the database.

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

CustomMetadataUpdateResponse

{
  "custom_metadata_checksum": "string"
}

CustomMetadataUpdateResponse

Properties

Name Type Required Restrictions Description
custom_metadata_checksum any true read-only The checksum of the updated custom metadata. If the custom_metadata is None,the checksum also None.

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

HTTPValidationError

{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}

HTTPValidationError

Properties

Name Type Required Restrictions Description
detail [ValidationError] false none none

InputArtifact

{
  "name": "string",
  "mime_type": "image/tiff",
  "metadata_schema": {}
}

InputArtifact

Properties

Name Type Required Restrictions Description
name string true none none
mime_type string true none none
metadata_schema object true none none

InputArtifactCreationRequest

{
  "name": "input_slide",
  "download_url": "https://example.com/case-no-1-slide.tiff",
  "metadata": {
    "checksum_base64_crc32c": "752f9554",
    "height": 2000,
    "height_mpp": 0.5,
    "width": 10000,
    "width_mpp": 0.5
  }
}

InputArtifactCreationRequest

Properties

Name Type Required Restrictions Description
name string true none Type of artifact. For Atlas H&E-TME, use "input_slide"
download_url string(uri) true none Signed URL to the input artifact file. The URL should be valid for at least 6 days from the payload submission time.
metadata object true none The metadata of the artifact, required by the application version. The JSON schema of the metadata can be requested by /v1/versions/{application_version_id}. The schema is located in input_artifacts.[].metadata_schema

ItemCreationRequest

{
  "external_id": "slide_1",
  "custom_metadata": {
    "case": "abc"
  },
  "input_artifacts": [
    {
      "download_url": "https://example-bucket.s3.amazonaws.com/slide1.tiff",
      "metadata": {
        "checksum_base64_crc32c": "64RKKA==",
        "height_px": 87761,
        "media-type": "image/tiff",
        "resolution_mpp": 0.2628238,
        "specimen": {
          "disease": "LUNG_CANCER",
          "tissue": "LUNG"
        },
        "staining_method": "H&E",
        "width_px": 136223
      },
      "name": "input_slide"
    }
  ]
}

ItemCreationRequest

Properties

Name Type Required Restrictions Description
external_id string true none Unique identifier for this item within the run. Used for referencing items. Must be unique across all items in the same run
custom_metadata any false none Optional JSON custom_metadata to store additional information alongside an item.

anyOf

Name Type Required Restrictions Description
» anonymous object false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
input_artifacts [InputArtifactCreationRequest] true none List of input artifacts for this item. For Atlas H&E-TME, typically contains one artifact (the slide image)

ItemOutput

"NONE"

ItemOutput

Properties

Name Type Required Restrictions Description
ItemOutput string false none none
Enumerated Values
Property Value
ItemOutput NONE
ItemOutput FULL

ItemResultReadResponse

{
  "item_id": "4d8cd62e-a579-4dae-af8c-3172f96f8f7c",
  "external_id": "slide_1",
  "custom_metadata": {},
  "custom_metadata_checksum": "f54fe109",
  "queue_position_org": 0,
  "queue_position_platform": 0,
  "state": "PENDING",
  "output": "NONE",
  "termination_reason": "SUCCEEDED",
  "error_message": "This item was not processed because the threshold of 3 items finishing in error state (user or system error) was reached before the item was processed.",
  "terminated_at": "2024-01-15T10:30:45.123Z",
  "output_artifacts": [
    {
      "output_artifact_id": "3f78e99c-5d35-4282-9e82-63c422f3af1b",
      "name": "tissue_qc:tiff_heatmap",
      "metadata": {},
      "state": "PENDING",
      "termination_reason": "SUCCEEDED",
      "output": "NONE",
      "error_message": "string",
      "download_url": "http://example.com",
      "error_code": "string"
    }
  ],
  "error_code": "string"
}

ItemResultReadResponse

Properties

Name Type Required Restrictions Description
item_id string(uuid) true none Item UUID generated by the Platform
external_id string true none The external_id of the item from the user payload
custom_metadata any true none The custom_metadata of the item that has been provided by the user on run creation.

anyOf

Name Type Required Restrictions Description
» anonymous object false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
custom_metadata_checksum any false none The checksum of the custom_metadata field.Can be used in the PUT /runs/{run-id}/items/{external_id}/custom_metadatarequest to avoid unwanted override of the values in concurrent requests.

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
queue_position_org any false none The position of the item in the organization's queue.

anyOf

Name Type Required Restrictions Description
» anonymous integer false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
queue_position_platform any false none The position of the item in the platform's queue.

anyOf

Name Type Required Restrictions Description
» anonymous integer false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
state ItemState true none The item moves from PENDING to PROCESSING to TERMINATED state.When terminated, consult the termination_reason property to see whether it was successful.
output ItemOutput true none The output status of the item (NONE, FULL)
termination_reason any false none When the state is TERMINATED this will explain whySUCCEEDED -> Successful processing.USER_ERROR -> Failed because the provided input was invalid.SYSTEM_ERROR -> There was an error in the model or platform.SKIPPED -> Was cancelled

anyOf

Name Type Required Restrictions Description
» anonymous ItemTerminationReason false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
error_message any false none The error message in case the termination_reason is in USER_ERROR or SYSTEM_ERROR

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
terminated_at any false none Timestamp showing when the item reached a terminal state.

anyOf

Name Type Required Restrictions Description
» anonymous string(date-time) false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
output_artifacts [OutputArtifactResultReadResponse] true none The list of the results generated by the application algorithm. The number of files and theirtypes depend on the particular application version, call /v1/versions/{version_id} to getthe details.
error_code any true read-only Error code describing the error that occurred during item processing.

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

ItemState

"PENDING"

ItemState

Properties

Name Type Required Restrictions Description
ItemState string false none none
Enumerated Values
Property Value
ItemState PENDING
ItemState PROCESSING
ItemState TERMINATED

ItemTerminationReason

"SUCCEEDED"

ItemTerminationReason

Properties

Name Type Required Restrictions Description
ItemTerminationReason string false none none
Enumerated Values
Property Value
ItemTerminationReason SUCCEEDED
ItemTerminationReason USER_ERROR
ItemTerminationReason SYSTEM_ERROR
ItemTerminationReason SKIPPED

MeReadResponse

{
  "user": {
    "id": "auth0|123456",
    "email": "user@domain.com",
    "email_verified": true,
    "name": "Jane Doe",
    "given_name": "Jane",
    "family_name": "Doe",
    "nickname": "jdoe",
    "picture": "https://example.com/jdoe.jpg",
    "updated_at": "2023-10-05T14:48:00.000Z"
  },
  "organization": {
    "id": "org_123456",
    "name": "aignx",
    "display_name": "Aignostics GmbH",
    "aignostics_bucket_hmac_access_key_id": "YOUR_HMAC_ACCESS_KEY_ID",
    "aignostics_bucket_hmac_secret_access_key": "YOUR/HMAC/SECRET_ACCESS_KEY",
    "aignostics_bucket_name": "aignostics-platform-bucket",
    "aignostics_bucket_protocol": "gs",
    "aignostics_logfire_token": "your-logfire-token",
    "aignostics_sentry_dsn": "https://2354s3#ewsha@o44.ingest.us.sentry.io/34345123432"
  }
}

MeReadResponse

Properties

Name Type Required Restrictions Description
user UserReadResponse true none Part of response schema for User object in Get current user endpoint.This model corresponds to the response schema returned fromAuth0 GET /v2/users/{id} endpoint.For details, see:https://auth0.com/docs/api/management/v2/users/get-users-by-id
organization OrganizationReadResponse true none Part of response schema for Organization object in Get current user endpoint.This model corresponds to the response schema returned fromAuth0 GET /v2/organizations/{id} endpoint, flattens out the metadata outand doesn't return branding or token_quota objects.For details, see:https://auth0.com/docs/api/management/v2/organizations/get-organizations-by-id#### Configuration for integrating with Aignostics Platform services.The Aignostics Platform API requires signed URLs for input artifacts (slide images). To simplify this process,Aignostics provides a dedicated storage bucket. The HMAC credentials below grant read and writeaccess to this bucket, allowing you to upload files and generate the signed URLs needed for API calls.Additionally, logging and error reporting tokens enable Aignostics to provide better support and monitorsystem performance for your integration.

OrganizationReadResponse

{
  "id": "org_123456",
  "name": "aignx",
  "display_name": "Aignostics GmbH",
  "aignostics_bucket_hmac_access_key_id": "YOUR_HMAC_ACCESS_KEY_ID",
  "aignostics_bucket_hmac_secret_access_key": "YOUR/HMAC/SECRET_ACCESS_KEY",
  "aignostics_bucket_name": "aignostics-platform-bucket",
  "aignostics_bucket_protocol": "gs",
  "aignostics_logfire_token": "your-logfire-token",
  "aignostics_sentry_dsn": "https://2354s3#ewsha@o44.ingest.us.sentry.io/34345123432"
}

OrganizationReadResponse

Properties

Name Type Required Restrictions Description
id string true none Unique organization identifier
name any false none Organization name (E.g. “aignx”)

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
display_name any false none Public organization name (E.g. “Aignostics GmbH”)

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
aignostics_bucket_hmac_access_key_id string true none HMAC access key ID for the Aignostics-provided storage bucket. Used to authenticate requests for uploading files and generating signed URLs
aignostics_bucket_hmac_secret_access_key string true none HMAC secret access key paired with the access key ID. Keep this credential secure.
aignostics_bucket_name string true none Name of the bucket provided by Aignostics for storing input artifacts (slide images)
aignostics_bucket_protocol string true none Protocol to use for bucket access. Defines the URL scheme for connecting to the storage service
aignostics_logfire_token string true none Authentication token for Logfire observability service. Enables sending application logs and performance metrics to Aignostics for monitoring and support
aignostics_sentry_dsn string true none Data Source Name (DSN) for Sentry error tracking service. Allows automatic reporting of errors and exceptions to Aignostics support team

OutputArtifact

{
  "name": "string",
  "mime_type": "application/vnd.apache.parquet",
  "metadata_schema": {},
  "scope": "ITEM",
  "visibility": "INTERNAL"
}

OutputArtifact

Properties

Name Type Required Restrictions Description
name string true none none
mime_type string true none none
metadata_schema object true none none
scope OutputArtifactScope true none none
visibility OutputArtifactVisibility true none none

OutputArtifactResultReadResponse

{
  "output_artifact_id": "3f78e99c-5d35-4282-9e82-63c422f3af1b",
  "name": "tissue_qc:tiff_heatmap",
  "metadata": {},
  "state": "PENDING",
  "termination_reason": "SUCCEEDED",
  "output": "NONE",
  "error_message": "string",
  "download_url": "http://example.com",
  "error_code": "string"
}

OutputArtifactResultReadResponse

Properties

Name Type Required Restrictions Description
output_artifact_id string(uuid) true none The Id of the artifact. Used internally
name string true none Name of the output from the output schema from the /v1/versions/{version_id} endpoint.
metadata any false none The metadata of the output artifact, provided by the application. Can only be None if the artifact itself was deleted.

anyOf

Name Type Required Restrictions Description
» anonymous object false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
state ArtifactState true none The current state of the artifact (PENDING, PROCESSING, TERMINATED)
termination_reason any false none The reason for termination when state is TERMINATED

anyOf

Name Type Required Restrictions Description
» anonymous ArtifactTerminationReason false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
output ArtifactOutput true none The output status of the artifact (NONE, FULL)
error_message any false none Error message when artifact is in error state

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
download_url any true none The download URL to the output file. The URL is valid for 1 hour after the endpoint is called.A new URL is generated every time the endpoint is called.

anyOf

Name Type Required Restrictions Description
» anonymous string(uri) false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
error_code any true read-only Error code describing the error that occurred during artifact processing.

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

OutputArtifactScope

"ITEM"

OutputArtifactScope

Properties

Name Type Required Restrictions Description
OutputArtifactScope string false none none
Enumerated Values
Property Value
OutputArtifactScope ITEM
OutputArtifactScope GLOBAL

OutputArtifactVisibility

"INTERNAL"

OutputArtifactVisibility

Properties

Name Type Required Restrictions Description
OutputArtifactVisibility string false none none
Enumerated Values
Property Value
OutputArtifactVisibility INTERNAL
OutputArtifactVisibility EXTERNAL

RunCreationRequest

{
  "application_id": "he-tme",
  "version_number": "1.0.0-beta1",
  "custom_metadata": {
    "department": "D1",
    "study": "abc-1"
  },
  "items": [
    {
      "external_id": "slide_1",
      "input_artifacts": [
        {
          "download_url": "https://example-bucket.s3.amazonaws.com/slide1.tiff?signature=...",
          "metadata": {
            "checksum_base64_crc32c": "64RKKA==",
            "height_px": 87761,
            "media-type": "image/tiff",
            "resolution_mpp": 0.2628238,
            "specimen": {
              "disease": "LUNG_CANCER",
              "tissue": "LUNG"
            },
            "staining_method": "H&E",
            "width_px": 136223
          },
          "name": "input_slide"
        }
      ]
    }
  ]
}

RunCreationRequest

Properties

Name Type Required Restrictions Description
application_id string true none Unique ID for the application to use for processing
version_number any false none Semantic version of the application to use for processing. If not provided, the latest available version will be used

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
custom_metadata any false none Optional JSON metadata to store additional information alongside the run

anyOf

Name Type Required Restrictions Description
» anonymous object false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
items [ItemCreationRequest] true none List of items (slides) to process. Each item represents a whole slide image (WSI) with its associated metadata and artifacts

RunCreationResponse

{
  "run_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}

RunCreationResponse

Properties

Name Type Required Restrictions Description
run_id string(uuid) false none none

RunItemStatistics

{
  "item_count": 0,
  "item_pending_count": 0,
  "item_processing_count": 0,
  "item_user_error_count": 0,
  "item_system_error_count": 0,
  "item_skipped_count": 0,
  "item_succeeded_count": 0
}

RunItemStatistics

Properties

Name Type Required Restrictions Description
item_count integer true none Total number of the items in the run
item_pending_count integer true none The number of items in PENDING state
item_processing_count integer true none The number of items in PROCESSING state
item_user_error_count integer true none The number of items in TERMINATED state, and the item termination reason is USER_ERROR
item_system_error_count integer true none The number of items in TERMINATED state, and the item termination reason is SYSTEM_ERROR
item_skipped_count integer true none The number of items in TERMINATED state, and the item termination reason is SKIPPED
item_succeeded_count integer true none The number of items in TERMINATED state, and the item termination reason is SUCCEEDED

RunOutput

"NONE"

RunOutput

Properties

Name Type Required Restrictions Description
RunOutput string false none none
Enumerated Values
Property Value
RunOutput NONE
RunOutput PARTIAL
RunOutput FULL

RunReadResponse

{
  "run_id": "dded282c-8ebd-44cf-8ba5-9a234973d1ec",
  "application_id": "he-tme",
  "version_number": "0.4.4",
  "state": "PENDING",
  "output": "NONE",
  "termination_reason": "ALL_ITEMS_PROCESSED",
  "error_code": "SCHEDULER.ITEMS_WITH_ERROR_THRESHOLD_REACHED",
  "error_message": "Run canceled given errors on more than 10 items.",
  "statistics": {
    "item_count": 0,
    "item_pending_count": 0,
    "item_processing_count": 0,
    "item_user_error_count": 0,
    "item_system_error_count": 0,
    "item_skipped_count": 0,
    "item_succeeded_count": 0
  },
  "custom_metadata": {
    "department": "D1",
    "study": "abc-1"
  },
  "custom_metadata_checksum": "f54fe109",
  "submitted_at": "2019-08-24T14:15:22Z",
  "submitted_by": "auth0|123456",
  "terminated_at": "2024-01-15T10:30:45.123Z",
  "num_preceding_items_org": 0,
  "num_preceding_items_platform": 0
}

RunReadResponse

Properties

Name Type Required Restrictions Description
run_id string(uuid) true none UUID of the application
application_id string true none Application id
version_number string true none Application version number
state RunState true none When the run request is received by the Platform, the state of it is set toPENDING. The state changes to PROCESSING when at least one item is being processed. After PROCESSING, thestate of the run can switch back to PENDING if there are no processing items, or to TERMINATED when the runfinished processing.
output RunOutput true none The status of the output of the run. When 0 items are successfully processed the output isNONE, after one item is successfully processed, the value is set to PARTIAL. When all items of the run aresuccessfully processed, the output is set to FULL.
termination_reason any true none The termination reason of the run. When the run is not in TERMINATED state, the termination_reason is null. If all items of of the run are processed (successfully or with an error), then termination_reason is set to ALL_ITEMS_PROCESSED. If the run is cancelled by the user, the value is set to CANCELED_BY_USER. If the run reaches the threshold of number of failed items, the Platform cancels the run and sets the termination_reason to CANCELED_BY_SYSTEM.

anyOf

Name Type Required Restrictions Description
» anonymous RunTerminationReason false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
error_code any true none When the termination_reason is set to CANCELED_BY_SYSTEM, the error_code is set to define the structured description of the error.

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
error_message any true none When the termination_reason is set to CANCELED_BY_SYSTEM, the error_message is set to provide more insights to the error cause.

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
statistics RunItemStatistics true none Aggregated statistics of the run execution
custom_metadata any false none Optional JSON metadata that was stored in alongside the run by the user

anyOf

Name Type Required Restrictions Description
» anonymous object false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
custom_metadata_checksum any false none The checksum of the custom_metadata field. Can be used in the PUT /runs/{run-id}/custom_metadatarequest to avoid unwanted override of the values in concurrent requests.

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
submitted_at string(date-time) true none Timestamp showing when the run was triggered
submitted_by string true none Id of the user who triggered the run
terminated_at any false none Timestamp showing when the run reached a terminal state.

anyOf

Name Type Required Restrictions Description
» anonymous string(date-time) false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
num_preceding_items_org any false none How many Items from other Runs in the same Organization are due to begin processing before this Run's next Item does.

anyOf

Name Type Required Restrictions Description
» anonymous integer false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
num_preceding_items_platform any false none How many Items from other Runs are due to begin processing before this Run's next Item does.

anyOf

Name Type Required Restrictions Description
» anonymous integer false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

RunState

"PENDING"

RunState

Properties

Name Type Required Restrictions Description
RunState string false none none
Enumerated Values
Property Value
RunState PENDING
RunState PROCESSING
RunState TERMINATED

RunTerminationReason

"ALL_ITEMS_PROCESSED"

RunTerminationReason

Properties

Name Type Required Restrictions Description
RunTerminationReason string false none none
Enumerated Values
Property Value
RunTerminationReason ALL_ITEMS_PROCESSED
RunTerminationReason CANCELED_BY_SYSTEM
RunTerminationReason CANCELED_BY_USER

UserReadResponse

{
  "id": "auth0|123456",
  "email": "user@domain.com",
  "email_verified": true,
  "name": "Jane Doe",
  "given_name": "Jane",
  "family_name": "Doe",
  "nickname": "jdoe",
  "picture": "https://example.com/jdoe.jpg",
  "updated_at": "2023-10-05T14:48:00.000Z"
}

UserReadResponse

Properties

Name Type Required Restrictions Description
id string true none Unique user identifier
email any false none User email

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
email_verified any false none none

anyOf

Name Type Required Restrictions Description
» anonymous boolean false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
name any false none First and last name of the user

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
given_name any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
family_name any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
nickname any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
picture any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

continued

Name Type Required Restrictions Description
updated_at any false none none

anyOf

Name Type Required Restrictions Description
» anonymous string(date-time) false none none

or

Name Type Required Restrictions Description
» anonymous null false none none

ValidationError

{
  "loc": [
    "string"
  ],
  "msg": "string",
  "type": "string"
}

ValidationError

Properties

Name Type Required Restrictions Description
loc [anyOf] true none none

anyOf

Name Type Required Restrictions Description
» anonymous string false none none

or

Name Type Required Restrictions Description
» anonymous integer false none none

continued

Name Type Required Restrictions Description
msg string true none none
type string true none none

VersionReadResponse

{
  "version_number": "string",
  "changelog": "string",
  "input_artifacts": [
    {
      "name": "string",
      "mime_type": "image/tiff",
      "metadata_schema": {}
    }
  ],
  "output_artifacts": [
    {
      "name": "string",
      "mime_type": "application/vnd.apache.parquet",
      "metadata_schema": {},
      "scope": "ITEM",
      "visibility": "INTERNAL"
    }
  ],
  "released_at": "2019-08-24T14:15:22Z"
}

VersionReadResponse

Properties

Name Type Required Restrictions Description
version_number string true none Semantic version of the application
changelog string true none Description of the changes relative to the previous version
input_artifacts [InputArtifact] true none List of the input fields, provided by the User
output_artifacts [OutputArtifact] true none List of the output fields, generated by the application
released_at string(date-time) true none The timestamp when the application version was registered