---
title: "Freshdesk Connector"
description: "Popoln vodnik za integracijo Freshdesk za sinhronizacijo zahtevkov za podporo, stikov in podatkov o agentih z Brevo prek Tajo."
url: https://tajo.io/sl/docs/connectors/support/freshdesk/
markdown: https://tajo.io/sl/docs/connectors/support/freshdesk.md
lang: sl-SI
robots: noindex
---

Zaprosite za zgodnji dostop

Vnesite svoje ime in službeni e-poštni naslov. Poslali vam bomo povezavo za potrditev zahteve za dostop do Taja.

# Freshdesk Connector

Stanje konektorja: Načrtovano Še ni izdelano. Tajo danes ne poganja tega konektorja.

| Izvorno polje | Ciljno polje | Vzorčna vrednost |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

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

| Lastnost | Vrednost |
| --- | --- |
| **Platforma** | Freshdesk |
| **Kategorija** | Support |
| **Zahtevnost nastavitve** | Enostavna |
| **Uradna integracija** | Ne |
| **Sinhronizirani podatki** | Zahtevki, stiki, agenti, podjetja |
| **Razpoložljivi Skills** | 6 |

## 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.

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

Ali z Base64 kodiranjem v glavi Authorization:

```bash
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

```yaml
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:

```yaml
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:

```yaml
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

| Metoda | Končna točka | Opis |
| --- | --- | --- |
| `GET` | `/api/v2/tickets` | Seznam vseh zahtevkov |
| `POST` | `/api/v2/tickets` | Ustvarjanje 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/contacts` | Seznam vseh stikov |
| `POST` | `/api/v2/contacts` | Ustvarjanje stika |
| `PUT` | `/api/v2/contacts/{id}` | Posodobi stik |
| `GET` | `/api/v2/companies` | Seznam vseh podjetij |
| `GET` | `/api/v2/agents` | Seznam vseh agentov |
| `GET` | `/api/v2/surveys/satisfaction_ratings` | Seznam ocen CSAT |
| `GET` | `/api/v2/search/tickets?query=` | Iskanje zahtevkov |

## Primeri kode

### Inicializacija konektorja Freshdesk

```javascript
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

```javascript
// 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": "jane@example.com",
//   "phone": "+15551234567",
//   "company_id": 678,
//   "job_title": "Product Manager",
//   "created_at": "2024-01-15T10:30:00Z"
// }
```

### Sledenje dogodkom zahtevkov

```javascript
// 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

```javascript
// Search for all tickets from a specific customer
const query = encodeURIComponent('"email:jane@example.com"');
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

| Plan | Omejitev | Podrobnosti |
| --- | --- | --- |
| **Sprout** | 50 zahtevkov/min | Brezplačni plan |
| **Blossom** | 200 zahtevkov/min | Začetni plan |
| **Garden** | 400 zahtevkov/min | Plan rasti |
| **Estate** | 700 zahtevkov/min | Pro plan |
| **Forest** | 1.000 zahtevkov/min | Enterprise plan |

Dodatne omejitve:

| Vir | Omejitev |
| --- | --- |
| **Končne točke seznama** | 30 strani na poizvedbo |
| **Na stran** | Največ 100 zapisov |
| **Search API** | 2 zahtevka/sekundo |
| **Množične operacije** | 10 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žava | Vzrok | Rešitev |
| --- | --- | --- |
| `401 Unauthorized` | Neveljaven API ključ | Preveri API ključ v nastavitvah profila Freshdesk |
| `403 Forbidden` | Nezadostna dovoljenja | Zagotovi, da API ključ pripada administratorskemu računu |
| Stiki se ne sinhronizirajo | Manjkajoče polje e-mail | Stiki Freshdesk zahtevajo e-mailni naslov |
| Zahtevki se ne prikazujejo | Napačna domena | Preveri pravilnost URL-ja domene Freshdesk |
| Iskanje vrača prazno | Napaka v sintaksi poizvedbe | Uporabi sintakso iskanja Freshdesk z dvojnimi narekovaji |
| `429 Too Many Requests` | Presežena omejitev hitrosti | Implementiraj omejevanje hitrosti glede na raven plana |
| Manjkajoča polja po meri | Polje ni omogočeno | Zagotovi, 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

- [Brevo Connector](https://tajo.io/sl/docs/connectors/marketing/brevo)
- [Customer Sync Skill](https://tajo.io/sl/docs/skills/data-sync/customer-sync)
- [Shopify Connector](https://tajo.io/sl/docs/connectors/ecommerce/shopify)
- [Brevo Contacts API](https://tajo.io/sl/docs/contact-management)
