Skip to main content

Set up (once, via the Scribe API)

Do this once per doctor through the Scribe API (institutional), with your institutional API key. Don’t have one? Ask your Telepatia contact.
1

Register the doctor — save both keys

Create a doctor account. The response returns two keys, shown once: publishableApiKey (pk_…) goes on the page; apiKey (sk_…) is the secret — backend only, never the browser.
2

Create a smart template — save its id

Create a smart template. Save the returned mrc_… id; you pass it to init().
3

Create a webhook

Subscribe to scribe_session.completed. Save the signingSecret to verify the calls. This is how your backend learns a note is ready.

Add the script

Put the config block before the CDN tag. Serve the page over https or localhost — the microphone needs a secure context.
Use a test key while you build (no real data) and your production key to go live. Same code, no environment flag.

Open the panel

Call init() when the doctor clicks record — it mounts and opens the panel. Pass the context your app already has (the patient and the doctor’s template) so the note comes back linked to the right consultation.
Always pass your own externalConsultationId — it’s how you fetch the result later. Without it Telepatia generates one you can’t see. And use init() to open: show() only expands a panel that’s already mounted.

Get the result

Your externalConsultationId is the Scribe API’s consultationInternalId — same value, different name. When the scribe_session.completed webhook fires, fetch the record on your backend with the secret key (sk_), never the browser: The full record schema and error format live in the Scribe API product in this Hub.