Konektor Zendesk
Propojte svou instanci Zendesk Support s Brevo přes Tajo pro sjednocená zákaznická data podpory, segmentaci na základě tiketů, skórování spokojenosti a marketingovou automatizaci spouštěnou podporou.
Přehled
| Vlastnost | Hodnota |
|---|---|
| Platforma | Zendesk |
| Kategorie | Podpora |
| Složitost nastavení | Střední |
| Oficiální integrace | Ano |
| Synchronizovaná data | Tikety, Uživatelé, Organizace, Události |
| Základní URL API | https://{subdomain}.zendesk.com/api/v2 |
Funkce
- Synchronizace uživatelů – Synchronizujte koncové uživatele a agenty Zendesk s kontakty Brevo
- Sledování tiketů – Synchronizujte data tiketů pro marketingovou segmentaci s vědomím podpory
- Mapování organizací – Přiřazujte kontakty k organizacím pro B2B pracovní toky
- Skóre spokojenosti – Synchronizujte data CSAT a NPS na atributy Brevo
- Události tiketů – Sledujte vytvoření tiketů, vyřešení a eskalaci pro spouštěče automatizací
- Integrace Help Center – Sledujte zobrazení článků a chování při vyhledávání
- Vícekanálová podpora – Synchronizujte data z e-mailu, chatu, hlasu a kanálů zpráv
- Vlastní pole – Mapujte vlastní pole tiketů a uživatelů Zendesk na Brevo
Předpoklady
Než začnete, ujistěte se, že máte:
- Účet Zendesk Support (Team, Professional nebo Enterprise)
- Přístup správce k instanci Zendesk
- Nakonfigurovaný API token nebo OAuth aplikaci
- Účet Brevo s přístupem k API
- Účet Tajo
Ověření
Ověření API tokenem
Používejte ověřování e-mail/token pro rychlé nastavení.
curl https://{subdomain}.zendesk.com/api/v2/users.json \ -u {email}/token:{api_token} \ -H "Content-Type: application/json"Vygenerujte API token z Zendesk Admin > Aplikace a integrace > API > Zendesk API.
OAuth 2.0
Používejte OAuth pro integrace více instancí s delegovaným přístupem uživatelů.
# Autorizační URLhttps://{subdomain}.zendesk.com/oauth/authorizations/new? response_type=code& client_id={client_id}& redirect_uri={redirect_uri}& scope=read%20writePožadované rozsahy
read # Přístup pro čtení všech zdrojůwrite # Přístup pro zápis všech zdrojůtickets:read # Čtení tiketů (granulární)users:read # Čtení uživatelů (granulární)organizations:read # Čtení organizací (granulární)Konfigurace
Základní nastavení
connectors: zendesk: enabled: true subdomain: "vasespolecnost" auth: api_token: "${ZENDESK_API_TOKEN}"
# Možnosti synchronizace dat sync: users: true tickets: true organizations: true satisfaction_ratings: true
# Přiřazení seznamů Brevo lists: all_customers: 30 active_tickets: 31 satisfied_customers: 32Mapování polí
Mapujte pole uživatelů Zendesk na atributy kontaktů Brevo:
Výchozí mapování
| Parameter | Type | Description |
|---|---|---|
email required | string | E-mailová adresa uživatele (jedinečný identifikátor) |
name optional | string | Celé jméno, rozdělené na FIRSTNAME/LASTNAME |
phone optional | string | Mapuje se na atribut SMS pro WhatsApp/SMS |
organization_id optional | integer | Přidružená organizace pro B2B mapování |
role optional | string | Role uživatele (end-user, agent, admin) |
tags optional | array | Štítky uživatele ze Zendesk |
ticket_restriction optional | string | Úroveň přístupu k tiketům |
custom_fields optional | object | Hodnoty vlastních polí uživatele |
Mapování vlastních polí
field_mapping: # Standardní pole email: email name: FULLNAME phone: SMS
# Metriky podpory open_tickets: OPEN_TICKETS total_tickets: TOTAL_TICKETS avg_satisfaction: CSAT_SCORE last_ticket_date: LAST_SUPPORT_DATE
# Pole organizace organization.name: COMPANY_NAME organization.tags: COMPANY_TAGS
# Vlastní pole user_fields.customer_type: CUSTOMER_TYPE user_fields.account_tier: ACCOUNT_TIERKoncové body API
API tiketů
| Metoda | Koncový bod | Popis |
|---|---|---|
GET | /api/v2/tickets | Výpis tiketů |
POST | /api/v2/tickets | Vytvoření tiketu |
PUT | /api/v2/tickets/{id} | Aktualizace tiketu |
GET | /api/v2/tickets/{id} | Zobrazení tiketu |
GET | /api/v2/search.json?query={query} | Vyhledávání tiketů |
API uživatelů
| Metoda | Koncový bod | Popis |
|---|---|---|
GET | /api/v2/users | Výpis uživatelů |
POST | /api/v2/users | Vytvoření uživatele |
PUT | /api/v2/users/{id} | Aktualizace uživatele |
GET | /api/v2/users/{id} | Zobrazení uživatele |
GET | /api/v2/users/search.json?query={query} | Vyhledávání uživatelů |
API organizací
| Metoda | Koncový bod | Popis |
|---|---|---|
GET | /api/v2/organizations | Výpis organizací |
POST | /api/v2/organizations | Vytvoření organizace |
GET | /api/v2/organizations/{id}/users | Výpis členů organizace |
API hodnocení spokojenosti
| Metoda | Koncový bod | Popis |
|---|---|---|
GET | /api/v2/satisfaction_ratings | Výpis hodnocení spokojenosti |
GET | /api/v2/satisfaction_ratings/{id} | Zobrazení hodnocení |
Události
Události tiketů
| Událost | Spouštěč | Případ použití |
|---|---|---|
ticket.created | Odeslán nový tiket | Potvrzení podpory |
ticket.updated | Změna stavu tiketu | Oznámení o stavu |
ticket.solved | Tiket označen jako vyřešený | Spouštěč průzkumu CSAT |
ticket.reopened | Vyřešený tiket znovu otevřen | Upozornění na eskalaci |
Události uživatelů
| Událost | Spouštěč | Případ použití |
|---|---|---|
user.created | Registrace nového uživatele | Uvítání v podpoře |
user.updated | Změna profilu uživatele | Synchronizace atributů |
user.merged | Sloučení uživatelů | Deduplikace |
Události spokojenosti
| Událost | Spouštěč | Případ použití |
|---|---|---|
satisfaction_rating.created | Odeslání CSAT | Zpracování zpětné vazby |
satisfaction_rating.bad | Negativní hodnocení | Záchranný kontakt |
satisfaction_rating.good | Pozitivní hodnocení | Advocacy kampaně |
Příklady kódu
Inicializace konektoru
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Připojení Zendeskawait tajo.connectors.connect('zendesk', { subdomain: 'vasespolecnost', apiToken: process.env.ZENDESK_API_TOKEN});Synchronizace uživatelů a tiketů
// Úplná synchronizace uživatelů a dat tiketůawait tajo.connectors.sync('zendesk', { type: 'full', resources: ['users', 'tickets', 'organizations'], since: '2023-01-01'});
// Kontrola stavu synchronizaceconst status = await tajo.connectors.status('zendesk');console.log(status);// {// connected: true,// lastSync: '2024-01-15T10:30:00Z',// usersSynced: 8400,// ticketsSynced: 34200,// organizationsSynced: 1200// }Zpracování webhooků Zendesk
app.post('/webhooks/zendesk', async (req, res) => { const signature = req.get('X-Zendesk-Webhook-Signature');
// Ověření podpisu webhooku 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');});Omezení rychlosti
Limity rychlosti Zendesk se liší podle plánu:
| Plán | Limit rychlosti | Podrobnosti |
|---|---|---|
| Team | 200 požadavků/minutu | Na API token |
| Professional | 400 požadavků/minutu | Na API token |
| Enterprise | 700 požadavků/minutu | Na API token |
| Doplněk High Volume | 2 500 požadavků/minutu | Na API token |
Další limity:
- Search API: 6 požadavků/minutu pro anonymní, 100/minutu pro ověřené
- Přírůstkové exporty: 10 požadavků/minutu
- Batch API: 100 záznamů na dávkový požadavek
- Doručení webhooků: Automatické opakování s exponenciálním zpětným odběráním
Hlavičky limitu rychlosti
Sledujte hlavičky X-Rate-Limit-Remaining a Retry-After pro správu využití API.
Řešení problémů
Časté problémy
| Problém | Příčina | Řešení |
|---|---|---|
| 401 Unauthorized | Neplatný API token | Znovu vygenerujte token v Zendesk Admin |
| 403 Forbidden | Nedostatečná oprávnění | Zkontrolujte požadavky na roli agenta nebo správce |
| Uživatel se nesynchronizoval | Uživatel je agent, nikoli koncový uživatel | Filtrujte podle role v konfiguraci synchronizace |
| Webhook nebyl přijat | Spouštěč/cíl není nakonfigurován | Nastavte cíl webhooku v Zendesk Admin |
| Vyhledávání vrací prázdné výsledky | Prodleva indexování | Počkejte 1–2 minuty na aktualizaci indexu vyhledávání |
Režim ladění
Povolte podrobné protokolování:
connectors: zendesk: debug: true log_level: verbose log_webhooks: trueTest připojení
tajo connectors test zendesk# ✓ Připojení API úspěšné# ✓ Uživatelé čitelní# ✓ Tikety čitelné# ✓ Organizace čitelné# ✓ Webhooky nakonfiguroványOsvědčené postupy
- Používejte přírůstkové exporty – Používejte Incremental API pro rozsáhlou synchronizaci dat
- Filtrujte pouze koncové uživatele – Vylučujte agenty a správce ze synchronizace kontaktů Brevo
- Synchronizujte data CSAT – Používejte skóre spokojenosti pro segmentaci zákaznického zdraví
- Mapujte organizace – Využívejte data organizací pro B2B marketingové kampaně
- Implementujte opakování webhooků – Elegantně zpracovávejte dočasná selhání
- Používejte side-loading – Zahrnujte související záznamy do odpovědí API pro snížení počtu požadavků
Zabezpečení
- Ověřování API tokenem – Přístup na základě tokenů vázaný na e-mail správce
- OAuth 2.0 – Delegovaný přístup na základě tokenů s řízením rozsahů
- Podepisování webhooků – Ověření podpisu HMAC pro payloady webhooků
- Šifrování TLS – Veškerá komunikace API šifrovaná přes HTTPS
- Whitelisting IP – Omezení přístupu k API podle rozsahu IP