Kaip galime padėti?

Trumpai papasakokite, apie ką klausiate - atsakysime el. paštu.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Į pradžios puslapį

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

Paskutinį kartą atnaujinta: