Skip to content
Get started

Webhooks

ModelsExpand Collapse
class ClinicalContextEnrichmentDocument:

Inline text document for clinical history synthesize

required IReadOnlyList<string> Content

Text chunks for the document

required string FileName
minLength1
maxLength500
class ClinicalContextEnrichmentDocumentUrl:

Remote document URL (https) for Avara to fetch/summarize

required string Url

Must use https://

formaturi
string FileName
minLength1
maxLength500
class ClinicalContextEnrichmentPriorReport:

External prior report metadata and text for clinical context

required string ReportText

Full prior report text

maxLength50000
string ExternalStudyID
maxLength256
string Modality
maxLength100
string StudyDate

YYYY-MM-DD

string StudyDescription
maxLength1000
class ClinicalContextEnrichmentRequestedEvent:

Soft synchronous webhook sent when AutoScribe needs clinical context from the partner EHR. Failures / timeouts / invalid bodies are treated as empty enrichment.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload for soft clinical context enrichment when AutoScribe needs EHR context for a study

required string ClinicID

Clinic UUID

formatuuid
required string StudyID

Raw study UUID v4 (not branded stu_…)

formatuuid
required string StudyInstanceUid

DICOM Study Instance UID

string ExternalPatientID

External patient identifier when available

string Mrn

Medical record number when available

JsonElement Type "clinical_context.enrichment_requested"constant

Event type identifier

class ClinicalContextEnrichmentRequestedEventData:

Event payload for soft clinical context enrichment when AutoScribe needs EHR context for a study

required string ClinicID

Clinic UUID

formatuuid
required string StudyID

Raw study UUID v4 (not branded stu_…)

formatuuid
required string StudyInstanceUid

DICOM Study Instance UID

string ExternalPatientID

External patient identifier when available

string Mrn

Medical record number when available

class ClinicalContextEnrichmentRequestedResponse:

Soft enrichment response. No authorized field — return any subset of fields (including {}).

string ClinicalIndication
IReadOnlyList<ClinicalContextEnrichmentDocument> Documents
required IReadOnlyList<string> Content

Text chunks for the document

required string FileName
minLength1
maxLength500
IReadOnlyList<ClinicalContextEnrichmentDocumentUrl> DocumentUrls
required string Url

Must use https://

formaturi
string FileName
minLength1
maxLength500
IReadOnlyList<ClinicalContextEnrichmentPriorReport> PriorReports
required string ReportText

Full prior report text

maxLength50000
string ExternalStudyID
maxLength256
string Modality
maxLength100
string StudyDate

YYYY-MM-DD

string StudyDescription
maxLength1000
IReadOnlyList<string> TechnologistNotes
string TechnologistTechnique
class EphemeralAccessRequestedEvent:

Webhook event sent when Avara needs presigned URLs for an ephemeral viewer session. This is a synchronous webhook — you must respond with the URLs within the request timeout. There is no Avara study; use retrievalId (and optional options) to resolve images.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload for an ephemeral viewer session. retrievalId is the customer handle from mint. options is echoed verbatim when present; Avara does not read or edit it.

required string RetrievalID

Opaque customer handle for this view session. Not an Avara study ID.

minLength1
IReadOnlyDictionary<string, JsonElement> Options

Optional JSON object echoed verbatim from mint. Avara does not read or edit it. Examples: studyInstanceUids or internal ids for multi-study reads. Not for URLs or manifests.

JsonElement Type "ephemeral.access_requested"constant

Event type identifier

class EphemeralAccessRequestedEventData:

Event payload for an ephemeral viewer session. retrievalId is the customer handle from mint. options is echoed verbatim when present; Avara does not read or edit it.

required string RetrievalID

Opaque customer handle for this view session. Not an Avara study ID.

minLength1
IReadOnlyDictionary<string, JsonElement> Options

Optional JSON object echoed verbatim from mint. Avara does not read or edit it. Examples: studyInstanceUids or internal ids for multi-study reads. Not for URLs or manifests.

class EphemeralAccessRequestedResponse:

Synchronous response with presigned DICOM URLs and optionally non-DICOM media. Optionally include a manifests array (one study per item) to improve progressive loading of legacy DICOM; it is not required.

required Boolean Authorized

Whether access is authorized for this ephemeral session

required IReadOnlyList<string> Urls

Flat list of presigned URLs for DICOM images across the session.

string Error

Error message if authorization failed or URLs cannot be provided

IReadOnlyList<StudyAccessRequestedManifest> Manifests

Optional sidecars, one study per item (an array, not a single object). Not required — omit if you do not have them. Recommended when you can provide them, especially for very large or multi-study legacy DICOM. Enables progressive loading so readers can scroll before every file is parsed. Invalid or incomplete values are ignored; URLs still load.

required IReadOnlyList<StudyAccessRequestedManifestSeries> Series

Planable series in this study. At least one must survive validation.

required string Modality

Non-empty DICOM modality. Common: CT, MR, CR, DX, US, XA, PT, NM, MG. Secondary capture (SC) is not necessary.

required string SeriesDescription

Non-empty display string shown in the viewer sidebar.

required string SeriesInstanceUid

DICOM Series Instance UID. Non-empty string.

required SeriesNumber SeriesNumber

Series number. String or number (1 or “1”).

One of the following:
string
Double
required IReadOnlyList<StudyAccessRequestedManifestSop> Sops

