Intercom Bağlayıcısı

Birleşik müşteri mesajlaşması, konuşma takibi ve destek ile ürün verilerinizle güçlendirilmiş etkileşim odaklı pazarlama otomasyonu için Intercom çalışma alanınızı Tajo aracılığıyla Brevo’ya bağlayın.

Genel Bakış

ÖzellikDeğer
PlatformIntercom
KategoriDestek
Kurulum KarmaşıklığıOrta
Resmi EntegrasyonEvet
Senkronize Edilen VeriKişiler, Konuşmalar, Şirketler, Olaylar
API Temel URL’sihttps://api.intercom.io

Özellikler

  • Kişi senkronizasyonu - Intercom kullanıcılarının ve adaylarının Brevo kişileriyle çift yönlü senkronizasyonu
  • Konuşma takibi - Destek odaklı segmentasyon için konuşma verilerini senkronize edin
  • Şirket eşleme - Hesap tabanlı iş akışları için kişileri şirketlerle ilişkilendirin
  • Özel öznitelikler - Intercom özel özniteliklerini Brevo kişi alanlarına eşleyin
  • Olay takibi - Davranışsal hedefleme için özel olayları ve kullanıcı aktivitelerini senkronize edin
  • Etiket senkronizasyonu - Intercom etiketlerini Brevo liste üyeliği veya özniteliklerine eşleyin
  • Messenger verileri - Uygulama içi mesajlaşma etkileşimini ve sohbet etkileşimlerini takip edin
  • AI temsilci entegrasyonu - AI temsilci konuşma sonuçlarını Brevo ile senkronize edin

Ön Koşullar

Başlamadan önce sahip olmanız gerekenler:

  1. Bir Intercom çalışma alanı (Starter, Pro veya Premium planı)
  2. Erişim belirteçli bir Intercom uygulaması (private app) veya OAuth yapılandırılmış (public app)
  3. API erişimi olan bir Brevo hesabı
  4. Bir Tajo hesabı

Kimlik Doğrulama

Erişim Belirteci (Private App)

Kendi çalışma alanı verilerinize erişen özel entegrasyonlar için.

  1. Developer Hub > Your Apps > Create new app bölümüne gidin
  2. Intercom çalışma alanınızla ilişkilendirin
  3. Erişim belirtecini kopyalayın
Terminal window
curl https://api.intercom.io/contacts \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json" \
-H "Intercom-Version: 2.11"

OAuth 2.0 (Public App)

Diğer müşterilerin Intercom verilerine erişen entegrasyonlar için.

Terminal window
# Authorization URL
https://app.intercom.com/oauth?client_id={client_id}&state={state}
# Token exchange
curl -X POST https://api.intercom.io/auth/eagle/token \
-d "client_id={client_id}" \
-d "client_secret={client_secret}" \
-d "code={auth_code}"

API Sürümleme

İsteklerinizde her zaman Intercom-Version başlığını ekleyin. Tajo varsayılan olarak API sürüm 2.11’i kullanır. Yıkıcı değişiklikler için Intercom değişiklik günlüğünü kontrol edin.

Yapılandırma

Temel Kurulum

connectors:
intercom:
enabled: true
access_token: "${INTERCOM_ACCESS_TOKEN}"
api_version: "2.11"
# Data sync options
sync:
contacts: true
conversations: true
companies: true
events: true
tags: true
# Sync direction
direction: intercom_to_brevo
# Brevo list assignment
lists:
all_users: 35
active_conversations: 36
leads: 37

Alan Eşleme

Intercom kişi verilerini Brevo kişi özniteliklerine eşleyin:

Varsayılan Eşlemeler

Parameter Type Description
email required
string

Kişi e-posta adresi (benzersiz tanımlayıcı)

name optional
string

Tam ad, FIRSTNAME/LASTNAME olarak bölünür

phone optional
string

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

role optional
string

Kişi türü: kullanıcı veya aday

