Skip to main content
CRM AUTOMATION

Your CRM, on autopilot.

HubSpot holds your pipeline, your contact graph, and your support queue — but keeping it clean still takes someone’s time. Connect once and hand that work to an agent: contacts logged, deals created, stale records flagged, pipeline summaries written — while you focus on closing.

The signature moment

Watch a call become a clean CRM record.

A call ends. Without any manual entry, the agent logs the outcome, updates the contact, and advances the deal stage. Pick a step to see what the agent does at each point.

agent · crm-manager · workflow run
triggerCall ended with Acme Corp — 24 min, outcome: demo completed.
tool · contacts:get · id: 4821
agentContact found: Dana Voss, lifecyclestage: lead, no prior notes.
tool · contacts:get · confirmed
agentLogged note: “Demo completed 2026-06-11. Interested in Pro plan. Follow up in 3 days.”
Step 1: the agent reads the contact record first — confirming the person exists and pulling current state — before writing anything. contacts:get returns firstname, lastname, email, lifecyclestage.
agent · crm-manager · workflow run
agentUpdating Dana Voss — setting lifecyclestage to opportunity.
tool · contacts:update · id: 4821
resultlifecyclestage: opportunity  updated
agentContact record reflects the new stage. Proceeding to deal.
Step 2: the lifecyclestage advances from lead to opportunity — no form, no manual update. The contact record in HubSpot reflects the real state of the relationship.
agent · crm-manager · workflow run
agentChecking for an existing deal on Acme Corp…
tool · deals:list · filter: company 4821
resultDeal found: Acme Corp Pro Trial, stage: appointmentscheduled.
tool · deals:update · id: 9034 · stage: presentationscheduled
resultdealstage: presentationscheduled  stage moved
agentPipeline updated. Notification posted to #sales in Slack.
Step 3: the deal stage advances in one tool call. Stage IDs are account-specific strings — verify the correct values in your HubSpot pipeline settings before encoding them in agent instructions.
Real workflows

Three recipes Dario runs every week.

Each card is a complete agent workflow — trigger, tools called, output. Copy the pattern and tune the instructions to your pipeline.

Dario · Sales
Call ends with a prospect. Agent reads the contacts:get record, writes the outcome note, then creates a follow-on deal via deals:create with the updated stage — all before the next call starts.
saves ~6 min per call
Dario · Sales
Every Monday at 09:00, agent pulls open deals via deals:list and flags any where closedate has passed or dealstage has not moved in 14 days. Posts a nudge list to #sales in Slack — typically 8 to 12 deals surface each week.
live in 10 min
Dario · Sales
Friday at 17:00, agent calls deals:list for all open deals, groups by stage, counts deals and total pipeline value per stage, and drafts a plain-text weekly pipeline summary — sent to Dario by email and posted to the sales channel in under 90 seconds.
saves ~3 hrs/wk

9 tools, 4 CRM objects

What agents can do.

Each object group is scoped individually — grant read-only to reporting agents and read + write only to agents that need to make changes.

2Read only

List up to 100 contacts per call, or fetch a single contact by ID. Default fields include firstname, lastname, email, phone, company, and lifecyclestage.

2Read + write

List open deals with stage and close date, or create a deal with a name, amount, and pipeline stage. Default stage on create: appointmentscheduled.

3Read + write

List companies, fetch a record by ID with domain and location data, or create a new company with name, domain, and industry.

2Read + write

List open tickets, fetch details including pipeline stage and priority, or create a ticket with subject, content, stage, and priority (LOW, MEDIUM, HIGH). Default stage “1” maps to New in HubSpot’s built-in Support Pipeline.

Setup

Connect HubSpot.

HubSpot connects via OAuth 2.0. You choose which service groups to enable before the OAuth handshake, so the granted scopes match exactly what your agents need.

1

Open Integrations

In Actionist, go to Settings → Integrations. Find HubSpot in the CRM category — the card shows the description “Contacts, deals, companies & tickets.”
2

Choose your services

Click the HubSpot card to open the detail panel. The services grid shows 7 toggleable permission groups across the 4 object types: Contacts (read), Deals (read, write), Companies (read, write), Tickets (read, write). Each toggle displays how many tools it unlocks. Enable the groups your agents will use.
3

Authorize via OAuth

Click Connect HubSpot. The OAuth flow opens at app.hubspot.com. Sign in and grant the requested crm.objects.* scopes for the services you selected.
4

Confirm access

The panel updates each enabled service with a Read granted or Write granted badge. Those tools are now available to every agent in your workspace.
Settings · Integrations · HubSpot
HS
HubSpot
Contacts, deals, companies & tickets
CRM
Services
Contacts2 tools
Read
Deals1 tool
Read
Deals1 tool
Write
Companies2 tools
Read
Companies1 tool
Write
Tickets2 tools
Read
Tickets1 tool
Write
Disconnecting HubSpot removes Actionist’s access tokens both locally and from your HubSpot account. Any agent using HubSpot tools loses access immediately. You can reconnect at any time.
Tool reference

