Skip to main content
POST /meetings//complete Mark a meeting as completed (the lead attended). Works on any meeting belonging to your client. This logs a meeting_completed timeline activity and fires a meeting.completed outbound webhook (so the outcome reaches a subscribed endpoint or CRM). Unlike no-show and cancel, marking a meeting completed does not trigger the re-engage agent.

Path parameters

ParamTypeDescription
idstring (uuid)The meeting ID — from the POST /meetings response or GET /leads/{id}/meetings.

Request Body

FieldTypeRequiredDescription
notesstringNoFree-text outcome notes.

Idempotency

Re-marking a meeting that is already completed is a safe no-op ("idempotent": true).

Responses

200 — Outcome applied

{
  "success": true,
  "meeting": {
    "id": "event-uuid",
    "lead_id": "lead-uuid",
    "status": "completed",
    "outcome_at": "2026-06-25T20:59:26Z",
    "outcome_notes": null
  }
}

401 — Authentication error — see Authentication

403 — API key missing the meetings:write scope (MCP keys only; REST keys are full-access)

404 — Meeting not found or not owned by your account

500 — Internal server error

Last modified on June 25, 2026