Zendesk konektor
Prepoj svoju inštanciu Zendesk Support s Brevo cez Tajo pre zjednotené dáta zákazníckej podpory, segmentáciu na základe ticketov, skórovanie spokojnosti a marketingovú automatizáciu spúšťanú podporou.
Prehľad
| Vlastnosť | Hodnota |
|---|---|
| Platforma | Zendesk |
| Kategória | Podpora |
| Zložitosť nastavenia | Stredná |
| Oficiálna integrácia | Áno |
| Synchronizované dáta | Tickety, Používatelia, Organizácie, Udalosti |
| API Base URL | https://{subdomain}.zendesk.com/api/v2 |
Funkcie
- Synchronizácia používateľov - Synchronizuj koncových používateľov a agentov Zendesk s kontaktmi Brevo
- Sledovanie ticketov - Synchronizuj dáta ticketov pre marketingovú segmentáciu uvedomujúcu si podporu
- Mapovanie organizácií - Asociuj kontakty s organizáciami pre B2B workflowy
- Skóre spokojnosti - Synchronizuj dáta CSAT a NPS do atribútov Brevo
- Udalosti ticketov - Sleduj vytvorenie, riešenie a eskaláciu ticketov pre triggery automatizácie
- Integrácia Help Center - Sleduj zobrazenia článkov a vyhľadávacie správanie
- Viackanálová podpora - Synchronizuj dáta z e-mailových, chatových, hlasových a správových kanálov
- Vlastné polia - Mapuj vlastné polia ticketov a používateľov Zendesk do Brevo
Predpoklady
Predtým, než začneš, uisti sa, že máš:
- Zendesk Support účet (Team, Professional alebo Enterprise)
- Prístup administrátora k svojej inštancii Zendesk
- Nakonfigurovaný API token alebo OAuth aplikáciu
- Brevo účet s API prístupom
- Tajo účet
Autentifikácia
Autentifikácia API tokenom
Použi autentifikáciu e-mail/token pre rýchle nastavenie.
curl https://{subdomain}.zendesk.com/api/v2/users.json \ -u {email}/token:{api_token} \ -H "Content-Type: application/json"Vygeneruj API token z Zendesk Admin > Apps and Integrations > APIs > Zendesk API.
OAuth 2.0
Použi OAuth pre integrácie s viacerými inštanciami s delegovaným prístupom používateľa.
# Authorization URLhttps://{subdomain}.zendesk.com/oauth/authorizations/new? response_type=code& client_id={client_id}& redirect_uri={redirect_uri}& scope=read%20writePožadované scopy
read # Read access to all resourceswrite # Write access to all resourcestickets:read # Read tickets (granular)users:read # Read users (granular)organizations:read # Read organizations (granular)Konfigurácia
Základné nastavenie
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: 32Mapovanie polí
Namapuj polia používateľov Zendesk na atribúty kontaktov Brevo:
Predvolené mapovania
| Parameter | Type | Description |
|---|---|---|
email required | string | E-mailová adresa používateľa (unikátny identifikátor) |
name optional | string | Celé meno, rozdelené na FIRSTNAME/LASTNAME |
phone optional | string | Mapuje sa na atribút SMS pre WhatsApp/SMS |
organization_id optional | integer | Pridružená organizácia pre B2B mapovanie |
role optional | string | Rola používateľa (end-user, agent, admin) |
tags optional | array | Tagy používateľa zo Zendesk |
ticket_restriction optional | string | Úroveň prístupu k ticketom |
custom_fields optional | object | Hodnoty vlastných polí používateľa |
Mapovanie vlastných polí
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_TIERAPI endpointy
Ticketing API
| Metóda | Endpoint | Popis |
|---|---|---|
GET | /api/v2/tickets | Zoznam ticketov |
POST | /api/v2/tickets | Vytvorenie ticketu |
PUT | /api/v2/tickets/{id} | Aktualizácia ticketu |
GET | /api/v2/tickets/{id} | Zobrazenie ticketu |
GET | /api/v2/search.json?query={query} | Vyhľadávanie ticketov |
Users API
| Metóda | Endpoint | Popis |
|---|---|---|
GET | /api/v2/users | Zoznam používateľov |
POST | /api/v2/users | Vytvorenie používateľa |
PUT | /api/v2/users/{id} | Aktualizácia používateľa |
GET | /api/v2/users/{id} | Zobrazenie používateľa |
GET | /api/v2/users/search.json?query={query} | Vyhľadávanie používateľov |
Organizations API
| Metóda | Endpoint | Popis |
|---|---|---|
GET | /api/v2/organizations | Zoznam organizácií |
POST | /api/v2/organizations | Vytvorenie organizácie |
GET | /api/v2/organizations/{id}/users | Zoznam členov organizácie |
Satisfaction Ratings API
| Metóda | Endpoint | Popis |
|---|---|---|
GET | /api/v2/satisfaction_ratings | Zoznam hodnotení spokojnosti |
GET | /api/v2/satisfaction_ratings/{id} | Zobrazenie hodnotenia |
Udalosti
Udalosti ticketov
| Udalosť | Trigger | Prípad použitia |
|---|---|---|
ticket.created | Odovzdaný nový ticket | Potvrdenie podpory |
ticket.updated | Zmenený stav ticketu | Upozornenie na stav |
ticket.solved | Ticket označený ako vyriešený | Trigger prieskumu CSAT |
ticket.reopened | Znovu otvorený vyriešený ticket | Upozornenie na eskaláciu |
Udalosti používateľov
| Udalosť | Trigger | Prípad použitia |
|---|---|---|
user.created | Zaregistrovaný nový používateľ | Uvítanie v podpore |
user.updated | Zmenený profil používateľa | Synchronizácia atribútov |
user.merged | Zlúčení používatelia | Deduplikácia |
Udalosti spokojnosti
| Udalosť | Trigger | Prípad použitia |
|---|---|---|
satisfaction_rating.created | Odovzdané CSAT | Spracovanie spätnej väzby |
satisfaction_rating.bad | Negatívne hodnotenie | Obnova komunikácie |
satisfaction_rating.good | Pozitívne hodnotenie | Kampane na podporu šírenia |
Ukážky kódu
Inicializácia konektora
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect Zendeskawait tajo.connectors.connect('zendesk', { subdomain: 'yourcompany', apiToken: process.env.ZENDESK_API_TOKEN});Synchronizácia používateľov a ticketov
// Full sync of users and ticket dataawait tajo.connectors.sync('zendesk', { type: 'full', resources: ['users', 'tickets', 'organizations'], since: '2023-01-01'});
// Check sync statusconst status = await tajo.connectors.status('zendesk');console.log(status);// {// connected: true,// lastSync: '2024-01-15T10:30:00Z',// usersSynced: 8400,// ticketsSynced: 34200,// organizationsSynced: 1200// }Spracovanie webhookov Zendesk
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');});Obmedzenia rýchlosti
Limity rýchlosti Zendesk sa líšia podľa plánu:
| Plán | Limit rýchlosti | Detaily |
|---|---|---|
| Team | 200 požiadaviek/minútu | Na API token |
| Professional | 400 požiadaviek/minútu | Na API token |
| Enterprise | 700 požiadaviek/minútu | Na API token |
| High Volume Add-on | 2 500 požiadaviek/minútu | Na API token |
Ďalšie limity:
- Search API: 6 požiadaviek/minútu pre anonymných, 100/minútu pre autentifikovaných
- Inkrementálne exporty: 10 požiadaviek/minútu
- Batch API: 100 záznamov na dávkovú požiadavku
- Doručenie webhookov: Automatické opakovanie s exponenciálnym backoff
Hlavičky limitov rýchlosti
Monitoruj hlavičky X-Rate-Limit-Remaining a Retry-After na správu využitia API.
Riešenie problémov
Bežné problémy
| Problém | Príčina | Riešenie |
|---|---|---|
| 401 Unauthorized | Neplatný API token | Regeneruj token v Zendesk Admin |
| 403 Forbidden | Nedostatočné oprávnenia | Skontroluj požiadavky na rolu agenta alebo administrátora |
| Používateľ nie je synchronizovaný | Používateľ je agent, nie koncový používateľ | Filtruj podľa roly v konfigurácii synchronizácie |
| Webhook nebol prijatý | Trigger/cieľ nie je nakonfigurovaný | Nastav webhook cieľ v Zendesk Admin |
| Vyhľadávanie vracia prázdne | Oneskorenie indexovania | Počkaj 1-2 minúty na aktualizáciu vyhľadávacieho indexu |
Debug režim
Zapni verbose logovanie:
connectors: zendesk: debug: true log_level: verbose log_webhooks: trueTest pripojenia
tajo connectors test zendesk# ✓ API connection successful# ✓ Users readable# ✓ Tickets readable# ✓ Organizations readable# ✓ Webhooks configuredOdporúčané postupy
- Použi inkrementálne exporty - Použi inkrementálne API pre veľkoobjemovú synchronizáciu dát
- Filtruj iba koncových používateľov - Vylúč agentov a administrátorov zo synchronizácie kontaktov Brevo
- Synchronizuj dáta CSAT - Použi skóre spokojnosti pre segmentáciu zdravia zákazníkov
- Mapuj organizácie - Využi dáta organizácií pre B2B marketingové kampane
- Implementuj opakovanie webhookov - Graceful spracovanie dočasných zlyhaní
- Použi side-loading - Zahrň súvisiace záznamy do odpovedí API na zníženie počtu požiadaviek
Bezpečnosť
- Autentifikácia API tokenom - Prístup na základe tokenu viazaný na e-mail administrátora
- OAuth 2.0 - Delegovaný prístup na základe tokenu s kontrolou scopov
- Podpisovanie webhookov - Overenie podpisu HMAC pre payloady webhookov
- TLS šifrovanie - Všetka API komunikácia šifrovaná cez HTTPS
- Whitelistovanie IP - Obmedzenie prístupu k API podľa rozsahu IP