File every Grain recording into a Notion meetings database
The moment a Grain recording finalizes, log it as a structured row in your Notion meetings database with notes and highlights attached.
Build a deterministic, code-based workflow that files every new Grain recording into my Notion meetings database the moment it finalizes. No classification or judgement, just a clean structured archive of every meeting.
Trigger: a Grain webhook. Register it via Grain's Create Webhook operation on the recording.added event so the workflow runs as soon as a recording is finalized.
Step 1: call Grain's Get Recording operation using the recording ID from the webhook payload. Include the transcript, intelligence notes as markdown, highlights, participants, and AI summary in the response.
Step 2: call Notion's Create a Page operation, with the parent set to my meetings database. Map the recording fields one to one onto the database properties: Title = meeting title, Date = recording start time, Duration = length in minutes, Participants = comma-joined list of participant names, Source = the meeting platform (Zoom, Google Meet, Microsoft Teams, or Webex), Recording URL = a link back to the Grain recording.
Page body: drop the markdown intelligence notes in first, then a Highlights heading, then a bulleted list where each bullet is the highlight text linked to its timestamped URL back to the Grain recording.
Keep it deterministic: every step is a fixed CRUD call with known property mapping. No LLM steps, no branching beyond what the property mapping needs. Prompt me for the Notion database ID and confirm the property names in my database before wiring it up.
Additional information
What does this prompt do?
- Watches Grain for new recordings and fires the moment one finalizes, no nightly batch and no missed calls.
- Pulls the full meeting payload from Grain: title, date, duration, participants, AI summary, intelligence notes, and highlights.
- Creates a new page in your Notion meetings database with every field mapped one to one, so the row is searchable and ready to filter.
- Drops the markdown intelligence notes into the page body and lists each highlight as a bulleted timestamp link back to the moment in Grain.
What do I need to use this?
- A Grain account with API access (Business or Enterprise plan to include highlights, participants, and AI summary).
- A Notion workspace with a meetings database you can share with General Input.
- Your Notion meetings database set up with the columns you want to fill in (Title, Date, Duration, Participants, Source, Recording URL).
How can I customize it?
- Swap which Notion database the meeting lands in, or branch to a different database based on the meeting source (Zoom, Meet, Teams, Webex).
- Add or rename properties to match your existing meetings database schema, like Owner, Account, or Deal.
- Filter out meetings under a certain length, internal recordings, or calls that lack a transcript so only customer conversations get archived.
Frequently asked questions
Does this work with Grain's free plan?
How fast does the meeting show up in Notion?
Will it work for Zoom, Google Meet, Microsoft Teams, and Webex calls?
What if I already have a meetings database in Notion?
Can I add my own properties to the Notion row, like Account or Deal?
Stop hand-logging every call into Notion.
Connect Grain and Notion once, and every recording lands in your meetings database the moment it finalizes.