Choosing an integration¶
Sahl AI offers two integration surfaces. Most hospitals start with the embedded iframe and move to the streaming API only if they need a fully native UI.
| Embedded iframe | Streaming API | |
|---|---|---|
| You build | A container in your EHR screen and a message listener | Audio capture, the recording UI, transcript and note display |
| Sahl provides | Recording UI, transcript, note editing, codification review | Transcription and note generation |
| Returns | Clinical note and full codification (diagnoses, medications, orders, allergies, examination) | Live transcript and clinical note |
| Clinician experience | The Sahl AI panel inside the chart | Entirely your own UI |
| Typical effort | Days | Weeks |
| Best for | Web-based EHRs, fast rollout | Native or mobile clients, deeply customised workflows |
Which authentication method?¶
Both surfaces accept tokens from either method. See Authentication for details.
| Method | Use when |
|---|---|
| Username and password | You want the simplest setup. Your backend holds one set of integration credentials and logs in on behalf of each clinician. |
| Signed JWT (PKI) | Your security policy does not allow shared credentials. Your HIS signs a short-lived assertion with its own private key, and Sahl AI verifies it with the public key you registered. No shared secret leaves your environment. |
Which iframe mode?¶
| Mode | Token location | Recommended |
|---|---|---|
Secure handshake (/iframe-secure) |
Delivered with postMessage |
Yes, for password-based tokens |
Secure JWT handshake (/jwt-auth-secure) |
Signed JWT delivered with postMessage |
Yes, for PKI |
Access token in URL (/iframe) |
URL query string | Proofs of concept only |
Not sure?
Use the secure handshake with username and password authentication. You can move to PKI later without changing your message handling.