Skip to main content
When a recorded meeting’s results are ready, your user opens it and sees what was said, by whom, and what was decided.
A meeting page with a summary, an action item assigned to Laia, a transcript by speaker and an audio player. Notes: the meeting.finished webhook, then GET /meetings/{id}/results; summary.sections, summary.action_items, transcript.segments with speakers member_id, and media.audio_url.

When the meeting finishes

meeting.finished fires once, when the results are ready or failed. Read them all in one call:
A meeting has one set of results, however many bots were sent to it.

What each part gives you

  • Transcript: segments are speaker turns, in order, each pointing at a speaker by speaker_id. Add ?include=words to get word timings in each segment’s words.
  • Speakers: each is listed once. label is the name _æfer gave the speaker: usually the name the call showed for them, such as their Google Meet display name, or a neutral Speaker 2 when there is none. Renaming a speaker in the transcript changes it. identified is true when _æfer linked the speaker to a person in your workspace, from that name and the meeting’s participants. Then name is set, email when the person has one, and member_id when they are one of your users. When identified is false, all three are null, whatever the label says. spk_ ids are unique within one meeting only.
  • Summary: markdown is ready to render; sections is the same content as data. action_items are the follow-ups, with an assignee when an item names one known person.
  • Media: audio_url and video_url are signed links valid until expires_at, one hour. Download what you keep, or read the results again for fresh links. video_url is null for audio-only recordings.

Statuses

The top-level status and each part’s status are one of: The transcript is ready before the summary: meeting.updated fires as each part changes, so you can show the transcript first.