Integration
Live

Zoom RTMS Live Transcription

Powers AI Scribe by capturing live session transcripts during telehealth appointments through Zoom's Real-Time Media Streams (RTMS), replacing the older cloud-recording-based approach. Transcripts write incrementally during the session and finalize within about 2 minutes after it ends, with no Zoom cloud recording required. Available via webhooks and the GraphQL API for teams building their own downstream charting, summarization, or AI workflows on top of the transcript.

Built by Core Engineering

The problem it solves

The legacy cloud-recording approach to transcription required polling Zoom's API for a completed recording, which could take hours to become available and was subject to rate limiting under high volume. RTMS solves this by pushing transcript data directly and incrementally as the session happens, delivering a full transcript within minutes of a session ending instead of hours, without requiring Zoom cloud recording to be enabled at all.

What's included

  • Push-based transcript streaming via Zoom RTMS, replacing API polling
  • Incremental mid-session transcript writes to storage, readable before the session ends
  • Full transcript availability in VTT format within about 2 minutes of session end
  • Webhook events for transcript start, availability, and failure, separate from legacy recording events
  • Appointment-type-scoped Scribe controls, with client notification only when transcription is active
  • 2-year transcript retention with automatic deletion, or earlier deletion via API

How it works

A provider starts a Zoom session for an appointment type with a Scribe-enabled charting template assigned; Zoom initiates the RTMS stream and fires an appointment.transcript_started webhook, at which point Healthie's Media Streams service connects and begins writing the transcript incrementally to storage. After the session ends, Zoom finishes processing the transcript, and an appointment.transcript_available webhook fires, typically within about 2 minutes; the full VTT transcript is then fetchable through the Healthie GraphQL API using the appointment ID from the webhook's thin payload. If the stream fails for any reason, an appointment.transcript_failed webhook fires with a failure reason for alerting or retry logic. All webhooks are signed using HTTP Message Signatures (RFC 9421) and can be restricted to Healthie's published IP ranges; teams wanting transcript access without the full AI Scribe experience, to power their own charting or AI workflows, can request that separately.

Zoom RTMS Live Transcription is the transcript-capture pipeline behind Healthie's AI Scribe, using Zoom's push-based Real-Time Media Streams instead of polling the Zoom API for a completed cloud recording. It's built to deliver transcripts faster and more reliably than the legacy cloud-recording approach, since RTMS pushes data as the session happens rather than requiring Healthie to poll for a recording URL after the fact. Transcription runs only when a provider with Scribe permissions books an appointment type that has a Scribe-enabled charting template assigned; clients are notified via an in-meeting Zoom modal only when transcription is actually active. Transcripts are stored in VTT format, retained for 2 years, and are not included in client EHI exports, though they can be deleted early via the API.

Building on Healthie?

Talk to our team about API access, white-label, and enterprise architecture — or dive into the docs.