Konektor Salesforce

Konektor Salesforce

Propojte svůj Salesforce CRM s Brevo přes Tajo pro podnikovou synchronizaci kontaktů, správu leadů, sledování příležitostí a marketingovou automatizaci poháněnou daty z CRM.

Přehled

VlastnostHodnota
PlatformaSalesforce
KategorieCRM
Složitost nastaveníPokročilá
Oficiální integraceAno
Synchronizovaná dataKontakty, Leady, Účty, Příležitosti, Události
Základní URL APIhttps://yourInstance.salesforce.com/services/data/vXX.0

Funkce

  • Obousměrná synchronizace kontaktů/leadů – Synchronizujte kontakty a leady Salesforce se seznamy kontaktů Brevo
  • Sledování příležitostí – Mapujte fáze a částky obchodů pro segmentaci na základě výnosů
  • Hierarchie účtů – Synchronizujte firemní účty pro marketing na základě účtů v Brevo
  • Mapování vlastních objektů – Mapujte vlastní objekty Salesforce na atributy a události Brevo
  • Synchronizace členů kampaní – Synchronizujte členy kampaní Salesforce se seznamy Brevo
  • Sledování aktivit – Synchronizujte úkoly, události a e-mailové aktivity pro hodnocení zapojení
  • Streamování v reálném čase – Používejte Streaming API Salesforce pro okamžité aktualizace dat
  • Podpora SOQL dotazů – Filtrujte synchronizovaná data pomocí vlastních SOQL dotazů

Předpoklady

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

  1. Organizaci Salesforce (jakékoli vydání s přístupem k API)
  2. Nakonfigurovanou Připojenou aplikaci v Nastavení Salesforce
  3. Povolený přístup k API pro váš uživatelský profil Salesforce
  4. Účet Brevo s přístupem k API
  5. Účet Tajo

Ověření

Webový server flow OAuth 2.0 (doporučeno)

Nejlepší pro produkční integrace s autorizací uživatele.

Terminal window
# Krok 1: Autorizace
https://login.salesforce.com/services/oauth2/authorize?
response_type=code&
client_id={consumer_key}&
redirect_uri={callback_url}
# Krok 2: Výměna kódu za tokeny
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}"

Flow uživatelského jména a hesla

Pro integrace server-server bez interakce uživatele.

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 přidání bezpečnostního tokenu k heslu pro flow uživatelského jména a hesla. Resetujte svůj token z Nastavení > Moje osobní informace > Resetovat bezpečnostní token.

Konfigurace

Základní nastavení

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}"
# Možnosti synchronizace dat
sync:
contacts: true
leads: true
accounts: true
opportunities: true
campaigns: true
# Směr synchronizace
direction: salesforce_to_brevo
# Přiřazení seznamů Brevo
lists:
all_leads: 15
qualified_leads: 16
customers: 17

Mapování polí

Mapujte pole Salesforce na atributy kontaktů Brevo:

Výchozí mapování

Parameter Type Description
Email required
string

E-mail kontaktu/leadu (jedinečný identifikátor pro Brevo)

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 zasílání přes WhatsApp/SMS

Account.Name optional
string

Název přidruženého účtu/společnosti

LeadSource optional
string

Zdroj získání leadu

StageName optional
string

Fáze příležitosti pro sledování obchodů

OwnerId optional
string

Přiřazený obchodní zástupce pro směrování

Mapování vlastních polí

field_mapping:
# Standardní pole
Email: email
FirstName: FIRSTNAME
LastName: LASTNAME
Phone: SMS
# Pole CRM
LeadSource: LEAD_SOURCE
Lead_Score__c: LEAD_SCORE
Account.Name: COMPANY_NAME
Account.Industry: INDUSTRY
# Pole příležitostí
Amount: DEAL_VALUE
StageName: DEAL_STAGE
CloseDate: EXPECTED_CLOSE_DATE
# Vlastní pole
Preferred_Channel__c: PREFERRED_CHANNEL
Customer_Tier__c: VIP_TIER

Koncové body API

Prostředky REST API

MetodaKoncový bodPopis
GET/services/data/vXX.0/sobjects/ContactDotaz na kontakty
POST/services/data/vXX.0/sobjects/ContactVytvoření kontaktu
PATCH/services/data/vXX.0/sobjects/Contact/{id}Aktualizace kontaktu
GET/services/data/vXX.0/sobjects/LeadDotaz na leady
GET/services/data/vXX.0/sobjects/AccountDotaz na účty
GET/services/data/vXX.0/sobjects/OpportunityDotaz na příležitosti
GET/services/data/vXX.0/query?q={SOQL}Spuštění SOQL dotazu
POST/services/data/vXX.0/composite/sobjectsHromadné vytvoření/aktualizace

Bulk API

MetodaKoncový bodPopis
POST/services/data/vXX.0/jobs/ingestVytvoření úlohy hromadného vkládání
PUT/services/data/vXX.0/jobs/ingest/{jobId}/batchesNahrání dat dávky
GET/services/data/vXX.0/jobs/ingest/{jobId}Kontrola stavu úlohy

