Aignostics · OpenAPI Overlay 1.0.0
API Evangelist enhancements for the Aignostics Platform API
9 actions
9 updates
servers
Generated by API Evangelist
Written by API Evangelist tooling for Aignostics's API. It is a proposal applied on top of the contract, not a document Aignostics publishes.
What the actions change
serverscontactx-providerx-status-pagex-documentationx-additional-flowsx-billablex-idempotent
Targets 7
$
$.info
$.components.securitySchemes.OAuth2AuthorizationCodeBearer
$.paths['/v1/runs'].post
$.paths['/v1/runs/{run_id}/artifacts'].delete
$.paths['/v1/applications'].get
$.paths['/v1/me'].get
OpenAPI Overlay
overlay: 1.0.0
info:
title: API Evangelist enhancements for the Aignostics Platform API
version: 1.0.0
x-generated: '2026-09-14'
x-method: generated
x-source: openapi/aignostics-platform-api-openapi.json
x-extends: openapi/aignostics-platform-api-openapi.json
x-note: >-
Enhancements only. The original document is stored verbatim and is never mutated. The largest
correction here is servers[] - the published contract declares a single relative server, "/api",
which is correct inside the Console that renders it but leaves any standalone generated client
with no host at all.
actions:
- target: $
description: Replace the relative server with the absolute production base the documentation names.
update:
servers:
- url: https://platform.aignostics.com/api
description: >-
Aignostics Platform production. The documented API base is
https://platform.aignostics.com/api/v1; the v1 segment is carried in every path in this
document.
- target: $.info
description: Add contact, licence and terms metadata the published document omits.
update:
contact:
name: Aignostics Support
email: support@aignostics.com
url: https://www.aignostics.com/contact
x-provider:
legal_name: Aignostics GmbH
address: Alt-Moabit 73/73A, 10555 Berlin, Germany
register: Amtsgericht Charlottenburg HRB 215748 B
vat_id: DE329308485
source: https://www.aignostics.com/impressum
x-status-page: https://status.aignostics.com/
x-documentation: https://aignostics.readthedocs.io/en/latest/get_started_api.html
- target: $.components.securitySchemes.OAuth2AuthorizationCodeBearer
description: >-
Record the device-authorization flow the documentation teaches and the SDK uses, which the
published securityScheme omits.
update:
x-additional-flows:
deviceCode:
standard: RFC 8628
deviceAuthorizationUrl: https://aignostics-platform.eu.auth0.com/oauth/device/code
tokenUrl: https://aignostics-platform.eu.auth0.com/oauth/token
grantType: urn:ietf:params:oauth:grant-type:device_code
audience: https://aignostics-platform-samia
scope: offline_access
source: https://aignostics.readthedocs.io/en/latest/get_started_api.html
- target: $.paths['/v1/runs'].post
description: >-
Mark the cost, idempotency and reversal characteristics of the one operation that spends money.
update:
x-billable: true
x-idempotent: false
x-idempotency-note: >-
No idempotency key is accepted. The documentation states "POST /v1/runs is not idempotent -
calling it twice analyzes your slides twice." Record the returned run_id before any retry.
x-reversal:
operation: cancel_run_v1_runs__run_id__cancel_post
window: any time while the run is not in the TERMINATED state
cost_effect: pending items are not processed and do not add to the cost
x-quota:
dimensions: [slides per run, monthly slides]
exhaustion_status: 402
values_published: false
- target: $.paths['/v1/runs/{run_id}/artifacts'].delete
description: Mark the irreversible operation and the retention window that applies regardless.
update:
x-reversible: false
x-retention:
auto_delete_days: 30
after: run completion
note: >-
Artifacts are deleted automatically 30 days after the run finishes whether or not this
operation is ever called. Retrieve results inside that window.
- target: $.paths['/v1/applications'].get
description: >-
Flag the pagination parameter-name inconsistency; this endpoint spells it `page-size` while every
other collection spells it `page_size`.
update:
x-convention-deviation:
field: page-size
expected: page_size
affects: generated clients and hand-written callers
other_endpoints_using_page_size:
- /v1/runs
- /v1/runs/{run_id}/items
- /v1/access/grants
- /v1/access/share-tokens
- target: $.paths['/v1/me'].get
description: Flag that the identity endpoint returns live storage credentials.
update:
x-returns-credentials: true
x-handling-note: >-
OrganizationReadResponse carries aignostics_bucket_hmac_access_key_id,
aignostics_bucket_hmac_secret_access_key, aignostics_logfire_token and aignostics_sentry_dsn.
Do not log, cache or forward this response.
- target: $
description: >-
Record the domain standards the contract signals, so a reader does not have to infer them from
a MIME type table.
update:
x-domain-standards:
- id: dicom
signal: application/dicom accepted as an input artifact media type
- id: regulatory-classes
signal: ApplicationReadResponse.regulatory_classes enumerates RUO, IVDR, FDA per application
note: read at runtime before using any result clinically
- target: $
description: Record the event surface the contract references but does not describe.
update:
x-event-surface:
documented: false
dangling_reference: >-
RunCreationRequest.callback_context is "echoed in state-change events", but no webhook,
callback or AsyncAPI channel is published. Consumption today is polling.