WEBHOOK
newMeeting
{
  "title": "Quarterly Business Review",
  "meeting_title": "QBR 2025 Q1",
  "url": "https://fathom.video/xyz123",
  "share_url": "https://fathom.video/share/xyz123",
  "created_at": "2025-03-01T17:01:30Z",
  "scheduled_start_time": "2025-03-01T16:00:00Z",
  "scheduled_end_time": "2025-03-01T17:00:00Z",
  "recording_start_time": "2025-03-01T16:01:12Z",
  "recording_end_time": "2025-03-01T17:00:55Z",
  "calendar_invitees_domains_type": "one_or_more_external",
  "transcript": [
    {
      "speaker": {
        "display_name": "Jane Doe",
        "matched_calendar_invitee_email": "jane.doe@acme.com"
      },
      "text": "Let's revisit the budget allocations.",
      "timestamp": "00:05:32"
    },
    {
      "speaker": {
        "display_name": "John Smith",
        "matched_calendar_invitee_email": "john.smith@client.com"
      },
      "text": "I agree, we need to adjust our projections.",
      "timestamp": "00:05:40"
    }
  ],
  "default_summary": {
    "template_name": "general",
    "markdown_formatted": "## Summary\nWe reviewed Q1 OKRs, identified budget risks, and agreed to revisit projections next month.\n"
  },
  "action_items": [
    {
      "description": "Email revised proposal to client",
      "user_generated": false,
      "completed": false,
      "recording_timestamp": "00:10:45",
      "recording_playback_url": "https://fathom.video/xyz123#t=645",
      "assignee": {
        "name": "Jane Doe",
        "email": "jane.doe@acme.com",
        "team": "Marketing"
      }
    }
  ],
  "calendar_invitees": [
    {
      "name": "Alice Johnson",
      "matched_speaker_display_name": "Alice Johnson",
      "email": "alice.johnson@acme.com",
      "is_external": false,
      "email_domain": "acme.com"
    },
    {
      "name": "Jane Doe",
      "matched_speaker_display_name": "Jane Doe",
      "email": "jane.doe@acme.com",
      "is_external": false,
      "email_domain": "acme.com"
    },
    {
      "name": "John Smith",
      "matched_speaker_display_name": "John Smith",
      "email": "john.smith@client.com",
      "is_external": true,
      "email_domain": "client.com"
    }
  ],
  "recorded_by": {
    "name": "Alice Johnson",
    "email": "alice.johnson@acme.com",
    "team": "Customer Success",
    "email_domain": "acme.com"
  },
  "crm_matches": {
    "contacts": [
      {
        "name": "John Smith",
        "email": "john.smith@client.com",
        "record_url": "https://app.hubspot.com/contacts/123"
      }
    ],
    "companies": [
      {
        "name": "Acme Corp",
        "record_url": "https://app.hubspot.com/companies/456"
      }
    ],
    "deals": [
      {
        "name": "Q1 Renewal",
        "amount": 50000,
        "record_url": "https://app.hubspot.com/deals/789"
      }
    ]
  }
}

Headers

webhook-id
string
required

Unique message identifier for the webhook message. This identifier is unique across all messages, but will be the same when the same webhook is being resent (e.g. due to a previous failure).

Example:

"msg_2x2zwLOcWaRTzsLK8KtbQt1FTk9"

webhook-timestamp
integer
required

Timestamp in seconds since epoch.

Example:

1712345678

webhook-signature
string
required

Signature with version prefix and base64-encoded value. Format is <version>,<base64_signature>. Multiple signatures may be space-delimited (e.g. v1,RmF0aG9t v2,QVBJ). How to verify webhook signatures.

Example:

"v1,BKQR1BIFjiNPdfpqM3+FH/YckKhX7WIq4/KK6Cc5aDY="

Body

application/json

Response

200

Return any 2xx code to acknowledge receipt.