HubSpot-kobling
Koblingsstatus: Under utvikling Under bygging. Ikke verifisert ennå.
Illustrasjon · eksempeldata
Eksempel på synkronisering
Kilde
HubSpot
Koblingsstatus: Under utvikling
Mål
Det andre verktøyet ditt
Koblingsstatus: Eget verktøy
Feltkobling
| Kildefelt | Målfelt | Eksempelverdi |
|---|---|---|
record.id | source_id | record_1042 |
record.updated_at | updated_at | 2026-10-18T08:00:00Z |
record.value | value | sample_value |
- Utkast
- Se gjennom én oppføring
- Godkjenn denne versjonen
Status gjelder hver enkelt kobling og garanterer ikke at denne synkroniseringen er klar. Feltene er illustrative. Kontroller faktisk skjema og tillatelser før synkroniseringen kjører.
Koble HubSpot CRM til Brevo via Tajo for toveis kontaktsynkronisering, sporing av avtaler, engasjementsdata og enhetlig markedsføringsautomatisering på tvers av begge plattformer.
Oversikt
| Egenskap | Verdi |
|---|---|
| Plattform | HubSpot |
| Kategori | CRM |
| Oppsettskompleksitet | Middels |
| Offisiell integrasjon | Nei |
| Synkroniserte data | Kontakter, selskaper, avtaler, tickets, hendelser |
| API Base URL | https://api.hubapi.com |
Funksjoner
- Toveis kontaktsynkronisering - Hold kontakter synkronisert mellom HubSpot og Brevo i sanntid
- Sporing av avtalepipeline - Synkroniser avtaletrinn og -verdier for inntektsbasert segmentering
- Synkronisering av selskapsdata - Tilknytt kontakter med selskapsposter og firmografiske data
- Ticket-integrasjon - Spor supporttickets for kundehelsepoeng
- Sporing av engasjement - Synkroniser e-poståpninger, klikk, møter, anrop og notater
- Støtte for egendefinerte objekter - Mapp HubSpot egendefinerte objekter til Brevo-attributter
- Arbeidsflyttriggere - Bruk endringer i HubSpot livssyklusstadium for å utløse Brevo-automatiseringer
- Webhook-hendelser - Sanntidsvarsler for endringer i CRM-data
Forutsetninger
Før du begynner, sørg for at du har:
- En HubSpot-konto (Free, Starter, Professional eller Enterprise)
- En HubSpot privat app eller OAuth-app med påkrevde scopes
- En Brevo-konto med API-tilgang
- En Tajo-konto
Autentisering
Private App Access Token (anbefalt)
Opprett en privat app i HubSpot for direkte API-tilgang med granulær scope-kontroll.
- Gå til HubSpot Settings > Integrations > Private Apps
- Opprett en ny privat app
- Konfigurer påkrevde scopes
- Kopier access token
curl -X GET "https://api.hubapi.com/crm/v3/objects/contacts" \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json"OAuth 2.0
Bruk OAuth 2.0 for integrasjoner med flere kontoer som krever brukerautorisering.
# Authorization URLhttps://app.hubspot.com/oauth/authorize?client_id={client_id}&scope=crm.objects.contacts.read&redirect_uri={redirect_uri}Påkrevde scopes
crm.objects.contacts.readcrm.objects.contacts.writecrm.objects.companies.readcrm.objects.deals.readcrm.objects.deals.writecrm.objects.custom.readcrm.schemas.custom.readKonfigurasjon
Grunnleggende oppsett
connectors: hubspot: enabled: true access_token: "${HUBSPOT_ACCESS_TOKEN}"
# Data sync options sync: contacts: true companies: true deals: true tickets: true engagements: true
# Sync direction direction: bidirectional # or 'hubspot_to_brevo' | 'brevo_to_hubspot'
# List assignment in Brevo lists: all_contacts: 10 qualified_leads: 11 customers: 12Feltmapping
Mapp HubSpot-egenskaper til Brevo-kontaktattributter:
Standardmappinger
| Parameter | Type | Description |
|---|---|---|
email required | string | Kontakt-e-post (primær identifikator) |
firstname optional | string | Mappes til FIRSTNAME-attributtet i Brevo |
lastname optional | string | Mappes til LASTNAME-attributtet i Brevo |
phone optional | string | Mappes til SMS-attributtet for WhatsApp/SMS |
company optional | string | Tilknyttet selskapsnavn |
lifecyclestage optional | string | HubSpot livssyklusstadium (subscriber, lead, MQL, SQL, customer) |
hs_lead_status optional | string | Kvalifiseringsstatus for lead |
hubspot_owner_id optional | string | ID for tildelt salgseier |
Mapping av egendefinerte egenskaper
field_mapping: # Standard fields email: email firstname: FIRSTNAME lastname: LASTNAME phone: SMS
# CRM fields lifecyclestage: LIFECYCLE_STAGE hs_lead_status: LEAD_STATUS company: COMPANY_NAME
# Deal metrics hs_total_deal_value: DEAL_VALUE num_associated_deals: DEAL_COUNT
# Custom properties preferred_channel: PREFERRED_CHANNEL customer_segment: SEGMENTAPI-endepunkter
CRM-objekter
| Metode | Endepunkt | Beskrivelse |
|---|---|---|
GET | /crm/v3/objects/contacts | List kontakter |
POST | /crm/v3/objects/contacts | Opprett en kontakt |
PATCH | /crm/v3/objects/contacts/{id} | Oppdater en kontakt |
GET | /crm/v3/objects/companies | List selskaper |
GET | /crm/v3/objects/deals | List avtaler |
POST | /crm/v3/objects/deals | Opprett en avtale |
GET | /crm/v3/objects/tickets | List tickets |
Tilknytninger
| Metode | Endepunkt | Beskrivelse |
|---|---|---|
GET | /crm/v4/objects/{objectType}/{objectId}/associations/{toObjectType} | Hent tilknytninger |
PUT | /crm/v4/objects/{objectType}/{objectId}/associations/{toObjectType}/{toObjectId} | Opprett tilknytning |
Engasjementer
| Metode | Endepunkt | Beskrivelse |
|---|---|---|
GET | /crm/v3/objects/calls | List anropsengasjementer |
GET | /crm/v3/objects/emails | List e-postengasjementer |
GET | /crm/v3/objects/meetings | List møter |
GET | /crm/v3/objects/notes | List notater |
GET | /crm/v3/objects/tasks | List oppgaver |
Hendelser
Kontakthendelser
| Hendelse | Trigger | Bruksområde |
|---|---|---|
contact.creation | Ny kontakt opprettet | Utløs velkomstflyt |
contact.propertyChange | Kontaktegenskap oppdatert | Attributtsynkronisering |
contact.merge | Kontakter slått sammen | Håndtering av duplikater |
contact.deletion | Kontakt slettet | Opprydding i Brevo |
Avtalehendelser
| Hendelse | Trigger | Bruksområde |
|---|---|---|
deal.creation | Ny avtale opprettet | Salgsvarsel |
deal.propertyChange | Avtaletrinn endret | Pipelineautomatisering |
deal.deletion | Avtale fjernet | Inntektsrapportering |
Selskapshendelser
| Hendelse | Trigger | Bruksområde |
|---|---|---|
company.creation | Nytt selskap lagt til | Account-based marketing |
company.propertyChange | Selskapsdata oppdatert | Firmografisk synkronisering |
Kodeeksempler
Initialiser koblingen
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect HubSpotawait tajo.connectors.connect('hubspot', { accessToken: process.env.HUBSPOT_ACCESS_TOKEN});Kjør kontaktsynkronisering
// Full bidirectional syncawait tajo.connectors.sync('hubspot', { type: 'full', resources: ['contacts', 'companies', 'deals'], direction: 'bidirectional', since: '2023-01-01'});
// Check sync statusconst status = await tajo.connectors.status('hubspot');console.log(status);// {// connected: true,// lastSync: '2024-01-15T10:30:00Z',// contactsSynced: 34200,// companiesSynced: 5100,// dealsSynced: 2340// }Håndter webhook-hendelser
// Handle HubSpot webhook notificationsapp.post('/webhooks/hubspot', async (req, res) => { const signature = req.get('X-HubSpot-Signature-v3');
// Verify webhook signature if (!verifyHubSpotSignature(req.body, signature)) { return res.status(401).send('Unauthorized'); }
for (const event of req.body) { await tajo.connectors.handleWebhook('hubspot', { eventType: event.subscriptionType, objectId: event.objectId, propertyName: event.propertyName, propertyValue: event.propertyValue }); }
res.status(200).send('OK');});Hastighetsgrenser
HubSpot anvender hastighetsgrenser per privat app eller OAuth-app:
| Plan | Hastighetsgrense | Burst-grense |
|---|---|---|
| Free/Starter | 100 forespørsler/10 sekunder | 150 forespørsler/10 sekunder |
| Professional | 150 forespørsler/10 sekunder | 200 forespørsler/10 sekunder |
| Enterprise | 200 forespørsler/10 sekunder | 250 forespørsler/10 sekunder |
| API add-on | 200 forespørsler/10 sekunder | 250 forespørsler/10 sekunder |
Ytterligere grenser:
- Search API: 5 forespørsler/sekund per app
- Batch-operasjoner: 100 poster per batch-forespørsel
- Daglig grense: 500 000 forespørsler/dag (OAuth-apper)
Håndtering av hastighetsgrenser
HubSpot returnerer et 429 Too Many Requests-svar når grenser overskrides. Bruk eksponentiell backoff og overvåk X-HubSpot-RateLimit-*-headere.
Feilsøking
Vanlige problemer
| Problem | Årsak | Løsning |
|---|---|---|
| 401 Unauthorized | Utløpt eller ugyldig token | Generer privat app-token på nytt eller oppdater OAuth-token |
| Kontakt ikke synkronisert | Manglende e-postegenskap | HubSpot-kontakter krever en e-post for Brevo-synkronisering |
| Dupliserte kontakter | Ingen deduplikasjonsregel | Konfigurer sammenslåingsregler i HubSpot |
| Webhook ikke mottatt | Abonnement ikke aktivt | Registrer webhook-abonnementer på nytt |
| Egenskap ikke mappet | Egendefinert egenskap ikke opprettet | Opprett egenskapen i HubSpot først |
Feilsøkingsmodus
Aktiver detaljert logging:
connectors: hubspot: debug: true log_level: verbose log_webhooks: trueTest tilkobling
tajo connectors test hubspot# ✓ API connection successful# ✓ Contacts readable# ✓ Companies readable# ✓ Deals readable# ✓ Webhooks registeredBeste praksis
- Bruk private apper fremfor API-nøkler - API-nøkler er utdatert; bruk private apper for bedre sikkerhet
- Implementer toveis synkronisering forsiktig - Unngå uendelige løkker ved å spore synkroniseringskilden
- Mapp livssyklusstadier - Bruk HubSpot livssyklusstadier for å segmentere kontakter i Brevo
- Batch API-forespørsler - Bruk batch-endepunkter for bulk-operasjoner for å holde deg innenfor hastighetsgrensene
- Overvåk webhook-levering - Sett opp retry-logikk og håndtering av dead letters
- Bruk inkrementell synkronisering - Synkroniser kun endrede poster med
lastmodifieddate-egenskapen
Sikkerhet
- Private app-tokens - Scoped access tokens med granulære tillatelser
- OAuth 2.0 - Industristandard autorisering med rotasjon av refresh token
- Webhook-signaturer - HMAC-basert signaturverifisering (v3)
- TLS-kryptering - All API-kommunikasjon kryptert under transport
- Scopede tillatelser - Minimum nødvendig scope-tilgang per integrasjon