Skip to content
Get started

Studies

Create a new study
viewer.studies.create(StudyCreateParams**kwargs) -> StudyCreateResponse
POST/v1/viewer/studies
List studies with pagination
viewer.studies.list(StudyListParams**kwargs) -> SyncCursorStudies[StudyListResponse]
GET/v1/viewer/studies
Retrieve a study by ID
viewer.studies.retrieve(strstudy_id) -> StudyRetrieveResponse
GET/v1/viewer/studies/{studyId}
Update a study
viewer.studies.update(strstudy_id, StudyUpdateParams**kwargs) -> StudyUpdateResponse
PATCH/v1/viewer/studies/{studyId}
Cancel a study
viewer.studies.cancel(StudyCancelParams**kwargs) -> StudyCancelResponse
POST/v1/viewer/studies/cancel
Uncancel a study
viewer.studies.uncancel(StudyUncancelParams**kwargs) -> StudyUncancelResponse
POST/v1/viewer/studies/uncancel
Generate a viewer reroute URL
viewer.studies.reroute_url(StudyRerouteURLParams**kwargs) -> StudyRerouteURLResponse
POST/v1/viewer/studies/reroute-url
Retrieve a study by DICOM UID
viewer.studies.retrieve_by_uid(strstudy_instance_uid) -> StudyRetrieveByUidResponse
GET/v1/viewer/studies/by-uid/{studyInstanceUid}
ModelsExpand Collapse
class StudyCreateResponse:

A study entity in the Viewer system with viewing status

cancelled_at: Optional[datetime]

Timestamp when the study was cancelled, null if not cancelled

formatdate-time
created_at: Optional[datetime]

Timestamp when the study was created

formatdate-time
is_cancelled: bool

Whether the study has been cancelled

severity: Severity

Priority level of a study. ‘normal’ for routine, ‘high’ for urgent, ‘stat’ for immediate attention.

One of the following:
"normal"
"high"
"stat"
study_description: str

Description of the study/scan (e.g., ‘Brain MRI with Contrast’, ‘Chest CT’)

minLength1
study_id: str

Unique study identifier. Format: stu_{32-hex-chars}

study_instance_uid: str

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

minLength1
study_viewer_status: StudyViewerStatus

Viewer completion status for a study. ‘incomplete’ = not yet finished in the viewer, ‘complete’ = finished.

One of the following:
"incomplete"
"complete"
updated_at: Optional[datetime]

Timestamp when the study was last updated

formatdate-time
assigned_to: Optional[UserReference]

A reference to a user with basic identifying information

email: str

User’s email address

user_id: str

Unique user identifier. Format: usr_{32-hex-chars}

first_name: Optional[str]

User’s first name

last_name: Optional[str]

User’s last name

middle_name: Optional[str]

User’s middle name

suffix1: Optional[str]

Name suffix (e.g., ‘MD’, ‘Jr.’)

suffix2: Optional[str]

Additional name suffix

created_by_api_key: Optional[APIKeyReference]

A reference to an API key with basic identifying information

api_key_id: str

Unique API key identifier (UUIDv4 format)

formatuuid
description: str

Human-readable description of the API key

minLength1
is_clinical_context_enrichment_enabled: Optional[bool]

Whether this API key has a clinical-context enrichment webhook configured

is_viewer_enabled: Optional[bool]

Whether this API key has access to the Viewer product

created_by_user: Optional[UserReference]

A reference to a user with basic identifying information

email: str

User’s email address

user_id: str

Unique user identifier. Format: usr_{32-hex-chars}

first_name: Optional[str]

User’s first name

last_name: Optional[str]

User’s last name

middle_name: Optional[str]

User’s middle name

suffix1: Optional[str]

Name suffix (e.g., ‘MD’, ‘Jr.’)

suffix2: Optional[str]

Additional name suffix

express_customer: Optional[ExpressCustomerReference]

A reference to an Express customer with basic identifying information

