openapi: 3.0.3 info: title: Ambra Health (InteleShare) v3 Services Public Accounts Webhooks API description: 'OpenAPI description of the Ambra Health / InteleShare v3 Services Public API (historically the DICOM Grid API). Ambra Health is a cloud-based medical image management, exchange, and interoperability platform, now part of Intelerad Medical Systems. The API is JSON over HTTPS and is authenticated with a session id (sid) obtained from POST /session/login; the sid is then supplied on subsequent requests as a parameter or via the X-AmbraHealth-SID header. Endpoint paths, HTTP verbs, and the sid/bundle mechanics are grounded in the public v3 API reference at https://access.dicomgrid.com/api/v3/api.html and the open-source Python SDK (github.com/dicomgrid/sdk-python). Request and response bodies below are HONESTLY MODELED representative schemas: the public reference documents commands and parameters but does not publish per-field JSON Schemas, so the schemas here are illustrative of shape rather than an exhaustive contract. Operations grounded directly in the reference are marked x-endpoint-status = confirmed; illustrative body schemas are marked x-schema-status = modeled.' version: v3 contact: name: Ambra Health / Intelerad url: https://ambrahealth.com/platform/developer-tools/apis/ license: name: Proprietary - Ambra Health / Intelerad url: https://ambrahealth.com servers: - url: https://access.dicomgrid.com/api/v3 description: Ambra Health / DICOM Grid production API (access.ambrahealth.com is an alias) security: - sessionId: [] tags: - name: Webhooks description: Event webhooks paths: /webhook/list: get: operationId: webhookList tags: - Webhooks summary: List webhooks x-endpoint-status: confirmed parameters: - $ref: '#/components/parameters/Sid' - name: namespace_id in: query schema: type: string responses: '200': description: Webhooks content: application/json: schema: type: array items: $ref: '#/components/schemas/Webhook' /webhook/add: post: operationId: webhookAdd tags: - Webhooks summary: Create a webhook x-endpoint-status: confirmed parameters: - $ref: '#/components/parameters/Sid' requestBody: content: application/json: schema: $ref: '#/components/schemas/Webhook' responses: '200': $ref: '#/components/responses/WebhookResponse' /webhook/set: post: operationId: webhookSet tags: - Webhooks summary: Update a webhook x-endpoint-status: confirmed parameters: - $ref: '#/components/parameters/Sid' requestBody: content: application/json: schema: $ref: '#/components/schemas/Webhook' responses: '200': $ref: '#/components/responses/WebhookResponse' /webhook/delete: post: operationId: webhookDelete tags: - Webhooks summary: Delete a webhook x-endpoint-status: confirmed parameters: - $ref: '#/components/parameters/Sid' - name: uuid in: query required: true schema: type: string responses: '200': $ref: '#/components/responses/Status' /webhook/event: get: operationId: webhookEvent tags: - Webhooks summary: Inspect webhook events description: The reference confirms a webhook/event command but does not enumerate the available event types; the event catalog below is honestly modeled from common Ambra study lifecycle activity. x-endpoint-status: confirmed parameters: - $ref: '#/components/parameters/Sid' - name: uuid in: query schema: type: string responses: '200': description: Webhook event(s) content: application/json: schema: $ref: '#/components/schemas/WebhookEvent' components: schemas: Webhook: type: object x-schema-status: modeled properties: uuid: type: string namespace_id: type: string url: type: string format: uri description: Endpoint Ambra POSTs events to event: type: string description: Event the webhook fires on enabled: type: boolean WebhookEvent: type: object x-schema-status: modeled description: Honestly modeled - the reference confirms webhook/event but does not publish the event catalog. Representative event names below. properties: uuid: type: string event: type: string example: study.arrived enum: - study.arrived - study.updated - study.shared - study.approved - study.rejected - study.deleted namespace_id: type: string study_id: type: string occurred: type: string format: date-time Status: type: object properties: status: type: string example: OK parameters: Sid: name: sid in: query required: true description: Session id from POST /session/login. May also be sent via the X-AmbraHealth-SID header. schema: type: string responses: WebhookResponse: description: A webhook content: application/json: schema: $ref: '#/components/schemas/Webhook' Status: description: Status result content: application/json: schema: $ref: '#/components/schemas/Status' securitySchemes: sessionId: type: apiKey in: header name: X-AmbraHealth-SID description: Session id (sid) obtained from POST /session/login. Also accepted as the sid request parameter.