Σύνδεσμος HubSpot
Σύνδεσμος HubSpot
Συνδέστε το HubSpot CRM σας με το Brevo μέσω Tajo για αμφίδρομο συγχρονισμό επαφών, παρακολούθηση συμφωνιών, δεδομένα αλληλεπίδρασης και ενοποιημένη αυτοματοποίηση marketing σε αμφότερες τις πλατφόρμες.
Επισκόπηση
| Ιδιότητα | Τιμή |
|---|---|
| Πλατφόρμα | HubSpot |
| Κατηγορία | CRM |
| Πολυπλοκότητα Ρύθμισης | Μεσαία |
| Επίσημη Ενσωμάτωση | Ναι |
| Δεδομένα που Συγχρονίζονται | Επαφές, Εταιρείες, Συμφωνίες, Αιτήματα, Εκδηλώσεις |
| Βασικό URL API | https://api.hubapi.com |
Χαρακτηριστικά
- Αμφίδρομος συγχρονισμός επαφών - Διατηρήστε τις επαφές συγχρονισμένες μεταξύ HubSpot και Brevo σε πραγματικό χρόνο
- Παρακολούθηση pipeline συμφωνιών - Συγχρονισμός σταδίων συμφωνιών και αξιών για τμηματοποίηση βάσει εσόδων
- Συγχρονισμός δεδομένων εταιρείας - Συσχέτιση επαφών με εγγραφές εταιρειών και firmographic δεδομένα
- Ενσωμάτωση αιτημάτων - Παρακολούθηση αιτημάτων υποστήριξης για βαθμολόγηση υγείας πελατών
- Παρακολούθηση αλληλεπιδράσεων - Συγχρονισμός ανοιγμάτων email, κλικ, συναντήσεων, κλήσεων και σημειώσεων
- Υποστήριξη προσαρμοσμένων αντικειμένων - Αντιστοίχιση προσαρμοσμένων αντικειμένων HubSpot σε χαρακτηριστικά Brevo
- Ενεργοποιητές ροής εργασίας - Χρήση αλλαγών σταδίου κύκλου ζωής HubSpot για ενεργοποίηση αυτοματισμών Brevo
- Εκδηλώσεις webhook - Ειδοποιήσεις σε πραγματικό χρόνο για αλλαγές δεδομένων CRM
Προαπαιτούμενα
Πριν ξεκινήσετε, βεβαιωθείτε ότι διαθέτετε:
- Λογαριασμό HubSpot (Free, Starter, Professional ή Enterprise)
- Ιδιωτική εφαρμογή HubSpot ή εφαρμογή OAuth με τα απαραίτητα scopes
- Λογαριασμό Brevo με πρόσβαση API
- Λογαριασμό Tajo
Πιστοποίηση
Token Πρόσβασης Ιδιωτικής Εφαρμογής (Συνιστάται)
Δημιουργήστε μια ιδιωτική εφαρμογή στο HubSpot για άμεση πρόσβαση API με λεπτομερή έλεγχο scope.
- Μεταβείτε στο HubSpot Settings > Integrations > Private Apps
- Δημιουργήστε νέα ιδιωτική εφαρμογή
- Ρυθμίστε τα απαιτούμενα scopes
- Αντιγράψτε το 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
Χρησιμοποιήστε OAuth 2.0 για ενσωματώσεις πολλαπλών λογαριασμών που απαιτούν εξουσιοδότηση χρήστη.
# Authorization URLhttps://app.hubspot.com/oauth/authorize?client_id={client_id}&scope=crm.objects.contacts.read&redirect_uri={redirect_uri}Απαιτούμενα Scopes
crm.objects.contacts.readcrm.objects.contacts.writecrm.objects.companies.readcrm.objects.deals.readcrm.objects.deals.writecrm.objects.custom.readcrm.schemas.custom.readΔιαμόρφωση
Βασική Ρύθμιση
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Αντιστοίχιση Πεδίων
Αντιστοιχίστε ιδιότητες HubSpot σε χαρακτηριστικά επαφών Brevo:
Προεπιλεγμένες Αντιστοιχίσεις
| Parameter | Type | Description |
|---|---|---|
email required | string | Email επαφής (κύριο αναγνωριστικό) |
firstname optional | string | Αντιστοιχίζεται στο χαρακτηριστικό FIRSTNAME στο Brevo |
lastname optional | string | Αντιστοιχίζεται στο χαρακτηριστικό LASTNAME στο Brevo |
phone optional | string | Αντιστοιχίζεται στο χαρακτηριστικό SMS για WhatsApp/SMS |
company optional | string | Όνομα συσχετισμένης εταιρείας |
lifecyclestage optional | string | Στάδιο κύκλου ζωής HubSpot (subscriber, lead, MQL, SQL, customer) |
hs_lead_status optional | string | Κατάσταση αξιολόγησης lead |
hubspot_owner_id optional | string | ID ανατεθειμένου ιδιοκτήτη πωλήσεων |
Αντιστοίχιση Προσαρμοσμένων Ιδιοτήτων
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: SEGMENTEndpoints API
Αντικείμενα CRM
| Μέθοδος | Endpoint | Περιγραφή |
|---|---|---|
GET | /crm/v3/objects/contacts | Λίστα επαφών |
POST | /crm/v3/objects/contacts | Δημιουργία επαφής |
PATCH | /crm/v3/objects/contacts/{id} | Ενημέρωση επαφής |
GET | /crm/v3/objects/companies | Λίστα εταιρειών |
GET | /crm/v3/objects/deals | Λίστα συμφωνιών |
POST | /crm/v3/objects/deals | Δημιουργία συμφωνίας |
GET | /crm/v3/objects/tickets | Λίστα αιτημάτων |
Συσχετίσεις
| Μέθοδος | Endpoint | Περιγραφή |
|---|---|---|
GET | /crm/v4/objects/{objectType}/{objectId}/associations/{toObjectType} | Λήψη συσχετίσεων |
PUT | /crm/v4/objects/{objectType}/{objectId}/associations/{toObjectType}/{toObjectId} | Δημιουργία συσχέτισης |
Αλληλεπιδράσεις
| Μέθοδος | Endpoint | Περιγραφή |
|---|---|---|
GET | /crm/v3/objects/calls | Λίστα αλληλεπιδράσεων κλήσεων |
GET | /crm/v3/objects/emails | Λίστα αλληλεπιδράσεων email |
GET | /crm/v3/objects/meetings | Λίστα συναντήσεων |
GET | /crm/v3/objects/notes | Λίστα σημειώσεων |
GET | /crm/v3/objects/tasks | Λίστα εργασιών |
Εκδηλώσεις
Εκδηλώσεις Επαφών
| Εκδήλωση | Ενεργοποίηση | Περίπτωση Χρήσης |
|---|---|---|
contact.creation | Δημιουργία νέας επαφής | Ενεργοποίηση ροής καλωσορίσματος |
contact.propertyChange | Ενημέρωση ιδιότητας επαφής | Συγχρονισμός χαρακτηριστικών |
contact.merge | Συγχώνευση επαφών | Χειρισμός αποκλεισμού διπλοτύπων |
contact.deletion | Διαγραφή επαφής | Εκκαθάριση στο Brevo |
Εκδηλώσεις Συμφωνιών
| Εκδήλωση | Ενεργοποίηση | Περίπτωση Χρήσης |
|---|---|---|
deal.creation | Δημιουργία νέας συμφωνίας | Ειδοποίηση πωλήσεων |
deal.propertyChange | Αλλαγή σταδίου συμφωνίας | Αυτοματοποίηση pipeline |
deal.deletion | Κατάργηση συμφωνίας | Αναφορά εσόδων |
Εκδηλώσεις Εταιρειών
| Εκδήλωση | Ενεργοποίηση | Περίπτωση Χρήσης |
|---|---|---|
company.creation | Προσθήκη νέας εταιρείας | Marketing βάσει λογαριασμών |
company.propertyChange | Ενημέρωση δεδομένων εταιρείας | Συγχρονισμός firmographic |
Παραδείγματα Κώδικα
Αρχικοποίηση Συνδέσμου
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});Εκτέλεση Συγχρονισμού Επαφών
// 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// }Χειρισμός Εκδηλώσεων Webhook
// 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');});Όρια Ρυθμού
Το HubSpot εφαρμόζει όρια ρυθμού ανά ιδιωτική εφαρμογή ή εφαρμογή OAuth:
| Πλάνο | Όριο Ρυθμού | Όριο Έκρηξης |
|---|---|---|
| Free/Starter | 100 αιτήματα/10 δευτερόλεπτα | 150 αιτήματα/10 δευτερόλεπτα |
| Professional | 150 αιτήματα/10 δευτερόλεπτα | 200 αιτήματα/10 δευτερόλεπτα |
| Enterprise | 200 αιτήματα/10 δευτερόλεπτα | 250 αιτήματα/10 δευτερόλεπτα |
| API add-on | 200 αιτήματα/10 δευτερόλεπτα | 250 αιτήματα/10 δευτερόλεπτα |
Πρόσθετα όρια:
- Search API: 5 αιτήματα/δευτερόλεπτο ανά εφαρμογή
- Λειτουργίες Batch: 100 εγγραφές ανά αίτημα batch
- Ημερήσιο όριο: 500.000 αιτήματα/ημέρα (εφαρμογές OAuth)
Χειρισμός Ορίου Ρυθμού
Το HubSpot επιστρέφει απόκριση 429 Too Many Requests όταν υπερβαίνονται τα όρια. Χρησιμοποιήστε εκθετική καθυστέρηση και παρακολουθήστε τα headers X-HubSpot-RateLimit-*.
Αντιμετώπιση Προβλημάτων
Συνηθισμένα Προβλήματα
| Πρόβλημα | Αιτία | Λύση |
|---|---|---|
| 401 Unauthorized | Token λήξης ή μη έγκυρο | Αναγέννηση token ιδιωτικής εφαρμογής ή ανανέωση OAuth token |
| Η επαφή δεν συγχρονίστηκε | Λείπει ιδιότητα email | Οι επαφές HubSpot απαιτούν email για συγχρονισμό Brevo |
| Διπλές επαφές | Δεν υπάρχει κανόνας αποκλεισμού | Ρύθμιση κανόνων συγχώνευσης στο HubSpot |
| Δεν ελήφθη webhook | Η συνδρομή δεν είναι ενεργή | Επαναεγγραφή συνδρομών webhook |
| Η ιδιότητα δεν αντιστοιχίστηκε | Η προσαρμοσμένη ιδιότητα δεν δημιουργήθηκε | Δημιουργήστε πρώτα την ιδιότητα στο HubSpot |
Λειτουργία Εντοπισμού Σφαλμάτων
Ενεργοποίηση λεπτομερούς καταγραφής:
connectors: hubspot: debug: true log_level: verbose log_webhooks: trueΔοκιμή Σύνδεσης
tajo connectors test hubspot# ✓ API connection successful# ✓ Contacts readable# ✓ Companies readable# ✓ Deals readable# ✓ Webhooks registeredΒέλτιστες Πρακτικές
- Χρησιμοποιήστε ιδιωτικές εφαρμογές αντί API keys - Τα API keys είναι deprecated· χρησιμοποιήστε ιδιωτικές εφαρμογές για καλύτερη ασφάλεια
- Εφαρμόστε αμφίδρομο συγχρονισμό προσεκτικά - Αποφύγετε άπειρες επαναλήψεις παρακολουθώντας την πηγή συγχρονισμού
- Αντιστοιχίστε στάδια κύκλου ζωής - Χρησιμοποιήστε στάδια κύκλου ζωής HubSpot για τμηματοποίηση επαφών στο Brevo
- Αιτήματα API σε batch - Χρησιμοποιήστε endpoints batch για μαζικές λειτουργίες εντός των ορίων ρυθμού
- Παρακολούθηση παράδοσης webhook - Ρυθμίστε λογική επανάληψης και χειρισμό νεκρών γραμμάτων
- Χρησιμοποιήστε σταδιακό συγχρονισμό - Συγχρονίστε μόνο αλλαγμένες εγγραφές χρησιμοποιώντας την ιδιότητα
lastmodifieddate
Ασφάλεια
- Tokens Ιδιωτικής Εφαρμογής - Tokens πρόσβασης με περιορισμένα δικαιώματα
- OAuth 2.0 - Τυπική βιομηχανική εξουσιοδότηση με εναλλαγή refresh token
- Υπογραφές Webhook - Επαλήθευση υπογραφής βάσει HMAC (v3)
- Κρυπτογράφηση TLS - Όλη η επικοινωνία API κρυπτογραφημένη κατά τη μεταφορά
- Δικαιώματα βάσει scope - Ελάχιστη απαιτούμενη πρόσβαση scope ανά ενσωμάτωση