Install steps
Authorize in HubSpot
You are redirected to HubSpot’s consent screen. Review the requested permissions and approve the connection.The integration requests the following scopes:
| Scope | Purpose |
|---|---|
crm.objects.deals.read | Read deal data |
crm.schemas.deals.read | Read deal property definitions |
crm.objects.companies.read | Read company data |
crm.schemas.companies.read | Read company property definitions |
crm.objects.contacts.read | Read contact data |
crm.schemas.contacts.read | Read contact property definitions |
Confirm connection
After authorization, you are redirected back to Exante and the HubSpot integration shows as Connected.
Start the initial sync
The initial HubSpot sync is triggered separately after the OAuth connection is established. The frontend can call the sync endpoint automatically after redirect, or a client can start it with
POST /api/integrations/hubspot/sync.The sync request also supports:deal_stagesto limit the sync to specific HubSpot deal stage IDsmode: "catalog_only"to populate discovery records without creating Exante Documents, Parties, or Contacts
Sync endpoints
After installation, the HubSpot integration exposes these sync endpoints:POST /api/integrations/hubspot/syncstarts a sync job.GET /api/integrations/hubspot/sync/statusreturns the current per-object sync state.GET /api/integrations/hubspot/sync/stageslists available HubSpot deal pipelines and stage IDs for filtering.
Re-authorization
If Exante adds new HubSpot scopes in the future, existing connected organizations must re-authorize the integration before Exante can use the new permissions. Re-authorization follows the same flow as the original install and updates the existing connection rather than creating a duplicate one.Disconnecting
To disconnect the HubSpot integration:- Go to Settings > Integrations.
- Click the Disconnect button on the HubSpot card.
- If needed, remove or review the connected app in HubSpot’s app settings.