Transcriptcompleted
Sent when the meeting transcript is finalized and ready to read. Individual transcript.segment messages are never delivered over webhooks; read segments via the transcript endpoint or the WebSocket stream. Deliveries are best effort and not guaranteed: up to 5 attempts with backoff that starts around 60 seconds and roughly doubles per retry, and a 10-second delivery timeout, so respond with a 2xx promptly. Retries can produce duplicates; deduplicate on envelope id.
{
"id": "whdel_9f2c...",
"event": "transcript.completed",
"version": "1",
"occurred_at": "2026-06-16T09:05:00Z",
"data": {
"session_id": "mtgsess_9b2f...",
"segment_count": 87,
"last_seq": 943,
"ended_at": "2026-06-16T09:04:41Z"
}
}Headers
Signature header t=<unix-seconds>,v1=<hex>. Compute HMAC-SHA256 with the webhook secret over the timestamp ASCII bytes, a literal . byte, and the exact raw request-body bytes; hex-encode and compare v1 in constant time. Reject timestamps outside your accepted skew. No bearer token is sent.
Body
Unique event id; deduplicate deliveries on it.
"whdel_9f2c..."
Event type.
transcript.completed Envelope version.
"1"
When the event occurred.
Finalized transcript details.
Show child attributes
Show child attributes
Response
Return any 2xx status promptly to acknowledge the delivery; non-2xx responses and timeouts are retried.
Was this page helpful?
{
"id": "whdel_9f2c...",
"event": "transcript.completed",
"version": "1",
"occurred_at": "2026-06-16T09:05:00Z",
"data": {
"session_id": "mtgsess_9b2f...",
"segment_count": 87,
"last_seq": 943,
"ended_at": "2026-06-16T09:04:41Z"
}
}