HubSpot integration
In short
Search, create and update contacts, companies, deals and tickets. Connect it on the Integrations page; your app then calls HubSpot through Sapilon without ever holding a HubSpot credential.
Lets your app search, read, create and update CRM records — contacts, companies, deals, tickets — associate them, and look up owners and properties, with a HubSpot private app token.
The private app’s scopes decide which objects the app can reach.
Connecting
On the Integrations page choose Connect on HubSpot and fill in:
- Private app access token — HubSpot → Settings → Integrations → Private apps (Legacy apps) → Create. Grant crm.objects.contacts, companies and deals (read and write) as needed, then copy the access token.
Sapilon checks the key with the provider before it saves it, and stores it encrypted; it is never shown again.
What your app can do
Only these requests are available; anything else is refused.
GET|POST /crm/v3/objects/*GET|PATCH /crm/v3/objects/*/*POST /crm/v3/objects/*/searchPUT /crm/v4/objects/*/*/associations/default/*/*GET /crm/v3/ownersGET /crm/v3/properties/*
How the agent uses it
Use integrations.request('hubspot', …); paths are relative to https://api.hubapi.com. {type} is contacts, companies, deals, tickets (or a custom object).
GET|POST /crm/v3/objects/{type}— list or create. Example:{ method: 'POST', path: '/crm/v3/objects/contacts', body: { properties: { email: 'sara@acme.com', firstname: 'Sara' } } }.GET|PATCH /crm/v3/objects/{type}/{id}— read (query: { properties: 'email,lifecyclestage' }) or updateproperties.POST /crm/v3/objects/{type}/search— Example:{ method: 'POST', path: '/crm/v3/objects/contacts/search', body: { filterGroups: [{ filters: [{ propertyName: 'email', operator: 'EQ', value: 'sara@acme.com' }] }] } }.PUT /crm/v4/objects/{type}/{id}/associations/default/{toType}/{toId}— link two records with the default association. Example:{ method: 'PUT', path: '/crm/v4/objects/deals/9/associations/default/contacts/7' }.GET /crm/v3/owners— users records can be assigned to.GET /crm/v3/properties/{type}— field names.
Deleting is not allowed.
More from HubSpot: https://developers.hubspot.com/docs/api-reference/overview