Auto-update HubSpot deals from Read AI meetings

When a sales call ends in Read AI, log the recap on the HubSpot deal, file action items as tasks, and ping the deal owner in Slack.

Agentic Task
Read AIHubSpotSlack BotSalesOperationsMeeting WorkflowsData SyncNotifications & Alerts

Build an agent workflow that keeps my HubSpot deals up to date automatically after every customer call I run through Read AI. The trigger is a Read AI webhook firing on the meeting_end event.

When the webhook fires, the agent should:

1. Pull the meeting from Read AI by calling Get Meeting with the session_id from the webhook payload. Expand summary, action_items, and key_questions so the agent has the full recap, the owner-attributed action items, and the questions the prospect asked.

2. Identify the prospect. Take the external participants from the meeting (anyone whose email domain is not my own company's domain) and use Search Deals in HubSpot to find an open deal associated with those email domains or with a contact at that domain. Prefer deals in an active pipeline stage (not closed-won or closed-lost). If multiple matches, pick the most recently updated open deal. If no deal matches, stop and post a short Slack message to me saying "no matching HubSpot deal for <meeting title>" so I can wire it up manually.

3. Log the recap. Call Create Note in HubSpot with the meeting summary and the key questions formatted as a clean recap, and associate the note with the matched deal so it shows up on the deal timeline. Include a link back to the Read AI meeting page so reps can play back the call.

4. File the action items. For each action item that has a clear owner on my side, call Create Task in HubSpot. Set the task subject to the action item, associate it with the deal, assign it to the matching HubSpot owner (look up via List Owners or Get Owner by email), and set a sensible due date (default to three business days out, or sooner if the action item text says "today", "tomorrow", "by Friday", etc.). Skip action items assigned to the prospect side.

5. Move the deal stage when the meeting clearly indicates a transition. If the summary makes it obvious that a demo just happened, move the deal to the "Demo completed" stage. If a contract or order form was sent or discussed as sent, move it to "Contract sent". Be conservative: only call Update Deal when the signal is unambiguous, and never move backwards. Include the inferred new stage in the recap note so reps can see why it moved.

6. Notify the deal owner. Look up the deal owner's email in HubSpot, find their Slack user with Look Up User by Email (Slack Bot), and use Send a Message to DM them a one-paragraph recap: who the call was with, the headline outcome, how many tasks were created, whether the stage moved, and a link back to the HubSpot deal.

Tone for the recap note and the Slack message: concise, factual, no fluff. The goal is to keep our CRM honest without anyone hand-writing notes after a call.

Additional information

What does this prompt do?
  • Watches Read AI for the end of a sales call and pulls the full summary, action items, and key questions.
  • Finds the matching open deal in HubSpot using the prospect's email domain and logs a clean recap note on the deal timeline.
  • Creates a HubSpot task for each action item with the right owner and a sensible due date.
  • Moves the deal stage when the call clearly indicates a transition like a demo completed or a contract sent.
  • DMs the deal owner in Slack with a one-paragraph recap and a link back to the deal.
What do I need to use this?
  • A Read AI account that records your sales meetings.
  • A HubSpot login with permission to read and update deals, notes, and tasks.
  • A Slack workspace where Geni can DM your sales reps.
How can I customize it?
  • Change which pipeline or stages count as "open" when picking the deal to update.
  • Adjust the default due date for action items, or map specific phrases like "by Friday" to your own conventions.
  • Pick which Slack channel or DM the recap goes to, and tweak the format of the one-paragraph summary.

Frequently asked questions

What happens if Read AI captures a call that doesn't match any open deal?
The agent skips the CRM updates and sends you a short Slack heads-up so you can either create the deal manually or ignore the call. Nothing gets written to HubSpot until there's a match.
Will it ever overwrite notes or tasks I already wrote myself?
No. The agent only creates new notes and new tasks. It never edits or deletes existing ones. The only field it updates on the deal itself is the stage, and only when the meeting clearly indicates a transition.
How does it decide who owns each action item?
Read AI attributes action items to specific speakers. The agent only files action items that belong to someone on your side, matches their email to a HubSpot owner, and assigns the task to that owner. Action items for the prospect are left out.
Can I use this with Zoom, Google Meet, and Teams?
Yes. Read AI captures meetings across Zoom, Google Meet, Microsoft Teams, and Webex, so any call your Read AI notetaker joins will flow through this workflow.
What if a meeting is internal and shouldn't touch the CRM?
The agent only acts when there's at least one external participant whose email domain matches an open HubSpot deal. Fully internal calls are skipped automatically.

Stop writing CRM recap notes by hand.

Connect Read AI, HubSpot, and Slack once, and Geni keeps every deal honest after every call.