Konektor HubSpot

Konektor HubSpot

Propojte svůj HubSpot CRM s Brevo přes Tajo pro obousměrnou synchronizaci kontaktů, sledování obchodů, data o zapojení a jednotnou marketingovou automatizaci na obou platformách.

Přehled

VlastnostHodnota
PlatformaHubSpot
KategorieCRM
Složitost nastaveníStřední
Oficiální integraceAno
Synchronizovaná dataKontakty, Společnosti, Obchody, Tikety, Události
Základní URL APIhttps://api.hubapi.com

Funkce

  • Obousměrná synchronizace kontaktů – Udržujte kontakty synchronizované mezi HubSpotem a Brevo v reálném čase
  • Sledování obchodního procesu – Synchronizujte fáze a hodnoty obchodů pro segmentaci na základě výnosů
  • Synchronizace firemních dat – Přiřazujte kontakty k firemním záznamům a firmografickým datům
  • Integrace tiketů – Sledujte podporové tikety pro hodnocení zdraví zákazníka
  • Sledování zapojení – Synchronizujte otevření e-mailů, kliknutí, schůzky, hovory a poznámky
  • Podpora vlastních objektů – Mapujte vlastní objekty HubSpotu na atributy Brevo
  • Spouštěče pracovních postupů – Použijte změny životního cyklu v HubSpotu ke spuštění automatizací Brevo
  • Webhookové události – Oznámení v reálném čase o změnách dat CRM

Předpoklady

Než začnete, ujistěte se, že máte:

  1. Účet HubSpot (Free, Starter, Professional nebo Enterprise)
  2. Privátní aplikaci nebo OAuth aplikaci HubSpot s požadovanými oprávněními
  3. Účet Brevo s přístupem k API
  4. Účet Tajo

Ověření

Přístupový token privátní aplikace (doporučeno)

Vytvořte privátní aplikaci v HubSpotu pro přímý přístup k API s podrobným řízením oprávnění.

  1. Přejděte do HubSpot Nastavení > Integrace > Privátní aplikace
  2. Vytvořte novou privátní aplikaci
  3. Nakonfigurujte požadované oprávnění
  4. Zkopírujte pří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žijte OAuth 2.0 pro integrace s více účty, které vyžadují autorizaci uživatele.

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

Požadovaná oprávnění

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

Konfigurace

Základní nastavení

connectors:
hubspot:
enabled: true
access_token: "${HUBSPOT_ACCESS_TOKEN}"
# Možnosti synchronizace dat
sync:
contacts: true
companies: true
deals: true
tickets: true
engagements: true
# Směr synchronizace
direction: bidirectional # nebo 'hubspot_to_brevo' | 'brevo_to_hubspot'
# Přiřazení seznamů v Brevo
lists:
all_contacts: 10
qualified_leads: 11
customers: 12

Mapování polí

Mapujte vlastnosti HubSpotu na atributy kontaktů Brevo:

Výchozí mapování

Parameter Type Description
email required
string

E-mail kontaktu (primární identifikátor)

firstname optional
string

Mapuje se na atribut FIRSTNAME v Brevo

lastname optional
string

Mapuje se na atribut LASTNAME v Brevo

phone optional
string

Mapuje se na atribut SMS pro WhatsApp/SMS

company optional
string

Název přidružené společnosti

lifecyclestage optional
string

Fáze životního cyklu HubSpotu (odběratel, lead, MQL, SQL, zákazník)

hs_lead_status optional
string

Stav kvalifikace leadu

hubspot_owner_id optional
string

ID přiřazeného obchodního vlastníka

Mapování vlastních vlastností

field_mapping:
# Standardní pole
email: email
firstname: FIRSTNAME
lastname: LASTNAME
phone: SMS
# Pole CRM
lifecyclestage: LIFECYCLE_STAGE
hs_lead_status: LEAD_STATUS
company: COMPANY_NAME
# Metriky obchodů
hs_total_deal_value: DEAL_VALUE
num_associated_deals: DEAL_COUNT
# Vlastní vlastnosti
preferred_channel: PREFERRED_CHANNEL
customer_segment: SEGMENT

Koncové body API

Objekty CRM

MetodaKoncový bodPopis
GET/crm/v3/objects/contactsVýpis kontaktů
POST/crm/v3/objects/contactsVytvoření kontaktu
PATCH/crm/v3/objects/contacts/{id}Aktualizace kontaktu
GET/crm/v3/objects/companiesVýpis společností
GET/crm/v3/objects/dealsVýpis obchodů
POST/crm/v3/objects/dealsVytvoření obchodu
GET/crm/v3/objects/ticketsVýpis tiketů

Asociace

MetodaKoncový bodPopis
GET/crm/v4/objects/{objectType}/{objectId}/associations/{toObjectType}Získání asociací
PUT/crm/v4/objects/{objectType}/{objectId}/associations/{toObjectType}/{toObjectId}Vytvoření asociace