company.name optional
string

İlişkili şirket adı

signed_up_at optional
timestamp

Kullanıcı kayıt tarihi

last_seen_at optional
timestamp

Son aktif zaman damgası

custom_attributes optional
object

Özel öznitelik anahtar-değer çiftleri

Özel Öznitelik Eşleme

field_mapping:
# Standard fields
email: email
name: FULLNAME
phone: SMS
# Engagement fields
signed_up_at: SIGNUP_DATE
last_seen_at: LAST_ACTIVE
session_count: SESSION_COUNT
unsubscribed_from_emails: UNSUBSCRIBED
# Company fields
company.name: COMPANY_NAME
company.plan: COMPANY_PLAN
company.size: COMPANY_SIZE
# Custom attributes
custom_attributes.plan_tier: PLAN_TIER
custom_attributes.feature_usage: FEATURE_USAGE

API Uç Noktaları

Contacts API

YöntemUç NoktaAçıklama
GET/contactsTüm kişileri listele
POST/contactsBir kişi oluştur
PUT/contacts/{id}Bir kişiyi güncelle
GET/contacts/{id}Bir kişiyi getir
POST/contacts/searchKişileri ara
DELETE/contacts/{id}Bir kişiyi arşivle

Conversations API

YöntemUç NoktaAçıklama
GET/conversationsKonuşmaları listele
GET/conversations/{id}Bir konuşmayı getir
POST/conversationsBir konuşma oluştur
POST/conversations/{id}/replyBir konuşmaya yanıt ver
POST/conversations/{id}/partsKonuşma parçası ekle

Companies API

YöntemUç NoktaAçıklama
GET/companiesŞirketleri listele
POST/companiesBir şirket oluştur veya güncelle
GET/companies/{id}Bir şirketi getir
GET/companies/{id}/contactsŞirket kişilerini listele

Events API

YöntemUç NoktaAçıklama
POST/eventsBir olay gönder
GET/events?type=user&intercom_user_id={id}Kullanıcı olaylarını listele

Olaylar

Konuşma Olayları

OlayTetikleyiciKullanım Alanı
conversation.createdYeni konuşma başladıDestek talebi uyarısı
conversation.closedKonuşma çözüldüCSAT anket tetikleyicisi
conversation.rating.addedPuan gönderildiMemnuniyet takibi
conversation.snoozedKonuşma ertelendiTakip planlama

Kişi Olayları

OlayTetikleyiciKullanım Alanı
contact.createdYeni kişi eklendiKarşılama dizisi
contact.updatedKişi verisi değiştiÖznitelik senkronizasyonu
contact.deletedKişi arşivlendiTemizleme
contact.tag.createdKişiye etiket eklendiSegment güncellemesi

Kullanıcı Olayları

OlayTetikleyiciKullanım Alanı
user.createdYeni kullanıcı kaydolduBaşlangıç akışı
user.email.updatedE-posta değiştiKişi birleştirme
user.unsubscribedE-postalardan abonelikten çıktıTercih güncelleme

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 Intercom
await tajo.connectors.connect('intercom', {
accessToken: process.env.INTERCOM_ACCESS_TOKEN,
apiVersion: '2.11'
});

Kişileri ve Konuşmaları Senkronize Et

// Full sync of contacts and conversation data
await tajo.connectors.sync('intercom', {
type: 'full',
resources: ['contacts', 'conversations', 'companies'],
since: '2023-01-01'
});
// Check sync status
const status = await tajo.connectors.status('intercom');
console.log(status);
// {
// connected: true,
// lastSync: '2024-01-15T10:30:00Z',
// contactsSynced: 14200,
// conversationsSynced: 28400,
// companiesSynced: 2100
// }

Intercom Webhook’larını İşle

