Turn every Retell AI call into a HubSpot update and Slack briefing

When a Retell AI call finishes and analysis is ready, update the matching HubSpot contact and post a full briefing to Slack.

Agentic Task
Retell AIHubSpotSlackSalesOperationsNotifications & AlertsMeeting WorkflowsData Sync
PromptCreate

Build an agent workflow that runs every time a Retell AI voice call finishes and its post-call analysis is ready. The trigger is a Retell AI webhook subscribed to the call_analyzed event, so the workflow fires the moment Retell has produced the transcript, summary, sentiment, and any custom analysis fields.

When the webhook fires, use Retell AI's Get Call operation with the call_id from the event to pull the full call details: transcript, recording URL, summary, user sentiment, call successful flag, call duration, from_number, to_number, agent name, and any custom analysis data fields configured on the agent.

First guard: if the call duration is under 30 seconds, stop the workflow with a short log line like "skipped short call (voicemail or mis-dial)" and do nothing else. This keeps voicemails and hang-ups out of Slack and out of the CRM.

Otherwise, take the caller's phone number (the from_number for inbound calls, the to_number for outbound calls) and use HubSpot's Search Contacts operation to find the matching contact by phone or mobilephone property. Normalize the number to E.164 before searching. If multiple contacts match, pick the most recently updated one.

If a HubSpot contact is found, use HubSpot's Update Contact operation to write the call summary, sentiment, disposition, and recommended next step onto the contact using appropriate custom properties (for example last_call_summary, last_call_sentiment, last_call_disposition, next_step, last_call_at). Then use HubSpot's Create Note operation to create a note associated with that contact containing the full transcript and the recording URL, so the entire history stays on the contact record.

Then use Slack's Send a Message operation to post a formatted briefing to the sales channel (make the channel configurable, default #sales). The Slack message should include: contact name and company (if found), sentiment score, a two to four bullet key points list, any blockers or objections raised, the recommended next step, the recording URL, and a link to the HubSpot contact. If a contact owner is set on the HubSpot record and they have a Slack account, also send the same briefing as a direct message to that owner.

If no matching HubSpot contact is found, skip the HubSpot update and note steps but still send the Slack briefing. In that case, label the message clearly as an unassigned call and include the phone number, agent name, sentiment, summary, key points, and recording URL so a rep can decide whether to create the contact.

Make the following user-facing settings configurable at workflow setup: the Slack channel for briefings, whether to also DM the contact owner, and the minimum call duration in seconds (default 30).

What does this prompt do?

  • Kicks off automatically the moment Retell AI finishes analyzing a call, so briefings land while the conversation is still fresh.
  • Pulls the transcript, recording link, summary, and sentiment from the call and writes them onto the matching HubSpot contact.
  • Attaches the full transcript and recording to the contact record as a HubSpot note so nothing is lost.
  • Sends a formatted Slack briefing to your sales channel with contact name, sentiment, key points, blockers, and the recommended next step.
  • Skips very short calls like voicemails and mis-dials so your channel stays signal, not noise.

What do I need to use this?

  • A Retell AI account with a workspace you can create an API key in.
  • A HubSpot account with permission to search and update contacts and create notes.
  • A Slack workspace and the channel or person you want briefings sent to.

How can I customize it?

  • Change the Slack destination to a specific deals channel, a per-team channel, or a direct message to the contact owner.
  • Adjust the minimum call length so you filter out voicemails or short callbacks that do not need a briefing.
  • Tweak which HubSpot properties get updated (sentiment, disposition, next step, lifecycle stage) to match your pipeline.

FAQs

When does this run?
It runs the moment Retell AI finishes analyzing a call. Retell sends a signal to your workflow as soon as the transcript and summary are ready, so briefings usually arrive within seconds of the call ending.
What happens if the caller is not in HubSpot yet?
The workflow still posts the Slack briefing and flags the call as unassigned so a rep can decide whether to create the contact, log the outreach, or ignore it.
Will voicemails and mis-dials flood my Slack channel?
No. Calls under thirty seconds are skipped by default. You can raise or lower that threshold to match how your team handles short calls.
Can I send the briefing to the specific rep who owns the contact instead of a shared channel?
Yes. You can route the message to the contact owner as a direct message, keep it in a shared sales channel, or do both.
Does the transcript get saved on the contact record?
Yes. The full transcript and a link to the call recording are attached to the HubSpot contact as a note, so anyone opening the record later has the complete history.

Related templates

Call overdue Xero customers with an AI collections agent

Every weekday at 10am, an AI voice agent phones your most overdue Xero accounts, logs what each customer promised, and reports back to finance in Slack.

LiveKit
Xero
Deepgram
+2
Agentic Task
Win back LiveChat visitors whose chats went unanswered

Every couple of hours we find the chats your team never answered, email those visitors a real reply, and hand the sensitive ones to a support lead.

LiveChat
Gmail
Slack
Agentic Task
Turn Mailjet email clicks into ranked HubSpot follow-ups

Twice a day we spot the people clicking your pricing and demo pages, create a follow-up task for their owner, and post a ranked recap to Slack.

Mailjet
HubSpot
Slack Bot
Agentic Task
iMessage campaign console with pre-flight checks and delivery board

Build every text campaign in one screen: check who is actually reachable, see a realistic send plan, then watch delivery land row by row.

LoopMessage
Google Sheets
HubSpot
App
Chat quality review board for LiveChat support leads

Score last week's finished live chats against one rubric, let an AI grader draft the notes with quotes, and send coaching straight to the agent.

LiveChat
Slack
General Input Database
App
A searchable RFP answer library your bid team drafts from

Every proposal you have ever submitted in one searchable archive, with the closest past answers lined up against each question in a new RFP.

General Input Storage
General Input Database
Mistral AI
+2
App

Stop losing what happened on the call.

Connect Retell AI, HubSpot, and Slack once, and Geni files every completed call for you automatically.