Salesforce konektor

Salesforce konektor

Prepoj svoj Salesforce CRM s Brevo cez Tajo pre enterprise synchronizáciu kontaktov, správu leadov, sledovanie príležitostí a marketingovú automatizáciu poháňanú dátami z CRM.

Prehľad

VlastnosťHodnota
PlatformaSalesforce
KategóriaCRM
Zložitosť nastaveniaPokročilé
Oficiálna integráciaÁno
Synchronizované dátaKontakty, Leady, Účty, Príležitosti, Udalosti
API Base URLhttps://yourInstance.salesforce.com/services/data/vXX.0

Funkcie

  • Obojsmerná synchronizácia kontaktov/leadov - Synchronizuj kontakty a leady Salesforce so zoznamami kontaktov v Brevo
  • Sledovanie príležitostí - Namapuj fázy a sumy obchodov pre segmentáciu podľa príjmov
  • Hierarchia účtov - Synchronizuj firemné účty pre account-based marketing v Brevo
  • Mapovanie vlastných objektov - Namapuj vlastné objekty Salesforce na atribúty a udalosti v Brevo
  • Synchronizácia členov kampane - Synchronizuj členov kampaní Salesforce so zoznamami v Brevo
  • Sledovanie aktivít - Synchronizuj úlohy, udalosti a e-mailové aktivity pre hodnotenie zapojenia
  • Streamovanie v reálnom čase - Použi Streaming API Salesforce pre okamžité aktualizácie dát
  • Podpora SOQL dopytov - Filtruj synchronizované dáta pomocou vlastných SOQL dopytov

Predpoklady

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

  1. Salesforce org (akékoľvek vydanie s API prístupom)
  2. Nakonfigurovanú Connected App v Salesforce Setup
  3. API prístup povolený pre tvoj profil používateľa Salesforce
  4. Brevo účet s API prístupom
  5. Tajo účet

Autentifikácia

OAuth 2.0 Web Server Flow (odporúčané)

Najlepšie pre produkčné integrácie s autorizáciou používateľa.

Terminal window
# Step 1: Authorize
https://login.salesforce.com/services/oauth2/authorize?
response_type=code&
client_id={consumer_key}&
redirect_uri={callback_url}
# Step 2: Exchange code for tokens
curl -X POST https://login.salesforce.com/services/oauth2/token \
-d "grant_type=authorization_code" \
-d "code={auth_code}" \
-d "client_id={consumer_key}" \
-d "client_secret={consumer_secret}" \
-d "redirect_uri={callback_url}"

Username-Password Flow

Pre server-to-server integrácie bez interakcie používateľa.

Terminal window
curl -X POST https://login.salesforce.com/services/oauth2/token \
-d "grant_type=password" \
-d "client_id={consumer_key}" \
-d "client_secret={consumer_secret}" \
-d "username={username}" \
-d "password={password}{security_token}"

Bezpečnostný token

Salesforce vyžaduje pripojenie bezpečnostného tokenu k heslu pri použití username-password flow. Resetuj token cez Setup > My Personal Information > Reset My Security Token.

Konfigurácia

Základné nastavenie

connectors:
salesforce:
enabled: true
instance_url: "https://yourorg.my.salesforce.com"
api_version: "v59.0"
auth:
type: oauth2
consumer_key: "${SF_CONSUMER_KEY}"
consumer_secret: "${SF_CONSUMER_SECRET}"
refresh_token: "${SF_REFRESH_TOKEN}"
# Data sync options
sync:
contacts: true
leads: true
accounts: true
opportunities: true
campaigns: true
# Sync direction
direction: salesforce_to_brevo
# Brevo list assignment
lists:
all_leads: 15
qualified_leads: 16
customers: 17

Mapovanie polí

Namapuj polia Salesforce na atribúty kontaktov v Brevo:

Predvolené mapovania

Parameter Type Description
Email required
string

