name: fathom-webhooks-events description: 'Configure Fathom webhooks for real-time meeting notifications.
Use when setting up automated meeting processing, receiving real-time
transcripts, or triggering workflows when meetings complete.
Trigger with phrases like "fathom webhook", "fathom notifications",
"fathom real-time", "fathom event handler".
' allowed-tools: Read, Write, Edit, Bash(curl:*) version: 1.0.0 license: MIT author: Jeremy Longshore jeremy@intentsolutions.io tags:
- saas
- meeting-intelligence
- ai-notes
- fathom compatibility: Designed for Claude Code
Fathom Webhooks & Events
Overview
Fathom webhooks send meeting data to your URL when recordings are ready. Webhooks can include summary, transcript, and action items. Configure in Settings or via API.
Webhook Setup
Via API
curl -X POST -H "X-Api-Key: ${FATHOM_API_KEY}" \
-H "Content-Type: application/json" \
https://api.fathom.ai/external/v1/webhooks \
-d '{
"url": "https://your-app.com/webhooks/fathom",
"include_summary": true,
"include_transcript": true,
"include_action_items": true,
"fire_on_own_meetings": true,
"fire_on_shared_meetings": false
}'
Via Settings
Navigate to Settings > Integrations > Webhooks > Create Webhook.
Webhook Payload
{
"type": "meeting_content_ready",
"recording_id": "rec-abc123",
"url": "https://fathom.video/call/abc123",
"share_url": "https://fathom.video/share/abc123",
"title": "Product Review Q1",
"summary": "Discussed roadmap priorities...",
"transcript": [...],
"action_items": [...]
}
Webhook Handler
from flask import Flask, request, jsonify
app = Flask(__name__)
@app.route("/webhooks/fathom", methods=["POST"])
def fathom_webhook():
event = request.json
if event.get("type") == "meeting_content_ready":
recording_id = event["recording_id"]
summary = event.get("summary", "")
actions = event.get("action_items", [])
# Process meeting data
print(f"Meeting ready: {event.get('title')} ({len(actions)} action items)")
return jsonify({"received": True}), 200
Testing Webhooks
# Test with webhook.site
curl -X POST https://webhook.site/your-uuid \
-H "Content-Type: application/json" \
-d '{"type": "meeting_content_ready", "recording_id": "test"}'
# Or use ngrok for local testing
ngrok http 5000
Resources
Next Steps
For performance optimization, see fathom-performance-tuning.