High-intent CallRail buying signals to HubSpot and Slack

By General Input

Every 15 minutes during business hours, scan completed CallRail calls, flag the high-intent ones from the transcript, and alert HubSpot and Slack with the next step.

Integrations

  • CallRail
  • HubSpot
  • Slack Bot

Type

Agentic Task

Categories

  • Sales
  • Operations

Build an agent workflow that detects high-intent buying conversations in CallRail and fans the alert out to HubSpot and Slack. It should run on a cron every 15 minutes during business hours (default Monday to Friday, 8am to 6pm in the user's timezone, ask me if unsure).

On each run, use CallRail's List All Calls to pull completed inbound calls created since the last successful run (keep a watermark and overlap by a couple of minutes so nothing slips through). For each candidate, call Retrieve a Single Call with the fields query parameter set to include transcription, keywords, tags, and call highlights. CallRail only returns transcripts when fields=transcription is explicitly requested, and transcription must already be enabled per tracking number, so surface that as a setup requirement in the run notes when a call comes back with no transcript.

For every call with a transcript, the agent reads the conversation and decides whether it is a high-intent buying call. The signals to look for: a decision maker on the line, a stated budget or timeline, an explicit ask for a demo, pricing, a quote, or a proposal, frustration with a current vendor or a named competitor, and urgency language like "this week", "by end of quarter", or "ready to move". A call must hit at least one strong signal to qualify. Routine calls (existing customer support, wrong number, vendor pitches, voicemails with no content) must be skipped so the Slack channel stays signal-heavy. The agent should write a 2 to 3 sentence summary of the call plus a short bulleted list of the exact buying signals that triggered the alert, and a single recommended next step (return call, send proposal, schedule demo).

For each hot call, normalize the caller's phone number to digits-only and use HubSpot Search Contacts to find a matching contact by phone. If a contact is found, use HubSpot Create Note to attach a note to that contact with the AI summary, the triggering signals, the tracking number that was dialed, and a link to the call in CallRail. Then use HubSpot Create Task to create a task associated to the same contact with a same-day due date, the recommended next step as the subject, and a one-line body. Assign the task to the owner of the contact's primary deal when one exists, otherwise to the contact owner. If no HubSpot contact matches, skip the HubSpot writes but still post to Slack and flag in the message that the caller is not yet in the CRM.

Then use Slack (bot) Send a Message to post to the sales channel (ask me which channel to use on first run). The message should include the caller's name and phone number, the tracking number they dialed, a one-paragraph summary, the bulleted buying signals, the recommended next step, and a link back to the call in CallRail. Use mrkdwn formatting and keep it tight enough to read on a phone.

Dedupe by CallRail call_id so the same call never alerts twice across runs, even if the watermark window overlaps or the agent re-processes a batch. Persist the set of processed call_ids in the agent's memory or workflow state.

At the end of every run, log a one-line summary: how many calls were scanned, how many had transcripts, how many qualified as high intent, and how many were posted to HubSpot and Slack.

Related prompts

Explore more prompts
A brand asset library your marketing team actually searchesTurn Mailjet email clicks into ranked HubSpot follow-upsClean out the Looker dashboards and Looks nobody opensLiveKit live operations console for room moderationWake up dormant Keap leads with a researched reasoniMessage campaign console with pre-flight checks and delivery boardLiveChat coverage board for planning next week's shiftsPhone routing control panel for LiveKit voice agentsA searchable RFP answer library your bid team drafts fromLinkedIn Ads budget pacing dashboard for every client account