express_customer_id: str

Unique Express customer identifier. Format: cus_{32-hex-chars}

express_customer_name: str

Name of the Express customer

minLength1
metadata: Optional[Dict[str, str]]

Custom key-value metadata for the study. Maximum 50 pairs, keys up to 100 chars, values up to 1000 chars

class StudyListResponse:

A study entity in the Viewer system with viewing status

cancelled_at: Optional[datetime]

Timestamp when the study was cancelled, null if not cancelled

formatdate-time
created_at: Optional[datetime]

Timestamp when the study was created

formatdate-time
is_cancelled: bool

Whether the study has been cancelled

severity: Severity

Priority level of a study. ‘normal’ for routine, ‘high’ for urgent, ‘stat’ for immediate attention.

One of the following:
"normal"
"high"
"stat"
study_description: str

Description of the study/scan (e.g., ‘Brain MRI with Contrast’, ‘Chest CT’)

minLength1
study_id: str

Unique study identifier. Format: stu_{32-hex-chars}

study_instance_uid: str

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

minLength1
study_viewer_status: StudyViewerStatus

Viewer completion status for a study. ‘incomplete’ = not yet finished in the viewer, ‘complete’ = finished.

One of the following:
"incomplete"
"complete"
updated_at: Optional[datetime]

Timestamp when the study was last updated

formatdate-time
assigned_to: Optional[UserReference]

A reference to a user with basic identifying information

email: str

User’s email address

user_id: str

Unique user identifier. Format: usr_{32-hex-chars}

first_name: Optional[str]

User’s first name

last_name: Optional[str]

User’s last name

middle_name: Optional[str]

User’s middle name

suffix1: Optional[str]

Name suffix (e.g., ‘MD’, ‘Jr.’)

suffix2: Optional[str]

Additional name suffix

created_by_api_key: Optional[APIKeyReference]

A reference to an API key with basic identifying information

api_key_id: str

Unique API key identifier (UUIDv4 format)

formatuuid
description: str

Human-readable description of the API key

minLength1
is_clinical_context_enrichment_enabled: Optional[bool]

Whether this API key has a clinical-context enrichment webhook configured

is_viewer_enabled: Optional[bool]

Whether this API key has access to the Viewer product

created_by_user: Optional[UserReference]

A reference to a user with basic identifying information

email: str

User’s email address

user_id: str

Unique user identifier. Format: usr_{32-hex-chars}

first_name: Optional[str]

User’s first name

last_name: Optional[str]

User’s last name

middle_name: Optional[str]

User’s middle name

suffix1: Optional[str]

Name suffix (e.g., ‘MD’, ‘Jr.’)

suffix2: Optional[str]

Additional name suffix

express_customer: Optional[ExpressCustomerReference]

A reference to an Express customer with basic identifying information

express_customer_id: str

Unique Express customer identifier. Format: cus_{32-hex-chars}

express_customer_name: str

Name of the Express customer

minLength1
metadata: Optional[Dict[str, str]]

Custom key-value metadata for the study. Maximum 50 pairs, keys up to 100 chars, values up to 1000 chars

class StudyRetrieveResponse:

A study entity in the Viewer system with viewing status

cancelled_at: Optional[datetime]

Timestamp when the study was cancelled, null if not cancelled

formatdate-time
created_at: Optional[datetime]

Timestamp when the study was created

formatdate-time
is_cancelled: bool

Whether the study has been cancelled

severity: Severity

Priority level of a study. ‘normal’ for routine, ‘high’ for urgent, ‘stat’ for immediate attention.

One of the following:
"normal"
"high"
"stat"
study_description: str

Description of the study/scan (e.g., ‘Brain MRI with Contrast’, ‘Chest CT’)

minLength1
study_id: str

Unique study identifier. Format: stu_{32-hex-chars}

study_instance_uid: str

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

minLength1
study_viewer_status: StudyViewerStatus

