Documentation Index Fetch the complete documentation index at: https://developers.fathom.ai/llms.txt
Use this file to discover all available pages before exploring further.
Generate an API Key
Get your Fathom API Key Head to the API Access section of your User Settings and generate an API key.
API keys are scoped to the user who creates them. Your key can only access meetings you’ve recorded or that have been shared with you or your Team.
Admins can access all users’ shared meetings by
configuring View permissions . API keys
never grant access to other users’ private meetings.
List recent meetings
List the 10 most recent meetings recorded by you or shared to your team.
curl https://api.fathom.ai/external/v1/meetings \
-H "X-Api-Key: YOUR_API_KEY"
Replace YOUR_API_KEY with the API key you generated above.
Here's an example response
{
"items" : [
{
"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" ,
"meeting_type" : "internal" ,
"transcript_language" : "en" ,
"calendar_invitees" : [
{
"is_external" : false ,
"name" : "Alice Johnson" ,
"email" : "alice.johnson@acme.com"
}
],
"recorded_by" : {
"name" : "Alice Johnson" ,
"email" : "alice.johnson@acme.com" ,
"team" : "Marketing"
},
"transcript" : [
{
"speaker" : {
"display_name" : "Alice Johnson" ,
"matched_calendar_invitee_email" : "alice.johnson@acme.com"
},
"text" : "Let's revisit the budget allocations." ,
"timestamp" : "00:05:32"
}
],
"default_summary" : {
"template_name" : "general" ,
"markdown_formatted" : "## Summary \n We 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" : "Alice Johnson" ,
"email" : "alice.johnson@acme.com" ,
"team" : "Marketing"
}
}
],
"crm_matches" : {
"contacts" : [
{
"name" : "Jane Smith" ,
"email" : "jane.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"
}
],
"error" : "no CRM connected"
}
}
],
"limit" : 1 ,
"next_cursor" : "eyJwYWdlX251bSI6Mn0="
}
Get next 10 meetings
Use the next_cursor from the previous response to get the next page of meetings.
curl https://api.fathom.ai/external/v1/meetings \
-H "X-Api-Key: YOUR_API_KEY" \
-d cursor=CURSOR_FROM_PREVIOUS_RESPONSE
Find specific meetings and get their transcripts
Let’s say you met with john.doe@client.com a couple times during August and want to pull those transcripts. Use filters to return just those meetings.
curl https://api.fathom.ai/external/v1/meetings \
-H "X-Api-Key: YOUR_API_KEY" \
-d include_transcript=true \
-d recorded_by[]=me@mydomain.com \
-d created_after=2024-08-01T00:00:00Z \
-d created_before=2024-09-01T00:00:00Z
# include_transcript=true: get transcripts in the response
# recorded_by[]=me@mydomain.com: meetings you recorded
# created_after/before: August date range
You can also fetch transcripts separately using the
/recordings/{recording_id}/transcript endpoint.
OAuth apps must use this approach since they can’t use
include_transcript or
include_summary.
Next steps
Now that you you’ve made your first API calls, time to go deeper:
API documentation See all available endpoints and methods
SDKs Use our Typescript or Python SDK
OAuth Build a Fathom integration with OAuth