Tools by object group.

Each accordion covers the tools in that group, the default properties returned, and a concrete example of what an agent can do with them.

Contacts (2 tools — read only)

contacts:list — returns up to 100 contacts per call (default 25). Default fields: firstname, lastname, email, phone. Use this to pull today’s new leads or build a pre-meeting briefing.contacts:get — fetch a single contact by ID. Default fields expand to include company and lifecyclestage. Use this when an agent needs the full picture on one person before drafting an outreach message.Example: “List the 10 most recently added contacts” — agent calls contacts:list with limit: 10 and formats the results as a Slack digest.
deals:list — list deals with default fields dealname, amount, dealstage, closedate. Cap at 100 per call. Good for pipeline reviews and stale-deal detection.deals:create — create a deal with a required dealname, optional amount, and dealstage (default appointmentscheduled). Deal stage IDs are account-specific — verify the correct strings in your HubSpot pipeline settings before using custom stages.Example: “Create a deal called Q3 Expansion for $15,000” — agent calls deals:create with dealname: "Q3 Expansion", amount: 15000.
companies:list — list companies with name, domain, industry, numberofemployees. Useful for account mapping or enrichment runs.companies:get — fetch a single company by ID; adds phone, city, and country to the default field set. Use before a call to pull the full account profile.companies:create — create a company record with a required name, optional domain and industry. Check whether the account already exists first — HubSpot’s CRM v3 API does not deduplicate automatically.Example: “Look up Acme Corp by company ID and return their industry and headcount” — agent calls companies:get.
tickets:list — list tickets with default fields subject, content, hs_pipeline_stage, hs_ticket_priority, createdate. Good for daily support queue reviews.tickets:get — fetch a ticket by ID; also returns hs_pipeline, hs_lastmodifieddate. Useful when an agent needs to cross-reference a ticket with a contact or deal.tickets:create — create a ticket with a required subject, optional content, stage (default "1" = New in the built-in Support Pipeline), and priority (LOW, MEDIUM, or HIGH). Custom pipelines use different numeric IDs — confirm in HubSpot before assigning.Example: “Create a support ticket: login broken, high priority” — agent calls tickets:create with subject: "Login broken", priority: "HIGH".
Best practices

Tips before you go live.

Grant only the scopes agents actually need

A reporting agent that summarises pipeline never needs deals:write or tickets:write. Use the service toggles before connecting to grant only the permissions each agent’s tasks require. Narrower grants mean a smaller blast radius if something goes wrong, and they signal intent clearly when you audit access later.
All list and get tools return a small default field set. If your agent needs hs_lead_status, notes_last_contacted, or a custom property, pass those names as a comma-separated string in the properties parameter in the agent’s tool configuration. You only pay for what you fetch.
The default stage on deals:create is appointmentscheduled — a built-in HubSpot pipeline stage. If your team uses custom pipelines, retrieve the exact stage ID strings from your HubSpot pipeline settings before writing them into agent instructions. A wrong stage ID causes the create call to fail.
HubSpot’s built-in Support Pipeline uses the numeric string "1" for the New stage. Custom pipelines use different numeric IDs. Before creating tickets in a custom pipeline, confirm the correct stage IDs in HubSpot → Settings → Support → Pipelines.
Actionist ships a built-in CRM Manager agent template — “The organised keeper of your relationships. I make sure every contact, deal, and note is in the right place — so nothing slips.” Pairing this template with your HubSpot connection is the fastest path to automated pipeline hygiene, stale-deal nudging, and weekly summaries.
HubSpot has no bundled MCP server in Actionist. The native OAuth integration is the primary connection path. If you need capabilities beyond the 9 live tools, you can add a third-party HubSpot MCP via Apps → MCPs — but for most CRM workflows the built-in tools are sufficient.
Ready to connect

Automate your pipeline in minutes.

Connect HubSpot via OAuth, enable the CRM Manager template, and watch contacts, deals, and tickets stay current — without any manual entry.

OAuth 2.0 — scoped exactly to what your agents need.
9 tools across 4 CRM objects · Granular permission toggles · No bundled MCP required.

Keep going

All apps

Browse every app in the Actionist catalog — CRM, finance, communication, and more.

Agents

Build the CRM Manager agent and pair it with HubSpot to automate pipeline hygiene end to end.

Schedules

Run weekly pipeline summaries and stale-deal nudges on a fixed schedule without manual triggers.
https://cdn.simpleicons.org/slack

Slack

Chain HubSpot and Slack in one workflow — create a deal, then post a notification to your sales channel in the same run.