SOPs in this series. At least one must survive validation.

required string SopClassUid

DICOM SOP Class UID. Progressive load uses legacy single-frame image classes. Common: CT 1.2.840.10008.5.1.4.1.1.2, MR 1.2.840.10008.5.1.4.1.1.4, plus CR / DX / US / XA / PT. Enhanced multi-frame classes already load progressively from the single SOP — the sidecar is not used for them. SR / PR / KO do not need geometry.

required string SopInstanceUid

DICOM SOP Instance UID. Non-empty string.

Double BitsAllocated

Required on image SOPs. Planner uses 8, 16, or 32 (or the float flags). Typical CT/MR: 16.

Double BitsStored

Optional. Typical CT/MR: 12 or 16.

Double Columns

Image columns. Required on image SOPs. Positive integer. Common: 256, 512, 1024.

Double HighBit

Optional. Typical 16-bit: 15.

Double InstanceNumber

Slice order (DICOM Instance Number). Omit or 0 if unknown; UID is the tie-break.

Boolean IsDoubleFloatPixelData

Set true only if pixel data is 64-bit float.

Boolean IsFloatPixelData

Set true only if pixel data is 32-bit float.

Double NumberOfFrames

1 for single-frame files. Greater than 1 only if this SOP is multi-frame.

string PhotometricInterpretation

Required non-empty string on image SOPs. Common: MONOCHROME2 (CT/MR), MONOCHROME1 (often MG, inverted), RGB, PALETTE COLOR, YBR_FULL, YBR_FULL_422. Unknown strings are kept and treated as mono unless samplesPerPixel is 3. Wrong type (number/null) drops that SOP from optimized path.

Double PixelRepresentation

0 unsigned, 1 signed. Typical CT: 0.

Double RescaleIntercept

Optional. Typical CT: -1024. Safe to omit.

Double RescaleSlope

Optional. Typical CT: 1. Safe to omit.

Double Rows

Image rows. Required on image SOPs. Positive integer. Common: 256, 512, 1024.

Double SamplesPerPixel

Required on image SOPs. 1 grayscale, 3 color. 3 is treated as color even if photometric is unusual.

required string StudyInstanceUid

DICOM Study Instance UID for this study. Non-empty string. Must match the study being requested.

IReadOnlyList<StudyAccessRequestedMediaUrl> MediaUrls

Optional presigned URLs for non-DICOM media (images, PDFs, videos).

required string MimeType

MIME type of the media file (e.g., application/pdf, image/jpeg, video/mp4)

required string Url

Presigned URL to download the media file

formaturi
string FileName

Optional display name for the media file

class ModalityWorklistItem:

One worklist item shaped for direct DICOM Dataset construction on the on-prem box. Field names are PascalCase DICOM-style intentionally.

required string AccessionNumber

Accession number (DICOM SH, max 16)

maxLength16
required string Modality
required string PatientBirthDate

Patient birth date (DICOM DA: YYYYMMDD)

required string PatientID
required string PatientName

DICOM PN / HL7 format: LAST^FIRST[^MIDDLE^PREFIX^SUFFIX]

maxLength64
required string PatientSex

DICOM PatientSex: M, F, or O

required string PatientSize

Height in meters. Empty string allowed; if set must be numeric (typical range 0.4–2.5).

required string PatientWeight

Weight in kilograms. Empty string allowed; if set must be numeric (typical range 1–400).

required string ProtocolName
required string RequestedProcedureDescription
required IReadOnlyList<ModalityWorklistScheduledStep> ScheduledProcedureStepSequence

Scheduled procedure steps for this worklist item. Most appointments/studies have a single step; include additional steps only when the RIS schedules multiple.

required string Modality

Modality for this scheduled step

required string ScheduledProcedureStepDescription

Human-readable description of the scheduled step

required string ScheduledProcedureStepID

Scheduled procedure step identifier (DICOM SH, max 16)

maxLength16
required string ScheduledProcedureStepStartDate

Scheduled start date (DICOM DA: YYYYMMDD)

required string ScheduledProcedureStepStartTime

Scheduled start time (DICOM TM: HHMMSS)

required string StudyDescription
required string StudyInstanceUid

Required from partner RIS today; do not omit.

class ModalityWorklistRequestedEvent:

Webhook event sent when an on-prem modality issues a C-FIND MWL. This is a synchronous webhook - you must respond with authorized + items within the request timeout.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload for a modality worklist (C-FIND MWL) request

required string CallingAe

Calling AE title from the modality

required string ClinicID

Clinic UUID that owns the modality / worklist query

formatuuid
required string DateEnd

Inclusive worklist window end date (YYYY-MM-DD)

required string DateStart

Inclusive worklist window start date (YYYY-MM-DD)

required string SourceIP

Source IP observed by Avara for the modality request

string Modality

Present when the modality C-FIND included a modality filter

JsonElement Type "modality_worklist.requested"constant

Event type identifier

class ModalityWorklistRequestedEventData:

Event payload for a modality worklist (C-FIND MWL) request

required string CallingAe

Calling AE title from the modality

required string ClinicID

Clinic UUID that owns the modality / worklist query

formatuuid
required string DateEnd

Inclusive worklist window end date (YYYY-MM-DD)

required string DateStart

Inclusive worklist window start date (YYYY-MM-DD)

required string SourceIP

