hubspot.
Connect
Node
ancha connect hubspot --lang ts prints. Existing v3 clients work when you set their base URL to HUBSPOT_API_URL.
Endpoints
:type is companies, contacts or deals, or the type IDs 0-2, 0-1 and 0-3. All endpoints are partial. Unsupported routes, fields, operators and options return HubSpot’s error shape with an ancha: not implemented: message and x-ancha-gap: 1. HubSpot’s newer date-based routes, such as /crm/objects/2026-09/..., are not implemented.
Behavior
- Search is delayed. Direct reads and lists see writes at once. Search sees a new or changed record only after 2 simulated seconds, as HubSpot’s search index lags. Archived records leave search at once.
- Search syntax.
filterGroups(up to 5 groups, 6 filters each, 18 in total; filters in a group are ANDed, groups are ORed),query, onesortsentry,properties,limit(default 10, at most 200) andafter. Operators:EQ,NEQ,LT,LTE,GT,GTE,BETWEEN,IN,NOT_IN,HAS_PROPERTY,NOT_HAS_PROPERTY. - Lists return 10 records by default and at most 100, with an
aftercursor. - Batches take 1 to 100 inputs for
read,create,updateandarchive. - Properties are a fixed catalog. Companies:
name,domain,website,description,industry,city,state,country,phone,numberofemployees,annualrevenue,lifecyclestage. Contacts:firstname,lastname,email,phone,mobilephone,company,jobtitle,lifecyclestage,hs_lead_status. Deals:dealname,amount,closedate,pipeline,dealstage,description,dealtype. All three also haveexternal_idandhubspot_owner_id. Unknown properties are rejected. - Associations use HubSpot’s default type IDs: contact to company
1(primary) and279, deal to company5(primary) and341, deal to contact3, and their reverse IDs. - Permissions. The token has read and write scopes for all three objects. Company
102is outside the app’s access: reading it fails and lists and searches leave it out.
Starter data
Thehubspot-starter dataset is the portal Acme (510001): nine companies, thirteen contacts and eight deals.
Each contact is associated with its company, and each deal with its company and its primary contact.
Checks
HubSpot has no state checks. Use trace checks:Limits
- Companies, contacts and deals only: no tickets, custom objects, engagements or owners.
- No workflows, webhooks, OAuth, merges, upserts or restores.
- No rate limits.