E-mail kontaktu/leadu (unikátny identifikátor pre Brevo)

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 správy WhatsApp/SMS

Account.Name optional
string

Názov priradeného účtu/spoločnosti

LeadSource optional
string

Zdroj akvizície leadu

StageName optional
string

Fáza príležitosti pre sledovanie obchodov

OwnerId optional
string

Priradený obchodný zástupca pre smerovanie

Mapovanie vlastných polí

field_mapping:
# Standard fields
Email: email
FirstName: FIRSTNAME
LastName: LASTNAME
Phone: SMS
# CRM fields
LeadSource: LEAD_SOURCE
Lead_Score__c: LEAD_SCORE
Account.Name: COMPANY_NAME
Account.Industry: INDUSTRY
# Opportunity fields
Amount: DEAL_VALUE
StageName: DEAL_STAGE
CloseDate: EXPECTED_CLOSE_DATE
# Custom fields
Preferred_Channel__c: PREFERRED_CHANNEL
Customer_Tier__c: VIP_TIER

API endpointy

REST API zdroje

MetódaEndpointPopis
GET/services/data/vXX.0/sobjects/ContactDopyt kontaktov
POST/services/data/vXX.0/sobjects/ContactVytvorenie kontaktu
PATCH/services/data/vXX.0/sobjects/Contact/{id}Aktualizácia kontaktu
GET/services/data/vXX.0/sobjects/LeadDopyt leadov
GET/services/data/vXX.0/sobjects/AccountDopyt účtov
GET/services/data/vXX.0/sobjects/OpportunityDopyt príležitostí
GET/services/data/vXX.0/query?q={SOQL}Vykonanie SOQL dopytu
POST/services/data/vXX.0/composite/sobjectsHromadné vytvorenie/aktualizácia

Bulk API

MetódaEndpointPopis
POST/services/data/vXX.0/jobs/ingestVytvorenie hromadnej ingest úlohy
PUT/services/data/vXX.0/jobs/ingest/{jobId}/batchesNahranie dávkových dát
GET/services/data/vXX.0/jobs/ingest/{jobId}Kontrola stavu úlohy

Streaming API

EndpointPopis
/cometd/XX.0CometD long-polling pre udalosti v reálnom čase
PushTopicPrihlásenie na zmeny záznamov cez SOQL témy
Change Data CaptureStreamovanie jemných zmien na úrovni polí
Platform EventsVlastná architektúra riadená udalosťami

Udalosti

Udalosti záznamov (Change Data Capture)

UdalosťTriggerPrípad použitia
ContactChangeEventKontakt vytvorený/aktualizovaný/odstránenýSynchronizácia kontaktov v reálnom čase
LeadChangeEventLead vytvorený/aktualizovaný/konvertovanýSledovanie životného cyklu leadu
OpportunityChangeEventZmena fázy príležitostiAutomatizácia pipeline obchodov
AccountChangeEventUpravený záznam účtuSynchronizácia dát spoločnosti

Platform Events

UdalosťTriggerPrípad použitia
Lead_Converted__eLead konvertovaný na kontaktNurture po konverzii
Deal_Won__ePríležitosť uzavretá-vyhranáFlow onboardingu zákazníka
Deal_Lost__ePríležitosť uzavretá-prehranáWin-back kampane

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 Salesforce
await tajo.connectors.connect('salesforce', {
instanceUrl: 'https://yourorg.my.salesforce.com',
consumerKey: process.env.SF_CONSUMER_KEY,
consumerSecret: process.env.SF_CONSUMER_SECRET,
refreshToken: process.env.SF_REFRESH_TOKEN
});

Synchronizácia kontaktov s SOQL filtrom

// Sync only qualified leads from Salesforce
await tajo.connectors.sync('salesforce', {
type: 'filtered',
resources: ['leads'],
filter: "SELECT Id, Email, FirstName, LastName, LeadScore__c FROM Lead WHERE Status = 'Qualified' AND Email != null",
brevoListId: 16
});
// Check sync status
const status = await tajo.connectors.status('salesforce');
console.log(status);
// {
// connected: true,
// lastSync: '2024-01-15T10:30:00Z',
// contactsSynced: 18400,
// leadsSynced: 7200,
// opportunitiesSynced: 3100
// }

