Ajukan akses awal

Masukkan nama depan serta email atau nomor telepon Anda. Kami akan menghubungi Anda dengan detail akses Tajo.

Konektor Freshdesk

Hubungkan Freshdesk ke Brevo melalui Tajo untuk menyatukan data support dan marketing. Sinkronkan tiket support pelanggan, profil kontak, dan skor kepuasan untuk mendukung komunikasi tertarget berdasarkan interaksi support.

Ikhtisar

PropertiNilai
PlatformFreshdesk
KategoriSupport
Kompleksitas setupMudah
Integrasi resmiTidak
Data yang disinkronkanTiket, Kontak, Agen, Perusahaan
Skill yang tersedia6

Fitur

  • Sinkronisasi kontak - Sinkronisasi dua arah kontak Freshdesk ke daftar kontak Brevo
  • Pelacakan event tiket - Teruskan event pembuatan, pembaruan, dan penyelesaian tiket ke Brevo
  • Sinkronisasi CSAT - Sinkronkan skor kepuasan pelanggan sebagai atribut kontak Brevo
  • Sinkronisasi perusahaan - Petakan perusahaan Freshdesk ke segmentasi kontak Brevo
  • Data agen - Lacak penugasan agen untuk otomatisasi alur kerja internal
  • Custom field - Petakan custom field tiket dan kontak Freshdesk ke atribut Brevo

Prasyarat

Sebelum memulai, pastikan Anda memiliki:

  1. Akun Freshdesk dengan akses admin
  2. API Key Freshdesk Anda (tersedia di Profile Settings)
  3. Domain Freshdesk Anda (misalnya, yourcompany.freshdesk.com)
  4. Akun Brevo dengan akses API
  5. Akun Tajo dengan kredensial API

Autentikasi

Autentikasi API key

Freshdesk menggunakan autentikasi API key melalui HTTP Basic Auth. API key dipakai sebagai username dengan string apa pun (umumnya X) sebagai password.

Terminal window
curl -u "YOUR_API_KEY:X" \
https://yourcompany.freshdesk.com/api/v2/tickets

Atau menggunakan enkode Base64 pada header Authorization:

Terminal window
curl https://yourcompany.freshdesk.com/api/v2/tickets \
-H "Authorization: Basic BASE64_ENCODED_API_KEY:X" \
-H "Content-Type: application/json"

Menemukan API key Anda

  1. Masuk ke akun Freshdesk Anda
  2. Klik foto profil Anda di sudut kanan atas
  3. Buka Profile Settings
  4. API Key Anda ditampilkan di sisi kanan

Konfigurasi

Setup dasar

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: 32

Pemetaan field kontak

Petakan field kontak Freshdesk ke atribut Brevo:

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: PLAN

Pemetaan event tiket

Petakan event tiket Freshdesk ke trigger otomatisasi Brevo:

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"

Endpoint API

MetodeEndpointDeskripsi
GET/api/v2/ticketsMenampilkan semua tiket
POST/api/v2/ticketsMembuat tiket
GET/api/v2/tickets/{id}Mengambil tiket tertentu
PUT/api/v2/tickets/{id}Memperbarui tiket
DELETE/api/v2/tickets/{id}Menghapus tiket
GET/api/v2/contactsMenampilkan semua kontak
POST/api/v2/contactsMembuat kontak
PUT/api/v2/contacts/{id}Memperbarui kontak
GET/api/v2/companiesMenampilkan semua perusahaan
GET/api/v2/agentsMenampilkan semua agen
GET/api/v2/surveys/satisfaction_ratingsMenampilkan rating CSAT
GET/api/v2/search/tickets?query=Mencari tiket

Contoh kode

Inisialisasi konektor Freshdesk

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
// Connect Freshdesk account
await tajo.connectors.connect('freshdesk', {
domain: 'yourcompany.freshdesk.com',
apiKey: process.env.FRESHDESK_API_KEY
});

Menyinkronkan kontak ke Brevo

// Fetch Freshdesk contacts and sync to Brevo
const 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"
// }

Melacak event tiket

// Set up Freshdesk webhook to forward ticket events
// Configure in Freshdesk Admin > Automations > Webhook
// Webhook handler
app.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');
});

Mencari tiket berdasarkan pelanggan

// Search for all tickets from a specific customer
const query = encodeURIComponent('"email:[email protected]"');
const 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();

Batas rate

PaketBatasDetail
Sprout50 permintaan/menitPaket gratis
Blossom200 permintaan/menitPaket starter
Garden400 permintaan/menitPaket growth
Estate700 permintaan/menitPaket pro
Forest1.000 permintaan/menitPaket enterprise

Batas tambahan:

Sumber dayaBatas
Endpoint list30 halaman per query
Per halamanMaksimal 100 record
Search API2 permintaan/detik
Operasi bulk10 record/permintaan

Header batas rate

Freshdesk mengembalikan informasi batas rate di header respons. Pantau X-RateLimit-Remaining dan terapkan backoff saat mendekati batas.

Pemecahan masalah

MasalahPenyebabSolusi
401 UnauthorizedAPI key tidak validVerifikasi API key di Freshdesk Profile Settings
403 ForbiddenIzin tidak mencukupiPastikan API key milik akun admin
Kontak tidak tersinkronisasiField email kosongKontak Freshdesk wajib memiliki alamat email
Tiket tidak munculDomain salahVerifikasi URL domain Freshdesk Anda sudah benar
Pencarian mengembalikan hasil kosongKesalahan sintaks queryGunakan sintaks query pencarian Freshdesk dengan tanda kutip ganda
429 Too Many RequestsBatas rate terlampauiTerapkan pembatasan rate sesuai tingkat paket
Custom field tidak adaField belum diaktifkanPastikan custom field sudah diaktifkan di admin Freshdesk

Praktik terbaik

  1. Gunakan webhook untuk sinkronisasi real-time - Konfigurasikan Freshdesk Automations untuk memicu webhook pada event tiket
  2. Sinkronkan skor CSAT - Lacak rating kepuasan pelanggan sebagai atribut Brevo untuk segmentasi
  3. Petakan status tiket ke daftar - Pindahkan kontak antar daftar Brevo secara otomatis berdasarkan status tiket
  4. Lacak metrik support - Sinkronkan jumlah tiket, rata-rata waktu respons, dan tingkat penyelesaian per kontak
  5. Gunakan search API seperlunya - Search API memiliki batas rate yang lebih ketat; simpan hasilnya di cache bila memungkinkan
  6. Paginasi ekspor besar - Gunakan paginasi dengan parameter page dan per_page untuk sinkronisasi awal

Keamanan

  • Autentikasi API key - HTTP Basic Auth sederhana dengan API key
  • HTTPS saja - Semua komunikasi API mewajibkan enkripsi TLS
  • IP whitelisting - Tersedia pada paket Estate dan Forest
  • Akses berbasis peran - Izin API key terikat pada peran agen
  • SOC 2 Type II - Freshdesk bersertifikat SOC 2 Type II
  • Kepatuhan GDPR - Mendukung permintaan ekspor dan penghapusan data

Sumber daya terkait

Ajukan akses awal

Masukkan nama depan serta email atau nomor telepon Anda. Kami akan menghubungi Anda dengan detail akses Tajo.

deteksi otomatis
Asisten AI

Halo! Tanyakan apa saja tentang dokumentasi.