New Plan your 2027 growth with the free Marketing Projection Template
HubSpot

What an AI agent can do inside HubSpot

A field guide from the team that runs these agents every day: every object an agent can read and write, the API calls behind each job, three agents explained call by call, and the mistakes we learned on live pipelines.

Updated 29 October 2026 · API details checked against HubSpot's developer docs

The short answer

An AI agent connected to HubSpot can find records that changed, read the full context behind them (deals, contacts, emails, meetings, notes, tasks), decide what should happen next, and write the result back as tasks, notes, property updates, owner changes, list memberships or sequence enrollments. HubSpot workflows run fixed rules. An agent makes the judgement call those rules can't, then leaves its work where your team already looks. You don't have to build or host one yourself: we run them for you as a service.

Five ways an agent plugs into HubSpot

Which one you use decides what the agent can see, how fast it reacts and who it acts as. Most production agents combine the first three.

1

Private app + REST API

A private app token gives the agent scoped access to the CRM API. When we run an agent for you, it lives on our servers, runs on a schedule and calls your HubSpot directly.

Best for: Custom agents that sweep the pipeline, write tasks and keep their own log.

Watch out: You pick the scopes. Leave one out and the agent quietly sees less than you think.

2

Webhooks

HubSpot posts an event to the agent when something changes, such as a new contact or a deal moving stage.

Best for: Reacting in near real time instead of polling: routing, enrichment, stage-change checks.

Watch out: For private apps, subscriptions are set in the app settings, not the API. HubSpot retries a failed delivery up to 10 times over 24 hours, so handle repeats.

3

Workflow actions

A HubSpot workflow decides when, then calls the agent with a “Send a webhook” or “Custom code” action.

Best for: Letting RevOps keep enrollment rules in HubSpot while the agent does the judgement work.

Watch out: Both actions need Data Hub (formerly Operations Hub) Professional or Enterprise.

4

Remote MCP server

Claude, ChatGPT and other AI assistants connect to mcp.hubspot.com over OAuth and read or update records as the signed-in user.

Best for: A person asking questions of their CRM and making changes with an AI at their side.

Watch out: It acts as the user, in a chat. It is not built for scheduled, unattended jobs.

5

Breeze agents & Agent Builder

HubSpot's own agents run inside the portal and are paid for with HubSpot Credits. Agent Builder (formerly Breeze Studio) customises them.

Best for: Jobs that live entirely inside HubSpot data, on a tier that includes them.

Watch out: Availability and credit pricing change often. Check your plan before you design around one.

What it can read, write and react to

Every CRM object is open to an agent through the API, as long as the private app has the scope for it. This is the map we start every HubSpot agent from.

ObjectThe agent readsThe agent writesIt can react to
ContactsRole, lifecycle stage, source, form fills, page views, ownerEnriched fields, fit score, lifecycle stage, ownerCreated, property changed, form submitted
CompaniesIndustry, size, domain, tech, associated contacts and dealsEnriched firmographics, ICP tier, account ownerCreated, property changed
DealsStage, amount, close date, owner, next step, last contact, historyStage, next step, risk flag, close date, custom AI fieldsCreated, stage changed, any property changed
TasksOpen and completed tasks, due dates, ownersNew follow-up tasks with owner, due date, priority and contextCreated, completed
NotesRep notes and pasted call summariesBriefs, research, meeting recaps, agent reasoningCreated
Meetings & callsUpcoming and held meetings, outcomes, call notesLogged outcomes, prep briefs attached to the recordBooked, outcome set
EmailsOne-to-one email threads logged to the CRM (needs sales-email-read)Logged drafts and sent emailsLogged, reply received
TicketsStatus, priority, conversation history, associated companyCategory, priority, summary, ownerCreated, status changed
Owners & pipelinesOwner IDs and teams, stage IDs, labels and probabilitiesNothing: the agent reads these to write valid values elsewhereNone
Lists & sequencesList membership, sequence statusAdds records to static lists, enrolls contacts in sequencesList membership changed

The API calls behind every agent

Whatever the agent's job, it makes the same kinds of call in the same order: find, read, write, connect, and sometimes act beyond the record. These are the endpoints that matter, with the limits that shape the design.

