HubSpot konektor

HubSpot konektor

Prepoj svoj HubSpot CRM s Brevo cez Tajo pre obojsmernú synchronizáciu kontaktov, sledovanie obchodov, dáta o zapojení a zjednotenú marketingovú automatizáciu na oboch platformách.

Prehľad

VlastnosťHodnota
PlatformaHubSpot
KategóriaCRM
Zložitosť nastaveniaStredná
Oficiálna integráciaÁno
Synchronizované dátaKontakty, Spoločnosti, Obchody, Tickety, Udalosti
API Base URLhttps://api.hubapi.com

Funkcie

  • Obojsmerná synchronizácia kontaktov - Udržiavaj kontakty synchrónne medzi HubSpot a Brevo v reálnom čase
  • Sledovanie pipeline obchodov - Synchronizuj fázy a hodnoty obchodov pre segmentáciu podľa príjmov
  • Synchronizácia dát spoločností - Priraď kontakty k záznamom spoločností a firmografickým dátam
  • Integrácia ticketov - Sleduj support tickety pre hodnotenie zdravia zákazníka
  • Sledovanie zapojenia - Synchronizuj otvorenia e-mailov, kliknutia, stretnutia, hovory a poznámky
  • Podpora vlastných objektov - Namapuj vlastné objekty HubSpot na atribúty Brevo
  • Spúšťače workflowov - Použi zmeny životného cyklu v HubSpot na spúšťanie automatizácií v Brevo
  • Webhook udalosti - Notifikácie v reálnom čase o zmenách dát v CRM

Predpoklady

Predtým, než začneš, uisti sa, že máš:

  1. HubSpot účet (Free, Starter, Professional alebo Enterprise)
  2. Súkromnú alebo OAuth aplikáciu v HubSpot s požadovanými scopes
  3. Brevo účet s API prístupom
  4. Tajo účet

Autentifikácia

Prístupový token súkromnej aplikácie (odporúčané)

Vytvor súkromnú aplikáciu v HubSpot pre priamy prístup k API s jemnou kontrolou scopes.

  1. Choď do HubSpot Settings > Integrations > Private Apps
  2. Vytvor novú súkromnú aplikáciu
  3. Nakonfiguruj požadované scopes
  4. Skopíruj prístupový token
Terminal window
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

Použi OAuth 2.0 pre integrácie s viacerými účtami, ktoré vyžadujú autorizáciu používateľa.

Terminal window
# Authorization URL
https://app.hubspot.com/oauth/authorize?client_id={client_id}&scope=crm.objects.contacts.read&redirect_uri={redirect_uri}

Požadované scopes

crm.objects.contacts.read
crm.objects.contacts.write
crm.objects.companies.read
crm.objects.deals.read
crm.objects.deals.write
crm.objects.custom.read
crm.schemas.custom.read

Konfigurácia

Základné nastavenie

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: 12

Mapovanie polí

Namapuj vlastnosti HubSpot na atribúty kontaktov v Brevo:

Predvolené mapovania

Parameter Type Description
email required
string

E-mail kontaktu (primárny identifikátor)

firstname optional
string

Mapuje sa na atribút FIRSTNAME v Brevo

lastname optional
string

Mapuje sa na atribút LASTNAME v Brevo

phone optional
string

Mapuje sa na atribút SMS pre WhatsApp/SMS

company optional
string

Názov priradenej spoločnosti

lifecyclestage optional
string

Fáza životného cyklu v HubSpot (subscriber, lead, MQL, SQL, customer)

hs_lead_status optional
string

Stav kvalifikácie leadu

hubspot_owner_id optional
string

ID priradeného obchodného vlastníka

Mapovanie vlastných vlastností

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: SEGMENT

API endpointy

CRM objekty

MetódaEndpointPopis
GET/crm/v3/objects/contactsZoznam kontaktov
POST/crm/v3/objects/contactsVytvorenie kontaktu
PATCH/crm/v3/objects/contacts/{id}Aktualizácia kontaktu
GET/crm/v3/objects/companiesZoznam spoločností
GET/crm/v3/objects/dealsZoznam obchodov
POST/crm/v3/objects/dealsVytvorenie obchodu
GET/crm/v3/objects/ticketsZoznam ticketov

Asociácie

MetódaEndpointPopis
GET/crm/v4/objects/{objectType}/{objectId}/associations/{toObjectType}Získanie asociácií
PUT/crm/v4/objects/{objectType}/{objectId}/associations/{toObjectType}/{toObjectId}Vytvorenie asociácie

Zapojenia

MetódaEndpointPopis
GET/crm/v3/objects/callsZoznam hovorov
GET/crm/v3/objects/emailsZoznam e-mailových zapojení
GET/crm/v3/objects/meetingsZoznam stretnutí
GET/crm/v3/objects/notesZoznam poznámok
GET/crm/v3/objects/tasksZoznam úloh

Udalosti

Udalosti kontaktov

UdalosťTriggerPrípad použitia
contact.creationVytvorenie nového kontaktuSpustenie welcome flow
contact.propertyChangeAktualizácia vlastnosti kontaktuSynchronizácia atribútov
contact.mergeZlúčenie kontaktovSpráva deduplikácie
contact.deletionOdstránenie kontaktuVyčistenie v Brevo