Streaming API

Koncový bodPopis
/cometd/XX.0CometD long-polling pro události v reálném čase
PushTopicPřihlásit se k odběru změn záznamů přes témata na bázi SOQL
Change Data CaptureStreamování podrobných změn na úrovni polí
Platform EventsVlastní architektura řízená událostmi

Události

Události záznamů (Change Data Capture)

UdálostSpouštěčPřípad použití
ContactChangeEventKontakt vytvořen/aktualizován/smazánSynchronizace kontaktů v reálném čase
LeadChangeEventLead vytvořen/aktualizován/konvertovánSledování životního cyklu leadu
OpportunityChangeEventZměněna fáze příležitostiAutomatizace pipeline obchodů
AccountChangeEventUpraven záznam účtuSynchronizace firemních dat

Platformové události

UdálostSpouštěčPřípad použití
Lead_Converted__eLead konvertován na kontaktPéče po konverzi
Deal_Won__ePříležitost uzavřena jako získanáTok onboardingu zákazníka
Deal_Lost__ePříležitost uzavřena jako ztracenáKampaně pro opětovné získání

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í 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
});

Synchronizace kontaktů s filtrem SOQL

// Synchronizace pouze kvalifikovaných leadů ze 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
});
// Kontrola stavu synchronizace
const status = await tajo.connectors.status('salesforce');
console.log(status);
// {
// connected: true,
// lastSync: '2024-01-15T10:30:00Z',
// contactsSynced: 18400,
// leadsSynced: 7200,
// opportunitiesSynced: 3100
// }

Streamování v reálném čase

// Přihlášení k odběru Change Data Capture Salesforce
await tajo.connectors.stream('salesforce', {
channels: [
'/data/ContactChangeEvent',
'/data/LeadChangeEvent',
'/data/OpportunityChangeEvent'
],
handler: async (event) => {
console.log(`Zjištěna změna: ${event.entity} ${event.changeType}`);
// Automaticky synchronizováno do Brevo přes Tajo
}
});

Omezení rychlosti

Limity REST API Salesforce závisí na vašem vydání a počtu licencí:

VydáníAPI požadavky za 24 hodin
Developer15 000
Enterprise1 000 na uživatelskou licenci (min. 15 000)
Unlimited5 000 na uživatelskou licenci (min. 15 000)
Performance5 000 na uživatelskou licenci (min. 15 000)

Další limity:

  • Souběžný limit API: 25 dlouhodobých požadavků
  • Bulk API: 15 000 dávek za 24 hodin
  • Streaming API: 2 000 událostí za den (lze zvýšit)
  • Composite API: 25 poddotazů na composite požadavek

Monitorování využití API

Sledujte své využití API v Nastavení Salesforce > Přehled systému. Tajo používá bulk API pro velké synchronizace, aby ušetřilo vaše limity API.

Řešení problémů

Časté problémy

ProblémPříčinaŘešení
INVALID_SESSION_IDToken vypršelAutomaticky obnovte OAuth token
REQUEST_LIMIT_EXCEEDEDPřekročen denní limit APIPoužívejte Bulk API nebo snižte frekvenci synchronizace
FIELD_INTEGRITY_EXCEPTIONChybí povinné poleNamapujte všechna povinná pole v konfiguraci
DUPLICATES_DETECTEDAktivní pravidla duplicitNakonfigurujte předvolby zpracování duplicit
INSUFFICIENT_ACCESSChybějící oprávnění objektuUdělte přístup k API v profilu Salesforce

Režim ladění

Povolte podrobné protokolování:

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

Test připojení

Terminal window
tajo connectors test salesforce
# ✓ OAuth token platný
# ✓ Kontakty přístupné
# ✓ Leady přístupné
# ✓ Účty přístupné
# ✓ Příležitosti přístupné
# ✓ Bulk API povoleno

Osvědčené postupy

  1. Používejte Bulk API pro velké synchronizace – Pro datové sady nad 2 000 záznamů přepněte na Bulk API 2.0
  2. Implementujte Change Data Capture – Používejte CDC pro synchronizaci v reálném čase místo pollingu
  3. Mapujte pouze potřebná pole – Snižte využití API synchronizací pouze požadovaných polí
  4. Zpracovávejte obnovení tokenů – Implementujte logiku automatického obnovení OAuth tokenů
  5. Používejte composite požadavky – Kombinujte související volání API ke snížení počtu požadavků
  6. Nejprve testujte v sandboxu – Před nasazením do produkce použijte sandboxovou organizaci Salesforce

Zabezpečení

  • OAuth 2.0 – Průmyslově standardní autorizace s více typy grantu
  • Omezení IP – Salesforce podporuje přihlašovací rozsahy IP a nastavení důvěryhodných IP
  • TLS 1.2+ – Veškerá komunikace API šifrována minimálně TLS 1.2
  • Zabezpečení na úrovni polí – Podrobné řízení přístupu k polím na profil
  • Správa relací – Konfigurovatelný časový limit relace a limity souběžných relací

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