Paano kami makakatulong?

Sabihin sa amin nang maikli kung tungkol saan ito—babalikan ka namin sa email.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Pumunta sa panimulang page

Server-API (REST v1) en MCP

De REST-interface voor uw backend: API-sleutels, scopes, verzoeklimieten, antwoorden en fouten, paginering, endpoints voor projecten, gesprekken, berichten, bezoekers, gebeurtenissen, regels en hooks, en MCP.

De server-API is bedoeld voor uw backend, niet voor de browser: CORS wordt niet toegestaan en een API-sleutel hoort nooit in een webpagina of app.

Basis

API-sleutels

In uw account onder API-sleutels (/app/api-keys, alleen eigenaren en beheerders). U geeft een naam en een scope op; de sleutel (rc_live_ + 48 tekens) wordt precies één keer getoond en wij bewaren alleen een hash.

Scopes:

Een sleutel hoort bij precies één werkruimte; geen pad of parameter selecteert een andere. De sleutel wordt ongeldig als u deze intrekt of als de persoon die deze heeft aangemaakt geen eigenaar of beheerder van de werkruimte meer is. Er is geen vervaldatum — vernieuw zelf (nieuwe sleutel aanmaken, omschakelen, oude intrekken).

Verzenden:

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

De header X-Api-Key: rc_live_... is gelijkwaardig (deze wordt alleen gelezen als er geen Authorization: Bearer is).

Verzoeklimieten

Antwoordformaat

{ "data": { ... } }

Lijsten:

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

Paginering: limit (standaard 25, maximaal 100) en een cursor — before_id voor lijsten met het nieuwste eerst, after_id voor lijsten met het oudste eerst. next is alleen aanwezig als has_more true is. Er is geen totaalaantal.

Bodies van POST/PUT: alleen Content-Type: application/json (anders 415), maximaal 65.536 bytes (anders 413), een JSON-object met maximaal 32 niveaus.

Foutformaat

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

message is een vaste Engelse zin voor ontwikkelaars. Afhankelijk van de fout worden param, required_scope, max, allowed en reason toegevoegd. Dit zijn alle codes:

Endpoints

Account

Projecten (read)

Gesprekken (read)

Berichten

curl -X POST https://reactive.chat/v1/conversations/815/messages \
  -H "Authorization: Bearer rc_live_..." \
  -H "Content-Type: application/json" \
  -d '{"body":"Your return has arrived.","author_type":"agent","client_ulid":"01JAB3C4D5E6F7G8H9JKMNPQRS"}'

Bezoekers (read)

Gebeurtenissen

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

type moet passen bij ^[a-z][a-z0-9_.:-]{0,47}$, payload maximaal 8192 bytes, ts in milliseconden (maximaal 7 dagen oud, maximaal 5 minuten in de toekomst). source is altijd integration. Antwoord 201.

Regels (read)

Hooks — zie Webhooks: GET /v1/hooks, POST /v1/hooks, DELETE /v1/hooks/{id}.

Klantgegevens — zie Klantgegevens: PUT en DELETE /v1/kundendaten/{user_id}.

Voorbeeld: open gesprekken ophalen

<?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);

MCP-server

Voor AI-tools die het Model Context Protocol ondersteunen, is er een MCP-server onder hetzelfde basisadres:

Tools (tools/list toont alleen de tools die uw sleutel mag gebruiken):

Zonder besucherdaten:lesen worden naam, e-mail en telefoonnummer van bezoekers ingekort en persoonsgegevens in teksten gemaskeerd. Toolfouten komen als isError: true met identificatoren zoals project_not_found, conversation_not_found, conversation_closed, disabled, bad_argument, too_long, search_rate_limited.

Voorbeeldconfiguratie voor een MCP-client:

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

MCP en de bezoekerslijst zijn nieuwe functies; ze kunnen per project zijn uitgeschakeld (het betreffende project meldt dan disabled).

Wat niet bestaat

Volgende: Webhooks · Integraties en kanalen

Huling na-update: