Salesforce-koppling
Kopplingens status: Planerad Inte byggd än. Tajo kör inte den här kopplingen i dag.
Illustration · exempeldata
Exempel på synkronisering
Källa
Salesforce
Kopplingens status: Planerad
Mål
Ditt andra verktyg
Kopplingens status: Eget verktyg
Fältmappning
| Källfält | Målfält | Exempelvärde |
|---|---|---|
record.id | source_id | record_1042 |
record.updated_at | updated_at | 2026-10-18T08:00:00Z |
record.value | value | sample_value |
- Utkast
- Granska en post
- Godkänn den här versionen
Status gäller varje enskild koppling och garanterar inte att den här synkroniseringen är klar. Fälten är illustrativa. Kontrollera det faktiska schemat och behörigheterna innan synkronisering körs.
Anslut ditt Salesforce CRM till Brevo via Tajo för kontaktsynkronisering på företagsnivå, leadhantering, uppföljning av affärsmöjligheter och marknadsautomation driven av din CRM-data.
Översikt
| Egenskap | Värde |
|---|---|
| Plattform | Salesforce |
| Kategori | CRM |
| Installationskomplexitet | Avancerad |
| Officiell integration | Nej |
| Data som synkas | Kontakter, leads, konton, affärsmöjligheter, händelser |
| API bas-URL | https://yourInstance.salesforce.com/services/data/vXX.0 |
Funktioner
- Dubbelriktad synk av kontakter/leads - Synkronisera Salesforce-kontakter och leads med Brevo-kontaktlistor
- Uppföljning av affärsmöjligheter - Mappa affärsstadier och belopp för intäktsbaserad segmentering
- Kontohierarki - Synka företagskonton för kontobaserad marknadsföring i Brevo
- Mappning av anpassade objekt - Mappa Salesforce-anpassade objekt till Brevo-attribut och händelser
- Synkronisering av kampanjmedlemmar - Synka medlemmar i Salesforce-kampanjer med Brevo-listor
- Aktivitetsspårning - Synka uppgifter, händelser och e-postaktiviteter för engagemangsscoring
- Realtidsstreaming - Använd Salesforce Streaming API för omedelbara datauppdateringar
- SOQL-stöd för frågor - Filtrera synkad data med anpassade SOQL-frågor
Förutsättningar
Innan du börjar, se till att du har:
- En Salesforce-org (valfri utgåva med API-åtkomst)
- En Connected App konfigurerad i Salesforce Setup
- API-åtkomst aktiverad för din Salesforce-användarprofil
- Ett Brevo-konto med API-åtkomst
- Ett Tajo-konto
Autentisering
OAuth 2.0 Web Server-flöde (rekommenderas)
Bäst för produktionsintegrationer med användargodkännande.
# Step 1: Authorizehttps://login.salesforce.com/services/oauth2/authorize? response_type=code& client_id={consumer_key}& redirect_uri={callback_url}
# Step 2: Exchange code for tokenscurl -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}"Användarnamn-lösenordsflöde
För server-till-server-integrationer utan användarinteraktion.
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}"Säkerhetstoken
Salesforce kräver att du lägger till din säkerhetstoken efter ditt lösenord för användarnamn-lösenordsflödet. Återställ din token från Setup > My Personal Information > Reset My Security Token.
Konfiguration
Grundinställning
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: 17Fältmappning
Mappa Salesforce-fält till Brevo-kontaktattribut:
Standardmappningar
| Parameter | Type | Description |
|---|---|---|
Email required | string | Kontakt-/lead-e-post (unik identifierare för Brevo) |
FirstName optional | string | Mappas till attributet FIRSTNAME i Brevo |
LastName optional | string | Mappas till attributet LASTNAME i Brevo |
Phone optional | string | Mappas till attributet SMS för WhatsApp/SMS-meddelanden |
Account.Name optional | string | Tillhörande konto-/företagsnamn |
LeadSource optional | string | Källa för leadförvärv |
StageName optional | string | Stadium för affärsmöjlighet för uppföljning av affärer |
OwnerId optional | string | Tilldelad säljare för routing |
Mappning av anpassade fält
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_TIERAPI-endpoints
REST API-resurser
| Metod | Endpoint | Beskrivning |
|---|---|---|
GET | /services/data/vXX.0/sobjects/Contact | Fråga kontakter |
POST | /services/data/vXX.0/sobjects/Contact | Skapa en kontakt |
PATCH | /services/data/vXX.0/sobjects/Contact/{id} | Uppdatera en kontakt |
GET | /services/data/vXX.0/sobjects/Lead | Fråga leads |
GET | /services/data/vXX.0/sobjects/Account | Fråga konton |
GET | /services/data/vXX.0/sobjects/Opportunity | Fråga affärsmöjligheter |
GET | /services/data/vXX.0/query?q={SOQL} | Kör SOQL-fråga |
POST | /services/data/vXX.0/composite/sobjects | Batch-skapa/uppdatera |
Bulk API
| Metod | Endpoint | Beskrivning |
|---|---|---|
POST | /services/data/vXX.0/jobs/ingest | Skapa bulk-ingestjobb |
PUT | /services/data/vXX.0/jobs/ingest/{jobId}/batches | Ladda upp batch-data |
GET | /services/data/vXX.0/jobs/ingest/{jobId} | Kontrollera jobbstatus |
Streaming API
| Endpoint | Beskrivning |
|---|---|
/cometd/XX.0 | CometD long-polling för händelser i realtid |
| PushTopic | Prenumerera på poständringar via SOQL-baserade ämnen |
| Change Data Capture | Streama granulära ändringar på fältnivå |
| Platform Events | Anpassad händelsedriven arkitektur |
Händelser
Posthändelser (Change Data Capture)
| Händelse | Utlösare | Användningsfall |
|---|---|---|
ContactChangeEvent | Kontakt skapad/uppdaterad/raderad | Kontaktsynk i realtid |
LeadChangeEvent | Lead skapad/uppdaterad/konverterad | Spårning av leadlivscykel |
OpportunityChangeEvent | Stadium för affärsmöjlighet ändrat | Automation av affärspipeline |
AccountChangeEvent | Kontopost modifierad | Synkronisering av företagsdata |
Platform Events
| Händelse | Utlösare | Användningsfall |
|---|---|---|
Lead_Converted__e | Lead konverterad till kontakt | Nurture efter konvertering |
Deal_Won__e | Affärsmöjlighet vunnen | Flöde för kundonboarding |
Deal_Lost__e | Affärsmöjlighet förlorad | Win-back-kampanjer |
Kodexempel
Initiera kopplingen
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect Salesforceawait 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});Synka kontakter med SOQL-filter
// Sync only qualified leads from Salesforceawait 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 statusconst status = await tajo.connectors.status('salesforce');console.log(status);// {// connected: true,// lastSync: '2024-01-15T10:30:00Z',// contactsSynced: 18400,// leadsSynced: 7200,// opportunitiesSynced: 3100// }Streaming i realtid
// Subscribe to Salesforce Change Data Captureawait 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 }});Hastighetsbegränsningar
Gränser för Salesforce REST API beror på din utgåva och antal licenser:
| Utgåva | API-förfrågningar per 24 timmar |
|---|---|
| Developer | 15 000 |
| Enterprise | 1 000 per användarlicens (min 15 000) |
| Unlimited | 5 000 per användarlicens (min 15 000) |
| Performance | 5 000 per användarlicens (min 15 000) |
Ytterligare gränser:
- Gräns för samtidiga API: 25 långvariga förfrågningar
- Bulk API: 15 000 batcher per 24 timmar
- Streaming API: 2 000 händelser per dag (kan utökas)
- Composite API: 25 delförfrågningar per composite-förfrågan
Övervakning av API-användning
Övervaka din API-användning i Salesforce Setup > System Overview. Tajo använder bulk-API för stora synkar för att spara dina API-gränser.
Felsökning
Vanliga problem
| Problem | Orsak | Lösning |
|---|---|---|
| INVALID_SESSION_ID | Token utgången | Uppdatera OAuth-token automatiskt |
| REQUEST_LIMIT_EXCEEDED | Daglig API-gräns nådd | Använd Bulk API eller minska synkfrekvensen |
| FIELD_INTEGRITY_EXCEPTION | Obligatoriskt fält saknas | Mappa alla obligatoriska fält i konfigurationen |
| DUPLICATES_DETECTED | Dubblettregler aktiva | Konfigurera inställningar för dubletthantering |
| INSUFFICIENT_ACCESS | Saknar objektbehörigheter | Bevilja API-åtkomst i Salesforce-profilen |
Felsökningsläge
Aktivera utförlig loggning:
connectors: salesforce: debug: true log_level: verbose log_api_calls: trueTesta anslutning
tajo connectors test salesforce# ✓ OAuth token valid# ✓ Contacts accessible# ✓ Leads accessible# ✓ Accounts accessible# ✓ Opportunities accessible# ✓ Bulk API enabledBästa praxis
- Använd Bulk API för stora synkar - Byt till Bulk API 2.0 för dataset över 2 000 poster
- Implementera Change Data Capture - Använd CDC för synk i realtid istället för polling
- Mappa endast nödvändiga fält - Minska API-användningen genom att endast synka nödvändiga fält
- Hantera tokenuppdatering - Implementera automatisk logik för att uppdatera OAuth-token
- Använd composite-förfrågningar - Kombinera relaterade API-anrop för att minska antalet förfrågningar
- Testa i sandbox först - Använd en Salesforce-sandbox-org innan produktionsdistribution
Säkerhet
- OAuth 2.0 - Industristandard för auktorisering med flera grant-typer
- IP-begränsningar - Salesforce stöder inloggnings-IP-intervall och betrodda IP-inställningar
- TLS 1.2+ - All API-kommunikation krypterad med minst TLS 1.2
- Säkerhet på fältnivå - Granulär åtkomstkontroll per fält per profil
- Sessionshantering - Konfigurerbar sessionstimeout och gränser för samtidiga sessioner