Streamovanie v reálnom čase

// Subscribe to Salesforce Change Data Capture
await tajo.connectors.stream('salesforce', {
channels: [
'/data/ContactChangeEvent',
'/data/LeadChangeEvent',
'/data/OpportunityChangeEvent'
],
handler: async (event) => {
console.log(`Change detected: ${event.entity} ${event.changeType}`);
// Automatically synced to Brevo by Tajo
}
});

Obmedzenia rýchlosti

Limity Salesforce REST API závisia od tvojho vydania a počtu licencií:

VydanieAPI požiadavky za 24 hodín
Developer15 000
Enterprise1 000 na používateľskú licenciu (min 15 000)
Unlimited5 000 na používateľskú licenciu (min 15 000)
Performance5 000 na používateľskú licenciu (min 15 000)

Ďalšie limity:

  • Limit súbežných API: 25 dlhodobých požiadaviek
  • Bulk API: 15 000 dávok za 24 hodín
  • Streaming API: 2 000 udalostí za deň (možné zvýšiť)
  • Composite API: 25 podpožiadaviek na composite požiadavku

Monitorovanie využitia API

Sleduj využitie API v Salesforce Setup > System Overview. Tajo používa Bulk API pre veľké synchronizácie na šetrenie API limitov.

Riešenie problémov

Bežné problémy

ProblémPríčinaRiešenie
INVALID_SESSION_IDToken vypršalAutomaticky obnov OAuth token
REQUEST_LIMIT_EXCEEDEDDenný limit API bol dosiahnutýPouži Bulk API alebo zredukuj frekvenciu synchronizácie
FIELD_INTEGRITY_EXCEPTIONChýbajúce povinné poleNamapuj všetky povinné polia v konfigurácii
DUPLICATES_DETECTEDAktívne pravidlá pre duplikátyNakonfiguruj predvoľby spracovania duplikátov
INSUFFICIENT_ACCESSChýbajúce oprávnenia objektuUdeľ API prístup v profile Salesforce

Debug režim

Zapni verbose logovanie:

connectors:
salesforce:
debug: true
log_level: verbose
log_api_calls: true

Test pripojenia

Terminal window
tajo connectors test salesforce
# ✓ OAuth token valid
# ✓ Contacts accessible
# ✓ Leads accessible
# ✓ Accounts accessible
# ✓ Opportunities accessible
# ✓ Bulk API enabled

Odporúčané postupy

  1. Použi Bulk API pre veľké synchronizácie - Prepni na Bulk API 2.0 pre datasety nad 2 000 záznamov
  2. Implementuj Change Data Capture - Použi CDC pre synchronizáciu v reálnom čase namiesto pollingu
  3. Namapuj iba potrebné polia - Zredukuj využitie API synchronizáciou iba požadovaných polí
  4. Spravuj obnovu tokenov - Implementuj automatickú logiku obnovy OAuth tokenov
  5. Použi composite požiadavky - Kombinuj súvisiace API volania na zníženie počtu požiadaviek
  6. Testuj najprv v sandboxe - Použi sandbox org Salesforce pred nasadením do produkcie

Bezpečnosť

  • OAuth 2.0 - Priemyselne štandardná autorizácia s viacerými grant typmi
  • IP obmedzenia - Salesforce podporuje rozsahy prihlasovacích IP a nastavenia dôveryhodných IP
  • TLS 1.2+ - Všetka API komunikácia šifrovaná s minimálnym TLS 1.2
  • Bezpečnosť na úrovni polí - Jemná kontrola prístupu k poliam na profil
  • Správa relácií - Konfigurovateľný timeout relácie a limity súbežných relácií

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