Konektor Freshdesk

Połącz Freshdesk z Brevo przez Tajo, aby ujednolicić dane wsparcia i marketingu. Synchronizuj zgłoszenia wsparcia klientów, profile kontaktów i wyniki satysfakcji, aby zasilać ukierunkowane komunikacje na podstawie interakcji ze wsparciem.

Przegląd

WłaściwośćWartość
PlatformaFreshdesk
KategoriaSupport
Poziom konfiguracjiŁatwy
Integracja oficjalnaNie
Synchronizowane daneZgłoszenia, Kontakty, Agenci, Firmy
Dostępne Skills6

Funkcje

  • Synchronizacja kontaktów - Dwukierunkowa synchronizacja kontaktów Freshdesk z listami kontaktów Brevo
  • Śledzenie zdarzeń zgłoszeń - Przekazuj zdarzenia tworzenia, aktualizacji i rozwiązywania zgłoszeń do Brevo
  • Synchronizacja CSAT - Synchronizuj wyniki satysfakcji klientów jako atrybuty kontaktów Brevo
  • Synchronizacja firm - Mapuj firmy Freshdesk na segmentację kontaktów Brevo
  • Dane agentów - Śledź przypisania agentów dla wewnętrznej automatyzacji workflow
  • Niestandardowe pola - Mapuj niestandardowe pola zgłoszeń i kontaktów Freshdesk na atrybuty Brevo

Wymagania wstępne

Zanim zaczniesz, upewnij się, że masz:

  1. Konto Freshdesk z dostępem administratora
  2. Klucz API Freshdesk (dostępny w Ustawieniach profilu)
  3. Domenę Freshdesk (np. twojafirma.freshdesk.com)
  4. Konto Brevo z dostępem do API
  5. Konto Tajo z poświadczeniami API

Uwierzytelnianie

Uwierzytelnianie kluczem API

Freshdesk używa uwierzytelniania kluczem API przez HTTP Basic Auth. Klucz API jest używany jako nazwa użytkownika z dowolnym ciągiem (zazwyczaj X) jako hasłem.

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

Lub używając kodowania Base64 w nagłówku Authorization:

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

Znajdowanie klucza API

  1. Zaloguj się do konta Freshdesk
  2. Kliknij zdjęcie profilowe w prawym górnym rogu
  3. Przejdź do Ustawień profilu
  4. Twój klucz API jest wyświetlany po prawej stronie

Konfiguracja

Podstawowa konfiguracja

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

Mapowanie pól kontaktów

Mapuj pola kontaktów Freshdesk na atrybuty 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

Mapowanie zdarzeń zgłoszeń

Mapuj zdarzenia zgłoszeń Freshdesk na wyzwalacze automatyzacji 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"

Endpointy API

MetodaEndpointOpis
GET/api/v2/ticketsLista wszystkich zgłoszeń
POST/api/v2/ticketsUtwórz zgłoszenie
GET/api/v2/tickets/{id}Pobierz konkretne zgłoszenie
PUT/api/v2/tickets/{id}Zaktualizuj zgłoszenie
DELETE/api/v2/tickets/{id}Usuń zgłoszenie
GET/api/v2/contactsLista wszystkich kontaktów
POST/api/v2/contactsUtwórz kontakt
PUT/api/v2/contacts/{id}Zaktualizuj kontakt
GET/api/v2/companiesLista wszystkich firm
GET/api/v2/agentsLista wszystkich agentów
GET/api/v2/surveys/satisfaction_ratingsLista ocen CSAT
GET/api/v2/search/tickets?query=Wyszukaj zgłoszenia

Przykłady kodu

Inicjalizacja konektora 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
});

Synchronizuj kontakty do 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"
// }

Śledź zdarzenia zgłoszeń

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

Wyszukaj zgłoszenia według klienta

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

Limity API

PlanLimitSzczegóły
Sprout50 żądań/minPlan bezpłatny
Blossom200 żądań/minPlan startowy
Garden400 żądań/minPlan wzrostowy
Estate700 żądań/minPlan pro
Forest1 000 żądań/minPlan enterprise

Dodatkowe limity:

ZasóbLimit
Endpointy listujące30 stron na zapytanie
Na stronęMaks. 100 rekordów
Search API2 żądania/sekundę
Operacje masowe10 rekordów/żądanie

Nagłówki limitów szybkości

Freshdesk zwraca informacje o limitach szybkości w nagłówkach odpowiedzi. Monitoruj X-RateLimit-Remaining i wdrożyj wycofanie przy zbliżaniu się do limitów.

Rozwiązywanie problemów

ProblemPrzyczynaRozwiązanie
401 UnauthorizedNieprawidłowy klucz APIZweryfikuj klucz API w Ustawieniach profilu Freshdesk
403 ForbiddenNiewystarczające uprawnieniaUpewnij się, że klucz API należy do konta administratora
Kontakty się nie synchronizująBrakujące pole e-mailKontakty Freshdesk wymagają adresu e-mail
Zgłoszenia nie pojawiają sięZła domenaZweryfikuj prawidłowość URL domeny Freshdesk
Wyszukiwanie zwraca puste wynikiBłąd składni zapytaniaUżywaj składni zapytań Freshdesk z podwójnymi cudzysłowami
429 Too Many RequestsPrzekroczono limit szybkościWdrożyj ograniczanie szybkości na podstawie poziomu planu
Brakujące niestandardowe polaPole nie włączoneUpewnij się, że niestandardowe pola są włączone w administracji Freshdesk

Najlepsze praktyki

  1. Używaj webhooków do synchronizacji w czasie rzeczywistym - Skonfiguruj Automatyzacje Freshdesk do wyzwalania webhooków przy zdarzeniach zgłoszeń
  2. Synchronizuj wyniki CSAT - Śledź oceny satysfakcji klientów jako atrybuty Brevo dla segmentacji
  3. Mapuj status zgłoszeń na listy - Automatycznie przenoś kontakty między listami Brevo na podstawie statusu zgłoszenia
  4. Śledź metryki wsparcia - Synchronizuj liczbę zgłoszeń, średni czas odpowiedzi i wskaźnik rozwiązań na kontakt
  5. Używaj Search API oszczędnie - Search API ma ostrzejsze limity szybkości; buforuj wyniki gdy to możliwe
  6. Paginuj duże eksporty - Używaj paginacji z parametrami page i per_page dla wstępnej synchronizacji

Bezpieczeństwo

  • Uwierzytelnianie kluczem API - Proste HTTP Basic Auth z kluczem API
  • Tylko HTTPS - Cała komunikacja API wymaga szyfrowania TLS
  • Allowlisting IP - Dostępne w planach Estate i Forest
  • Kontrola dostępu oparta na rolach - Uprawnienia klucza API powiązane z rolą agenta
  • SOC 2 Type II - Freshdesk posiada certyfikat SOC 2 Type II
  • Zgodność z RODO - Obsługuje żądania eksportu i usunięcia danych

Powiązane zasoby

Subscribe to updates

developer-docs

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

auto-detect
Asystent AI

Cześć! Zapytaj mnie o dokumentację.