Zendesk Bağlayıcısı

Birleşik müşteri destek verileri, talep tabanlı segmentasyon, memnuniyet puanlaması ve destek tetikli pazarlama otomasyonu için Zendesk Support örneğinizi Tajo aracılığıyla Brevo’ya bağlayın.

Genel Bakış

ÖzellikDeğer
PlatformZendesk
KategoriDestek
Kurulum KarmaşıklığıOrta
Resmi EntegrasyonEvet
Senkronize Edilen VeriTalepler, Kullanıcılar, Kuruluşlar, Olaylar
API Temel URL’sihttps://{subdomain}.zendesk.com/api/v2

Özellikler

  • Kullanıcı senkronizasyonu - Zendesk son kullanıcılarını ve temsilcilerini Brevo kişileriyle senkronize edin
  • Talep takibi - Destek farkındalığı olan pazarlama segmentasyonu için talep verilerini senkronize edin
  • Kuruluş eşleme - B2B iş akışları için kişileri kuruluşlarla ilişkilendirin
  • Memnuniyet puanları - CSAT ve NPS verilerini Brevo özniteliklerine senkronize edin
  • Talep olayları - Otomasyon tetikleyicileri için talep oluşturma, çözüm ve eskalasyonu takip edin
  • Yardım merkezi entegrasyonu - Makale görüntüleme ve arama davranışını takip edin
  • Çok kanallı destek - E-posta, sohbet, ses ve mesajlaşma kanallarından gelen verileri senkronize edin
  • Özel alanlar - Zendesk özel talep ve kullanıcı alanlarını Brevo’ya eşleyin

Ön Koşullar

Başlamadan önce sahip olmanız gerekenler:

  1. Bir Zendesk Support hesabı (Team, Professional veya Enterprise)
  2. Zendesk örneğinize yönetici erişimi
  3. API belirteci veya OAuth uygulaması yapılandırılmış
  4. API erişimi olan bir Brevo hesabı
  5. Bir Tajo hesabı

Kimlik Doğrulama

API Belirteç Kimlik Doğrulaması

Hızlı kurulum için e-posta/belirteç kimlik doğrulaması kullanın.

Terminal window
curl https://{subdomain}.zendesk.com/api/v2/users.json \
-u {email}/token:{api_token} \
-H "Content-Type: application/json"

Zendesk Admin > Apps and Integrations > APIs > Zendesk API’den bir API belirteci oluşturun.

OAuth 2.0

Delege kullanıcı erişimine sahip çoklu örnek entegrasyonları için OAuth kullanın.

Terminal window
# Authorization URL
https://{subdomain}.zendesk.com/oauth/authorizations/new?
response_type=code&
client_id={client_id}&
redirect_uri={redirect_uri}&
scope=read%20write

Gerekli Kapsamlar

read # Read access to all resources
write # Write access to all resources
tickets:read # Read tickets (granular)
users:read # Read users (granular)
organizations:read # Read organizations (granular)

Yapılandırma

Temel Kurulum

connectors:
zendesk:
enabled: true
subdomain: "yourcompany"
auth:
api_token: "${ZENDESK_API_TOKEN}"
# Data sync options
sync:
users: true
tickets: true
organizations: true
satisfaction_ratings: true
# Brevo list assignment
lists:
all_customers: 30
active_tickets: 31
satisfied_customers: 32

Alan Eşleme

Zendesk kullanıcı alanlarını Brevo kişi özniteliklerine eşleyin:

Varsayılan Eşlemeler

Parameter Type Description
email required
string

Kullanıcı 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

organization_id optional
integer

B2B eşlemesi için ilişkili kuruluş

role optional
string

Kullanıcı rolü (end-user, agent, admin)

tags optional
array

Zendesk'ten kullanıcı etiketleri

ticket_restriction optional
string

Talep erişim seviyesi

custom_fields optional
object

Özel kullanıcı alan değerleri

Özel Alan Eşleme

field_mapping:
# Standard fields
email: email
name: FULLNAME
phone: SMS
# Support metrics
open_tickets: OPEN_TICKETS
total_tickets: TOTAL_TICKETS
avg_satisfaction: CSAT_SCORE
last_ticket_date: LAST_SUPPORT_DATE
# Organization fields
organization.name: COMPANY_NAME
organization.tags: COMPANY_TAGS
# Custom fields
user_fields.customer_type: CUSTOMER_TYPE
user_fields.account_tier: ACCOUNT_TIER

API Uç Noktaları

Ticketing API

YöntemUç NoktaAçıklama
GET/api/v2/ticketsTalepleri listele
POST/api/v2/ticketsBir talep oluştur
PUT/api/v2/tickets/{id}Bir talebi güncelle
GET/api/v2/tickets/{id}Bir talebi göster
GET/api/v2/search.json?query={query}Talepleri ara

Users API

YöntemUç NoktaAçıklama
GET/api/v2/usersKullanıcıları listele
POST/api/v2/usersBir kullanıcı oluştur
PUT/api/v2/users/{id}Bir kullanıcıyı güncelle
GET/api/v2/users/{id}Bir kullanıcıyı göster
GET/api/v2/users/search.json?query={query}Kullanıcıları ara

Organizations API

YöntemUç NoktaAçıklama
GET/api/v2/organizationsKuruluşları listele
POST/api/v2/organizationsBir kuruluş oluştur
GET/api/v2/organizations/{id}/usersKuruluş üyelerini listele

Satisfaction Ratings API

