# API: linki śledzące, domeny, piksele i statystyki

_API · 9 min czytania · Zaktualizowano 2026-10-22 · https://lanachat.ai/guides/pl/api-tracking/_

**Tracking link** kieruje odwiedzającego do twórczyni na Telegramie i zlicza, co się dzieje dalej: kliknięcia, rozmowy, pierwsze wiadomości, kupujących i przychód. Linki mogą działać na Twojej własnej **domain**, uruchamiać **pixels** reklamowe (Meta, TikTok, Snap) i wysyłać serwerowe **events**. Te endpointy odpowiadają stronie **Tracking**.

## Endpoints

| Method | Path | Description | Permission | Status |
|---|---|---|---|---|
| GET | `/links` | Lista linków (`creator_id=`, `archived=false`) z licznikami | `can_tracking` lub `can_sales_read` | Planned |
| POST | `/links` | Utwórz link | `can_tracking` | Planned |
| GET | `/links/{id}` | Jeden link | `can_tracking` lub `can_sales_read` | Planned |
| PUT | `/links/{id}` | Zastąp link (name, slug, domain, destination, UTM, pixels) | `can_tracking` | Planned |
| DELETE | `/links/{id}` | Archiwizuj link (`permanent=1` usuwa go na stałe) | `can_tracking` | Planned |
| GET | `/domains` | Twoje domeny (`status=active,inactive`, `q=`) | `can_tracking` | Planned |
| POST | `/domains` | Dodaj domenę (status `pending`) | `can_tracking` | Planned |
| POST | `/domains/{host}/verify` | Sprawdź teraz rekordy DNS | `can_tracking` | Planned |
| PATCH | `/domains/{host}` | Ustaw zweryfikowaną domenę jako domyślną lub zmień jej label | `can_tracking` | Planned |
| DELETE | `/domains/{host}` | Usuń domenę, której nie używa żaden aktywny link | `can_tracking` | Planned |
| GET | `/pixels` | Połączenia Meta, TikTok i Snap oraz tryb zgody | `can_tracking` | Planned |
| PUT | `/pixels/{provider}` | Połącz lub podmień pixel (`meta`, `tiktok`, `snap`) | `owner` | Planned |
| DELETE | `/pixels/{provider}` | Odłącz pixel | `owner` | Planned |
| POST | `/pixels/{provider}/test` | Wyślij testowe zdarzenie i zwróć odpowiedź platformy | `can_tracking` | Planned |
| PUT | `/pixels/consent` | Tryb zgody: `page` lub `implicit_by_country` | `owner` | Planned |
| GET | `/events` | Wbudowane i własne zdarzenia, z liczbą dostarczeń z 7 dni | `can_tracking` | Planned |
| POST | `/events` | Utwórz własne zdarzenie | `owner` | Planned |
| PATCH | `/events/{id}` | Włącz lub wyłącz zdarzenie na sieć | `owner` | Planned |
| DELETE | `/events/{id}` | Usuń własne zdarzenie | `owner` | Planned |
| GET | `/stats` | Dzienne sumy, per link i per źródło (`from=`, `to=`, `creator_id=`) | `can_sales_read` | Planned |
| GET | `/stats/export.csv` | Te same liczby w CSV | `can_sales_read` | Planned |

## The link object

```json
{
  "id": "lnk_3",
  "name": "TikTok · Lea night",
  "slug": "lea-tiktok-night",
  "creator_id": "cr_lea",
  "source": "tiktok",
  "campaign": "Autumn",
  "domain": "go.mia-links.com",
  "public_url": "https://go.mia-links.com/r/lea-tiktok-night",
  "destination": "pool",
  "account_id": null,
  "utm": { "source": "tiktok", "medium": "social", "campaign": "autumn" },
  "pixels": { "meta": false, "tiktok": true, "snap": false },
  "counters": { "clicks": 640, "conversations": 97, "first_messages": 76, "buyers": 14, "revenue_stars": 6200 },
  "archived": false,
  "created_at": "2026-09-12T08:00:00Z"
}
```