Source IP observed by Avara for the modality request

string Modality

Present when the modality C-FIND included a modality filter

class ModalityWorklistRequestedResponse:

Response expected by Avara for modality worklist webhook. authorized:false surfaces as worklist failure; authorized:true with empty items means no scheduled exams.

required Boolean Authorized

Whether the worklist query is authorized

required IReadOnlyList<ModalityWorklistItem> Items

Worklist items for the requested date window

required string AccessionNumber

Accession number (DICOM SH, max 16)

maxLength16
required string Modality
required string PatientBirthDate

Patient birth date (DICOM DA: YYYYMMDD)

required string PatientID
required string PatientName

DICOM PN / HL7 format: LAST^FIRST[^MIDDLE^PREFIX^SUFFIX]

maxLength64
required string PatientSex

DICOM PatientSex: M, F, or O

required string PatientSize

Height in meters. Empty string allowed; if set must be numeric (typical range 0.4–2.5).

required string PatientWeight

Weight in kilograms. Empty string allowed; if set must be numeric (typical range 1–400).

required string ProtocolName
required string RequestedProcedureDescription
required IReadOnlyList<ModalityWorklistScheduledStep> ScheduledProcedureStepSequence

Scheduled procedure steps for this worklist item. Most appointments/studies have a single step; include additional steps only when the RIS schedules multiple.

required string Modality

Modality for this scheduled step

required string ScheduledProcedureStepDescription

Human-readable description of the scheduled step

required string ScheduledProcedureStepID

Scheduled procedure step identifier (DICOM SH, max 16)

maxLength16
required string ScheduledProcedureStepStartDate

Scheduled start date (DICOM DA: YYYYMMDD)

required string ScheduledProcedureStepStartTime

Scheduled start time (DICOM TM: HHMMSS)

required string StudyDescription
required string StudyInstanceUid

Required from partner RIS today; do not omit.

string Error

Error message if authorization failed

class ModalityWorklistScheduledStep:

Scheduled procedure step used to construct DICOM MWL datasets

required string Modality

Modality for this scheduled step

required string ScheduledProcedureStepDescription

Human-readable description of the scheduled step

required string ScheduledProcedureStepID

Scheduled procedure step identifier (DICOM SH, max 16)

maxLength16
required string ScheduledProcedureStepStartDate

Scheduled start date (DICOM DA: YYYYMMDD)

required string ScheduledProcedureStepStartTime

Scheduled start time (DICOM TM: HHMMSS)

class PatientStudyEnrichmentRequestedEvent:

Soft synchronous webhook sent after Avara PACS seeds a study so the partner can enrich demographics and report headers. Failures / timeouts / invalid bodies are treated as empty enrichment.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload for soft patient/study enrichment after Avara PACS seeds a study

required string ClinicID

Clinic UUID

formatuuid
required string StudyInstanceUid

DICOM Study Instance UID

string AccessionNumber

Accession number from DICOM when available

string PatientID

Patient ID from DICOM when available

JsonElement Type "patient_study.enrichment_requested"constant

Event type identifier

class PatientStudyEnrichmentRequestedEventData:

Event payload for soft patient/study enrichment after Avara PACS seeds a study

required string ClinicID

Clinic UUID

formatuuid
required string StudyInstanceUid

DICOM Study Instance UID

string AccessionNumber

Accession number from DICOM when available

string PatientID

Patient ID from DICOM when available

class PatientStudyEnrichmentRequestedResponse:

Soft enrichment response. No authorized field — return any subset of fields (including {}). Avara merges per-field with DICOM light metadata then defaults. Optional expressCustomerId: if present and a valid cus_ id for this clinic, Avara sets it on the created study. If present but not usable, Avara ignores it, applies other fields, and logs a warning.

string DateOfBirth

YYYY-MM-DD

string ExpressCustomerID

Optional Express customer to attach to the created study. Format: cus_{32 hex chars}. Must belong to the clinic in the request. Omit to leave the study unscoped. If present but not usable, Avara ignores this field, applies any other enrichment fields, and logs a warning on the webhook event.

string ExternalPatientID
string FacilityName
Height Height
required Unit Unit
One of the following:
"in"In
"cm"Cm
required Double Value
minimum0
string Mrn
string PatientName
string Procedure
string ReferringPhysicianName
Severity Severity
One of the following:
"normal"Normal
"high"High
"stat"Stat
Sex Sex
One of the following:
"male"Male
"female"Female
"other"Other
string StudyDate

YYYY-MM-DD

string StudyDescription
string StudyTime

HH:MM or HH:MM:SS[.fff]; Avara may truncate to HH:MM

Weight Weight
required Unit Unit
One of the following:
"lbs"Lbs
"kg"Kg
required Double Value
minimum0
class ReportDeliveredEvent:

Webhook event sent when a report is completed. This is an asynchronous notification - respond with a simple acknowledgment.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload containing report and study information

required Boolean IsCritical

Whether the report was marked critical at sign-off.

required string PresignedUrl

Presigned URL for PDF download. Time-limited, typically valid for 1 hour.

formaturi
required string ReportID

Avara report ID. Format: rep_{32-hex-chars}

required string StudyID

Avara study ID. Format: stu_{32-hex-chars}

required string StudyInstanceUid

DICOM Study Instance UID

string ExternalPatientID

External patient identifier when available

string PlainText

