> ## Documentation Index
> Fetch the complete documentation index at: https://developer.suki.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Ambient Interoperability

> Learn how Ambient interoperability works in the Web SDK across Suki Ambient products

<div className="quick-summary-wrapper">
  <div className="quick-summary-header">
    <span className="quick-summary-icon" aria-hidden="true" />

    <span className="quick-summary-title">Quick summary</span>
  </div>

  <div className="quick-summary-content">
    Ambient interoperability lets the Web SDK share one clinical note with Ambient APIs, Mobile SDK, and Headless Web SDK for the same patient visit. Pass a stable encounter identifier when you create the ambient session. That identifier maps to `emr_encounter_id`. Use the Web SDK to review, edit, and submit the shared note.
  </div>

  <div className="quick-summary-footer">
    <span className="quick-summary-footer-icon" aria-hidden="true" />

    <span className="quick-summary-footer-text">Last updated:</span>
    <span className="quick-summary-footer-date">July 2026</span>
  </div>
</div>

<Warning>
  * Interoperability applies only to **ambient workflows**. It is not supported for Dictation or Form filling workflows.
  * Only versions `v3.2.0` and later will support Interoperability for Web SDK.
</Warning>

Ambient interoperability lets you use multiple Suki products that support ambient workflows with the same clinical note for a patient encounter.

Before ambient interoperability, each ambient session belonged to the Suki product where it was created. For example, if you started a session using the Mobile SDK, you could only continue or retrieve that session from the Mobile SDK.

With <Tooltip tip="Interoperability is the ability of different systems, devices, or software applications to communicate, exchange data, and use that information seamlessly." cta="View in Glossary" href="/Glossary/i">interoperability</Tooltip>, you can create and access ambient sessions across different Suki products for the same patient encounter.
When supported Suki products create or access an ambient session using the same `emr_encounter_id`, they work with a single shared clinical note for that patient encounter.

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 you create an ambient session and provide an **`emr_encounter_id`**, Suki creates a new clinical note for that patient encounter, or reuses the existing one if a note already exists for the same encounter.

In the Web SDK, the encounter identifier you supply maps to **`emr_encounter_id`**:

| Web SDK field              | Maps to                           | Purpose                                                       |
| -------------------------- | --------------------------------- | ------------------------------------------------------------- |
| **`encounter.identifier`** | **`emr_encounter_id`**            | Your EMR or EHR encounter identifier for the patient visit.   |
| **`encounter.patient`**    | Patient profile in the Web SDK UI | Patient details required for a complete patient profile page. |

Every compatible ambient session created with that **`emr_encounter_id`** is linked to the same clinical note, regardless of which Suki product that follows the ambient workflows started the session.

The products do not share audio recordings. Instead, each ambient session contributes to the same clinical note.

<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.
</Note>

## How to enable interoperability in the Web SDK

To create interoperable ambient sessions in the Web SDK, provide the same encounter identifier whenever sessions belong to the same patient visit.

<Steps>
  <Step title="Pass a Stable Encounter Identifier">
    Set **`encounter.identifier`** to your EMR or EHR encounter ID for the visit. Use the same value as **`emr_encounter_id`** on Ambient APIs, Mobile SDK, and Headless Web SDK.
  </Step>

  <Step title="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](/api-reference/ambient-sessions/context) before opening the Web SDK.
  </Step>

  <Step title="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](/web-sdk/guides/ambient-implementation) for the full session setup.
  </Step>

  <Step title="Continue Across Products">
    To continue or re-ambient the same clinical note from another ambient product, reuse the same **`emr_encounter_id`** and **`encounter_id`** (Session Group ID). Refer to [Use interoperable ambient notes](/documentation/how-to/ambient-clinical-notes/use-ambient-across-modalities).
  </Step>
</Steps>

### Example

<View title="JavaScript" icon="js">
  ```js JavaScript theme={"theme":{"light":"github-dark","dark":"material-theme-darker"}}
  const encounter = {
    identifier: "6ec3920f-b0b1-499d-a4e9-889bf788e5ab", // maps to emr_encounter_id
    patient: {
      identifier: "905c2521-25eb-4324-9978-724636df3436",
      name: {
        use: "official",
        family: "Doe",
        given: ["John"],
      },
      birthDate: "1990-01-01",
      gender: "Male",
    },
  };

  sdkClient.mount({
    rootElement: document.getElementById("suki-root"),
    encounter,
  });
  ```
</View>

<View title="React" icon="react">
  ```jsx React theme={"theme":{"light":"github-dark","dark":"material-theme-darker"}}
  <SukiAssistant
    encounter={{
      identifier: "6ec3920f-b0b1-499d-a4e9-889bf788e5ab", // maps to emr_encounter_id
      patient: {
        identifier: "905c2521-25eb-4324-9978-724636df3436",
        name: {
          use: "official",
          family: "Doe",
          given: ["John"],
        },
        birthDate: "1990-01-01",
        gender: "Male",
      },
    }}
  />
  ```
</View>

## Common integration patterns and use cases

Design Web SDK interoperability around the clinician's journey for a single patient encounter. Pass the same `emr_encounter_id` when you open ambient in the Web SDK so the note stays shared with other ambient products.

The following patterns show common ways to use the Web SDK in interoperable ambient workflows:

<CardGroup cols={2}>
  <Card title="Capture on Mobile, Review on Web" icon="mobile">
    Create the ambient session from the Mobile SDK with the patient's `emr_encounter_id`. Later, open the same note in the Web SDK for review, edit, and submit.
  </Card>

  <Card title="Capture with APIs, Review in Web SDK" icon="code">
    Create the session and stream audio through Ambient APIs, then open the resulting note in the Web SDK for clinician review and submission.
  </Card>

  <Card title="Continue Documentation Across Products" icon="arrows-rotate">
    Start ambient in the Web SDK, then create another ambient session for the same encounter from Mobile SDK, Headless Web SDK, or Ambient APIs using the same `emr_encounter_id`.
  </Card>

  <Card title="Keep Your Application in Sync" icon="file-pen">
    After clinicians edit the note in the Web SDK, retrieve the latest composition through the Ambient APIs so your application displays the current version.
  </Card>
</CardGroup>

## Next steps

<Icon icon="file-lines" iconType="solid" /> Refer to [Create session](/web-sdk/guides/ambient-implementation) to configure the encounter and start an ambient session in the Web SDK.

<Icon icon="file-lines" iconType="solid" /> Refer to [Ambient interoperability](/documentation/concepts/ambient-clinical-notes/ambient-interoperability) for the platform overview across ambient products.

<Icon icon="file-lines" iconType="solid" /> Refer to [Interoperable identifiers](/documentation/concepts/ambient-clinical-notes/interoperable-identifiers) to understand `emr_encounter_id`, `encounter_id`, and `composition_id`.

<Icon icon="file-lines" iconType="solid" /> Refer to [Use interoperable ambient notes](/documentation/how-to/ambient-clinical-notes/use-ambient-across-modalities) for the end-to-end cross-modality workflow.

<Icon icon="file-lines" iconType="solid" /> Refer to [Mobile SDK interoperability](/mobile-sdk/ambient-guides/ambient-interoperability) when the shared note starts or continues on iOS.