import crypto from 'crypto';
app.post('/webhooks/intercom', async (req, res) => {
const signature = req.get('X-Hub-Signature');
const expectedSig = 'sha1=' + crypto
.createHmac('sha1', process.env.INTERCOM_CLIENT_SECRET)
.update(JSON.stringify(req.body))
.digest('hex');
if (signature !== expectedSig) {
return res.status(401).send('Unauthorized');
}
await tajo.connectors.handleWebhook('intercom', {
topic: req.body.topic,
data: req.body.data
});
res.status(200).send('OK');
});

Hız Limitleri

Intercom planınıza göre hız limitleri uygular:

PlanHız LimitiDetaylar
Starter20 istek/10 saniyeUygulama başına
Pro50 istek/10 saniyeUygulama başına
Premium100 istek/10 saniyeUygulama başına
Search uç noktası1 istek/saniyeUygulama başına
Scroll uç noktası1 istek/dakikaUygulama başına

Ek limitler:

  • Toplu işlemler: Toplu istek başına 15 kişi
  • Olay gönderimleri: Çalışma alanı başına 500 olay/saniye
  • Webhook teslimatı: 24 saat boyunca otomatik yeniden deneme
  • Veri dışa aktarımı: 1 eşzamanlı dışa aktarma

Hız Limit Yanıtı

Intercom, Retry-After başlığıyla 429 Too Many Requests döndürür. Üstel geri çekilme uygulayın ve yeniden deneme süresine saygı gösterin.

Sorun Giderme

Sık Karşılaşılan Sorunlar

SorunNedenÇözüm
401 UnauthorizedGeçersiz veya süresi dolmuş belirteçDeveloper Hub’da erişim belirtecini yeniden oluşturun
Kişi senkronize edilmiyorE-posta alanı eksikIntercom adaylarının e-postası olmayabilir; role göre filtreleyin
Konuşma verisi boşUygulama konuşma kapsamına sahip değilKonuşma okuma izinleriyle yeniden yetkilendirin
Webhook alınmıyorWebhook kayıtlı değilDeveloper Hub ayarlarında webhook’ları yapılandırın
API sürüm uyuşmazlığıYeni sürümde yıkıcı değişikliklerIntercom-Version başlığıyla API sürümünü sabitleyin

Hata Ayıklama Modu

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

connectors:
intercom:
debug: true
log_level: verbose
log_webhooks: true

Bağlantıyı Test Et

Terminal window
tajo connectors test intercom
# ✓ API connection successful
# ✓ Contacts readable
# ✓ Conversations readable
# ✓ Companies readable
# ✓ Webhooks registered

En İyi Uygulamalar

  1. API sürümünü sabitleyin - Yıkıcı değişikliklerden kaçınmak için her zaman Intercom-Version belirtin
  2. Search API’yi verimli kullanın - Veri aktarımını azaltmak için filtreler ve sayfalama kullanın
  3. Hem kullanıcıları hem de adayları senkronize edin - Brevo’da tam huniyi yakalayın
  4. Konuşma etiketlerini eşleyin - Destek sonrası pazarlama segmentleri için konuşma etiketlerini kullanın
  5. Özel olayları takip edin - Davranışsal hedefleme için Intercom’a temel ürün olaylarını gönderin
  6. Kişi birleştirmelerini yönetin - Yinelenen kişiler için birleştirme mantığı uygulayın

Güvenlik

  • Erişim Belirteci - Private uygulamalar için Bearer belirteç kimlik doğrulaması
  • OAuth 2.0 - Public uygulamalar için client secret ile delege yetkilendirme
  • Webhook doğrulama - X-Hub-Signature üzerinden HMAC SHA-1 imza doğrulaması
  • TLS şifrelemesi - Tüm API iletişimi HTTPS aracılığıyla şifrelenir
  • Veri erişim kontrolleri - Uygulama yapılandırması başına ayrıntılı veri erişimi

İlgili Kaynaklar

Subscribe to updates

developer-docs

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

auto-detect
AI Asistan

Merhaba! Belgeler hakkında her şeyi sorabilirsiniz.