Report plain text content (optional). Contains the full report text.

JsonElement Type "report.delivered"constant

Event type identifier

class ReportDeliveredEventData:

Event payload containing report and study information

required Boolean IsCritical

Whether the report was marked critical at sign-off.

required string PresignedUrl

Presigned URL for PDF download. Time-limited, typically valid for 1 hour.

formaturi
required string ReportID

Avara report ID. Format: rep_{32-hex-chars}

required string StudyID

Avara study ID. Format: stu_{32-hex-chars}

required string StudyInstanceUid

DICOM Study Instance UID

string ExternalPatientID

External patient identifier when available

string PlainText

Report plain text content (optional). Contains the full report text.

class ReportDeliveredResponse:

Response expected by Avara for report delivery webhook. Simple acknowledgment.

required Boolean Success

Acknowledgment of receipt. Return true to confirm delivery.

class SecondaryCaptureAccessRequestedEvent:

Webhook event sent when Avara needs presigned UPLOAD URLs for a secondary capture DICOM. This is a synchronous webhook - you must respond with the upload URLs within the request timeout.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload containing study + (optional) series/SOP information for a secondary capture upload

required string StudyID

Avara study ID. Format: stu_{32-hex-chars}

required string StudyInstanceUid

DICOM Study Instance UID. Must be a valid DICOM UID format (e.g., ‘1.2.840.10008.5.1.4.1.1.2’)

string SeriesInstanceUid

DICOM Series Instance UID generated for the new secondary capture series (when available).

string SopInstanceUid

DICOM SOP Instance UID generated for the new secondary capture object (when available).

JsonElement Type "secondary_capture.access_requested"constant

Event type identifier

class SecondaryCaptureAccessRequestedEventData:

Event payload containing study + (optional) series/SOP information for a secondary capture upload

required string StudyID

Avara study ID. Format: stu_{32-hex-chars}

required string StudyInstanceUid

DICOM Study Instance UID. Must be a valid DICOM UID format (e.g., ‘1.2.840.10008.5.1.4.1.1.2’)

string SeriesInstanceUid

DICOM Series Instance UID generated for the new secondary capture series (when available).

string SopInstanceUid

DICOM SOP Instance UID generated for the new secondary capture object (when available).

class SecondaryCaptureAccessRequestedResponse:

Response expected by Avara for the secondary capture webhook. Provide presigned PUT URLs the viewer will upload the DICOM to.

required Boolean Authorized

Whether the secondary capture upload is authorized for this study

required IReadOnlyList<string> UploadUrls

Presigned PUT URLs for uploading the secondary capture DICOM. The viewer uploads the same object to every URL.

string ContentCreatorName

Optional content creator name. Avara derives this server-side; this field is ignored if provided.

string Error

Error message if authorization failed or upload URLs cannot be provided

class StudyAccessRequestedEvent:

Webhook event sent when Avara needs presigned URLs for DICOM images. This is a synchronous webhook - you must respond with the URLs within the request timeout.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload containing study information

required string StudyID

Avara study ID. Format: stu_{32-hex-chars}

required string StudyInstanceUid

DICOM Study Instance UID. Must be a valid DICOM UID format (e.g., ‘1.2.840.10008.5.1.4.1.1.2’)

JsonElement Type "study.access_requested"constant

Event type identifier

class StudyAccessRequestedEventData:

Event payload containing study information

required string StudyID

Avara study ID. Format: stu_{32-hex-chars}

required string StudyInstanceUid

DICOM Study Instance UID. Must be a valid DICOM UID format (e.g., ‘1.2.840.10008.5.1.4.1.1.2’)

class StudyAccessRequestedManifest:

Optional sidecar for this one study (one object, not an array). Not required — omit if you do not have it. Recommended when you can provide it, especially for very large studies. Enables progressive loading of legacy multi-SOP DICOM so readers can scroll before every file is parsed. Include only this study. Series you cannot describe can be left out. Invalid or incomplete values are ignored; URLs still load.

required IReadOnlyList<StudyAccessRequestedManifestSeries> Series

Planable series in this study. At least one must survive validation.

required string Modality

Non-empty DICOM modality. Common: CT, MR, CR, DX, US, XA, PT, NM, MG. Secondary capture (SC) is not necessary.

required string SeriesDescription

Non-empty display string shown in the viewer sidebar.

required string SeriesInstanceUid

DICOM Series Instance UID. Non-empty string.

required SeriesNumber SeriesNumber

Series number. String or number (1 or “1”).

One of the following:
string
Double
required IReadOnlyList<StudyAccessRequestedManifestSop> Sops

SOPs in this series. At least one must survive validation.

required string SopClassUid

DICOM SOP Class UID. Progressive load uses legacy single-frame image classes. Common: CT 1.2.840.10008.5.1.4.1.1.2, MR 1.2.840.10008.5.1.4.1.1.4, plus CR / DX / US / XA / PT. Enhanced multi-frame classes already load progressively from the single SOP — the sidecar is not used for them. SR / PR / KO do not need geometry.

required string SopInstanceUid

DICOM SOP Instance UID. Non-empty string.

Double BitsAllocated

Required on image SOPs. Planner uses 8, 16, or 32 (or the float flags). Typical CT/MR: 16.

Double BitsStored

Optional. Typical CT/MR: 12 or 16.

Double Columns

