Quick summary
Ambient interoperability lets the Web SDK access a clinical note created through another Suki modality that supports Ambient workflows. Each product uses its own encounter field to reference the same patient visit. In the Web SDK, pass a UUID as
encounter.identifier to open and continue the same clinical note. That value maps to emr_encounter_id.emr_encounter_id. Any product that supports Ambient workflows uses this value through its own product-specific field.
In the Web SDK, you can:
- Open a clinical note that started on Mobile SDK, Headless Web SDK, or Ambient APIs.
- Review, edit, and submit that shared note in the headed Web SDK UI.
- Start an ambient session in the Web SDK and continue or re-ambient it from another ambient product.
How interoperability works in the Web SDK
The core of ambient interoperability is a shared clinical note. When an ambient session originates in Ambient APIs, use the returnedemr_encounter_id as encounter.identifier in the Web SDK.
You do not pass
encounter_id to the Web SDK.emr_encounter_id:
The products do not share audio recordings. Instead, each ambient session contributes to the same clinical note.
If you do not provide an encounter identifier, Suki creates a normal ambient session in the Web SDK, but it remains independent and cannot participate in interoperability.
How to enable interoperability in the Web SDK
To enable interoperability in the Web SDK, setencounter.identifier to the shared encounter value for the patient visit. That value is the Ambient API emr_encounter_id. Other products use the same value through their own fields, for example SukiAmbientConstant.kEmrEncounterId in the Mobile SDK.
Some examples of how to handle interoperability in the Web SDK are:
- When a clinician starts ambient in the Mobile SDK, then opens the same note in the Web SDK for review, edit, and submission.
- When a clinician starts ambient through Ambient APIs, then opens the same note in the Web SDK.
- When a clinician starts ambient in the Web SDK, then continues the same note from the Mobile SDK or Ambient APIs.
encounter.identifier consistent for the patient visit in the Web SDK.
Pass the EMR encounter UUID on
encounter.identifier only. Do not set emrEncounterId on ambientOptions. That field is not a supported partner setting and has no effect when an encounter identifier is present.1
Pass a Stable Encounter Identifier
Set
encounter.identifier to the emr_encounter_id returned by the Ambient API. That value must be a UUID. Alphanumeric EMR encounter numbers that are not UUIDs are not valid for this field.2
Provide Patient Details
Include patient fields on
encounter.patient so the Web SDK can show the patient profile. If the session started on a headless product first, seed patient context with the Seed ambient session context API before opening the Web SDK.3
Mount or Set the Encounter
Pass the encounter through
mount() or setEncounter() in JavaScript, or through the encounter prop on <SukiAssistant> in React. Refer to Create session for the full session setup.4
Continue Across Products
Continue using the same
encounter.identifier in the Web SDK. Other SDKs use the identifiers through their own product-specific fields. Refer to Use interoperable ambient notes for the full workflow.UUID requirement:
encounter.identifieris stored as a , but the value must also be a valid UUID.- Starting in v3.2.0, the Web SDK sends
encounter.identifierasemr_encounter_id, and the platform validates that it is in UUID format. - This validation also applies when retrieving past notes for an encounter in the hosted UI.
Example
JavaScript
Common integration patterns and use cases
Design Web SDK interoperability around the clinician’s journey for a single patient encounter. In the Web SDK, pass theemr_encounter_id returned by the Ambient API as encounter.identifier so the note is shared across products for the same patient visit.
The following patterns show common ways to use the Web SDK in interoperable ambient workflows:
Capture on Mobile, Review on Web
In the Mobile SDK, use the returned
emr_encounter_id as SukiAmbientConstant.kEmrEncounterId. In the Web SDK, use that value as encounter.identifier to review, edit, and submit the note.Capture with APIs, Review in Web SDK
Create the session and stream audio through Ambient APIs, then open the resulting note in the Web SDK for clinician review and submission.
Continue Documentation Across Products
Use the returned
emr_encounter_id through each product’s corresponding field when clinicians continue documentation across products. For re-ambient workflows, the Web SDK continues the same clinical note using encounter.identifier (which maps to emr_encounter_id) without requiring encounter_id.Keep Your Application in Sync
After clinicians edit the note in the Web SDK, retrieve the latest composition through the Ambient APIs so your application displays the current version.
Available cookbooks
Next steps
Refer to Create session to configure the encounter and start an ambient session in the Web SDK. Refer to Ambient interoperability for the platform overview across ambient products. Refer to Interoperable identifiers to understandemr_encounter_id, encounter_id, and composition_id.
Refer to Ambient interoperability FAQs for the UUID requirement and other limitations.
Refer to Use interoperable ambient notes for the end-to-end cross-modality workflow.
Refer to Mobile SDK interoperability when the shared note starts or continues on iOS.