Zapojení

MetodaKoncový bodPopis
GET/crm/v3/objects/callsVýpis hovorů
GET/crm/v3/objects/emailsVýpis e-mailů
GET/crm/v3/objects/meetingsVýpis schůzek
GET/crm/v3/objects/notesVýpis poznámek
GET/crm/v3/objects/tasksVýpis úkolů

Události

Události kontaktů

UdálostSpouštěčPřípad použití
contact.creationVytvořen nový kontaktSpuštění uvítacího toku
contact.propertyChangeAktualizována vlastnost kontaktuSynchronizace atributů
contact.mergeKontakty sloučenyZpracování deduplikace
contact.deletionKontakt smazánÚklid v Brevo

Události obchodů

UdálostSpouštěčPřípad použití
deal.creationVytvořen nový obchodProdejní oznámení
deal.propertyChangeZměněna fáze obchoduAutomatizace pipeline
deal.deletionObchod odstraněnReporting výnosů

Události společností

UdálostSpouštěčPřípad použití
company.creationPřidána nová společnostMarketing na základě účtu
company.propertyChangeAktualizována data společnostiSynchronizace firmografických dat

Příklady kódu

Inicializace konektoru

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

Spuštění synchronizace kontaktů

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

Zpracování webhookových událostí

// Zpracování webhookových oznámení HubSpotu
app.post('/webhooks/hubspot', async (req, res) => {
const signature = req.get('X-HubSpot-Signature-v3');
// Ověření podpisu webhooku
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');
});

Omezení rychlosti

HubSpot aplikuje omezení rychlosti na privátní nebo OAuth aplikace:

PlánOmezení rychlostiBurstové omezení
Free/Starter100 požadavků/10 sekund150 požadavků/10 sekund
Professional150 požadavků/10 sekund200 požadavků/10 sekund
Enterprise200 požadavků/10 sekund250 požadavků/10 sekund
Doplněk API200 požadavků/10 sekund250 požadavků/10 sekund

Další omezení:

  • Search API: 5 požadavků/sekundu na aplikaci
  • Dávkové operace: 100 záznamů na dávkový požadavek
  • Denní limit: 500 000 požadavků/den (OAuth aplikace)

Zpracování omezení rychlosti

HubSpot vrací odpověď 429 Too Many Requests, když jsou překročeny limity. Použijte exponenciální zpětné odběrání a sledujte hlavičky X-HubSpot-RateLimit-*.

Řešení problémů

Časté problémy

ProblémPříčinaŘešení
401 UnauthorizedExpirovaný nebo neplatný tokenObnovte token privátní aplikace nebo aktualizujte OAuth token
Kontakt nesynchronizovánChybějící vlastnost e-mailuKontakty HubSpotu vyžadují e-mail pro synchronizaci s Brevo
Duplicitní kontaktyŽádné pravidlo deduplikaceNakonfigurujte pravidla sloučení v HubSpotu
Webhook nepřijatPředplatné není aktivníZnovu zaregistrujte webhookové předplatné
Vlastnost není mapovánaVlastní vlastnost nevytvořenaNejprve vytvořte vlastnost v HubSpotu

Režim ladění

Povolte podrobné protokolování:

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

Test připojení

Terminal window
tajo connectors test hubspot
# ✓ Připojení API úspěšné
# ✓ Kontakty čitelné
# ✓ Společnosti čitelné
# ✓ Obchody čitelné
# ✓ Webhooky zaregistrovány

Osvědčené postupy

  1. Používejte privátní aplikace místo API klíčů – API klíče jsou zastaralé; používejte privátní aplikace pro lepší zabezpečení
  2. Implementujte obousměrnou synchronizaci opatrně – Vyhněte se nekonečným smyčkám sledováním zdroje synchronizace
  3. Mapujte fáze životního cyklu – Použijte fáze životního cyklu HubSpotu k segmentaci kontaktů v Brevo
  4. Dávkujte API požadavky – Používejte dávkové koncové body pro hromadné operace v rámci limitů rychlosti
  5. Sledujte doručení webhooků – Nastavte logiku opakování a zpracování nedoručených zpráv
  6. Používejte přírůstkovou synchronizaci – Synchronizujte pouze změněné záznamy pomocí vlastnosti lastmodifieddate

Zabezpečení

  • Tokeny privátních aplikací – Oprávněné přístupové tokeny s podrobnými oprávněními
  • OAuth 2.0 – Průmyslově standardní autorizace s rotací obnovovacích tokenů
  • Podpisy webhooků – Ověření podpisu na základě HMAC (v3)
  • Šifrování TLS – Veškerá komunikace API šifrována při přenosu
  • Oprávnění s omezeným rozsahem – Minimální požadovaný přístup k oprávněním na integraci

Související zdroje

Subscribe to updates

developer-docs

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

AI asistent

Ahoj! Zeptejte se mě na dokumentaci.

Začněte zdarma s Brevo