Image columns. Required on image SOPs. Positive integer. Common: 256, 512, 1024.

Double HighBit

Optional. Typical 16-bit: 15.

Double InstanceNumber

Slice order (DICOM Instance Number). Omit or 0 if unknown; UID is the tie-break.

Boolean IsDoubleFloatPixelData

Set true only if pixel data is 64-bit float.

Boolean IsFloatPixelData

Set true only if pixel data is 32-bit float.

Double NumberOfFrames

1 for single-frame files. Greater than 1 only if this SOP is multi-frame.

string PhotometricInterpretation

Required non-empty string on image SOPs. Common: MONOCHROME2 (CT/MR), MONOCHROME1 (often MG, inverted), RGB, PALETTE COLOR, YBR_FULL, YBR_FULL_422. Unknown strings are kept and treated as mono unless samplesPerPixel is 3. Wrong type (number/null) drops that SOP from optimized path.

Double PixelRepresentation

0 unsigned, 1 signed. Typical CT: 0.

Double RescaleIntercept

Optional. Typical CT: -1024. Safe to omit.

Double RescaleSlope

Optional. Typical CT: 1. Safe to omit.

Double Rows

Image rows. Required on image SOPs. Positive integer. Common: 256, 512, 1024.

Double SamplesPerPixel

Required on image SOPs. 1 grayscale, 3 color. 3 is treated as color even if photometric is unusual.

required string StudyInstanceUid

DICOM Study Instance UID for this study. Non-empty string. Must match the study being requested.

class StudyAccessRequestedManifestSeries:

One series in the optional study manifest. Series you cannot describe can be left out. Secondary capture is not necessary. Enhanced multi-frame series already load progressively without this sidecar. A series with no surviving SOPs is dropped.

required string Modality

Non-empty DICOM modality. Common: CT, MR, CR, DX, US, XA, PT, NM, MG. Secondary capture (SC) is not necessary.

required string SeriesDescription

Non-empty display string shown in the viewer sidebar.

required string SeriesInstanceUid

DICOM Series Instance UID. Non-empty string.

required SeriesNumber SeriesNumber

Series number. String or number (1 or “1”).

One of the following:
string
Double
required IReadOnlyList<StudyAccessRequestedManifestSop> Sops

SOPs in this series. At least one must survive validation.

required string SopClassUid

DICOM SOP Class UID. Progressive load uses legacy single-frame image classes. Common: CT 1.2.840.10008.5.1.4.1.1.2, MR 1.2.840.10008.5.1.4.1.1.4, plus CR / DX / US / XA / PT. Enhanced multi-frame classes already load progressively from the single SOP — the sidecar is not used for them. SR / PR / KO do not need geometry.

required string SopInstanceUid

DICOM SOP Instance UID. Non-empty string.

Double BitsAllocated

Required on image SOPs. Planner uses 8, 16, or 32 (or the float flags). Typical CT/MR: 16.

Double BitsStored

Optional. Typical CT/MR: 12 or 16.

Double Columns

Image columns. Required on image SOPs. Positive integer. Common: 256, 512, 1024.

Double HighBit

Optional. Typical 16-bit: 15.

Double InstanceNumber

Slice order (DICOM Instance Number). Omit or 0 if unknown; UID is the tie-break.

Boolean IsDoubleFloatPixelData

Set true only if pixel data is 64-bit float.

Boolean IsFloatPixelData

Set true only if pixel data is 32-bit float.

Double NumberOfFrames

1 for single-frame files. Greater than 1 only if this SOP is multi-frame.

string PhotometricInterpretation

Required non-empty string on image SOPs. Common: MONOCHROME2 (CT/MR), MONOCHROME1 (often MG, inverted), RGB, PALETTE COLOR, YBR_FULL, YBR_FULL_422. Unknown strings are kept and treated as mono unless samplesPerPixel is 3. Wrong type (number/null) drops that SOP from optimized path.

Double PixelRepresentation

0 unsigned, 1 signed. Typical CT: 0.

Double RescaleIntercept

Optional. Typical CT: -1024. Safe to omit.

Double RescaleSlope

Optional. Typical CT: 1. Safe to omit.

Double Rows

Image rows. Required on image SOPs. Positive integer. Common: 256, 512, 1024.

Double SamplesPerPixel

Required on image SOPs. 1 grayscale, 3 color. 3 is treated as color even if photometric is unusual.

class StudyAccessRequestedManifestSop:

One SOP in the optional study manifest. Identity (sopInstanceUID, sopClassUID) is always required. For image SOPs, also include rows, columns, bitsAllocated, photometricInterpretation, and samplesPerPixel or that SOP is dropped. SR / PR / KO do not need geometry. Wrong types or missing required fields drop that SOP only; sibling SOPs and URLs still load.

required string SopClassUid

DICOM SOP Class UID. Progressive load uses legacy single-frame image classes. Common: CT 1.2.840.10008.5.1.4.1.1.2, MR 1.2.840.10008.5.1.4.1.1.4, plus CR / DX / US / XA / PT. Enhanced multi-frame classes already load progressively from the single SOP — the sidecar is not used for them. SR / PR / KO do not need geometry.

required string SopInstanceUid

DICOM SOP Instance UID. Non-empty string.

Double BitsAllocated

Required on image SOPs. Planner uses 8, 16, or 32 (or the float flags). Typical CT/MR: 16.

