Workflow overview
Why this workflow matters
Improves internal consulting operations and productivity. Relevant for managed services and support workflows.
Quick Overview This workflow ingests meeting audio or transcripts via a webhook or a 30-minute schedule, uses OpenAI (Whisper and GPT-4.1-mini) to extract summaries, decisions, and action items, creates tasks in Asana, logs each meeting to Google Sheets, and emails a recap through SendGrid. How it works Receives meeting data from a webhook request or runs every 30 minutes on a schedule. Normalizes meeting metadata (title, date, participants, audio URL, and transcript) and validates that either an audio URL or a sufficiently long transcript is present. If only audio is provided, sends the audio URL to OpenAI Whisper to generate a transcript and merges it back into the meeting context. Sends the transcript and metadata to OpenAI GPT-4.1-mini to extract a structured JSON summary, key topics, decisions, risks, and action items with owners and due dates. Parses the AI JSON safely, adds counts and timestamps, and waits at a review buffer before continuing. Splits action items into individual records and creates corresponding tasks in Asana for each one. Appends a meeting log row to Google Sheets and sends a summary email via SendGrid, then returns a JSON status response to the webhook caller. Setup Add OpenAI credentials and ensure the workflow can call the Audio Transcriptions API (Whisper) and the Chat model (gpt-4.1-mini). Create an Asana personal access token, replace YOUR_ASANA_PAT and YOUR_PROJECT_ID, and verify how assignees should be provided (the workflow sends the extracted owner string as assignee). Create a Google Sheets OAuth2 credential, replace YOUR_SHEET_ID, and ensure the spreadsheet contains a MeetingLog sheet with columns matching the appended values. Create a SendGrid API key, replace YOUR_SENDGRID_API_KEY, and update the to/from email addresses used in the email payload. If using the webhook trigger, copy the production webhook URL for meeting-intelligence-inbound and configure your meeting source to POST meetingId, title, date, participants, and either audioUrl or transcript.
Best fit
Categories
Services
Use cases
Need another direction?