AI Voice Agent + HubSpot Breeze: Auto-Update CRM From Every Call
HubSpot's Breeze agents now run on GPT-5 and emit Audit Cards for every CRM write. Here is how a CallSphere voice agent feeds Breeze with structured call data over the public CRM API.
HubSpot upgraded its Breeze Studio agents to GPT-5 in early 2026 and started emitting timestamped "Audit Cards" for every CRM property change. For voice agent teams that means HubSpot can now finally trust automated writes — and reps stop deleting them.
What the integration unlocks
flowchart TD
Client[MCP client · Claude Desktop] --> MCP[MCP server]
MCP --> Tool1[Tool: Calendar]
MCP --> Tool2[Tool: CRM]
MCP --> Tool3[Tool: KB search]
Tool1 --> SaaS1[(Calendly)]
Tool2 --> SaaS2[(Salesforce)]
Tool3 --> SaaS3[(Notion)]A reception call comes in. Before the prospect finishes the second sentence, CallSphere has matched their phone to the existing Contact, surfaced the last three Deal interactions to the agent's system prompt, and prepared a draft Note. By the time the call ends, the Contact has been updated with the new pain points, a Deal has been created (or moved to a later stage), and the Prospecting Agent in HubSpot has been queued to send a follow-up sequence. Every change shows up as an Audit Card so the rep sees exactly what the voice agent did and why.
How the HubSpot API exposes it
The relevant surface lives at api.hubapi.com/crm/v3. CallSphere primarily uses: POST /objects/contacts and PATCH /objects/contacts/{id} for upsert by phone, POST /objects/calls to log the call with the recording URL and transcript, POST /objects/notes for the structured summary, and POST /objects/deals plus POST /associations/v4/{from}/{to} to create and link a deal. The new POST /automation/v4/actions/run-agent endpoint (Private Beta in early 2026) lets a workflow trigger a Breeze agent — useful when a CallSphere call qualifies a lead and you want Prospecting Agent to immediately draft the next-touch email.
Hear it before you finish reading
Talk to a live CallSphere AI voice agent in your browser — 60 seconds, no signup.
OAuth scopes: crm.objects.contacts.write, crm.objects.deals.write, crm.objects.calls.write, automation, plus oauth.
How CallSphere implements it
CallSphere's Sales product ships a HubSpot connector out of the box. Inbound calls are matched by E.164-normalized phone; outbound calls from the browser dialer write back call metadata, disposition, and a transcript link. The Salon GlamBook deployment pushes booking confirmations as Notes on the matching Contact. Real Estate OneRoof creates Deal records with custom property fields (Budget__c, Suburb__c, Bedrooms__c). All 90+ CallSphere tools that touch a CRM emit identical structured data so HubSpot's Audit Cards stay clean.
Pricing: $149 Starter, $499 Growth, $1499 Scale. 14-day trial. 22% affiliate program.
Build steps
- Create a HubSpot Private App or use OAuth for multi-tenant CallSphere customers. Request the four scopes above.
- Configure the phone-number-to-Contact match rule. CallSphere normalizes to E.164; HubSpot stores in user-formatted local strings, so use a serverside webhook to keep them aligned.
- Define a custom
callsphere_call_idproperty on the Contact and on the Call object so duplicate-call attempts are idempotent. - Add a HubSpot workflow that triggers Prospecting Agent ("Run Agent" action) when a CallSphere call posts disposition =
qualified. - Subscribe to HubSpot webhooks for
contact.propertyChangeso mid-call the voice agent learns about updates the rep made manually. - Verify Audit Cards in the Contact timeline. Every CallSphere write should have a clear "Updated by CallSphere voice agent" stamp with the source recording URL.
Code snippet
// Upsert a HubSpot Contact + log a call after a CallSphere voice turn
const upsert = await fetch("https://api.hubapi.com/crm/v3/objects/contacts/upsert", {
method: "POST",
headers: { Authorization: `Bearer ${token}`, "Content-Type": "application/json" },
body: JSON.stringify({
inputs: [{
idProperty: "phone",
id: caller.e164,
properties: {
firstname: extracted.firstName,
lastname: extracted.lastName,
callsphere_last_call_summary: turn.summary,
lifecyclestage: "salesqualifiedlead",
},
}],
}),
});
FAQ
Does this work on the free HubSpot tier? Read endpoints work; the "Run Agent" workflow action requires a paid Hub. Breeze Agents themselves run on HubSpot Credits as a pay-as-you-go add-on.
Still reading? Stop comparing — try CallSphere live.
CallSphere ships complete AI voice agents per industry — 14 tools for healthcare, 10 agents for real estate, 4 specialists for salons. See how it actually handles a call before you book a demo.
What about the Voice/Calling Customer Agent Beta? That is HubSpot's own outbound voice channel. CallSphere is complementary — we handle the live conversation; Breeze handles the post-call email follow-up sequence.
Do Audit Cards work for our writes? Yes. Any write authenticated as your CallSphere app shows up as a card timestamped with the source action. We recommend setting your app's display name to something obvious like "CallSphere Voice Agent."
Can the voice agent read Deals mid-call? Yes. Average HubSpot read latency from CallSphere us-east-1 is 140-220ms. We cache hot Contacts at the CallSphere edge for sub-50ms.
How do I get started? Start a trial, connect HubSpot in Settings, and run an inbound test call. See pricing.
Sources
Try CallSphere AI Voice Agents
See how AI voice agents work for your industry. Live demo available -- no signup required.