Udalosti obchodov

UdalosťTriggerPrípad použitia
deal.creationVytvorenie nového obchoduNotifikácia predaja
deal.propertyChangeZmena fázy obchoduAutomatizácia pipeline
deal.deletionOdstránenie obchoduReportovanie príjmov

Udalosti spoločností

UdalosťTriggerPrípad použitia
company.creationPridanie novej spoločnostiAccount-based marketing
company.propertyChangeAktualizácia dát spoločnostiSynchronizácia firmografických dát

Ukážky kódu

Inicializácia konektora

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
// Connect HubSpot
await tajo.connectors.connect('hubspot', {
accessToken: process.env.HUBSPOT_ACCESS_TOKEN
});

Spustenie synchronizácie kontaktov

// Full bidirectional sync
await tajo.connectors.sync('hubspot', {
type: 'full',
resources: ['contacts', 'companies', 'deals'],
direction: 'bidirectional',
since: '2023-01-01'
});
// Check sync status
const status = await tajo.connectors.status('hubspot');
console.log(status);
// {
// connected: true,
// lastSync: '2024-01-15T10:30:00Z',
// contactsSynced: 34200,
// companiesSynced: 5100,
// dealsSynced: 2340
// }

Spracovanie webhook udalostí

// Handle HubSpot webhook notifications
app.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');
});

Obmedzenia rýchlosti

HubSpot uplatňuje obmedzenia rýchlosti pre každú súkromnú alebo OAuth aplikáciu:

PlánObmedzenieBurst limit
Free/Starter100 požiadaviek/10 sekúnd150 požiadaviek/10 sekúnd
Professional150 požiadaviek/10 sekúnd200 požiadaviek/10 sekúnd
Enterprise200 požiadaviek/10 sekúnd250 požiadaviek/10 sekúnd
API doplnok200 požiadaviek/10 sekúnd250 požiadaviek/10 sekúnd

Ďalšie limity:

  • Search API: 5 požiadaviek/sekundu na aplikáciu
  • Dávkové operácie: 100 záznamov na dávkovú požiadavku
  • Denný limit: 500 000 požiadaviek/deň (OAuth aplikácie)

Spracovanie obmedzení rýchlosti

HubSpot vracia odpoveď 429 Too Many Requests pri prekročení limitov. Použi exponenciálny backoff a sleduj hlavičky X-HubSpot-RateLimit-*.

Riešenie problémov

Bežné problémy

ProblémPríčinaRiešenie
401 UnauthorizedVypršaný alebo neplatný tokenZnovu vygeneruj token súkromnej aplikácie alebo obnov OAuth token
Kontakt nie je synchronizovanýChýbajúca vlastnosť e-mailKontakty HubSpot vyžadujú e-mail pre synchronizáciu s Brevo
Duplicitné kontaktyŽiadne pravidlo deduplikácieNakonfiguruj pravidlá zlúčenia v HubSpot
Webhook nebol prijatýPredplatné nie je aktívneZnovu zaregistruj webhook predplatné
Vlastnosť nie je namapovanáVlastná vlastnosť nie je vytvorenáNajprv vytvor vlastnosť v HubSpot

Debug režim

Zapni verbose logovanie:

connectors:
hubspot:
debug: true
log_level: verbose
log_webhooks: true

Test pripojenia

Terminal window
tajo connectors test hubspot
# ✓ API connection successful
# ✓ Contacts readable
# ✓ Companies readable
# ✓ Deals readable
# ✓ Webhooks registered

Odporúčané postupy

  1. Použi súkromné aplikácie namiesto API kľúčov - API kľúče sú zastarané; použi súkromné aplikácie pre lepšiu bezpečnosť
  2. Implementuj obojsmernú synchronizáciu opatrne - Vyhni sa nekonečným slučkám sledovaním zdroja synchronizácie
  3. Namapuj fázy životného cyklu - Použi fázy životného cyklu HubSpot na segmentáciu kontaktov v Brevo
  4. Dávkuj API požiadavky - Použi dávkové endpointy pre hromadné operácie, aby si zostal v limitoch
  5. Sleduj doručenie webhookov - Nastav logiku opakovaných pokusov a spracovanie nedoručených správ
  6. Použi inkrementálnu synchronizáciu - Synchronizuj iba zmenené záznamy pomocou vlastnosti lastmodifieddate

Bezpečnosť

  • Tokeny súkromných aplikácií - Tokeny s obmedzeným prístupom a jemnými oprávneniami
  • OAuth 2.0 - Priemyselne štandardná autorizácia s rotáciou refresh tokenov
  • Podpisy webhookov - Overenie podpisu na základe HMAC (v3)
  • TLS šifrovanie - Všetka API komunikácia šifrovaná počas prenosu
  • Scoped oprávnenia - Minimálny požadovaný prístup scope na integráciu

Súvisiace zdroje

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

AI asistent

Ahoj! Opýtajte sa ma na dokumentáciu.

Začnite zadarmo s Brevo