HubSpot is where pipeline movement, account context, contacts, emails, and deal history often already live. A HubSpot AI assistant is most useful when it helps sales and revenue teams query that CRM context from Slack, surface stalled deals or missing follow-ups, and turn recent activity into clearer next steps and updates. If you are running OpenClaw yourself, HubSpot is still one of the more approachable CRM integrations to build, but Cody is the faster path if you want the assistant experience instead of the API glue.
How OpenClaw Integrations Work
OpenClaw is a self-hosted AI assistant that runs on your own server — typically an EC2 instance — and connects to Slack. It uses Claude under the hood to process requests. Out of the box, OpenClaw doesn't ship with pre-built connections to third-party tools. Instead, integrations are built using the skills system: markdown files in ~/.openclaw/skills/ that give Claude instructions for a particular domain, combined with HTTP tool calls to any API you expose to it.
In practice, adding a real integration means: getting API credentials from the third-party service, building or configuring a small proxy/endpoint that OpenClaw can call, and writing a skill file that tells Claude how to use it. For some tools this is an afternoon of work. For others — like HubSpot — it's considerably more involved.
Connecting OpenClaw with HubSpot: Step by Step
Step 1: Create a HubSpot Private App
Go to HubSpot → Settings → Integrations → Private Apps and create a new app. Select the scopes you need — crm.objects.contacts.read, crm.objects.deals.read, crm.schemas.contacts.read for basic CRM data. You'll get a Private App token (similar to an API key) to use in your proxy.
Step 2: Explore the CRM API
HubSpot's v3 CRM API has consistent endpoints for objects: /crm/v3/objects/{objectType} for contacts, deals, companies, etc. Use the search endpoint (/crm/v3/objects/{objectType}/search) with filters to find records by email, name, or other properties. The API explorer in HubSpot's developer docs is useful for prototyping queries.
Step 3: Build the Proxy and Skill File
Build your proxy around the search and retrieve endpoints for the objects your team cares about. Write ~/.openclaw/skills/hubspot.md with your pipeline stage names and common query patterns (e.g., how a rep would ask about a deal's status).
Challenges and Caveats
Associations Between Objects Are Separate Calls
To get a deal's associated contacts, or a contact's associated company, you need additional API calls to the associations endpoints. A single 'tell me about this deal' query might require 3–4 API calls. Build your proxy to handle these efficiently.
Rate Limits Vary by Plan
HubSpot's API rate limits depend on your subscription. Free/Starter plans get 100 API calls per 10 seconds. Professional and Enterprise get more. If your team is using OpenClaw heavily, you may need to cache responses to avoid hitting limits.
Custom Properties Need Explicit Handling
If your team has created custom properties on CRM objects, they won't appear in default API responses. You need to specify them in your requests. Document your most important custom properties in the skill file.
Skip All of This — Use Cody Instead
Cody gives your team a HubSpot AI assistant in Slack, so reps and leaders can review deals, companies, contacts, emails, and pipeline risk, then draft follow-ups and updates without digging through records or building the integration themselves.
Related Guides
- Connecting OpenClaw with Salesforce: A Practical Guide
- Connecting OpenClaw with Pipedrive: A Practical Guide
- Connecting OpenClaw with Google Analytics: A Practical Guide
Need the model-flexible version? See: How to Connect HubSpot to OpenClaw: Setup, Models, and Workflow Guide.