Freshdesk Bağlayıcısı
Destek ve pazarlama verilerini birleştirmek için Freshdesk’i Tajo aracılığıyla Brevo’ya bağlayın. Müşteri destek taleplerini, kişi profillerini ve memnuniyet puanlarını senkronize ederek destek etkileşimlerine dayalı hedefli iletişimleri güçlendirin.
Genel Bakış
| Özellik | Değer |
|---|---|
| Platform | Freshdesk |
| Kategori | Destek |
| Kurulum Karmaşıklığı | Kolay |
| Resmi Entegrasyon | Hayır |
| Senkronize Edilen Veri | Talepler, Kişiler, Temsilciler, Şirketler |
| Mevcut Yetenekler | 6 |
Özellikler
- Kişi senkronizasyonu - Freshdesk kişilerinin Brevo kişi listelerine çift yönlü senkronizasyonu
- Talep olay takibi - Talep oluşturma, güncelleme ve çözüm olaylarını Brevo’ya iletin
- CSAT senkronizasyonu - Müşteri memnuniyet puanlarını Brevo kişi öznitelikleri olarak senkronize edin
- Şirket senkronizasyonu - Freshdesk şirketlerini Brevo kişi segmentasyonuna eşleyin
- Temsilci verileri - Dahili iş akışı otomasyonu için temsilci atamalarını takip edin
- Özel alanlar - Freshdesk özel talep ve kişi alanlarını Brevo özniteliklerine eşleyin
Ön Koşullar
Başlamadan önce sahip olmanız gerekenler:
- Yönetici erişimine sahip bir Freshdesk hesabı
- Freshdesk API Anahtarınız (Profile Settings’te bulunur)
- Freshdesk alan adınız (örn.
yourcompany.freshdesk.com) - API erişimi olan bir Brevo hesabı
- API kimlik bilgilerine sahip bir Tajo hesabı
Kimlik Doğrulama
API Anahtar Kimlik Doğrulaması
Freshdesk, HTTP Basic Auth aracılığıyla API anahtar kimlik doğrulaması kullanır. API anahtarı kullanıcı adı olarak, herhangi bir dize (genellikle X) şifre olarak kullanılır.
curl -u "YOUR_API_KEY:X" \ https://yourcompany.freshdesk.com/api/v2/ticketsVeya Authorization başlığında Base64 kodlaması kullanarak:
curl https://yourcompany.freshdesk.com/api/v2/tickets \ -H "Authorization: Basic BASE64_ENCODED_API_KEY:X" \ -H "Content-Type: application/json"API Anahtarınızı Bulma
- Freshdesk hesabınıza giriş yapın
- Sağ üst köşedeki profil resminize tıklayın
- Profile Settings’e gidin
- API Anahtarınız sağ tarafta görüntülenir
Yapılandırma
Temel Kurulum
connectors: freshdesk: enabled: true domain: "yourcompany.freshdesk.com" api_key: "your-freshdesk-api-key"
# Data sync options sync: contacts: true tickets: true companies: true satisfaction_ratings: true
# Brevo list assignment lists: all_support_contacts: 30 open_tickets: 31 resolved_tickets: 32Kişi Alan Eşleme
Freshdesk kişi alanlarını Brevo özniteliklerine eşleyin:
contact_mapping: email: email name: FULLNAME phone: SMS company_id: COMPANY job_title: JOB_TITLE twitter_id: TWITTER language: LANGUAGE time_zone: TIMEZONE
# Support metrics total_tickets: TICKET_COUNT open_tickets: OPEN_TICKETS avg_csat: CSAT_SCORE last_ticket_date: LAST_SUPPORT_DATE
# Custom fields custom_fields.account_type: ACCOUNT_TYPE custom_fields.subscription_tier: PLANTalep Olay Eşleme
Freshdesk talep olaylarını Brevo otomasyon tetikleyicilerine eşleyin:
ticket_events: ticket_created: "support_ticket_created" ticket_updated: "support_ticket_updated" ticket_resolved: "support_ticket_resolved" ticket_closed: "support_ticket_closed" ticket_reopened: "support_ticket_reopened" satisfaction_rated: "csat_submitted" note_added: "support_note_added"API Uç Noktaları
| Yöntem | Uç Nokta | Açıklama |
|---|---|---|
GET | /api/v2/tickets | Tüm talepleri listele |
POST | /api/v2/tickets | Bir talep oluştur |
GET | /api/v2/tickets/{id} | Belirli bir talebi al |
PUT | /api/v2/tickets/{id} | Bir talebi güncelle |
DELETE | /api/v2/tickets/{id} | Bir talebi sil |
GET | /api/v2/contacts | Tüm kişileri listele |
POST | /api/v2/contacts | Bir kişi oluştur |
PUT | /api/v2/contacts/{id} | Bir kişiyi güncelle |
GET | /api/v2/companies | Tüm şirketleri listele |
GET | /api/v2/agents | Tüm temsilcileri listele |
GET | /api/v2/surveys/satisfaction_ratings | CSAT puanlarını listele |
GET | /api/v2/search/tickets?query= | Talepleri ara |
Kod Örnekleri
Freshdesk Bağlayıcısını Başlat
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect Freshdesk accountawait tajo.connectors.connect('freshdesk', { domain: 'yourcompany.freshdesk.com', apiKey: process.env.FRESHDESK_API_KEY});Kişileri Brevo’ya Senkronize Et
// Fetch Freshdesk contacts and sync to Brevoconst response = await fetch( 'https://yourcompany.freshdesk.com/api/v2/contacts?page=1&per_page=100', { headers: { 'Authorization': 'Basic ' + btoa(`${API_KEY}:X`), 'Content-Type': 'application/json' } });
const contacts = await response.json();// Each contact:// {// "id": 12345,// "name": "Jane Kim",// "email": "[email protected]",// "phone": "+15551234567",// "company_id": 678,// "job_title": "Product Manager",// "created_at": "2024-01-15T10:30:00Z"// }Talep Olaylarını Takip Et
// Set up Freshdesk webhook to forward ticket events// Configure in Freshdesk Admin > Automations > Webhook
// Webhook handlerapp.post('/webhooks/freshdesk', async (req, res) => { const { ticket, event_type } = req.body;
await tajo.connectors.handleWebhook('freshdesk', { topic: event_type, payload: { ticketId: ticket.id, subject: ticket.subject, status: ticket.status, priority: ticket.priority, requesterEmail: ticket.requester.email, createdAt: ticket.created_at } });
res.status(200).send('OK');});Müşteriye Göre Talep Ara
// Search for all tickets from a specific customerconst response = await fetch( `https://yourcompany.freshdesk.com/api/v2/search/tickets?query=${query}`, { headers: { 'Authorization': 'Basic ' + btoa(`${API_KEY}:X`) } });
const { results, total } = await response.json();Hız Limitleri
| Plan | Limit | Detaylar |
|---|---|---|
| Sprout | 50 istek/dakika | Ücretsiz plan |
| Blossom | 200 istek/dakika | Başlangıç planı |
| Garden | 400 istek/dakika | Büyüme planı |
| Estate | 700 istek/dakika | Pro plan |
| Forest | 1.000 istek/dakika | Enterprise plan |
Ek limitler:
| Kaynak | Limit |
|---|---|
| Liste uç noktaları | Sorgu başına 30 sayfa |
| Sayfa başına | Maksimum 100 kayıt |
| Search API | 2 istek/sn |
| Toplu işlemler | İstek başına 10 kayıt |
Hız Limit Başlıkları
Freshdesk yanıt başlıklarında hız limit bilgilerini döndürür. X-RateLimit-Remaining değerini izleyin ve limitlere yaklaşırken geri çekilme uygulayın.
Sorun Giderme
| Sorun | Neden | Çözüm |
|---|---|---|
401 Unauthorized | Geçersiz API anahtarı | Freshdesk Profile Settings’te API anahtarını doğrulayın |
403 Forbidden | Yetersiz izinler | API anahtarının bir yönetici hesabına ait olduğundan emin olun |
| Kişiler senkronize edilmiyor | E-posta alanı eksik | Freshdesk kişiler bir e-posta adresi gerektirir |
| Talepler görünmüyor | Yanlış alan adı | Freshdesk alan adı URL’nizin doğru olduğunu doğrulayın |
| Arama boş döndürüyor | Sorgu söz dizimi hatası | Çift tırnaklı Freshdesk arama sorgu söz dizimini kullanın |
429 Too Many Requests | Hız limiti aşıldı | Plan katmanına göre hız sınırlaması uygulayın |
| Özel alanlar eksik | Alan etkin değil | Özel alanların Freshdesk yöneticisinde etkinleştirildiğinden emin olun |
En İyi Uygulamalar
- Gerçek zamanlı senkronizasyon için webhook kullanın - Talep olaylarında webhook’ları tetiklemek için Freshdesk Automations’ı yapılandırın
- CSAT puanlarını senkronize edin - Segmentasyon için müşteri memnuniyet puanlarını Brevo öznitelikleri olarak takip edin
- Talep durumunu listelere eşleyin - Talep durumuna göre kişileri Brevo listeleri arasında otomatik olarak taşıyın
- Destek metriklerini takip edin - Kişi başına talep sayısı, ortalama yanıt süresi ve çözüm oranını senkronize edin
- Search API’yi az kullanın - Search API’nin daha sıkı hız limitleri vardır; mümkün olduğunda sonuçları önbelleğe alın
- Büyük dışa aktarmaları sayfalandırın - İlk senkronizasyon için
pageveper_pageparametreleriyle sayfalama kullanın
Güvenlik
- API anahtar kimlik doğrulaması - API anahtarıyla basit HTTP Basic Auth
- Yalnızca HTTPS - Tüm API iletişimi TLS şifrelemesi gerektirir
- IP beyaz listesi - Estate ve Forest planlarında mevcuttur
- Rol tabanlı erişim - API anahtar izinleri temsilci rolüne bağlıdır
- SOC 2 Type II - Freshdesk SOC 2 Type II sertifikalıdır
- GDPR uyumluluğu - Veri dışa aktarma ve silme taleplerini destekler