Find

Work out what changed and what exists before doing anything.

POST /crm/v3/objects/{object}/search

Find deals changed since the last run (hs_lastmodifieddate ≥ cursor), open deals in a pipeline, contacts without an owner.

200 results per page, 10,000 per query, 5 requests a second, up to 5 filter groups of 6 filters (18 in total). New writes take a few moments to show up.

GET /crm/v3/pipelines/deals

Map stage IDs to labels and probabilities, so the agent knows that 1094523 means “Proposal sent”.

GET /crm/v3/owners

Turn owner IDs into names and emails, and find owners who have left.

Add archived=true to see deactivated owners. Assign by owner id, not userId.

GET /crm/v3/properties/{object}

List the fields that exist and the allowed values of each dropdown, so the agent only writes values HubSpot accepts.

Read

Pull the full context for each record the agent will judge.

GET /crm/v3/objects/deals/{dealId}

Read one deal with the properties and associations you ask for (?properties=…&associations=contacts,companies).

POST /crm/v3/objects/{object}/batch/read

Read up to 100 records per call: deals, emails, meetings, notes or tasks.

Batch calls are what keep a full-pipeline sweep inside the rate limit.

GET /crm/v4/objects/deals/{dealId}/associations/{toObject}

Follow a deal to its contacts, emails, meetings, notes and open tasks.

POST /crm/v3/objects/emails/batch/read

Read the one-to-one emails on a deal, to see what was sent and when.

Needs the sales-email-read scope. Without it the agent can't see emails at all.

Write

Put the result where the team already works.

POST /crm/v3/objects/tasks

Create a follow-up task with subject, body, owner, priority and due date, linked to the deal in the same call.

hs_timestamp (the due date) is required. Task → deal association type ID is 216.

POST /crm/v3/objects/notes

Log a brief, a meeting recap or the agent's reasoning on the record.

hs_timestamp is required; the body holds up to 65,536 characters. Note → deal is 214.

PATCH /crm/v3/objects/{object}/{id}

Update properties: next step, risk flag, lifecycle stage, owner, enriched fields.

POST /crm/v3/objects/{object}/batch/update

Update up to 100 records per call, such as a cleanup pass over contacts.

POST /crm/v3/properties/{object}

Create custom properties the agent owns, like “AI next step” or “AI risk”, so its output never overwrites a rep's fields.

Connect

Link records so the work shows up on the right timeline.

PUT /crm/v4/objects/{from}/{id}/associations/default/{to}/{toId}

Attach a record to another with HubSpot's default label, such as a note to a company.

Act beyond the record

Start the next step outside the CRM objects themselves.

POST /automation/sequences/2026-09/enrollments

Enroll a contact in a sales sequence from a rep's inbox.

Needs a Sales Hub or Service Hub Professional or Enterprise seat and user-level access. Limited to 1,000 enrollments per inbox per day.

PUT /crm/v3/lists/{listId}/memberships/add

Add records to a static list that a workflow or campaign already uses.

One real call: create a follow-up task

The task, its owner and its link to the deal go in a single request. hs_timestamp is the due date and the only required property; 216 is HubSpot's default task-to-deal association.

POST /crm/v3/objects/tasks
{
  "properties": {
    "hs_timestamp": "2026-11-04T09:00:00Z",
    "hs_task_subject": "Send 3-site pricing to Brightlane",
    "hs_task_body": "Dana asked for 3-site pricing on 22 Oct. No pricing email sent since.",
    "hs_task_priority": "HIGH",
    "hs_task_type": "EMAIL",
    "hubspot_owner_id": "81234567"
  },
  "associations": [{
    "to": { "id": "18342207551" },
    "types": [{
      "associationCategory": "HUBSPOT_DEFINED",
      "associationTypeId": 216
    }]
  }]
}

Association type IDs you'll use most

FromToType ID
TaskDeal216
TaskContact204
TaskCompany192
NoteDeal214
NoteContact202
NoteCompany190
MeetingDeal212
CallDeal206
EmailDeal210

Rate limits for a private app

TierBurstPer day
Free & Starter100 per 10 s250,000
Professional190 per 10 s625,000
Enterprise190 per 10 s1,000,000

