API Config
Create a Viewer API key, set webhook endpoints, and save your webhook signing secret.
Create and configure an API key in the Viewer dashboard before you write any SDK calls. The key authenticates study creation and other API requests. Webhook URLs and the webhook signing secret live on the same API Config row.
Creating an API key
Section titled “Creating an API key”-
After logging in, open API Config in the sidebar.
-
Click Create API Key.
-
Configure the following values:
- Description: A human-readable label so you can tell keys apart in the dashboard
- Study scope: Self or All
- Self: For teleradiology groups with multiple integrating PACS sources. Each PACS can only access, edit, and manage its own studies
- All: For a unified source of studies, or for PACS companies integrating Viewer into their platform
- User access: None, Read, or Write — whether this key can invite and manage users
- Express customer access: For integrators (PACS companies or EHR/RIS companies) serving Viewer as a product to their customers. Otherwise leave None
- Webhooks — Optional; leave blank to disable. Viewer only implements three events. Choose which to set on What webhooks should I configure, then implement in Node.js, TypeScript, Python, Java, or C#.
- Study Data: Presigned GET URLs so the viewer can load DICOM
- Secondary Capture: Presigned PUT URLs to save viewer captures to your storage
- Modality Worklist: C-FIND worklist for Avara PACS / on-prem (one active key per org)
-
Once the API key is created, save it to your environment variables as
AVARA_API_KEY. You will not be able to view the key again.
Editing webhook endpoints
Section titled “Editing webhook endpoints”To change webhook URLs after the key exists, click Edit Endpoints on that API config row.
Viewing the webhook secret
Section titled “Viewing the webhook secret”The webhook signing secret is generated with the key. Click View Webhook Secret on the API config row. You can view this secret at any time.
Save it as AVARA_WEBHOOK_KEY. The SDK unwrap() method reads that variable to verify Standard Webhooks signatures (webhook-id, webhook-timestamp, webhook-signature).