GET /v1/meetings/:id
Returns a single ended voice meeting by its public UUID. Same payload shape as items in GET /v1/meetings — full notes, transcript, participants, audio URL.
Use this when you already have a meeting_id (from a webhook payload, from a previous list call, or from an MCP list_recent_meetings tool result) and want to drill in.
Request
GET /v1/meetings/<meeting_id>
Authorization: Bearer <token>
| Path param | Required | Description |
|---|---|---|
meeting_id | Yes | The public UUID of the meeting (same value as meeting_id in list responses and webhook payloads). |
No query string. No request body.
Example
GET /v1/meetings/a1b2c3d4-e5f6-7890-abcd-ef1234567890
Authorization: Bearer <token>
Successful response
Status: 200 OK
Content-Type: application/json
{
"meeting": {
"meeting_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"guild_discord_id": "987654321098765432",
"recording_type": "meeting",
"discord_channel_name": "meeting-transcripts",
"participant_names": ["Alex", "Sam"],
"notes": "## Summary\n\n…",
"transcript": "Alex [0:05]: …",
"audio_url": "https://rails.discmeet.com/recordings/a1b2c3d4-e5f6-7890-abcd-ef1234567890/audio.mp3",
"occurred_at": "2026-04-06T12:00:00Z"
}
}
The top-level key is meeting (singular), wrapping a single object that matches the list-item shape exactly. See overview § Response object fields for what each field means.
Not found
Status: 404 Not Found
Returned when any of these is true:
- The
meeting_iddoesn’t exist. - The meeting exists but belongs to a different Discord server than your API token authorises. Token-scoping is enforced — you can’t read meetings from other servers by guessing UUIDs.
- The meeting hasn’t completed yet, or has no usable transcript (still processing, empty audio, etc.).
Response body:
{ "error": "not_found", "message": "Resource not found." }
In other words: if a meeting_id appears in a GET /v1/meetings response, it is always fetchable here — and the converse holds. List eligibility (see overview § What appears in lists) is the gate.
Related
- Overview — Authentication, rate limits, errors, code samples.
- GET /v1/meetings — List meetings with
since/limit/pagefilters. - GET /v1/sessions — RPG sessions for the same server.
- Webhooks — Get pushed a
meeting_id(and the full payload) when a transcript is ready. - MCP — Same data over Model Context Protocol, for AI agents.