Auto-log sales call recordings from Google Drive to HubSpot

By General Input

Drop a call recording or voice memo in a shared Google Drive folder and Geni transcribes it, drafts the recap, and files it on the right HubSpot contact.

Integrations

  • Google Drive
  • ElevenLabs
  • HubSpot
  • Slack

Type

Agentic Task

Categories

  • Sales
  • Operations

Build me an agent that watches a Google Drive folder for new sales call recordings and voice memos, transcribes each one, and logs a clean recap against the right HubSpot contact so reps never have to write call notes by hand.

Trigger: cron, every 15 minutes.

On each run:

1) Call Google Drive List Files against a configured folder ID using a query that filters to audio and video MIME types (mp3, m4a, wav, mp4) and files modified since the last successful run. Track the last-run timestamp in the agent's own state. If nothing new is found, exit quietly.

2) For each new file: call Google Drive Download File Content to fetch the bytes, then send the audio to ElevenLabs Speech to Text (Transcribe) with speaker diarization enabled so each speaker is labelled.

3) From the transcript, draft a short structured recap with these sections: customer's main points, objections raised, action items committed (with owner if mentioned), and overall sentiment (positive, neutral, negative with a one-line reason). Keep it to roughly 150 to 250 words.

4) Identify the prospect. Intro lines of sales calls usually contain a first and last name and sometimes an email or company. Extract the most likely prospect name and email from the opening minute of the transcript. Call HubSpot Search Contacts and try to match by email first, then by full name. If exactly one contact matches with high confidence, proceed.

5) When a contact is matched: call HubSpot Create Note with the recap as the note body, associate it to that contact, and include a link back to the original Google Drive file at the bottom of the note. Then call Slack Send a Message to a configured sales channel with a one-paragraph 'call logged' update: prospect name, the matched HubSpot contact link, the headline takeaway, and the action items.

6) When no contact matches, or multiple contacts match and the agent is not confident: do NOT guess and do NOT create the note. Post the recap to the same Slack channel with a clear 'needs routing' header, list the candidate matches if any, and ask the rep to reply with which HubSpot contact to attach it to.

7) When the transcript has no recognizable prospect identity at all (no name, no email, no company in the opening minute), skip filing entirely and post a short Slack note that the recording was skipped and which filename it was, so the rep can rename or move it.

Configuration the user should be asked for: the Google Drive folder ID to watch, the Slack channel for recap and routing posts, and an optional recap style preference (default to plain bullets; offer BANT or MEDDIC as alternatives).

Reliability rules: never re-process a file that was already handled (track processed file IDs in state), never invent a HubSpot contact, and prefer asking the rep over auto-attaching when the match confidence is low.

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentWin back LiveChat visitors whose chats went unansweredTurn Mailjet email clicks into ranked HubSpot follow-upsiMessage campaign console with pre-flight checks and delivery boardChat quality review board for LiveChat support leadsA searchable RFP answer library your bid team drafts fromSee which target accounts just started advertising on LinkedInAccount health board that puts product usage next to your CRMLook up a customer's full chat history mid conversationLusha prospecting workbench with credit-safe reveals