The daily cap is shared by every app on the portal. Search has its own limit of 5 requests a second. The API Limit Increase add-on raises the burst to 250 per 10 seconds.

Scopes to ask for

ScopeWhy the agent needs it
crm.objects.deals.read / .writeRead the pipeline and update deal fields
crm.objects.contacts.read / .writeRead people on the deal, enrich and route contacts
crm.objects.companies.read / .writeAccount context and firmographic enrichment
crm.objects.owners.readAssign work to the right person
crm.schemas.deals.read / .writeRead field definitions, create agent-owned properties
sales-email-readSee one-to-one emails. Without it, “last contact” checks go blind
crm.lists.read / .writeHand records to lists that drive workflows
automation.sequences.read + .enrollments.writeEnroll contacts in sequences

Paths shown are the v3/v4 forms most integrations call. HubSpot also publishes date-versioned paths (for example /crm/objects/2026-09/deals/search). Check the developer docs for your version.

Three agents, call by call

How the calls above become a working agent. The first two are patterns we run on live client pipelines today; the outputs on the right show what lands in HubSpot or the inbox.

Make sure every open deal that moved, or went quiet, has a clear next step owned by the right rep.

Trigger
Every 30 minutes on weekdays, plus a Monday sweep of every open deal
Control
Draft for two weeks, then act and log
  1. POST /crm/v3/objects/deals/search

    Find open deals with hs_lastmodifieddate after the last run's cursor.

  2. POST /crm/v3/objects/deals/batch/read

    Read stage, amount, close date, owner, next step and last contact for each.

  3. GET /crm/v4/objects/deals/{id}/associations/{type}

    Follow each deal to its emails, meetings, notes and open tasks.

  4. POST /crm/v3/objects/emails/batch/read

    Read what was actually sent after the last meeting, so finished work isn't tasked again.

  5. Agent logic

    The model decides: does this deal need a follow-up, what exactly, and how urgent? It must cite the email, meeting or note behind each decision.

  6. Agent logic

    Compare each proposed task with the deal's open tasks, the rep's own included, and drop near-duplicates.

  7. POST /crm/v3/objects/tasks

    Create the task for the deal owner, linked to the deal (216), with the evidence in the body.

  8. Agent logic

    Log every decision, including “no action”, and move the cursor forward.

What lands · sample output, fictional data
Task · created by Deal follow-up agent
High Email Due Tue 4 Nov · suggested

Send 3-site pricing to Brightlane

Why: In the 22 Oct call, Dana Whitfield asked for pricing covering three sites. The only email since (23 Oct) shared the demo recording; no pricing has gone out.

DealBrightlane · multi-site rollout
StageProposal sent · €48,000
OwnerSam Ortega
Skipped“Share demo recording”, already done 23 Oct

Which of these does your portal need first?

Run the free HubSpot Agent Map in your own AI and get three agent specs for your setup.

Map my agents

24 agents we can run in your HubSpot

Each one is a trigger, a judgement and a write back to HubSpot. We set it up, run it and tune it; your team gets the result. Pick the team, then the leak.

24 agents

Deal follow-up

Deal moved or went quiet → task for the owner with the next step and the evidence

Sales leaders

Pipeline briefing

Friday → one-page brief: changes, risks, next week's meetings

Sales leaders

Close-date realist

Close date passed or no activity → flags the deal and suggests a new date

Sales leaders

Pre-meeting brief

Meeting tomorrow → note with account history, open issues and fresh news

Sales leaders

Post-meeting recap

Recording lands → recap note, next-step tasks, updated deal fields

Sales leaders

Forecast check

Weekly → compares each rep's forecast with activity and stage history

Sales leaders

Data hygiene

Nightly → merges duplicates, standardises titles and countries, fills gaps

RevOps

Owner cleanup

Owner deactivated → reassigns their open deals and tasks by your rules

RevOps

Required-field guard

Stage changed → checks the fields that stage needs, tasks the owner if missing

RevOps

Association fixer

Daily → links orphan contacts, deals and emails to the right company

RevOps

Property audit

Monthly → lists unused properties, conflicting fields and broken dropdowns

RevOps

Workflow watchdog

Daily → finds records stuck in workflows or failing enrollment

RevOps

Inbound routing

New lead → enriched, scored, owned and tasked within minutes

Marketing

Enrichment waterfall

Thin record → tries several sources, writes only verified values

Marketing

Signal-to-deal

Funding, hiring or news → matched to the account, deal and task created

Marketing

Nurture handoff

Engagement spikes → sales task with what the contact read and clicked

Marketing

List builder

Plain-language ask → the right static list, ready for a campaign

Marketing

Lost-deal revival

Six months after closed-lost → checks for a new trigger, drafts a reopen

Marketing

Ticket triage

New ticket → category, priority, summary and owner set

Customer success

Health score

Weekly → combines tickets, usage and billing into an account risk flag

Customer success

Renewal prep

90 days before renewal → brief and task for the account owner

Customer success

Expansion spotter

Usage or hiring jumps → upsell deal opened with the reason

Customer success

Onboarding tracker

New customer → checks milestones, tasks the CSM when one slips

Customer success

Churn exit notes

Account lost → summary of why, from tickets, emails and calls

Customer success

Breeze, or an agent we run for you?

HubSpot now ships its own agents under Agent Hub: Customer Agent, Prospecting Agent, Data Agent, Content Agent, Campaign Agent, Nurture Agent, Revenue Agent, Smart Deal Progression, Agent Builder. Use them where they cover the job. Have us run one where the job crosses tools, follows your own rules or needs someone watching every run.

Breeze agentsAgent run by Momentum Nexus
Where it runsInside HubSpotOn our servers, working inside your HubSpot through the API
Data it can useHubSpot data and connected sourcesHubSpot plus anything else: meeting recorders, Slack, billing, product usage, your inbox
RulesHubSpot's settings for each agentYour own rules, approval steps and write gates per portal
Who keeps it workingYour team configures and monitors itWe watch every run, fix edge cases and tune it every week
CostHubSpot Credits per action, by tierOne monthly service: setup, hosting, monitoring and tuning
Best forStandard jobs on a tier that includes themJobs that cross tools, follow house rules or need a full audit log

Breeze names, tiers and credit prices change often. Check HubSpot's plan pages for your portal.

11 mistakes we learned on live pipelines

None of these are in the API docs as warnings. Each one cost us a wrong task, a missed deal or a confused rep before we fixed it.

  1. 01

    No email scope, no email context

    Without sales-email-read the agent can't read one-to-one emails, so a deal with a reply yesterday looks untouched for a month. Check the scope before trusting any “no contact” flag.

  2. 02

    Not every logged email is contact

    Some reminder and tracking tools log fake “incoming” emails days after a send. Count outgoing emails and held meetings as contact, and nothing else.

  3. 03

    Search lags behind writes

    New and updated records take a few moments to reach search. Confirm a write by reading the record by ID, not by searching for it.

  4. 04

    Search stops at 10,000

    One query returns at most 10,000 results and paging further fails. Slice big portals by date window or pipeline.

  5. 05

    Deals owned by people who left

    Deactivated owners keep their deals. Read owners with archived=true, and give every portal a fallback owner, or tasks land with nobody.

  6. 06

    Duplicate tasks

    Reps, meeting recorders and other tools create tasks too. Compare every new task with the deal's open ones before writing, or the rep gets three copies.

  7. 07

    Meeting notes go stale

    The proposal promised in a meeting is often sent the next morning. Check what happened after the meeting before creating a task for it.

  8. 08

    AI due dates aren't promises

    A due date the model picked is a suggestion, not something the client agreed to. Never write it into a note as an agreed date.

  9. 09

    Stage IDs aren't labels

    Custom pipelines use numeric stage IDs. Map them through the pipelines API, or the agent reasons about “1094523” instead of “Proposal sent”.

  10. 10

    Rate limits are shared

    The daily cap is shared by every app on the portal. Use batch endpoints and back off on a 429 so the agent never starves your other integrations.

  11. 11

    A token is not permission

    Having API access doesn't mean the business approved writes. Keep a read-only, draft or auto flag per portal and change it only on the owner's say-so.

How much to let it do

Trust is earned per agent and per portal. Every agent we run sits at one of three levels, and moves up only on evidence.

Read-only