| Field | Type | Description |
|---|---|---|
| `id` | string | Zaczyna się od `lnk_` |
| `name` | string | Nazwa widoczna dla zespołu |
| `slug` | string | Końcówka publicznego URL |
| `creator_id` | string | Twórczyni, do której prowadzi link |
| `source`, `campaign` | string | Skąd pochodzi ruch i nazwa kampanii |
| `domain` | string | Zweryfikowana domena workspace lub domena LanaChat |
| `public_url` | string | `https://<domain>/r/<slug>`: URL do bio lub reklamy |
| `destination` | string | `pool` lub `account` |
| `account_id` | string lub null | Stałe konto, gdy `destination` to `account` |
| `utm` | object | `source`, `medium`, `campaign` |
| `pixels` | object | Które podpięte piksele uruchamiają się na tym linku |
| `counters` | object | `clicks`, `conversations`, `first_messages`, `buyers`, `revenue_stars` |
| `archived` | boolean | Zarchiwizowane linki nie są liczone w statystykach |
| `created_at` | string | ISO 8601, UTC |

- `destination` to `pool` (konto wybierane przy kliknięciu spośród puli twórczyni, patrz [pools](https://lanachat.ai/guides/pl/api-telegram-accounts/)) lub `account` (zawsze to samo `account_id`).
- `slug`: małe litery, cyfry i myślniki, 1-48 znaków, zaczyna i kończy się literą lub cyfrą, unikalny wśród aktywnych linków tej samej domeny.
- `domain` musi być zweryfikowaną domeną workspace; bez niej używana jest domena LanaChat.
- `utm`: do 80 znaków (litery, cyfry, kropki, myślniki lub podkreślenia). Dodawane do każdego kliknięcia i przekazywane do zdarzeń pixel.

## The domain object

```json
{
  "host": "go.mia-links.com",
  "builtin": false,
  "status": "pending",
  "error": null,
  "ssl": "none",
  "is_default": false,
  "label": "Lea TikTok",
  "token": "8be03d5f19a2",
  "checks": 0,
  "added_at": "2026-10-05T10:00:00Z",
  "verified_at": null,
  "last_check_at": null
}
```

| Field | Type | Description |
|---|---|---|
| `host` | string | Subdomena małymi literami (min. 3 człony), unikalna w workspace |
| `builtin` | boolean | `true` dla domeny LanaChat, której nie można usunąć |
| `status` | string | `verified`, `pending` lub `error` |
| `error` | string lub null | Zwykłe zdanie, gdy `status` to `error` |
| `ssl` | string | `none`, `issuing` lub `active` |
| `is_default` | boolean | Dokładnie jedna zweryfikowana domena jest domyślna |
| `label` | string lub null | Nazwa dla zespołu, do 60 znaków |
| `token` | string | Wartość rekordu TXT do weryfikacji |
| `checks` | number | Liczba dotychczasowych sprawdzeń DNS |
| `added_at`, `verified_at`, `last_check_at` | string lub null | ISO 8601, UTC |

## The pixel connection object

```json
{ "connected": true, "pixel_id": "123456789012345", "token_last4": "x9Qa", "token_status": "valid", "token_error": null, "test_event_code": "TEST4821", "connected_at": "2026-10-06T14:30:00Z" }
```

| Field | Type | Description |
|---|---|---|
| `connected` | boolean | Pixel jest połączony |
| `pixel_id` | string | Meta: 15 lub 16 cyfr. TikTok: 20 wielkich liter lub cyfr. Snap: UUID |
| `token_last4` | string | Ostatnie 4 znaki tokena dostępowego, nigdy cały token |
| `token_status` | string | `valid`, `expired` lub `invalid` |
| `token_error` | string lub null | Zwykłe zdanie, np. "Access token expired on 3 Oct. Replace it to resume delivery." |
| `test_event_code` | string lub null | Kod testowy z menedżera zdarzeń platformy |
| `connected_at` | string | ISO 8601, UTC |

## The event object

```json
{
  "id": "evt_purchase",
  "name": "Purchase",
  "builtin": true,
  "trigger": { "type": "purchase" },
  "networks": { "meta": true, "tiktok": true, "snap": false }
}
```

| Field | Type | Description |
|---|---|---|
| `id` | string | Identyfikator zdarzenia |
| `name` | string | Wbudowana nazwa lub własna: litera, potem do 39 liter, cyfr lub podkreśleń, unikalna w workspace |
| `builtin` | boolean | `true` dla Lead, Contact, Purchase, Subscribe i InitiateCheckout |
| `trigger` | object | `type` i `value` dla tych triggerów, które tego wymagają |
| `networks` | object | Włączone lub wyłączone dla `meta`, `tiktok` i `snap` |

## The stats object

```json
{
  "days":    [ { "date": "2026-10-05", "clicks": 54, "conversations": 9, "first_messages": 7, "buyers": 2, "revenue_stars": 950 } ],
  "links":   [ { "link_id": "lnk_3", "clicks": 640, "conversations": 97, "first_messages": 76, "buyers": 14, "revenue_stars": 6200 } ],
  "sources": [ { "source": "instagram", "clicks": 1210, "conversations": 160, "first_messages": 131, "buyers": 22, "revenue_stars": 9100 } ]
}
```

| Field | Type | Description |
|---|---|---|
| `days` | array | Jeden wiersz na każdy dzień UTC z okresu |
| `links` | array | Jeden wiersz na każdy link, za cały okres |
| `sources` | array | Jeden wiersz na każdą grupę źródeł: `instagram`, `tiktok`, `snapchat`, `meta`, `x` i `other` |
| `clicks` | number | Obsłużone przekierowania |
| `conversations` | number | Rozpoczęte rozmowy na Telegramie z linku |
| `first_messages` | number | Fani, którzy napisali choć raz |
| `buyers` | number | Unikalni fani z potwierdzonym zakupem Stars w okresie |
| `revenue_stars` | number | Potwierdzone zakupy Stars tych fanów w okresie |

## Links

### List links

`GET /links` · `can_tracking` lub `can_sales_read`

| Parameter | Type | Required | Description |
|---|---|---|---|
| `creator_id` | string | Nie | Tylko linki tej twórczyni |
| `archived` | boolean | Nie | `false` (domyślnie) ukrywa zarchiwizowane linki |
| `limit`, `cursor` | number, string | Nie | [Paginacja](https://lanachat.ai/guides/pl/api-overview/) |

```bash
curl "https://api.lanachat.ai/v1/links?creator_id=cr_lea&archived=false" \
  -H "Authorization: Bearer $LANACHAT_TOKEN"
```

Odpowiedź to stronicowana lista link objects, każdy z własnymi `counters`.

### Create a link

`POST /links` · `can_tracking`

| Parameter | Type | Required | Description |
|---|---|---|---|
| `name` | string | Tak | Nazwa widoczna dla zespołu |
| `slug` | string | Tak | Małe litery, cyfry i myślniki, 1-48 znaków |
| `creator_id` | string | Tak | Twórczyni, do której prowadzi link |
| `source` | string | Nie | `instagram`, `tiktok`, `snapchat`, `meta`, `x` lub inne źródło |
| `campaign` | string | Nie | Nazwa kampanii |
| `destination` | string | Nie | `pool` lub `account` |
| `account_id` | string | Gdy `destination` to `account` | Stałe konto Telegram |
| `domain` | string | Nie | Zweryfikowana domena; bez niej domena LanaChat |
| `utm` | object | Nie | `source`, `medium`, `campaign` |
| `pixels` | object | Nie | `meta`, `tiktok`, `snap`: `true` by uruchomić ten pixel |

```bash
curl -X POST https://api.lanachat.ai/v1/links \
  -H "Authorization: Bearer $LANACHAT_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"name": "Insta bio · Lea", "slug": "lea-bio", "creator_id": "cr_lea", "source": "instagram", "destination": "pool", "domain": "go.mia-links.com"}'
```

```json
{
  "id": "lnk_9",
  "name": "Insta bio · Lea",
  "slug": "lea-bio",
  "creator_id": "cr_lea",
  "source": "instagram",
  "campaign": null,
  "domain": "go.mia-links.com",
  "public_url": "https://go.mia-links.com/r/lea-bio",
  "destination": "pool",
  "account_id": null,
  "utm": { "source": null, "medium": null, "campaign": null },
  "pixels": { "meta": false, "tiktok": false, "snap": false },
  "counters": { "clicks": 0, "conversations": 0, "first_messages": 0, "buyers": 0, "revenue_stars": 0 },
  "archived": false,
  "created_at": "2026-10-06T14:40:00Z"
}
```

- Jeśli slug jest już zajęty, odpowiedź to `409` z `The slug /lea-bio is already used by "Insta bio · Mia".`
- Jeśli domena nie jest zweryfikowana, odpowiedź to `400` ("Pick a verified domain…").

### Get a link

`GET /links/{id}` · `can_tracking` lub `can_sales_read`

```bash
curl https://api.lanachat.ai/v1/links/lnk_3 \
  -H "Authorization: Bearer $LANACHAT_TOKEN"
```

Odpowiedź to link object. Nieznane id zwraca `404`.

### Replace a link

`PUT /links/{id}` · `can_tracking`

Taki sam body jak w **Create a link**; `PUT` zastępuje cały link, więc podaj wszystkie pola, które chcesz zachować.

```bash
curl -X PUT https://api.lanachat.ai/v1/links/lnk_3 \
  -H "Authorization: Bearer $LANACHAT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "TikTok · Lea night", "slug": "lea-tiktok-night", "creator_id": "cr_lea", "source": "tiktok", "campaign": "Autumn", "destination": "pool", "domain": "go.mia-links.com", "utm": {"source": "tiktok", "medium": "social", "campaign": "autumn"}, "pixels": {"meta": false, "tiktok": true, "snap": false}}'
```

Odpowiedź to zaktualizowany link. Te same błędy co przy tworzeniu.

### Archive or delete a link

`DELETE /links/{id}` · `can_tracking`

| Parameter | Type | Required | Description |
|---|---|---|---|
| `permanent` | number | Nie | `1` usuwa link na stałe zamiast archiwizować |

```bash
curl -X DELETE https://api.lanachat.ai/v1/links/lnk_3 \
  -H "Authorization: Bearer $LANACHAT_TOKEN"
```

Zarchiwizowany link nie jest liczony w statystykach.

## Domains

Aby użyć własnej domeny, dodaj ją, utwórz dwa rekordy DNS, a potem zweryfikuj:

- `CNAME go.mia-links.com → links.lanachat.app`
- `TXT _lanachat.go.mia-links.com = lanachat-verify=8be03d5f19a2`

Domeny w statusie pending są też sprawdzane co 10 minut przez 72 godziny, potem codziennie. `status` zmienia się na `verified`, a `ssl` na `issuing`, potem `active`.

### List domains

`GET /domains` · `can_tracking`

| Parameter | Type | Required | Description |
|---|---|---|---|
| `status` | string | Nie | `active` (zweryfikowane) lub `inactive` (pending lub error) |
| `q` | string | Nie | Fragment hosta lub label |

```bash
curl "https://api.lanachat.ai/v1/domains?status=active" \
  -H "Authorization: Bearer $LANACHAT_TOKEN"
```

Odpowiedź to lista domain objects, w tym domena LanaChat (`builtin: true`).

### Add a domain

`POST /domains` · `can_tracking`

| Parameter | Type | Required | Description |
|---|---|---|---|
| `host` | string | Tak | Subdomena, np. `go.mia-links.com` |

```bash
curl -X POST https://api.lanachat.ai/v1/domains \
  -H "Authorization: Bearer $LANACHAT_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"host": "go.mia-links.com"}'
```

Odpowiedź to nowa domena ze statusem `status: "pending"` i jej `token` do rekordu TXT. Host jest czyszczony (małe litery, bez `https://`, bez ścieżki). Root domeny, `*.lanachat.app` i już dodana domena zwracają `400` z komunikatem.

### Verify a domain

`POST /domains/{host}/verify` · `can_tracking`

```bash
curl -X POST https://api.lanachat.ai/v1/domains/go.mia-links.com/verify \
  -H "Authorization: Bearer $LANACHAT_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)"
```

```json
{ "host": "go.mia-links.com", "builtin": false, "status": "verified", "error": null, "ssl": "issuing", "is_default": false, "label": null, "token": "8be03d5f19a2", "checks": 3, "added_at": "2026-10-05T10:00:00Z", "verified_at": "2026-10-06T14:45:00Z", "last_check_at": "2026-10-06T14:45:00Z" }
```

Gdy rekord jest błędny, `status` to `error`, a `error` opisuje problem, np. "The CNAME record points to another service." Domena LanaChat nie może być weryfikowana (jej DNS obsługuje LanaChat).

### Change a domain

`PATCH /domains/{host}` · `can_tracking`

| Parameter | Type | Required | Description |
|---|---|---|---|
| `is_default` | boolean | Nie | `true` ustawia jako domyślną; poprzednia przestaje być domyślna |
| `label` | string lub null | Nie | Nazwa dla zespołu, do 60 znaków |

```bash
curl -X PATCH https://api.lanachat.ai/v1/domains/go.mia-links.com \
  -H "Authorization: Bearer $LANACHAT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"is_default": true}'
```

Tylko zweryfikowana domena może być domyślna. Domena LanaChat odrzuca label (`403`).

### Remove a domain

`DELETE /domains/{host}` · `can_tracking`

```bash
curl -X DELETE https://api.lanachat.ai/v1/domains/go.mia-links.com \
  -H "Authorization: Bearer $LANACHAT_TOKEN"
```

Usunięcie domeny LanaChat, domyślnej domeny ("Set another default domain first") lub domeny używanej przez aktywne linki ("Used by N active links across all creators") zwraca `409`.

## Pixels

Zdarzenia są wysyłane serwer-serwer, deduplikowane z przeglądarkowym pixelem przez ten sam `event_id`, z hashowanym (SHA-256) id Telegram fana (nigdy wprost). Bez zgody żadne zdarzenie nie jest wysyłane. Pixel uruchamia się tylko dla linków, które go mają włączone.

### Read pixel connections

`GET /pixels` · `can_tracking`

```bash
curl https://api.lanachat.ai/v1/pixels \
  -H "Authorization: Bearer $LANACHAT_TOKEN"
```

Odpowiedź zawiera po jednym pixel connection dla `meta`, `tiktok` i `snap` oraz tryb zgody `mode`.

### Connect a pixel

`PUT /pixels/{provider}` · `owner`

| Parameter | Type | Required | Description |
|---|---|---|---|
| `pixel_id` | string | Tak | Meta: 15 lub 16 cyfr. TikTok: 20 wielkich liter lub cyfr. Snap: UUID |
| `access_token` | string | Tak | Token Conversions API danej platformy |
| `test_event_code` | string | Nie | Kod testowy platformy |

```bash
curl -X PUT https://api.lanachat.ai/v1/pixels/meta \
  -H "Authorization: Bearer $LANACHAT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"pixel_id": "123456789012345", "access_token": "EAAG…", "test_event_code": "TEST4821"}'
```

```json
{ "connected": true, "pixel_id": "123456789012345", "token_last4": "x9Qa", "token_status": "valid", "token_error": null, "test_event_code": "TEST4821", "connected_at": "2026-10-06T14:30:00Z" }
```

Token dostępu jest przechowywany zaszyfrowany i nigdy nie jest zwracany: tylko `token_last4`. Zły format pixel_id lub pusty token zwraca `400`.

### Disconnect a pixel

`DELETE /pixels/{provider}` · `owner`

```bash
curl -X DELETE https://api.lanachat.ai/v1/pixels/meta \
  -H "Authorization: Bearer $LANACHAT_TOKEN"
```

### Send a test event

`POST /pixels/{provider}/test` · `can_tracking`

```bash
curl -X POST https://api.lanachat.ai/v1/pixels/meta/test \
  -H "Authorization: Bearer $LANACHAT_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)"
```

```json
{ "ok": true, "status": 200, "body": "{\"events_received\":1}" }
```

`status` i `body` to oryginalna odpowiedź platformy, więc widzisz dokładnie, co zwróciło Meta, TikTok lub Snap.

### Set the consent mode

`PUT /pixels/consent` · `owner`

| Parameter | Type | Required | Description |
|---|---|---|---|
| `mode` | string | Tak | `page`: ekran zgody dla każdego fana przed otwarciem Telegrama. `implicit_by_country`: ekran tylko w UE i EOG, Wielkiej Brytanii i Szwajcarii |

```bash
curl -X PUT https://api.lanachat.ai/v1/pixels/consent \
  -H "Authorization: Bearer $LANACHAT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"mode": "implicit_by_country"}'
```

## Events

Wbudowane zdarzenia: Lead (rozpoczęcie rozmowy z linku), Contact (pierwsza wiadomość fana), Purchase (potwierdzona sprzedaż), Subscribe, InitiateCheckout. Własne zdarzenia wymagają triggera: `sale_over` (sprzedaż powyżej kwoty w USD), `tag_added` (dodanie taga), `nth_message` (N-ta wiadomość fana, 2 lub więcej) lub `offer_viewed`.

### List events

`GET /events` · `can_tracking`

```bash
curl https://api.lanachat.ai/v1/events \
  -H "Authorization: Bearer $LANACHAT_TOKEN"
```

Odpowiedź to lista event objects z liczbą dostarczeń zaakceptowanych i odrzuconych z 7 dni, per sieć.

### Create a custom event

`POST /events` · `owner`

| Parameter | Type | Required | Description |
|---|---|---|---|
| `name` | string | Tak | Litera, potem do 39 liter, cyfr lub podkreśleń; unikalna w workspace |
| `trigger` | object | Tak | `type`: `sale_over`, `tag_added`, `nth_message` lub `offer_viewed`; `value` dla trzech pierwszych |
| `networks` | object | Nie | `meta`, `tiktok`, `snap`: `true` by wysłać tam |

```bash
curl -X POST https://api.lanachat.ai/v1/events \
  -H "Authorization: Bearer $LANACHAT_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"name": "BigSpender", "trigger": {"type": "sale_over", "value": 50}, "networks": {"meta": true, "tiktok": true, "snap": false}}'
```

Odpowiedź to nowe zdarzenie (`201`). Nazwa już użyta zwraca `409`.

### Turn an event on or off

`PATCH /events/{id}` · `owner`

| Parameter | Type | Required | Description |
|---|---|---|---|
| `networks` | object | Tak | `meta`, `tiktok`, `snap`: `true` lub `false` |

```bash
curl -X PATCH https://api.lanachat.ai/v1/events/evt_purchase \
  -H "Authorization: Bearer $LANACHAT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"networks": {"meta": true, "tiktok": true, "snap": true}}'
```

### Delete a custom event

`DELETE /events/{id}` · `owner`

```bash
curl -X DELETE https://api.lanachat.ai/v1/events/evt_bigspender \
  -H "Authorization: Bearer $LANACHAT_TOKEN"
```

Wbudowanych zdarzeń nie można usuwać; zamiast tego wyłącz je.

## Stats

### Read stats

`GET /stats` · `can_sales_read`

| Parameter | Type | Required | Description |
|---|---|---|---|
| `from` | string | Tak | Pierwszy dzień UTC, `YYYY-MM-DD`, włącznie |
| `to` | string | Tak | Ostatni dzień UTC, `YYYY-MM-DD`, włącznie |
| `creator_id` | string | Nie | Tylko ta twórczyni; bez tego wszyscy twórczynie |

```bash
curl "https://api.lanachat.ai/v1/stats?from=2026-09-06&to=2026-10-05&creator_id=cr_lea" \
  -H "Authorization: Bearer $LANACHAT_TOKEN"
```

Odpowiedź to stats object. Dni są w UTC; zarchiwizowane linki są pomijane.

### Export stats as CSV

`GET /stats/export.csv` · `can_sales_read`

Te same parametry co `GET /stats`.

```bash
curl "https://api.lanachat.ai/v1/stats/export.csv?from=2026-09-06&to=2026-10-05" \
  -H "Authorization: Bearer $LANACHAT_TOKEN" -o stats.csv
```

```text
date,link,slug,domain,creator,source,clicks,conversations,first_messages,buyers,revenue_stars
2026-10-05,TikTok · Lea night,lea-tiktok-night,go.mia-links.com,Lea,tiktok,54,9,7,2,950
```

## Powiązane artykuły

- [LanaChat API: szybki start, uwierzytelnianie i błędy](https://lanachat.ai/guides/pl/api-overview/)
- [Śledzenie: linki, domeny i analityka](https://lanachat.ai/guides/pl/tracking-links/)
- [API: Konta Telegram, pule i historie](https://lanachat.ai/guides/pl/api-telegram-accounts/)
