Nightly Fathom call filing to OneDrive client folders and a Notion CRM log

Every weekday at 7pm, sort the day's Fathom call summaries into the right OneDrive client folders and log them in a Notion customer call database.

Agentic Task
FathomMicrosoft OneDriveNotionSalesOperationsMeeting WorkflowsData Sync

Every weekday at 7pm in my local time zone, run an agent that files the day's Fathom call summaries into the right OneDrive client folders and logs each call in my Notion customer call database. Trigger: cron at 19:00 Monday through Friday.

Step 1. Pull today's calls from Fathom. Use Fathom's List Meetings operation, filtered to meetings that ended in the last 24 hours, and request summaries, action items, and attendee details (including external attendee emails) in the response. Page through all results.

Step 2. Skip internal-only meetings. If every attendee's email address is on our company domain (configurable, default to the domain on the connected Fathom account), drop the meeting and move on. Only process calls that have at least one external attendee.

Step 3. For each remaining meeting, infer the client account. Use the meeting title plus the email domains of external attendees as the strongest signals (for example, two attendees from acme.com means the client is Acme). Normalize the client name into a clean folder label.

Step 4. Place the recap in OneDrive. There is a configured parent folder called Customer Calls. Use Microsoft OneDrive Search Items to find an existing client subfolder under that parent that matches the inferred client name. If none exists, use Create Folder to make one named after the client. Then format the meeting summary plus action items as a single markdown document (sections: Summary, Top Takeaways, Action Items, Attendees, Fathom Link) and upload it with Upload File (Simple). Name the file YYYY-MM-DD - <Topic>.md using the meeting date and a short topic taken from the meeting title. Before uploading, check the target folder; if a file with that exact name is already there, skip the upload and reuse the existing file instead of creating a duplicate.

Step 5. Get a shareable link. Run Create Sharing Link on the uploaded (or already-existing) OneDrive file with a view-only scope so it can be opened from Notion.

Step 6. Log it in Notion. Append one row per meeting to the Notion database titled Customer Call Log using Create a Page. The database has these columns: Client (title), Meeting Date (date), Attendees (multi-select or rich text with names and companies), Top Three Takeaways (rich text, bullet list), Action Items (rich text, bullet list with owners when Fathom provides them), and OneDrive Doc (URL pointing at the sharing link from step 5). Only create the row after the OneDrive file is in place so the link always resolves.

Reliability rules. Process meetings one at a time so a single failure does not block the rest. If Fathom returns no meetings, exit cleanly without writing to OneDrive or Notion. Respect Fathom's 60-requests-per-minute limit and Microsoft Graph throttling (honor any Retry-After headers). At the end of the run, log how many calls were filed, how many were skipped as internal-only, and how many were skipped as duplicates.

Additional information

What does this prompt do?
  • Pulls every Fathom call from the last 24 hours, including the AI summary, action items, and who attended.
  • Drops a clean markdown recap into the matching client's OneDrive folder under your Customer Calls workspace, creating a new folder when a client is new.
  • Logs each call as a row in your Notion customer call database with the client, attendees, top takeaways, action items, and a link straight to the OneDrive doc.
  • Skips internal-only meetings and never uploads a duplicate file when a recap with the same name already exists.
What do I need to use this?
  • A Fathom account with API access turned on (Settings, API Access).
  • A Microsoft OneDrive account with a Customer Calls parent folder you want client subfolders to live under.
  • A Notion workspace with a Customer Call Log database shared with your General Input connection.
How can I customize it?
  • Change the run time or skip weekends if your team works a different schedule.
  • Point the agent at a different OneDrive parent folder, or rename the file pattern (for example, date plus client plus topic).
  • Adjust the Notion columns to match your database, or add fields like deal stage, account owner, or sentiment.
  • Tighten the internal-only filter by listing extra domains the agent should treat as your team.

Frequently asked questions

How does it know which client a call belongs to?
It looks at the meeting title and the email domains of external attendees, then matches them to your existing OneDrive client folders. When nothing matches, it creates a new folder named after the client so you can rename it later if you prefer a different label.
What happens to internal-only meetings?
If every attendee shares your company email domain, the meeting is skipped. Only calls with at least one external participant are filed and logged.
Will it ever upload the same call twice?
No. Before each upload the agent checks the target folder for a file with the same name. If one already exists it leaves it alone and moves on to the next meeting.
Do I need a paid Fathom plan?
You need a Fathom plan that includes API access. The agent only reads meetings the API key owner recorded or that are shared with their team.
Can I send the Notion row somewhere else, like Salesforce or HubSpot?
Yes. Tell the workflow author you want a CRM record created alongside the Notion row and it can add HubSpot, Salesforce, Pipedrive, or another tool.

Stop manually filing call notes after every customer meeting.

Connect Fathom, OneDrive, and Notion once, and Geni files every day's calls into the right place at 7pm.