Hourly meeting recordings to Notion briefs and Slack recaps

Every hour, transcribe new meeting recordings from a Google Drive folder, write a structured brief to Notion, and post a recap in Slack.

Agentic Task
OpenAIGoogle DriveNotionSlack BotOperationsProductMeeting WorkflowsAI ReportsDocument Processing
PromptCreate

Build me an agent workflow that turns new meeting recordings in Google Drive into structured briefs in Notion and short recaps in Slack. It should run on a cron trigger every hour.

On each run, use Google Drive's List Files to look inside a folder named Meeting Recordings (I'll pick it during setup). Filter to files whose mimeType starts with audio/ or video/ and whose createdTime is within the last hour. For each new file, use Google Drive's Download File Content to pull the raw bytes.

Send the audio to OpenAI's Create Audio Transcription with the Whisper model to get the full transcript. Then call OpenAI's Create Response with a JSON schema (text.format) that extracts: an executive summary (2 to 4 sentences), key decisions with the owner of each decision, action items with an assignee and a due date when one is stated, open questions still to resolve, and follow-up items or next steps. Prefer a fast general-purpose GPT model for the extraction step.

For each processed recording, use Notion's Create a Page to add a new entry to my Meetings database. The page should include the meeting title (derive from the file name if none is obvious), the meeting date (use the recording's createdTime), the executive summary, action items rendered as to_do blocks (Notion checkboxes) with the assignee and due date inline, decisions and open questions as bulleted lists, and the full transcript inside a toggle block so the page stays readable.

Finally, use Slack Bot's Send a Message to post a short recap in a team channel I'll pick during setup. The message should include the meeting title, a one-line summary, up to five action items with owners, and a link to the Notion page.

Two important guardrails. First, skip any file smaller than about 1 MB so accidental one-second uploads or empty files never trigger a run. Second, de-duplicate by remembering which Drive file IDs have already been processed (store the IDs in workflow memory) so that if the same file shows up on a later hourly run, or if a run reprocesses, we do not create duplicate Notion pages or duplicate Slack recaps.

If a step fails on a single file (Whisper errors, Notion permission issue, etc.), log it and continue with the remaining files rather than aborting the whole run.

Additional information

What does this prompt do?
  • Watches a Google Drive folder called Meeting Recordings for new audio or video files uploaded in the last hour.
  • Transcribes each recording with OpenAI Whisper, then uses OpenAI to extract an executive summary, decisions with owners, action items with assignees and due dates, open questions, and next steps.
  • Creates a fresh page in your Notion Meetings database with the title, date, summary, action-item checkboxes, and the full transcript tucked inside a toggle.
  • Posts a short recap plus the Notion link in a Slack channel so the team sees follow-ups within minutes of a meeting ending.
What do I need to use this?
  • A Google account with access to the Drive folder your meeting recordings land in (Zoom, Meet, Fathom, Otter, phone dictation apps, etc. can all export here).
  • An OpenAI account with billing enabled for Whisper transcription and structured summaries.
  • A Notion workspace with a Meetings database that has properties for title, date, and action items.
  • A Slack workspace and the channel you want the recap posted in.
How can I customize it?
  • Change how often it runs, from every hour to every fifteen minutes or once a day, so it matches how quickly your team wants follow-ups.
  • Point it at a different Drive folder, a different Notion database, or a different Slack channel per team or per client.
  • Adjust the brief itself, for example ask for risks and blockers, sentiment, or a customer-quote section instead of the default summary.
  • Set a minimum file size so accidental one-second uploads are skipped, and tune the language or vocabulary hints Whisper uses for your industry.

Frequently asked questions

Where do my meeting recordings need to live?
In a Google Drive folder you designate, typically called Meeting Recordings. Zoom, Google Meet, Fathom, Otter, and most phone dictation apps can save recordings straight to Drive, so this usually just works with your existing setup.
Will it process the same meeting twice if the workflow runs again?
No. It remembers which Drive files it has already handled and skips them on later runs, so you will not end up with duplicate Notion pages or repeated Slack recaps.
What does the Notion page look like?
A new entry in your Meetings database with the meeting title and date, an executive summary, decisions with owners, action-item checkboxes with assignees and due dates, open questions, and the full transcript inside a collapsible toggle so the page stays clean.
Can I use this for one-on-ones and sales calls, not just team meetings?
Yes. Point it at any Drive folder you use for a specific meeting type, or run separate copies for team standups, sales calls, and customer interviews so each type lands in its own Notion database.
How accurate is the transcription?
OpenAI Whisper is one of the strongest general-purpose speech models available, and it handles most accents and business vocabulary well. You can also give it a short list of names or product terms as hints to sharpen accuracy on jargon.

Stop writing meeting notes by hand.

Connect Google Drive, OpenAI, Notion, and Slack once, and every new recording turns into a full brief and team recap within the hour.