Vraag vroegtijdige toegang aan

Vul je voornaam en je zakelijke e-mailadres in. We sturen je een link om je aanvraag voor toegang tot Tajo te bevestigen.

Salesforce-connector

Connectorstatus: Gepland Nog niet gebouwd. Tajo draait deze connector vandaag niet.

Illustratie · voorbeelddata

Voorbeeld van synchronisatie

Eén record controleren

Bron

Salesforce

Connectorstatus: Gepland

Bestemming

Je andere tool

Connectorstatus: Eigen tool

BronveldDoelveldVoorbeeldwaarde
record.id source_id record_1042
record.updated_at updated_at 2026-10-18T08:00:00Z
record.value value sample_value
  1. Opstellen
  2. Eén record controleren
  3. Deze versie goedkeuren

Statussen gelden per connector en garanderen niet dat deze synchronisatie klaar is. De velden zijn illustratief. Controleer het echte schema en de rechten voordat een synchronisatie draait.

Verbind je Salesforce CRM met Brevo via Tajo voor contactsynchronisatie op enterpriseniveau, leadmanagement, opportunitytracking en marketingautomatisering aangestuurd door je CRM-data.

Overzicht

EigenschapWaarde
PlatformSalesforce
CategorieCRM
SetupcomplexiteitGeavanceerd
Officiële integratieNee
Gesynchroniseerde dataContacten, Leads, Accounts, Opportunities, Events
API Base URLhttps://yourInstance.salesforce.com/services/data/vXX.0

Functies

  • Bidirectionele contact-/leadsynchronisatie - Synchroniseer Salesforce-contacten en leads met Brevo-contactlijsten
  • Opportunity-tracking - Map dealfases en bedragen voor omzetgebaseerde segmentatie
  • Accounthierarchie - Synchroniseer bedrijfsaccounts voor account-based marketing in Brevo
  • Custom object-mapping - Map Salesforce custom objects naar Brevo-attributen en -events
  • Campaign member-sync - Synchroniseer Salesforce campaign members met Brevo-lijsten
  • Activiteitstracking - Synchroniseer tasks, events en e-mailactiviteiten voor engagementscoring
  • Realtime streaming - Gebruik de Salesforce Streaming API voor directe data-updates
  • SOQL query-ondersteuning - Filter gesynchroniseerde data met custom SOQL queries

Vereisten

Voordat je begint, zorg dat je beschikt over:

  1. Een Salesforce-org (elke editie met API-toegang)
  2. Een Connected App die is geconfigureerd in Salesforce Setup
  3. API-toegang ingeschakeld voor je Salesforce-gebruikersprofiel
  4. Een Brevo-account met API-toegang
  5. Een Tajo-account

Authenticatie

OAuth 2.0 Web Server Flow (aanbevolen)

Het beste voor productie-integraties met gebruikersautorisatie.

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

Voor server-naar-server-integraties zonder gebruikersinteractie.

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}"

Security Token

Salesforce vereist dat je je security token aan je wachtwoord toevoegt voor de username-password flow. Reset je token via Setup > My Personal Information > Reset My Security Token.

Configuratie

Basisinstelling

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

Veldmapping

Map Salesforce-velden naar Brevo-contactattributen:

Standaardmappings

Parameter Type Description
Email required
string

E-mail van contact/lead (unieke identifier voor Brevo)

FirstName optional
string

Mapt naar FIRSTNAME-attribuut in Brevo

LastName optional
string

Mapt naar LASTNAME-attribuut in Brevo

Phone optional
string

Mapt naar SMS-attribuut voor WhatsApp/SMS-berichten

Account.Name optional
string

Gekoppelde account-/bedrijfsnaam

LeadSource optional
string

Leadacquisitiebron

StageName optional
string

Opportunityfase voor dealtracking

OwnerId optional
string

Toegewezen sales rep voor routing

Custom field-mapping

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-endpoints

REST API-resources

MethodEndpointBeschrijving
GET/services/data/vXX.0/sobjects/ContactQuery contacten
POST/services/data/vXX.0/sobjects/ContactMaak een contact aan
PATCH/services/data/vXX.0/sobjects/Contact/{id}Werk een contact bij
GET/services/data/vXX.0/sobjects/LeadQuery leads
GET/services/data/vXX.0/sobjects/AccountQuery accounts
GET/services/data/vXX.0/sobjects/OpportunityQuery opportunities
GET/services/data/vXX.0/query?q={SOQL}Voer SOQL query uit
POST/services/data/vXX.0/composite/sobjectsBatch aanmaken/bijwerken