Viewer completion status for a study. ‘incomplete’ = not yet finished in the viewer, ‘complete’ = finished.

One of the following:
"incomplete"
"complete"
updated_at: Optional[datetime]

Timestamp when the study was last updated

formatdate-time
assigned_to: Optional[UserReference]

A reference to a user with basic identifying information

email: str

User’s email address

user_id: str

Unique user identifier. Format: usr_{32-hex-chars}

first_name: Optional[str]

User’s first name

last_name: Optional[str]

User’s last name

middle_name: Optional[str]

User’s middle name

suffix1: Optional[str]

Name suffix (e.g., ‘MD’, ‘Jr.’)

suffix2: Optional[str]

Additional name suffix

created_by_api_key: Optional[APIKeyReference]

A reference to an API key with basic identifying information

api_key_id: str

Unique API key identifier (UUIDv4 format)

formatuuid
description: str

Human-readable description of the API key

minLength1
is_clinical_context_enrichment_enabled: Optional[bool]

Whether this API key has a clinical-context enrichment webhook configured

is_viewer_enabled: Optional[bool]

Whether this API key has access to the Viewer product

created_by_user: Optional[UserReference]

A reference to a user with basic identifying information

email: str

User’s email address

user_id: str

Unique user identifier. Format: usr_{32-hex-chars}

first_name: Optional[str]

User’s first name

last_name: Optional[str]

User’s last name

middle_name: Optional[str]

User’s middle name

suffix1: Optional[str]

Name suffix (e.g., ‘MD’, ‘Jr.’)

suffix2: Optional[str]

Additional name suffix

express_customer: Optional[ExpressCustomerReference]

A reference to an Express customer with basic identifying information

express_customer_id: str

Unique Express customer identifier. Format: cus_{32-hex-chars}

express_customer_name: str

Name of the Express customer

minLength1
metadata: Optional[Dict[str, str]]

Custom key-value metadata for the study. Maximum 50 pairs, keys up to 100 chars, values up to 1000 chars

class StudyUpdateResponse:

A study entity in the Viewer system with viewing status

cancelled_at: Optional[datetime]

Timestamp when the study was cancelled, null if not cancelled

formatdate-time
created_at: Optional[datetime]

Timestamp when the study was created

formatdate-time
is_cancelled: bool

Whether the study has been cancelled

severity: Severity

Priority level of a study. ‘normal’ for routine, ‘high’ for urgent, ‘stat’ for immediate attention.

One of the following:
"normal"
"high"
"stat"
study_description: str

Description of the study/scan (e.g., ‘Brain MRI with Contrast’, ‘Chest CT’)

minLength1
study_id: str

Unique study identifier. Format: stu_{32-hex-chars}

study_instance_uid: str

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

minLength1
study_viewer_status: StudyViewerStatus

Viewer completion status for a study. ‘incomplete’ = not yet finished in the viewer, ‘complete’ = finished.

One of the following:
"incomplete"
"complete"
updated_at: Optional[datetime]

Timestamp when the study was last updated

formatdate-time
assigned_to: Optional[UserReference]

A reference to a user with basic identifying information

email: str

User’s email address

user_id: str

Unique user identifier. Format: usr_{32-hex-chars}

first_name: Optional[str]

User’s first name

last_name: Optional[str]

User’s last name

middle_name: Optional[str]

User’s middle name

suffix1: Optional[str]

Name suffix (e.g., ‘MD’, ‘Jr.’)

suffix2: Optional[str]

Additional name suffix

created_by_api_key: Optional[APIKeyReference]

A reference to an API key with basic identifying information

api_key_id: str

Unique API key identifier (UUIDv4 format)

formatuuid
description: str

Human-readable description of the API key

minLength1
is_clinical_context_enrichment_enabled: Optional[bool]

Whether this API key has a clinical-context enrichment webhook configured

is_viewer_enabled: Optional[bool]

Whether this API key has access to the Viewer product

created_by_user: Optional[UserReference]

