HubSpot integration

Connect SetSmart to HubSpot

SetSmart pushes every lead its AI qualifies in your DMs into HubSpot as a contact, a deal, a note and, when a call is booked, a meeting. This page walks through the setup, the data it writes and the permissions it asks for.

Open the HubSpot page in SetSmart

In the app: Settings, then Integrations, then HubSpot.

What SetSmart creates in HubSpot

One qualified lead becomes up to four linked records. Nothing else is created.

01

A contact

The lead's name, phone and email, plus two SetSmart properties: their Instagram username and the lead source (Instagram DM, Facebook Messenger or WhatsApp). Before creating anything, SetSmart searches your portal for an existing contact with the same email, then the same phone. A match is reused, never duplicated, and only the two SetSmart properties are added to it.

02

A deal

A deal named after the lead, created in the pipeline and stage you choose, and associated with the contact.

03

A note

The full conversation transcript, preceded by the qualification context, attached to both the contact and the deal, so your team can read the exchange without leaving HubSpot.

04

A meeting

When the lead booked a call, a meeting at the agreed time, associated with the contact and the deal. If the lead books after their first sync, the meeting is added on a later run.

How to connect

Four steps, a few minutes, no configuration required to get the first leads flowing.

01

Open the HubSpot page in SetSmart

In the SetSmart app, go to Settings, then Integrations, and open the HubSpot card. It leads to the connection page at /app/hubspot. You need the admin role on your SetSmart workspace.

02

Approve on HubSpot

Click Connect HubSpot. You are redirected to HubSpot's consent screen, which lists exactly the permissions described below. Pick the account you want to connect and approve. OAuth is the only authentication method: SetSmart never asks for an API key or a password.

03

Check the connection

Back in SetSmart, the page shows your portal domain and the email of the HubSpot user who approved the connection. The connection belongs to your whole SetSmart workspace, so teammates do not need to connect again.

04

Choose a pipeline and a stage

Pick the deal pipeline and the stage where new deals should land. Your portal's default pipeline and its first stage are pre-selected, so the sync works without any configuration. You can change both at any time.

What happens right after connecting

The sync runs every 15 minutes. Here is what the first runs do.

01

The SetSmart properties are created

SetSmart adds a property group named SetSmart to your contacts, with two text properties: Instagram username and lead source. They exist so you can segment and build workflows on SetSmart leads. This happens once, at connection.

02

The last 90 days are imported

Leads qualified in the 90 days before you connected are queued and imported automatically, up to 50 per run with a run every 15 minutes. Most accounts see their backlog complete within the first hour, the heaviest within a few hours. Older leads are left out on purpose: dumping years of history into a pipeline would bury it.

03

New leads flow continuously

After the backlog, every new lead the AI qualifies is pushed on the next run, so within 15 minutes. Leads who book a call after they were synced get their meeting added the same way.

What SetSmart writes, and what it never touches

The sync is a one-way export of the leads SetSmart qualified. The rest of your CRM is not its business.

SetSmart writes

  • Contacts for the leads it qualified, or just the two SetSmart properties on an existing matching contact
  • Deals, only in the one pipeline and stage you selected
  • Notes carrying the conversation transcripts
  • Meetings for booked calls

SetSmart never

  • Reads, browses or exports your contacts. The only read is an exact search for the lead's own email or phone, to avoid creating a duplicate.
  • Modifies your existing data. On a matched contact, only the two SetSmart properties are set. Your names, emails and phone numbers are left as they are.
  • Deletes anything, in HubSpot or in SetSmart.
  • Reads your deals, emails, tickets or any other records. The only schema read is the list of your deal pipeline and stage names, to fill the picker.
  • Messages your leads or changes their state in SetSmart because of the sync.

Permissions requested, and why

The consent screen lists these scopes. Each one maps to a single behaviour described on this page.

crm.objects.contacts.read

Search for an existing contact by the lead's email or phone before creating one. This is the duplicate check. Nothing else is read.

crm.objects.contacts.write

Create the contact and set the two SetSmart properties. HubSpot also requires this scope for creating the notes and the meetings.

crm.objects.deals.write

Create the deal for each qualified lead.

crm.schemas.contacts.write

Create, once at connection, the SetSmart property group and its two contact properties.

crm.schemas.deals.read

Read the names of your deal pipelines and their stages, so the picker shows your real ones. This reads pipeline definitions, not your deals.

oauth

A baseline scope HubSpot attaches to every app. SetSmart uses it to identify your portal and keep the connection alive by renewing its tokens.

How to disconnect

On the HubSpot page in SetSmart, click Disconnect. SetSmart revokes its own access with HubSpot, so the app stops appearing as connected in your portal, and deletes the stored credentials on its side. Nothing already created in HubSpot is removed.

If you reconnect later, SetSmart resumes where the sync stopped: your pipeline choice is kept, and leads that were already synced are not imported again.

Troubleshooting