Double BitsStored

Optional. Typical CT/MR: 12 or 16.

Double Columns

Image columns. Required on image SOPs. Positive integer. Common: 256, 512, 1024.

Double HighBit

Optional. Typical 16-bit: 15.

Double InstanceNumber

Slice order (DICOM Instance Number). Omit or 0 if unknown; UID is the tie-break.

Boolean IsDoubleFloatPixelData

Set true only if pixel data is 64-bit float.

Boolean IsFloatPixelData

Set true only if pixel data is 32-bit float.

Double NumberOfFrames

1 for single-frame files. Greater than 1 only if this SOP is multi-frame.

string PhotometricInterpretation

Required non-empty string on image SOPs. Common: MONOCHROME2 (CT/MR), MONOCHROME1 (often MG, inverted), RGB, PALETTE COLOR, YBR_FULL, YBR_FULL_422. Unknown strings are kept and treated as mono unless samplesPerPixel is 3. Wrong type (number/null) drops that SOP from optimized path.

Double PixelRepresentation

0 unsigned, 1 signed. Typical CT: 0.

Double RescaleIntercept

Optional. Typical CT: -1024. Safe to omit.

Double RescaleSlope

Optional. Typical CT: 1. Safe to omit.

Double Rows

Image rows. Required on image SOPs. Positive integer. Common: 256, 512, 1024.

Double SamplesPerPixel

Required on image SOPs. 1 grayscale, 3 color. 3 is treated as color even if photometric is unusual.

class StudyAccessRequestedMediaUrl:

Presigned URL for non-DICOM media (images, PDFs, videos)

required string MimeType

MIME type of the media file (e.g., application/pdf, image/jpeg, video/mp4)

required string Url

Presigned URL to download the media file

formaturi
string FileName

Optional display name for the media file

class StudyAccessRequestedResponse:

Response expected by Avara for study access webhook. Provide presigned URLs for DICOM images and optionally non-DICOM media. Optionally include a study manifest to improve progressive loading of legacy DICOM; it is not required.

required Boolean Authorized

Whether access is authorized for this study

required IReadOnlyList<string> Urls

Flat list of presigned URLs for DICOM images. Include all image URLs for the study.

string Error

Error message if authorization failed or URLs cannot be provided

Optional sidecar for this one study (one object, not an array). Not required — omit if you do not have it. Recommended when you can provide it, especially for very large studies. Enables progressive loading of legacy multi-SOP DICOM so readers can scroll before every file is parsed. Invalid or incomplete values are ignored; URLs still load.

required IReadOnlyList<StudyAccessRequestedManifestSeries> Series

Planable series in this study. At least one must survive validation.

required string Modality

Non-empty DICOM modality. Common: CT, MR, CR, DX, US, XA, PT, NM, MG. Secondary capture (SC) is not necessary.

required string SeriesDescription

Non-empty display string shown in the viewer sidebar.

required string SeriesInstanceUid

DICOM Series Instance UID. Non-empty string.

required SeriesNumber SeriesNumber

Series number. String or number (1 or “1”).

One of the following:
string
Double
required IReadOnlyList<StudyAccessRequestedManifestSop> Sops

SOPs in this series. At least one must survive validation.

required string SopClassUid

DICOM SOP Class UID. Progressive load uses legacy single-frame image classes. Common: CT 1.2.840.10008.5.1.4.1.1.2, MR 1.2.840.10008.5.1.4.1.1.4, plus CR / DX / US / XA / PT. Enhanced multi-frame classes already load progressively from the single SOP — the sidecar is not used for them. SR / PR / KO do not need geometry.

required string SopInstanceUid

DICOM SOP Instance UID. Non-empty string.

Double BitsAllocated

Required on image SOPs. Planner uses 8, 16, or 32 (or the float flags). Typical CT/MR: 16.

Double BitsStored

Optional. Typical CT/MR: 12 or 16.

Double Columns

Image columns. Required on image SOPs. Positive integer. Common: 256, 512, 1024.

Double HighBit

Optional. Typical 16-bit: 15.

Double InstanceNumber

Slice order (DICOM Instance Number). Omit or 0 if unknown; UID is the tie-break.

Boolean IsDoubleFloatPixelData

Set true only if pixel data is 64-bit float.

Boolean IsFloatPixelData

Set true only if pixel data is 32-bit float.

Double NumberOfFrames

1 for single-frame files. Greater than 1 only if this SOP is multi-frame.

string PhotometricInterpretation

Required non-empty string on image SOPs. Common: MONOCHROME2 (CT/MR), MONOCHROME1 (often MG, inverted), RGB, PALETTE COLOR, YBR_FULL, YBR_FULL_422. Unknown strings are kept and treated as mono unless samplesPerPixel is 3. Wrong type (number/null) drops that SOP from optimized path.

Double PixelRepresentation

0 unsigned, 1 signed. Typical CT: 0.

Double RescaleIntercept

Optional. Typical CT: -1024. Safe to omit.

Double RescaleSlope

Optional. Typical CT: 1. Safe to omit.

Double Rows

Image rows. Required on image SOPs. Positive integer. Common: 256, 512, 1024.

Double SamplesPerPixel

Required on image SOPs. 1 grayscale, 3 color. 3 is treated as color even if photometric is unusual.

required string StudyInstanceUid