A reference to a user with basic identifying information

email: str

User’s email address

user_id: str

Unique user identifier. Format: usr_{32-hex-chars}

first_name: Optional[str]

User’s first name

last_name: Optional[str]

User’s last name

middle_name: Optional[str]

User’s middle name

suffix1: Optional[str]

Name suffix (e.g., ‘MD’, ‘Jr.’)

suffix2: Optional[str]

Additional name suffix

express_customer: Optional[ExpressCustomerReference]

A reference to an Express customer with basic identifying information

express_customer_id: str

Unique Express customer identifier. Format: cus_{32-hex-chars}

express_customer_name: str

Name of the Express customer

minLength1
metadata: Optional[Dict[str, str]]

Custom key-value metadata for the study. Maximum 50 pairs, keys up to 100 chars, values up to 1000 chars

class StudyCancelResponse:

Response for cancelling a study in Viewer

success: bool
message: Optional[str]
class StudyUncancelResponse:

Response for uncancelling a study in Viewer

success: bool
message: Optional[str]
class StudyRerouteURLResponse:

Response containing the generated reroute URL for a study in Viewer

url: str
class StudyRetrieveByUidResponse:

A study entity in the Viewer system with viewing status

cancelled_at: Optional[datetime]

Timestamp when the study was cancelled, null if not cancelled

formatdate-time
created_at: Optional[datetime]

Timestamp when the study was created

formatdate-time
is_cancelled: bool

Whether the study has been cancelled

severity: Severity

Priority level of a study. ‘normal’ for routine, ‘high’ for urgent, ‘stat’ for immediate attention.

One of the following:
"normal"
"high"
"stat"
study_description: str

Description of the study/scan (e.g., ‘Brain MRI with Contrast’, ‘Chest CT’)

minLength1
study_id: str

Unique study identifier. Format: stu_{32-hex-chars}

study_instance_uid: str

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

minLength1
study_viewer_status: StudyViewerStatus

Viewer completion status for a study. ‘incomplete’ = not yet finished in the viewer, ‘complete’ = finished.

One of the following:
"incomplete"
"complete"
updated_at: Optional[datetime]

Timestamp when the study was last updated

formatdate-time
assigned_to: Optional[UserReference]

A reference to a user with basic identifying information

email: str

User’s email address

user_id: str

Unique user identifier. Format: usr_{32-hex-chars}

first_name: Optional[str]

User’s first name

last_name: Optional[str]

User’s last name

middle_name: Optional[str]

User’s middle name

suffix1: Optional[str]

Name suffix (e.g., ‘MD’, ‘Jr.’)

suffix2: Optional[str]

Additional name suffix

created_by_api_key: Optional[APIKeyReference]

A reference to an API key with basic identifying information

api_key_id: str

Unique API key identifier (UUIDv4 format)

formatuuid
description: str

Human-readable description of the API key

minLength1
is_clinical_context_enrichment_enabled: Optional[bool]

Whether this API key has a clinical-context enrichment webhook configured

is_viewer_enabled: Optional[bool]

Whether this API key has access to the Viewer product

created_by_user: Optional[UserReference]

A reference to a user with basic identifying information

email: str

User’s email address

user_id: str

Unique user identifier. Format: usr_{32-hex-chars}

first_name: Optional[str]

User’s first name

last_name: Optional[str]

User’s last name

middle_name: Optional[str]

User’s middle name

suffix1: Optional[str]

Name suffix (e.g., ‘MD’, ‘Jr.’)

suffix2: Optional[str]

Additional name suffix

express_customer: Optional[ExpressCustomerReference]

A reference to an Express customer with basic identifying information

express_customer_id: str

Unique Express customer identifier. Format: cus_{32-hex-chars}

express_customer_name: str

Name of the Express customer

minLength1
metadata: Optional[Dict[str, str]]

Custom key-value metadata for the study. Maximum 50 pairs, keys up to 100 chars, values up to 1000 chars