Bulk API

MethodEndpointBeschrijving
POST/services/data/vXX.0/jobs/ingestMaak bulk ingest-job
PUT/services/data/vXX.0/jobs/ingest/{jobId}/batchesUpload batchdata
GET/services/data/vXX.0/jobs/ingest/{jobId}Controleer jobstatus

Streaming API

EndpointBeschrijving
/cometd/XX.0CometD long-polling voor realtime-events
PushTopicAbonneer op recordwijzigingen via SOQL-gebaseerde topics
Change Data CaptureStream gedetailleerde wijzigingen op veldniveau
Platform EventsEigen event-driven architectuur

Events

Record-events (Change Data Capture)

EventTriggerUse case
ContactChangeEventContact aangemaakt/bijgewerkt/verwijderdRealtime contactsynchronisatie
LeadChangeEventLead aangemaakt/bijgewerkt/geconverteerdLead lifecycle-tracking
OpportunityChangeEventOpportunityfase gewijzigdDealpipeline-automatisering
AccountChangeEventAccountrecord gewijzigdBedrijfsdatasynchronisatie

Platform Events

EventTriggerUse case
Lead_Converted__eLead geconverteerd naar contactNurture na conversie
Deal_Won__eOpportunity closed-wonOnboardingflow voor klanten
Deal_Lost__eOpportunity closed-lostWin-back-campagnes

Codevoorbeelden

Connector initialiseren

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

Contacten synchroniseren met SOQL-filter

// 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
// }

Realtime streaming

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

Rate limits

Salesforce REST API-limieten zijn afhankelijk van je editie en aantal licenties:

EditieAPI-requests per 24 uur
Developer15.000
Enterprise1.000 per user license (min. 15.000)
Unlimited5.000 per user license (min. 15.000)
Performance5.000 per user license (min. 15.000)

Aanvullende limieten:

  • Concurrent API-limiet: 25 long-running requests
  • Bulk API: 15.000 batches per 24 uur
  • Streaming API: 2.000 events per dag (kan worden verhoogd)
  • Composite API: 25 subrequests per composite request

API-gebruik monitoren

Monitor je API-gebruik in Salesforce Setup > System Overview. Tajo gebruikt de Bulk API voor grote syncs om je API-limieten te sparen.

Probleemoplossing

Veelvoorkomende problemen

ProbleemOorzaakOplossing
INVALID_SESSION_IDToken verlopenVervers het OAuth-token automatisch
REQUEST_LIMIT_EXCEEDEDDaglimiet voor API bereiktGebruik de Bulk API of verlaag de syncfrequentie
FIELD_INTEGRITY_EXCEPTIONVerplicht veld ontbreektMap alle verplichte velden in de configuratie
DUPLICATES_DETECTEDDuplicate rules actiefConfigureer de gewenste afhandeling van duplicaten
INSUFFICIENT_ACCESSOntbrekende objectpermissiesGeef API-toegang in het Salesforce-profiel

Debugmodus

Zet uitgebreide logging aan:

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

Verbinding testen

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

Best practices

  1. Gebruik de Bulk API voor grote syncs - Schakel over naar Bulk API 2.0 voor datasets van meer dan 2.000 records
  2. Implementeer Change Data Capture - Gebruik CDC voor realtime-sync in plaats van polling
  3. Map alleen nodige velden - Beperk API-gebruik door alleen vereiste velden te synchroniseren
  4. Handel tokenverversing af - Implementeer automatische OAuth-tokenrefresh-logica
  5. Gebruik composite requests - Combineer gerelateerde API-calls om het aantal requests te verminderen
  6. Test eerst in een sandbox - Gebruik een Salesforce-sandbox-org voordat je naar productie gaat

Beveiliging

  • OAuth 2.0 - Industriestandaard-autorisatie met meerdere grant types
  • IP-beperkingen - Salesforce ondersteunt login-IP-ranges en trusted IP-instellingen
  • TLS 1.2+ - Alle API-communicatie is versleuteld met minimaal TLS 1.2
  • Field-level security - Granulaire veldtoegangscontrole per profiel
  • Sessiebeheer - Configureerbare sessie-timeout en limieten op gelijktijdige sessies

Gerelateerde bronnen

Vraag vroegtijdige toegang aan

Vul je voornaam en je zakelijke e-mailadres in. We sturen je een link om je aanvraag voor toegang tot Tajo te bevestigen.

AI-assistent

Hallo! Stel me vragen over de documentatie.

Deze pagina als Markdown: salesforce.md

Markdown laden…
Openen in Claude Openen in ChatGPT