Freshdesk Connector

Poveži Freshdesk z Brevo prek Tajo za poenotenje podatkov podpore in marketinga. Sinhroniziraj zahtevke za podporo strank, profile stikov in ocene zadovoljstva za napajanje ciljnih komunikacij na osnovi interakcij s podporo.

Pregled

LastnostVrednost
PlatformaFreshdesk
KategorijaSupport
Zahtevnost nastavitveEnostavna
Uradna integracijaNe
Sinhronizirani podatkiZahtevki, stiki, agenti, podjetja
Razpoložljivi Skills6

Funkcionalnosti

  • Sinhronizacija stikov – dvosmerna sinhronizacija stikov Freshdesk s seznami stikov Brevo
  • Sledenje dogodkom zahtevkov – posreduj dogodke ustvarjanja, posodabljanja in reševanja zahtevkov v Brevo
  • Sinhronizacija CSAT – sinhroniziraj ocene zadovoljstva strank kot atribute stikov Brevo
  • Sinhronizacija podjetij – preslikaj podjetja Freshdesk v segmentacijo stikov Brevo
  • Podatki agentov – sledi dodeljevanju agentov za avtomatizacijo notranjih delovnih tokov
  • Polja po meri – preslikaj polja po meri zahtevkov in stikov Freshdesk v atribute Brevo

Predpogoji

Preden začneš, se prepričaj, da imaš:

  1. Račun Freshdesk z dostopom administratorja
  2. API ključ Freshdesk (najdeš ga v nastavitvah profila)
  3. Domeno Freshdesk (npr. yourcompany.freshdesk.com)
  4. Brevo račun z dostopom do API
  5. Tajo račun s poverilnicami API

Avtentikacija

Avtentikacija z API ključem

Freshdesk za avtentikacijo uporablja API ključ prek HTTP Basic Auth. API ključ se uporablja kot uporabniško ime z naključnim nizom (ponavadi X) kot geslom.

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

Ali z Base64 kodiranjem v glavi Authorization:

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

Iskanje API ključa

  1. Prijavi se v račun Freshdesk
  2. Klikni na svojo profilno sliko v zgornjem desnem kotu
  3. Pojdi na Profile Settings
  4. Tvoj API ključ je prikazan na desni strani

Konfiguracija

Osnovna nastavitev

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

Preslikava polj stikov

Preslikaj polja stikov Freshdesk v atribute 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

Preslikava dogodkov zahtevkov

Preslikaj dogodke zahtevkov Freshdesk v sprožilce avtomatizacij 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"

Končne točke API

MetodaKončna točkaOpis
GET/api/v2/ticketsSeznam vseh zahtevkov
POST/api/v2/ticketsUstvarjanje zahtevka
GET/api/v2/tickets/{id}Pridobi določen zahtevek
PUT/api/v2/tickets/{id}Posodobi zahtevek
DELETE/api/v2/tickets/{id}Izbriši zahtevek
GET/api/v2/contactsSeznam vseh stikov
POST/api/v2/contactsUstvarjanje stika
PUT/api/v2/contacts/{id}Posodobi stik
GET/api/v2/companiesSeznam vseh podjetij
GET/api/v2/agentsSeznam vseh agentov
GET/api/v2/surveys/satisfaction_ratingsSeznam ocen CSAT
GET/api/v2/search/tickets?query=Iskanje zahtevkov

Primeri kode

Inicializacija konektorja 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
});

Sinhronizacija stikov v 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"
// }

Sledenje dogodkom zahtevkov

// 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');
});

Iskanje zahtevkov po stranki

// 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();

Omejitve hitrosti

PlanOmejitevPodrobnosti
Sprout50 zahtevkov/minBrezplačni plan
Blossom200 zahtevkov/minZačetni plan
Garden400 zahtevkov/minPlan rasti
Estate700 zahtevkov/minPro plan
Forest1.000 zahtevkov/minEnterprise plan

Dodatne omejitve:

VirOmejitev
Končne točke seznama30 strani na poizvedbo
Na stranNajveč 100 zapisov
Search API2 zahtevka/sekundo
Množične operacije10 zapisov/zahtevek

Glave omejitve hitrosti

Freshdesk vrača informacije o omejitvi hitrosti v glavah odgovora. Sprljuj X-RateLimit-Remaining in implementiraj odlog, ko se približuješ omejitvi.

Odpravljanje težav

TežavaVzrokRešitev
401 UnauthorizedNeveljaven API ključPreveri API ključ v nastavitvah profila Freshdesk
403 ForbiddenNezadostna dovoljenjaZagotovi, da API ključ pripada administratorskemu računu
Stiki se ne sinhronizirajoManjkajoče polje e-mailStiki Freshdesk zahtevajo e-mailni naslov
Zahtevki se ne prikazujejoNapačna domenaPreveri pravilnost URL-ja domene Freshdesk
Iskanje vrača praznoNapaka v sintaksi poizvedbeUporabi sintakso iskanja Freshdesk z dvojnimi narekovaji
429 Too Many RequestsPresežena omejitev hitrostiImplementiraj omejevanje hitrosti glede na raven plana
Manjkajoča polja po meriPolje ni omogočenoZagotovi, da so polja po meri omogočena v administraciji Freshdesk

Najboljše prakse

  1. Za sinhronizacijo v realnem času uporabi webhooks – nastavi Automations Freshdesk za sprožitev webhooks ob dogodkih zahtevkov
  2. Sinhroniziraj ocene CSAT – sledi ocenam zadovoljstva strank kot atributom Brevo za segmentacijo
  3. Preslikaj status zahtevka v sezname – samodejno premikaj stike med seznami Brevo glede na status zahtevka
  4. Sledi metrikam podpore – sinhroniziraj število zahtevkov, povprečen čas odziva in stopnjo reševanja na stik
  5. Search API uporabljaj varčno – Search API ima strožje omejitve hitrosti; predpomni rezultate, kadar je mogoče
  6. Paginiraj velike izvoze – za začetno sinhronizacijo uporabi paginacijo s parametroma page in per_page

Varnost

  • Avtentikacija z API ključem – enostavna HTTP Basic Auth z API ključem
  • Samo HTTPS – vsa komunikacija API zahteva šifriranje TLS
  • Dovoljenje IP – na voljo na planih Estate in Forest
  • Dostop na osnovi vlog – dovoljenja API ključa vezana na vlogo agenta
  • SOC 2 Type II – Freshdesk je certificiran po SOC 2 Type II
  • Skladnost z GDPR – podpira zahteve za izvoz in brisanje podatkov

Povezani viri

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

auto-detect
AI pomočnik

Živjo! Vprašajte me o dokumentaciji.