Chúng tôi có thể giúp gì?

Cho chúng tôi biết ngắn gọn về vấn đề – chúng tôi sẽ liên hệ lại qua email.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Về trang chủ

API serwera (REST v1) i MCP

Interfejs REST reactive.chat dla twojego backendu – klucze API i zakresy uprawnień, limit zapytań, format odpowiedzi i błędów, paginacja, wszystkie endpointy dla projektów, rozmów, wiadomości, odwiedzających, zdarzeń, reguł i hooków – oraz serwer MCP dla narzędzi AI.

API serwera jest przeznaczone dla twojego backendu, a nie dla przeglądarki: nie dopuszcza CORS, a klucz API nigdy nie powinien trafić na stronę internetową ani do aplikacji.

Podstawy

Klucze API

W koncie, w sekcji Klucze API (/app/api-keys, tylko właściciele i administratorzy). Nadajesz nazwę i zakres; klucz (rc_live_ + 48 znaków) jest pokazywany dokładnie raz, przechowujemy tylko jego hash.

Zakresy:

Klucz należy do dokładnie jednej przestrzeni roboczej; żadna ścieżka ani parametr nie wybiera innej. Traci ważność, gdy go unieważnisz albo gdy osoba, która go utworzyła, nie jest już właścicielem ani administratorem przestrzeni roboczej. Daty wygaśnięcia nie ma – rotuj sam (utwórz nowy, przestaw, unieważnij stary).

Wysyłanie:

curl https://reactive.chat/v1/me -H "Authorization: Bearer rc_live_..."

Równoważny jest nagłówek X-Api-Key: rc_live_... (odczytywany tylko wtedy, gdy nie ma Authorization: Bearer).

Limit zapytań

Format odpowiedzi

{ "data": { ... } }

Listy:

{ "data": [ ... ], "has_more": true, "next": { "before_id": "812" } }

Paginacja: limit (domyślnie 25, najwyżej 100) i kursor – before_id przy listach „od najnowszych”, after_id przy listach „od najstarszych”. next pojawia się tylko wtedy, gdy has_more jest prawdą. Licznika całkowitego nie ma.

Treści żądań POST/PUT: tylko Content-Type: application/json (w przeciwnym razie 415), najwyżej 65 536 bajtów (w przeciwnym razie 413), obiekt JSON z najwyżej 32 poziomami zagnieżdżenia.

Format błędów

{ "error": { "code": "insufficient_scope", "message": "...", "required_scope": "write" } }

message to stałe angielskie zdanie dla programistów. Zależnie od błędu dochodzą param, required_scope, max, allowed, reason. Lista kodów jest zamknięta:

Endpointy

Konto

Projekty (read)

Rozmowy (read)

Wiadomości

curl -X POST https://reactive.chat/v1/conversations/815/messages \
  -H "Authorization: Bearer rc_live_..." \
  -H "Content-Type: application/json" \
  -d '{"body":"Twój zwrot do nas dotarł.","author_type":"agent","client_ulid":"01JAB3C4D5E6F7G8H9JKMNPQRS"}'

Odwiedzający (read)

Zdarzenia

{ "project_id": "123", "type": "bestellung.storniert",
  "session_id": "s_...", "conversation_id": "01JAB...",
  "payload": { "nummer": "2026-0815" }, "ts": 1792503600000 }

type według ^[a-z][a-z0-9_.:-]{0,47}$, payload najwyżej 8192 bajty, ts w milisekundach (najwyżej 7 dni wstecz, najwyżej 5 minut naprzód). source to zawsze integration. Odpowiedź 201.

Reguły (read)

Hooki – zobacz Webhooki: GET /v1/hooks, POST /v1/hooks, DELETE /v1/hooks/{id}.

Dane klientów – zobacz Dane klientów: PUT i DELETE /v1/kundendaten/{user_id}.

Przykład: pobieranie otwartych rozmów

<?php
$key = getenv('RC_API_KEY');
$url = 'https://reactive.chat/v1/conversations?status=waiting&limit=100';
do {
    $ch = curl_init($url);
    curl_setopt_array($ch, [CURLOPT_RETURNTRANSFER => true,
        CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . $key]]);
    $antwort = json_decode((string) curl_exec($ch), true);
    $status  = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
    if ($status === 429) { sleep(60); continue; }
    foreach ($antwort['data'] as $g) { echo $g['id'], ' ', $g['created_at'], "\n"; }
    $url = !empty($antwort['has_more'])
        ? 'https://reactive.chat/v1/conversations?status=waiting&limit=100&before_id=' . $antwort['next']['before_id']
        : null;
} while ($url);

Serwer MCP

Dla narzędzi AI, które mówią Model Context Protocol, pod tym samym adresem bazowym działa serwer MCP:

Narzędzia (tools/list pokazuje tylko te, do których uprawnia twój klucz):

Bez besucherdaten:lesen imię, e-mail i telefon odwiedzających są skracane, a dane osobowe w tekstach maskowane. Błędy narzędzi przychodzą jako isError: true z identyfikatorami takimi jak project_not_found, conversation_not_found, conversation_closed, disabled, bad_argument, too_long, search_rate_limited.

Przykładowy wpis dla klienta MCP:

{
  "mcpServers": {
    "reactive-chat": {
      "url": "https://reactive.chat/v1/mcp",
      "headers": { "Authorization": "Bearer rc_live_..." }
    }
  }
}

MCP i lista odwiedzających to nowe funkcje; mogą być wyłączone dla poszczególnych projektów (dany projekt zgłasza wtedy disabled).

Czego nie ma

Dalej: Webhooki · Integracje i kanały

Cập nhật lần cuối: