// Integrations

HubSpot Integration

Connect HubSpot to sync contacts and push NPS and CSAT data into your CRM

2 min read
Updated March 18, 2026
integrationshubspotcrmsync

Use the HubSpot integration to keep contact data aligned between HubSpot and demeterrr, and to push customer feedback scores back into your CRM.

01

What It Supports

  • OAuth-based HubSpot connection
  • Contact sync from HubSpot to demeterrr
  • Contact sync from demeterrr to HubSpot
  • NPS and CSAT score pushback to HubSpot contacts
  • Manual sync from the Integrations page
02

Connect HubSpot

  1. Go to Settings > Integrations.
  2. Find HubSpot and click Connect HubSpot.
  3. Complete OAuth in HubSpot and return to demeterrr.
  4. Confirm the card shows Connected.

After successful OAuth callback, demeterrr starts an initial sync.

03

Sync Behavior

From the current integration flow:

  • The connected state shows lastSyncAt and connectedAt.
  • You can trigger a manual sync with Sync Now.
  • Contact sync supports from_hubspot, to_hubspot, or bidirectional directions in the sync API.
04

HubSpot Workflow Trigger (No Dashboard)

If you want HubSpot users to trigger a survey without opening demeterrr:

  1. Create a demeterrr API key with sequences:execute scope.
  2. In HubSpot Workflows, add a webhook/custom code action.
  3. Call:

POST /api/v1/sequences/:id/execute

  1. Send contact fields in the request body (email required).

Example body:

{
  "contacts": [
    {
      "email": "customer@example.com",
      "firstName": "Jane",
      "lastName": "Doe",
      "phone": "+15551234567"
    }
  ]
}

Auth header:

Authorization: Bearer dem_...

05

Disconnect HubSpot

  1. Open Settings > Integrations.
  2. On the HubSpot card, click Disconnect.
  3. Confirm the prompt.

Disconnecting stops sync and score pushback.

06

Common Issues

OAuth not configured

If connection fails immediately, your deployment may be missing:

  • HUBSPOT_CLIENT_ID
  • HUBSPOT_CLIENT_SECRET

Callback errors

If you are redirected back with an error, reconnect and verify:

  • You are logged into the right organization
  • OAuth state is valid (no expired session)
  • Callback URL matches your app domain

Sync fails

If manual sync fails:

  • Reconnect HubSpot
  • Retry with a smaller initial CRM scope
  • Check integration status and lastSyncAt updates

Was this article helpful?

Let us know if you found this article helpful or if you need more information.

Take Control Of Your Reputation. Take Control Of Your Reputation. Take Control Of Your Reputation. Take Control Of Your Reputation.

Join hundreds of businesses already using demeterrr to collect feedback, boost reviews, and grow faster.

Start Your Trial