YöntemUç NoktaAçıklama
GET/api/v2/satisfaction_ratingsMemnuniyet puanlarını listele
GET/api/v2/satisfaction_ratings/{id}Bir puanı göster

Olaylar

Talep Olayları

OlayTetikleyiciKullanım Alanı
ticket.createdYeni talep gönderildiDestek onayı
ticket.updatedTalep durumu değiştiDurum bildirimi
ticket.solvedTalep çözüldü olarak işaretlendiCSAT anket tetikleyicisi
ticket.reopenedÇözülmüş talep yeniden açıldıEskalasyon uyarısı

Kullanıcı Olayları

OlayTetikleyiciKullanım Alanı
user.createdYeni kullanıcı kaydolduDestek karşılaması
user.updatedKullanıcı profili değiştiÖznitelik senkronizasyonu
user.mergedKullanıcılar birleştirildiTekilleştirme

Memnuniyet Olayları

OlayTetikleyiciKullanım Alanı
satisfaction_rating.createdCSAT gönderildiGeri bildirim işleme
satisfaction_rating.badOlumsuz puanKurtarma iletişimi
satisfaction_rating.goodOlumlu puanSavunuculuk 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 Zendesk
await tajo.connectors.connect('zendesk', {
subdomain: 'yourcompany',
apiToken: process.env.ZENDESK_API_TOKEN
});

Kullanıcıları ve Talepleri Senkronize Et

// Full sync of users and ticket data
await tajo.connectors.sync('zendesk', {
type: 'full',
resources: ['users', 'tickets', 'organizations'],
since: '2023-01-01'
});
// Check sync status
const status = await tajo.connectors.status('zendesk');
console.log(status);
// {
// connected: true,
// lastSync: '2024-01-15T10:30:00Z',
// usersSynced: 8400,
// ticketsSynced: 34200,
// organizationsSynced: 1200
// }

Zendesk Webhook’larını İşle

app.post('/webhooks/zendesk', async (req, res) => {
const signature = req.get('X-Zendesk-Webhook-Signature');
// Verify webhook signature
if (!verifyZendeskSignature(req.body, signature)) {
return res.status(401).send('Unauthorized');
}
await tajo.connectors.handleWebhook('zendesk', {
type: req.body.type,
ticketId: req.body.ticket_id,
userId: req.body.user_id,
payload: req.body
});
res.status(200).send('OK');
});

Hız Limitleri

Zendesk hız limitleri plana göre değişir:

PlanHız LimitiDetaylar
Team200 istek/dakikaAPI belirteci başına
Professional400 istek/dakikaAPI belirteci başına
Enterprise700 istek/dakikaAPI belirteci başına
High Volume Add-on2.500 istek/dakikaAPI belirteci başına

Ek limitler:

  • Search API: Anonim için 6 istek/dakika, kimlik doğrulamalı için 100/dakika
  • Artımlı dışa aktarmalar: 10 istek/dakika
  • Batch API: Toplu istek başına 100 kayıt
  • Webhook teslimatı: Üstel geri çekilme ile otomatik yeniden deneme

Hız Limit Başlıkları

API kullanımınızı yönetmek için X-Rate-Limit-Remaining ve Retry-After başlıklarını izleyin.

Sorun Giderme

Sık Karşılaşılan Sorunlar

SorunNedenÇözüm
401 UnauthorizedGeçersiz API belirteciZendesk Admin’de belirteci yeniden oluşturun
403 ForbiddenYetersiz izinlerTemsilci veya yönetici rol gereksinimlerini kontrol edin
Kullanıcı senkronize edilmiyorKullanıcı bir temsilci, son kullanıcı değilSenkronizasyon yapılandırmasında role göre filtreleyin
Webhook alınmıyorTetikleyici/hedef yapılandırılmadıZendesk Admin’de webhook hedefi kurun
Arama boş döndürüyorİndeksleme gecikmesiArama indeksi güncellemesi için 1-2 dakika bekleyin

Hata Ayıklama Modu

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

connectors:
zendesk:
debug: true
log_level: verbose
log_webhooks: true

Bağlantıyı Test Et

Terminal window
tajo connectors test zendesk
# ✓ API connection successful
# ✓ Users readable
# ✓ Tickets readable
# ✓ Organizations readable
# ✓ Webhooks configured

En İyi Uygulamalar

  1. Artımlı dışa aktarmaları kullanın - Büyük ölçekli veri senkronizasyonu için Incremental API’yi kullanın
  2. Yalnızca son kullanıcıları filtreleyin - Brevo kişi senkronizasyonundan temsilcileri ve yöneticileri hariç tutun
  3. CSAT verilerini senkronize edin - Müşteri sağlığı segmentasyonu için memnuniyet puanlarını kullanın
  4. Kuruluşları eşleyin - B2B pazarlama kampanyaları için kuruluş verilerinden yararlanın
  5. Webhook yeniden denemelerini uygulayın - Geçici hataları zarif bir şekilde yönetin
  6. Side-loading kullanın - İstek sayısını azaltmak için API yanıtlarına ilgili kayıtları dahil edin

Güvenlik

  • API Belirteç Kimlik Doğrulaması - Yönetici e-postasına bağlı belirteç tabanlı erişim
  • OAuth 2.0 - Kapsam kontrolleriyle belirteç tabanlı delege erişim
  • Webhook imzalama - Webhook yükleri için HMAC imza doğrulaması
  • TLS şifrelemesi - Tüm API iletişimi HTTPS aracılığıyla şifrelenir
  • IP beyaz listesi - API erişimini IP aralığına göre kısıtlayın

İ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.