The agent reads and reports: briefs, audits, risk lists. Nothing in HubSpot changes.

Use when: Start here for reporting agents, and for any portal where writes aren't approved yet.

Draft

The agent prepares tasks, notes and field changes and a person approves them in a review queue.

Use when: The first two weeks of any agent that writes. Review every draft, fix the rules, measure the hit rate.

Act and log

The agent writes directly, and logs every decision with its reason, including “no action”.

Use when: Once drafts are right nearly every time, and the writes are easy to undo: tasks and agent-owned fields first.

Get your HubSpot agent map

Enter your website, press Run and pick ChatGPT, Claude, Gemini or another tool. It opens in your own account, reads your site, asks a few questions about your portal, then builds the map. Bring it to a call and we'll start running the first agent for you.

What you get back

  • Where your HubSpot loses the most revenue, in one paragraph
  • Six candidate agents scored on impact, effort and risk
  • Three full specs: trigger, reads, writes, API calls in order and scopes
  • What Breeze already covers on your tier
  • A portal checklist and a 30-day rollout

Your company

Where does HubSpot leak? (optional)

Your email and the details you enter in this form are processed by MNB Teknoloji Danışmanlık Sanayi ve Ticaret Limited Şirketi when you run, copy or download the prompt, so we can follow up on your request. The answer your AI tool gives stays in your own account; we do not receive it. This does not add you to our newsletter. Privacy Policy

We run these every day

The deal follow-up agent and the weekly pipeline briefing run on live pipelines in HubSpot and Attio, client portals and our own, each at the control level its owner approved. In one Monday sweep of 37 open deals, the follow-up agent found 7 that needed a next step and left the other 30 alone, because the reps' own tasks already covered them.

  • Every 30 minchanged deals checked on weekdays
  • Every Mondayfull sweep of all open deals
  • Every Fridaypipeline brief on the page and in the inbox

HubSpot AI agents, answered

What can an AI agent do in HubSpot?

Anything the HubSpot API allows, plus judgement. It can search and read contacts, companies, deals, tickets, emails, meetings, notes and tasks; create tasks and notes; update properties and owners; link records; add contacts to lists and enroll them in sequences. The judgement is the part workflows can't do: deciding a deal needs a follow-up, what it should say and who should own it.

How is an AI agent different from a HubSpot workflow?

A workflow follows fixed if-then rules you set in advance. An agent reads context (emails, meeting notes, websites) and makes a call, then writes the result back. The two work well together: a workflow can decide when to call the agent through a webhook or custom code action, and the agent's output can enroll records in workflows.

Should I use HubSpot Breeze agents or have an agent run for me?

Use Breeze where it already covers the job on your tier: it runs inside HubSpot and needs no infrastructure. Have an agent run for you when the job needs data from outside HubSpot (meeting recorders, Slack, billing, product usage), your own rules and approval steps, or a full log of every decision, and you don't want to build and maintain it yourself.

Do we need to build or maintain the agents ourselves?

No. We run them for you as a service: we set each agent up on your HubSpot, host it, watch every run, handle edge cases and tune it every week. Your team sees the results inside HubSpot, and you get a log of every decision the agent made.

Which HubSpot API scopes does an AI agent need?

Only what its job needs. A deal follow-up agent typically needs crm.objects.deals.read, crm.objects.contacts.read, crm.objects.owners.read and sales-email-read to read context, plus write access for the objects it creates. Leaving out sales-email-read is the most common mistake: the agent can't see one-to-one emails and misjudges who was contacted.

Is it safe to let an agent write to our CRM?

Yes, if you stage it. Start read-only or in draft mode where a person approves every change, write to agent-owned properties instead of fields reps fill in, log every decision with its reason, and switch to automatic writes only once drafts are right nearly every time.

Does this work with Salesforce, Pipedrive or Attio?

Yes. The patterns in this guide (find what changed, read context, decide, write back, log) carry over to any CRM with an API. We run the same agents on HubSpot and Attio today.

Let us run them for you

We set the agents up on your HubSpot, host them, watch every run and tune them every week. You get the follow-ups, briefs and clean data without building or maintaining anything. On a free call we pick the first agent and agree its control level.

Book a Free Call