DICOM Study Instance UID for this study. Non-empty string. Must match the study being requested.

IReadOnlyList<StudyAccessRequestedMediaUrl> MediaUrls

Optional presigned URLs for non-DICOM media (images, PDFs, videos) associated with the study.

required string MimeType

MIME type of the media file (e.g., application/pdf, image/jpeg, video/mp4)

required string Url

Presigned URL to download the media file

formaturi
string FileName

Optional display name for the media file

class WebhookEvent: A class that can be one of several variants.union

Union of all Avara webhook event types. Use the ‘type’ field to discriminate between event types. Events: study.access_requested (synchronous), ephemeral.access_requested (synchronous), report.delivered (asynchronous), secondary_capture.access_requested (synchronous), modality_worklist.requested (synchronous), patient_study.enrichment_requested (synchronous soft), clinical_context.enrichment_requested (synchronous soft).

class StudyAccessRequestedEvent:

Webhook event sent when Avara needs presigned URLs for DICOM images. This is a synchronous webhook - you must respond with the URLs within the request timeout.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload containing study information

required string StudyID

Avara study ID. Format: stu_{32-hex-chars}

required string StudyInstanceUid

DICOM Study Instance UID. Must be a valid DICOM UID format (e.g., ‘1.2.840.10008.5.1.4.1.1.2’)

JsonElement Type "study.access_requested"constant

Event type identifier

class EphemeralAccessRequestedEvent:

Webhook event sent when Avara needs presigned URLs for an ephemeral viewer session. This is a synchronous webhook — you must respond with the URLs within the request timeout. There is no Avara study; use retrievalId (and optional options) to resolve images.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload for an ephemeral viewer session. retrievalId is the customer handle from mint. options is echoed verbatim when present; Avara does not read or edit it.

required string RetrievalID

Opaque customer handle for this view session. Not an Avara study ID.

minLength1
IReadOnlyDictionary<string, JsonElement> Options

Optional JSON object echoed verbatim from mint. Avara does not read or edit it. Examples: studyInstanceUids or internal ids for multi-study reads. Not for URLs or manifests.

JsonElement Type "ephemeral.access_requested"constant

Event type identifier

class ReportDeliveredEvent:

Webhook event sent when a report is completed. This is an asynchronous notification - respond with a simple acknowledgment.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload containing report and study information

required Boolean IsCritical

Whether the report was marked critical at sign-off.

required string PresignedUrl

Presigned URL for PDF download. Time-limited, typically valid for 1 hour.

formaturi
required string ReportID

Avara report ID. Format: rep_{32-hex-chars}

required string StudyID

Avara study ID. Format: stu_{32-hex-chars}

required string StudyInstanceUid

DICOM Study Instance UID

string ExternalPatientID

External patient identifier when available

string PlainText

Report plain text content (optional). Contains the full report text.

JsonElement Type "report.delivered"constant

Event type identifier

class SecondaryCaptureAccessRequestedEvent:

Webhook event sent when Avara needs presigned UPLOAD URLs for a secondary capture DICOM. This is a synchronous webhook - you must respond with the upload URLs within the request timeout.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload containing study + (optional) series/SOP information for a secondary capture upload

required string StudyID

Avara study ID. Format: stu_{32-hex-chars}

required string StudyInstanceUid

DICOM Study Instance UID. Must be a valid DICOM UID format (e.g., ‘1.2.840.10008.5.1.4.1.1.2’)

string SeriesInstanceUid

DICOM Series Instance UID generated for the new secondary capture series (when available).

string SopInstanceUid

DICOM SOP Instance UID generated for the new secondary capture object (when available).

JsonElement Type "secondary_capture.access_requested"constant

Event type identifier

class ModalityWorklistRequestedEvent:

Webhook event sent when an on-prem modality issues a C-FIND MWL. This is a synchronous webhook - you must respond with authorized + items within the request timeout.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload for a modality worklist (C-FIND MWL) request

required string CallingAe

Calling AE title from the modality

required string ClinicID

Clinic UUID that owns the modality / worklist query

formatuuid
required string DateEnd

Inclusive worklist window end date (YYYY-MM-DD)

required string DateStart

Inclusive worklist window start date (YYYY-MM-DD)

required string SourceIP

Source IP observed by Avara for the modality request

string Modality

Present when the modality C-FIND included a modality filter

JsonElement Type "modality_worklist.requested"constant

Event type identifier

class PatientStudyEnrichmentRequestedEvent:

Soft synchronous webhook sent after Avara PACS seeds a study so the partner can enrich demographics and report headers. Failures / timeouts / invalid bodies are treated as empty enrichment.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload for soft patient/study enrichment after Avara PACS seeds a study

required string ClinicID

Clinic UUID

formatuuid
required string StudyInstanceUid

DICOM Study Instance UID

string AccessionNumber

Accession number from DICOM when available

string PatientID

Patient ID from DICOM when available

JsonElement Type "patient_study.enrichment_requested"constant

Event type identifier

class ClinicalContextEnrichmentRequestedEvent:

Soft synchronous webhook sent when AutoScribe needs clinical context from the partner EHR. Failures / timeouts / invalid bodies are treated as empty enrichment.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload for soft clinical context enrichment when AutoScribe needs EHR context for a study

required string ClinicID

Clinic UUID

formatuuid
required string StudyID

Raw study UUID v4 (not branded stu_…)

