---
title: "HubSpot konektor"
description: "Kompletný sprievodca integráciou HubSpot CRM na synchronizáciu kontaktov, spoločností, obchodov, ticketov a marketingových dát s Brevo cez Tajo."
url: https://tajo.io/sk/docs/connectors/crm/hubspot/
markdown: https://tajo.io/sk/docs/connectors/crm/hubspot.md
lang: sk-SK
robots: noindex
---

Požiadajte o skorý prístup

Zadajte svoje meno a pracovnú e-mailovú adresu. Pošleme vám odkaz na potvrdenie žiadosti o prístup k Tajo.

# HubSpot konektor

Stav konektora: Vo vývoji Vzniká. Zatiaľ neoverené.

| Zdrojové pole | Cieľové pole | Ukážková hodnota |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

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 |
| --- | --- |
| **Platforma** | HubSpot |
| **Kategória** | CRM |
| **Zložitosť nastavenia** | Stredná |
| **Oficiálna integrácia** | Nie |
| **Synchronizované dáta** | Kontakty, Spoločnosti, Obchody, Tickety, Udalosti |
| **API Base URL** | `https://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

```bash
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.

```bash
# 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

```yaml
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í

```yaml
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óda | Endpoint | Popis |
| --- | --- | --- |
| `GET` | `/crm/v3/objects/contacts` | Zoznam kontaktov |
| `POST` | `/crm/v3/objects/contacts` | Vytvorenie kontaktu |
| `PATCH` | `/crm/v3/objects/contacts/{id}` | Aktualizácia kontaktu |
| `GET` | `/crm/v3/objects/companies` | Zoznam spoločností |
| `GET` | `/crm/v3/objects/deals` | Zoznam obchodov |
| `POST` | `/crm/v3/objects/deals` | Vytvorenie obchodu |
| `GET` | `/crm/v3/objects/tickets` | Zoznam ticketov |

### Asociácie

| Metóda | Endpoint | Popis |
| --- | --- | --- |
| `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óda | Endpoint | Popis |
| --- | --- | --- |
| `GET` | `/crm/v3/objects/calls` | Zoznam hovorov |
| `GET` | `/crm/v3/objects/emails` | Zoznam e-mailových zapojení |
| `GET` | `/crm/v3/objects/meetings` | Zoznam stretnutí |
| `GET` | `/crm/v3/objects/notes` | Zoznam poznámok |
| `GET` | `/crm/v3/objects/tasks` | Zoznam úloh |

## Udalosti

### Udalosti kontaktov

| Udalosť | Trigger | Prípad použitia |
| --- | --- | --- |
| `contact.creation` | Vytvorenie nového kontaktu | Spustenie welcome flow |
| `contact.propertyChange` | Aktualizácia vlastnosti kontaktu | Synchronizácia atribútov |
| `contact.merge` | Zlúčenie kontaktov | Správa deduplikácie |
| `contact.deletion` | Odstránenie kontaktu | Vyčistenie v Brevo |

### Udalosti obchodov

| Udalosť | Trigger | Prípad použitia |
| --- | --- | --- |
| `deal.creation` | Vytvorenie nového obchodu | Notifikácia predaja |
| `deal.propertyChange` | Zmena fázy obchodu | Automatizácia pipeline |
| `deal.deletion` | Odstránenie obchodu | Reportovanie príjmov |

### Udalosti spoločností

| Udalosť | Trigger | Prípad použitia |
| --- | --- | --- |
| `company.creation` | Pridanie novej spoločnosti | Account-based marketing |
| `company.propertyChange` | Aktualizácia dát spoločnosti | Synchronizácia firmografických dát |

## Ukážky kódu

### Inicializácia konektora

```javascript
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

```javascript
// 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í

```javascript
// 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án | Obmedzenie | Burst limit |
| --- | --- | --- |
| Free/Starter | 100 požiadaviek/10 sekúnd | 150 požiadaviek/10 sekúnd |
| Professional | 150 požiadaviek/10 sekúnd | 200 požiadaviek/10 sekúnd |
| Enterprise | 200 požiadaviek/10 sekúnd | 250 požiadaviek/10 sekúnd |
| API doplnok | 200 požiadaviek/10 sekúnd | 250 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ém | Príčina | Riešenie |
| --- | --- | --- |
| 401 Unauthorized | Vypršaný alebo neplatný token | Znovu vygeneruj token súkromnej aplikácie alebo obnov OAuth token |
| Kontakt nie je synchronizovaný | Chýbajúca vlastnosť e-mail | Kontakty HubSpot vyžadujú e-mail pre synchronizáciu s Brevo |
| Duplicitné kontakty | Žiadne pravidlo deduplikácie | Nakonfiguruj pravidlá zlúčenia v HubSpot |
| Webhook nebol prijatý | Predplatné nie je aktívne | Znovu zaregistruj webhook predplatné |
| Vlastnosť nie je namapovaná | Vlastná vlastnosť nie je vytvorená | Najprv vytvor vlastnosť v HubSpot |

### Debug režim

Zapni verbose logovanie:

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

### Test pripojenia

```bash
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

- [HubSpot API dokumentácia](https://developers.hubspot.com/docs/api/overview)
- [Sprievodca autentifikáciou HubSpot](https://developers.hubspot.com/docs/api/working-with-oauth)
- [Salesforce konektor](https://tajo.io/sk/docs/connectors/crm/salesforce)
- [Customer Sync skill](https://tajo.io/sk/docs/skills/data-sync/customer-sync)
- [Brevo Contacts API](https://tajo.io/sk/docs/contact-management)
