# Fathom Transcript Exporter (`dave/fathom-transcript-exporter`) Actor

Export your Fathom meeting transcripts, AI summaries, and action items as Markdown and JSON. Filter by date range or grab everything. Schedule it to run automatically.

- **URL**: https://apify.com/dave/fathom-transcript-exporter.md
- **Developed by:** [David Barton](https://apify.com/dave) (community)
- **Categories:** Automation
- **Stats:** 132 total users, 6 monthly users, 72.1% runs succeeded, 2 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-usage

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Fathom Transcript Exporter

Export all your [Fathom](https://fathom.video/) meeting transcripts, summaries, and action items in one click. No coding required - just provide your **Fathom API key** and **email address**, and this Actor pulls every meeting you've recorded.

### What does Fathom Transcript Exporter do?

Fathom Transcript Exporter connects to the [Fathom API](https://developers.fathom.ai/) and **exports your complete meeting data** - including full transcripts, AI-generated summaries, and action items - into structured JSON and downloadable Markdown files.

- Fetches **all meetings** recorded by you (with optional date filters)
- Exports **full transcripts** with speaker names and timestamps
- Includes **AI summaries** and **action items** with assignees
- Saves each meeting as a **Markdown file** in the key-value store
- Outputs structured **JSON to the dataset** for easy integration

Running on the Apify platform gives you automatic scheduling, API access, webhooks, and integrations with tools like Google Sheets, Slack, Zapier, Make, and more.

### Why export your Fathom meeting transcripts?

- **Build a searchable knowledge base** - Keep every meeting transcript in one place for easy reference
- **Feed transcripts to AI tools** - Use meeting data as context for AI assistants, summaries, or analysis
- **Compliance and archival** - Maintain a permanent record of meetings outside of Fathom
- **CRM enrichment** - Push meeting notes and action items into your CRM or project management tools
- **Team handoffs** - Share meeting context across teams without granting Fathom access

### What data can you export from Fathom?

| Field | Description |
|-------|-------------|
| Title | Meeting title |
| Date | Meeting creation date and time |
| Recording start/end | When recording began and ended |
| Attendees | Names, emails, and internal/external status |
| Recorded by | Name and email of the person who recorded |
| Transcript | Full speaker-attributed transcript with timestamps |
| Summary | AI-generated meeting summary (Markdown formatted) |
| Action items | Tasks with assignees, timestamps, and completion status |
| Fathom URL | Direct link to the meeting in Fathom |
| Share URL | Shareable link to the meeting |
| Language | Transcript language code |

### How to export Fathom meeting transcripts

1. **Get your Fathom API key** - Go to [Fathom User Settings > API Access](https://fathom.video/customize#api-access-header) and generate a key
2. **Run this Actor** - Click **Start** on this page, enter your API key and Fathom email address
3. **Download your data** - Once complete, export the dataset as JSON or CSV, or download individual Markdown files from the key-value store

That's it. No code, no setup, no maintenance.

### Input

| Field | Required | Description |
|-------|----------|-------------|
| Fathom API key | Yes | Your Fathom API key ([generate one here](https://fathom.video/customize#api-access-header)). This is stored securely and never logged. |
| Fathom user email | Yes | The email address associated with your Fathom account. Only meetings recorded by this email are exported. |
| Created after | No | Only export meetings after this date (ISO 8601 format, e.g. `2025-01-01T00:00:00Z`) |
| Created before | No | Only export meetings before this date (ISO 8601 format) |

### Output example

Each meeting is saved to the dataset as structured JSON:

```json
{
    "recording_id": 123456789,
    "title": "Quarterly Business Review",
    "meeting_title": "QBR 2025 Q1",
    "created_at": "2025-03-01T17:01:30Z",
    "recording_start_time": "2025-03-01T16:01:12Z",
    "recording_end_time": "2025-03-01T17:00:55Z",
    "url": "https://fathom.video/xyz123",
    "share_url": "https://fathom.video/share/xyz123",
    "transcript_language": "en",
    "calendar_invitees": [
        {
            "name": "Alice Johnson",
            "email": "alice@acme.com",
            "is_external": false
        }
    ],
    "recorded_by": {
        "name": "Alice Johnson",
        "email": "alice@acme.com"
    },
    "transcript": [
        {
            "speaker": {
                "display_name": "Alice Johnson"
            },
            "text": "Let's revisit the budget allocations.",
            "timestamp": "00:05:32"
        }
    ],
    "summary": "## Summary\nWe reviewed Q1 OKRs and identified budget risks...",
    "action_items": [
        {
            "description": "Email revised proposal to client",
            "completed": false,
            "recording_timestamp": "00:10:45",
            "assignee": {
                "name": "Alice Johnson"
            }
        }
    ]
}
```

Each meeting is also saved as a Markdown file in the key-value store, with YAML frontmatter and a formatted transcript - ready to drop into your docs, wiki, or knowledge base.

### How much does it cost?

This Actor is **free**. You only pay for the Apify platform usage (compute units). A typical run exporting 100 meetings costs less than $0.10 in compute.

### FAQ

**Is my API key safe?**
Yes. Your Fathom API key is marked as a secret input and is never logged or exposed in run outputs.

**Does this export team meetings?**
Only meetings recorded by the email address you provide. It doesn't export other team members' private meetings.

**Can I schedule automatic exports?**
Yes. Use the Apify platform's built-in [scheduling](https://docs.apify.com/platform/schedules) to run this Actor daily, weekly, or at any interval you choose.

**Can I filter by date range?**
Yes. Use the **Created after** and **Created before** input fields to export only meetings within a specific time window.

**Where can I get help?**
Open an issue on the **Issues** tab or reach out via the Actor's support channel.

### Resources

- [Fathom](https://fathom.video/) - AI meeting assistant
- [Fathom API documentation](https://developers.fathom.ai/) - Full API reference
- [Apify platform documentation](https://docs.apify.com/) - Learn about scheduling, integrations, and more

# Actor input Schema

## `fathomApiKey` (type: `string`):

Your Fathom API key. Generate one at https://fathom.video/customize#api-access-header

## `fathomUserEmail` (type: `string`):

Your email address in Fathom. Only meetings recorded by this email will be exported.

## `createdAfter` (type: `string`):

Only export meetings created after this date. Leave empty to export all meetings.

## `createdBefore` (type: `string`):

Only export meetings created before this date. Leave empty to export up to the current date.

## `includeAttendedMeetings` (type: `boolean`):

Also fetch meetings where you were a calendar invitee but someone else recorded. The Fathom API only supports filtering by recorder, so this fetches all org meetings and filters client-side.

## Actor input object example

```json
{
  "includeAttendedMeetings": false
}
```

# Actor output Schema

## `overview` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("dave/fathom-transcript-exporter").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("dave/fathom-transcript-exporter").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call dave/fathom-transcript-exporter --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=dave/fathom-transcript-exporter",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/DuX2W9UDrOCiAoEdF/builds/6ocMr0NENvvSajbWe/openapi.json