formatuuid
required string StudyInstanceUid

DICOM Study Instance UID

string ExternalPatientID

External patient identifier when available

string Mrn

Medical record number when available

JsonElement Type "clinical_context.enrichment_requested"constant

Event type identifier

class UnsafeUnwrapWebhookEvent: A class that can be one of several variants.union

Webhook event sent when Avara needs presigned URLs for an ephemeral viewer session. This is a synchronous webhook — you must respond with the URLs within the request timeout. There is no Avara study; use retrievalId (and optional options) to resolve images.

class EphemeralAccessRequestedEvent:

Webhook event sent when Avara needs presigned URLs for an ephemeral viewer session. This is a synchronous webhook — you must respond with the URLs within the request timeout. There is no Avara study; use retrievalId (and optional options) to resolve images.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload for an ephemeral viewer session. retrievalId is the customer handle from mint. options is echoed verbatim when present; Avara does not read or edit it.

required string RetrievalID

Opaque customer handle for this view session. Not an Avara study ID.

minLength1
IReadOnlyDictionary<string, JsonElement> Options

Optional JSON object echoed verbatim from mint. Avara does not read or edit it. Examples: studyInstanceUids or internal ids for multi-study reads. Not for URLs or manifests.

JsonElement Type "ephemeral.access_requested"constant

Event type identifier

class StudyAccessRequestedEvent:

Webhook event sent when Avara needs presigned URLs for DICOM images. This is a synchronous webhook - you must respond with the URLs within the request timeout.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload containing study information

required string StudyID

Avara study ID. Format: stu_{32-hex-chars}

required string StudyInstanceUid

DICOM Study Instance UID. Must be a valid DICOM UID format (e.g., ‘1.2.840.10008.5.1.4.1.1.2’)

JsonElement Type "study.access_requested"constant

Event type identifier

class ReportDeliveredEvent:

Webhook event sent when a report is completed. This is an asynchronous notification - respond with a simple acknowledgment.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload containing report and study information

required Boolean IsCritical

Whether the report was marked critical at sign-off.

required string PresignedUrl

Presigned URL for PDF download. Time-limited, typically valid for 1 hour.

formaturi
required string ReportID

Avara report ID. Format: rep_{32-hex-chars}

required string StudyID

Avara study ID. Format: stu_{32-hex-chars}

required string StudyInstanceUid

DICOM Study Instance UID

string ExternalPatientID

External patient identifier when available

string PlainText

Report plain text content (optional). Contains the full report text.

JsonElement Type "report.delivered"constant

Event type identifier

class SecondaryCaptureAccessRequestedEvent:

Webhook event sent when Avara needs presigned UPLOAD URLs for a secondary capture DICOM. This is a synchronous webhook - you must respond with the upload URLs within the request timeout.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload containing study + (optional) series/SOP information for a secondary capture upload

required string StudyID

Avara study ID. Format: stu_{32-hex-chars}

required string StudyInstanceUid

DICOM Study Instance UID. Must be a valid DICOM UID format (e.g., ‘1.2.840.10008.5.1.4.1.1.2’)

string SeriesInstanceUid

DICOM Series Instance UID generated for the new secondary capture series (when available).

string SopInstanceUid

DICOM SOP Instance UID generated for the new secondary capture object (when available).

JsonElement Type "secondary_capture.access_requested"constant

Event type identifier

class ModalityWorklistRequestedEvent:

Webhook event sent when an on-prem modality issues a C-FIND MWL. This is a synchronous webhook - you must respond with authorized + items within the request timeout.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload for a modality worklist (C-FIND MWL) request

required string CallingAe

Calling AE title from the modality

required string ClinicID

Clinic UUID that owns the modality / worklist query

formatuuid
required string DateEnd

Inclusive worklist window end date (YYYY-MM-DD)

required string DateStart

Inclusive worklist window start date (YYYY-MM-DD)

required string SourceIP

Source IP observed by Avara for the modality request

string Modality

Present when the modality C-FIND included a modality filter

JsonElement Type "modality_worklist.requested"constant

Event type identifier

class PatientStudyEnrichmentRequestedEvent:

Soft synchronous webhook sent after Avara PACS seeds a study so the partner can enrich demographics and report headers. Failures / timeouts / invalid bodies are treated as empty enrichment.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload for soft patient/study enrichment after Avara PACS seeds a study

required string ClinicID

Clinic UUID

formatuuid
required string StudyInstanceUid

DICOM Study Instance UID

string AccessionNumber

Accession number from DICOM when available

string PatientID

Patient ID from DICOM when available

JsonElement Type "patient_study.enrichment_requested"constant

Event type identifier

class ClinicalContextEnrichmentRequestedEvent:

Soft synchronous webhook sent when AutoScribe needs clinical context from the partner EHR. Failures / timeouts / invalid bodies are treated as empty enrichment.

required string ID

Unique webhook event ID. Format: whe_{32-hex-chars}

Event payload for soft clinical context enrichment when AutoScribe needs EHR context for a study

required string ClinicID

Clinic UUID

formatuuid
required string StudyID

Raw study UUID v4 (not branded stu_…)

formatuuid
required string StudyInstanceUid

DICOM Study Instance UID

string ExternalPatientID

External patient identifier when available

string Mrn

Medical record number when available

JsonElement Type "clinical_context.enrichment_requested"constant

Event type identifier