Salesforce Bağlayıcısı

Salesforce Bağlayıcısı

Salesforce CRM’inizi Tajo üzerinden Brevo’ya bağlayarak kurumsal düzeyde kişi senkronizasyonu, aday yönetimi, fırsat takibi ve CRM verilerinizle güçlendirilmiş pazarlama otomasyonu elde edin.

Genel Bakış

ÖzellikDeğer
PlatformSalesforce
KategoriCRM
Kurulum Karmaşıklığıİleri Düzey
Resmi EntegrasyonEvet
Senkronize Edilen VeriKişiler, Adaylar, Hesaplar, Fırsatlar, Olaylar
API Temel URL’sihttps://yourInstance.salesforce.com/services/data/vXX.0

Özellikler

  • Çift yönlü kişi/aday senkronizasyonu - Salesforce kişileri ve adaylarını Brevo kişi listeleri ile senkronize edin
  • Fırsat takibi - Gelire dayalı segmentasyon için fırsat aşamalarını ve tutarlarını eşleyin
  • Hesap hiyerarşisi - Brevo’daki hesap bazlı pazarlama için şirket hesaplarını senkronize edin
  • Özel nesne eşleme - Salesforce özel nesnelerini Brevo öznitelikleri ve olaylarına eşleyin
  • Kampanya üyesi senkronizasyonu - Salesforce kampanya üyelerini Brevo listeleri ile senkronize edin
  • Aktivite takibi - Etkileşim puanlaması için görevleri, olayları ve e-posta aktivitelerini senkronize edin
  • Gerçek zamanlı akış - Anlık veri güncellemeleri için Salesforce Streaming API’sini kullanın
  • SOQL sorgu desteği - Senkronize edilen verileri özel SOQL sorgularıyla filtreleyin

Ön Koşullar

Başlamadan önce sahip olmanız gerekenler:

  1. Bir Salesforce org (API erişimi olan herhangi bir sürüm)
  2. Salesforce Kurulumunda yapılandırılmış bir Connected App
  3. Salesforce kullanıcı profiliniz için API erişimi etkinleştirilmiş
  4. API erişimi olan bir Brevo hesabı
  5. Bir Tajo hesabı

Kimlik Doğrulama

OAuth 2.0 Web Server Flow (Önerilen)

Kullanıcı yetkilendirmesi ile üretim entegrasyonları için en iyisi.

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

Kullanıcı Adı-Şifre Akışı

Kullanıcı etkileşimi olmadan sunucudan sunucuya entegrasyonlar için.

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

Güvenlik Belirteci

Salesforce, kullanıcı adı-şifre akışı için şifrenize güvenlik belirtecinizi eklemenizi gerektirir. Belirtecinizi Kurulum > Kişisel Bilgilerim > Güvenlik Belirtecimi Sıfırla bölümünden sıfırlayın.

Yapılandırma

Temel Kurulum

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

Alan Eşleme

Salesforce alanlarını Brevo kişi özniteliklerine eşleyin:

Varsayılan Eşlemeler

Parameter Type Description
Email required
string

Kişi/Aday e-postası (Brevo için benzersiz tanımlayıcı)

FirstName optional
string

Brevo'daki FIRSTNAME özniteliğine eşlenir

LastName optional
string

Brevo'daki LASTNAME özniteliğine eşlenir

Phone optional
string

WhatsApp/SMS mesajlaşması için SMS özniteliğine eşlenir

Account.Name optional
string

İlişkili hesap/şirket adı

LeadSource optional
string

Aday edinme kaynağı

StageName optional
string

Fırsat takibi için fırsat aşaması

OwnerId optional
string

Yönlendirme için atanan satış temsilcisi

Özel Alan Eşlemesi

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 Uç Noktaları

REST API Kaynakları

YöntemUç NoktaAçıklama
GET/services/data/vXX.0/sobjects/ContactKişileri sorgula
POST/services/data/vXX.0/sobjects/ContactBir kişi oluştur
PATCH/services/data/vXX.0/sobjects/Contact/{id}Bir kişiyi güncelle
GET/services/data/vXX.0/sobjects/LeadAdayları sorgula
GET/services/data/vXX.0/sobjects/AccountHesapları sorgula
GET/services/data/vXX.0/sobjects/OpportunityFırsatları sorgula
GET/services/data/vXX.0/query?q={SOQL}SOQL sorgusu yürüt
POST/services/data/vXX.0/composite/sobjectsToplu oluştur/güncelle

Bulk API

YöntemUç NoktaAçıklama
POST/services/data/vXX.0/jobs/ingestToplu ingest işi oluştur
PUT/services/data/vXX.0/jobs/ingest/{jobId}/batchesToplu veri yükle
GET/services/data/vXX.0/jobs/ingest/{jobId}İş durumunu kontrol et

Streaming API

Uç NoktaAçıklama
/cometd/XX.0Gerçek zamanlı olaylar için CometD uzun yoklaması
PushTopicSOQL tabanlı konular aracılığıyla kayıt değişikliklerine abone ol
Change Data Captureİnce taneli alan düzeyinde değişiklikleri akış olarak al
Platform EventsÖzel olay güdümlü mimari

Olaylar

Kayıt Olayları (Change Data Capture)

OlayTetikleyiciKullanım Alanı
ContactChangeEventKişi oluşturuldu/güncellendi/silindiGerçek zamanlı kişi senkronizasyonu
LeadChangeEventAday oluşturuldu/güncellendi/dönüştürüldüAday yaşam döngüsü takibi
OpportunityChangeEventFırsat aşaması değiştiFırsat pipeline otomasyonu
AccountChangeEventHesap kaydı değiştirildiŞirket verisi senkronizasyonu

Platform Events

OlayTetikleyiciKullanım Alanı
Lead_Converted__eAday kişiye dönüştürüldüDönüşüm sonrası yetiştirme
Deal_Won__eFırsat kazanılarak kapatıldıMüşteri onboarding akışı
Deal_Lost__eFırsat kaybedilerek kapatıldıGeri kazanma kampanyaları

Kod Örnekleri

Bağlayıcıyı Başlat

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

SOQL Filtresi ile Kişileri Senkronize Et

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

Gerçek Zamanlı Akış

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

Hız Limitleri

Salesforce REST API limitleri, sürümünüze ve lisans sayınıza bağlıdır:

Sürüm24 Saat Başına API İstekleri
Developer15.000
EnterpriseKullanıcı lisansı başına 1.000 (min 15.000)
UnlimitedKullanıcı lisansı başına 5.000 (min 15.000)
PerformanceKullanıcı lisansı başına 5.000 (min 15.000)

Ek limitler:

  • Eşzamanlı API limiti: 25 uzun süreli istek
  • Bulk API: 24 saatte 15.000 toplu iş
  • Streaming API: Günde 2.000 olay (artırılabilir)
  • Composite API: Composite istek başına 25 alt istek

API Kullanım İzleme

API kullanımınızı Salesforce Kurulum > Sistem Genel Bakışı’nda izleyin. Tajo, API limitlerinizi korumak için büyük senkronizasyonlar için bulk API kullanır.

Sorun Giderme

Sık Karşılaşılan Sorunlar

SorunNedenÇözüm
INVALID_SESSION_IDBelirtecin süresi dolduOAuth belirtecini otomatik olarak yenileyin
REQUEST_LIMIT_EXCEEDEDGünlük API limitine ulaşıldıBulk API kullanın veya senkronizasyon sıklığını azaltın
FIELD_INTEGRITY_EXCEPTIONGerekli alan eksikYapılandırmada tüm gerekli alanları eşleyin
DUPLICATES_DETECTEDYineleme kuralları aktifYineleme işleme tercihlerini yapılandırın
INSUFFICIENT_ACCESSNesne izinleri eksikSalesforce profilinde API erişimi verin

Hata Ayıklama Modu

Ayrıntılı günlüklemeyi etkinleştirin:

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

Bağlantıyı Test Et

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

En İyi Uygulamalar

  1. Büyük senkronizasyonlar için Bulk API kullanın - 2.000’in üzerindeki veri kümeleri için Bulk API 2.0’a geçin
  2. Change Data Capture uygulayın - Yoklama yerine gerçek zamanlı senkronizasyon için CDC kullanın
  3. Yalnızca gerekli alanları eşleyin - Yalnızca gerekli alanları senkronize ederek API kullanımını azaltın
  4. Belirteç yenilemeyi yönetin - Otomatik OAuth belirteci yenileme mantığı uygulayın
  5. Composite istekleri kullanın - İstek sayısını azaltmak için ilgili API çağrılarını birleştirin
  6. Önce sandbox’ta test edin - Üretim dağıtımından önce bir Salesforce sandbox org’u kullanın

Güvenlik

  • OAuth 2.0 - Birden fazla grant türü ile endüstri standardı yetkilendirme
  • IP kısıtlamaları - Salesforce, oturum açma IP aralıklarını ve güvenilir IP ayarlarını destekler
  • TLS 1.2+ - Tüm API iletişimi minimum TLS 1.2 ile şifrelenir
  • Alan düzeyinde güvenlik - Profil başına ayrıntılı alan erişim kontrolü
  • Oturum yönetimi - Yapılandırılabilir oturum zaman aşımı ve eşzamanlı oturum limitleri

İlgili Kaynaklar

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

AI Asistan

Merhaba! Belgeler hakkında her şeyi sorabilirsiniz.

Brevo ile ücretsiz başlayın