Documentation Index
Fetch the complete documentation index at: https://docs.vexa.ai/llms.txt
Use this file to discover all available pages before exploring further.
Meetings are created/updated as bots run. You can list history, attach metadata (notes), and delete/anonymize artifacts.
GET /meetings
List meetings for the authenticated user.
curl -H "X-API-Key: $API_KEY" \
"$API_BASE/meetings"
{
"meetings": [
{
"id": 127,
"user_id": 4,
"platform": "google_meet",
"native_meeting_id": "zqe-gfmd-knr",
"constructed_meeting_url": "https://meet.google.com/zqe-gfmd-knr",
"status": "completed",
"bot_container_id": "vexa-bot-127-e76c2a06",
"start_time": "2026-02-15T09:11:56.052175",
"end_time": "2026-02-15T09:16:19.607242",
"data": {
"completion_reason": "stopped",
"status_transition": [
{
"to": "joining",
"from": "requested",
"source": "bot_callback",
"timestamp": "2026-02-15T09:11:33.852386"
},
{
"to": "active",
"from": "awaiting_admission",
"source": "bot_callback",
"timestamp": "2026-02-15T09:11:56.047736"
},
{
"to": "completed",
"from": "stopping",
"source": "user",
"timestamp": "2026-02-15T09:16:19.601196",
"completion_reason": "stopped"
}
]
},
"created_at": "2026-02-15T09:11:30.287878",
"updated_at": "2026-02-15T09:16:19.606511"
}
]
}
Update meeting metadata (stored in meeting.data), commonly used for:
name
participants
languages
notes
Google Meet
Microsoft Teams
Zoom
curl -X PATCH "$API_BASE/meetings/google_meet/abc-defg-hij" \
-H "Content-Type: application/json" \
-H "X-API-Key: $API_KEY" \
-d '{
"data": {
"name": "Weekly Standup",
"notes": "Discussed roadmap"
}
}'
curl -X PATCH "$API_BASE/meetings/teams/1234567890123" \
-H "Content-Type: application/json" \
-H "X-API-Key: $API_KEY" \
-d '{
"data": {
"name": "Weekly Standup",
"notes": "Discussed roadmap"
}
}'
curl -X PATCH "$API_BASE/meetings/zoom/12345678901" \
-H "Content-Type: application/json" \
-H "X-API-Key: $API_KEY" \
-d '{
"data": {
"name": "Weekly Standup",
"notes": "Discussed roadmap"
}
}'
Returns the updated meeting record.
{
"id": 129,
"user_id": 4,
"platform": "google_meet",
"native_meeting_id": "zqe-gfmd-knr",
"constructed_meeting_url": "https://meet.google.com/zqe-gfmd-knr",
"status": "completed",
"bot_container_id": "vexa-bot-129-24c9233d",
"start_time": "2026-02-15T09:20:02.597046",
"end_time": null,
"data": {
"name": "Weekly Standup",
"notes": "Discussed roadmap",
"status_transition": [
{"to": "joining", "from": "requested", "source": "bot_callback", "timestamp": "..."},
{"to": "active", "from": "awaiting_admission", "source": "bot_callback", "timestamp": "..."}
]
},
"created_at": "2026-02-15T09:18:52.592330",
"updated_at": "2026-02-16T17:42:18.455262"
}
Delete transcript data and recording artifacts (best-effort) and anonymize the meeting.
Important semantics:
- Only works for finalized meetings (
completed or failed).
- Safe to retry: calling delete multiple times returns success; repeated calls are a no-op after the meeting is already anonymized.
- The meeting record remains for telemetry/usage tracking (with PII scrubbed).
- After deletion, the original
native_meeting_id is cleared, so you cannot retry by /{platform}/{native_meeting_id} later.
Google Meet
Microsoft Teams
Zoom
curl -X DELETE \
-H "X-API-Key: $API_KEY" \
"$API_BASE/meetings/google_meet/abc-defg-hij"
curl -X DELETE \
-H "X-API-Key: $API_KEY" \
"$API_BASE/meetings/teams/1234567890123"
curl -X DELETE \
-H "X-API-Key: $API_KEY" \
"$API_BASE/meetings/zoom/12345678901"
If you want to delete just recordings (and keep transcript data), use:
Returns a human-readable confirmation message. This operation is safe to retry (idempotent): deleting an already-anonymized meeting returns success.
{
"message": "Meeting google_meet/abc-defg-hij transcripts and recording artifacts deleted; meeting data anonymized"
}