무엇을 도와드릴까요?

문의 내용을 간단히 알려 주세요. 이메일로 답변드릴게요.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
홈으로

서버 API(REST v1)와 MCP

백엔드용 reactive.chat REST 인터페이스: API 키와 권한 범위, 빈도 제한, 응답·오류 형식, 페이지 나누기, 프로젝트·대화·메시지·방문자·이벤트·규칙·훅의 모든 엔드포인트와 AI 도구용 MCP 서버.

서버 API는 브라우저가 아닌 백엔드용입니다. CORS를 허용하지 않으며 API 키를 웹페이지나 앱에 넣어서는 안 됩니다.

기본 사항

API 키

계정의 API 키(/app/api-keys, 소유자와 관리자 전용)에서 이름과 권한 범위를 지정합니다. 키(rc_live_ + 48자)는 정확히 한 번만 표시되며 당사는 해시만 저장합니다.

권한 범위:

키는 정확히 하나의 워크스페이스에 속하며 경로나 매개변수로 다른 워크스페이스를 선택할 수 없습니다. 폐기하거나 생성자가 더 이상 해당 워크스페이스의 소유자 또는 관리자가 아니면 무효화됩니다. 만료일은 없으므로 직접 교체합니다(새 키 생성, 전환, 이전 키 폐기).

전송:

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

X-Api-Key: rc_live_... 헤더도 동일하게 사용할 수 있습니다(Authorization: Bearer가 없을 때만 읽음).

빈도 제한

응답 형식

{ "data": { ... } }

목록:

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

페이지 나누기: limit(기본값 25, 최대 100)과 커서를 사용합니다. 최신순 목록에는 before_id, 오래된 순 목록에는 after_id입니다. next는 has_more가 true일 때만 있습니다. 전체 개수는 없습니다.

POST/PUT의 본문: Content-Type: application/json만 허용하며 그 외에는 415입니다. 최대 65,536바이트이며 초과하면 413입니다. 깊이 최대 32단계의 JSON 객체여야 합니다.

오류 형식

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

message는 개발자용 고정 영어 문장입니다. 오류에 따라 param, required_scope, max, allowed, reason을 추가합니다. 전체 코드는 다음과 같습니다.

엔드포인트

계정

프로젝트(read)

대화(read)

메시지

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"}'

방문자(read)

이벤트

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

type은 ^[a-z][a-z0-9_.:-]{0,47}$와 일치해야 하며 payload는 최대 8192바이트입니다. ts는 밀리초 단위로 최대 7일 전 또는 최대 5분 후까지 허용합니다. source는 항상 integration입니다. 응답은 201입니다.

규칙(read)

훅 – 웹훅 참조: GET /v1/hooks, POST /v1/hooks, DELETE /v1/hooks/{id}.

고객 데이터 – 고객 데이터 참조: PUT 및 DELETE /v1/kundendaten/{user_id}.

예: 열린 대화 수집

<?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 서버

Model Context Protocol을 지원하는 AI 도구용 MCP 서버가 같은 기본 주소 아래에 있습니다.

도구(tools/list는 키가 사용할 수 있는 것만 표시):

besucherdaten:lesen이 없으면 방문자의 이름, 이메일과 전화번호를 축약하고 텍스트의 개인정보를 가림 처리합니다. 도구 오류는 isError: true와 project_not_found, conversation_not_found, conversation_closed, disabled, bad_argument, too_long, search_rate_limited 같은 식별자로 반환됩니다.

MCP 클라이언트의 항목 예시:

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

MCP와 방문자 목록은 새 기능이며 프로젝트별로 꺼질 수 있습니다(해당 프로젝트에서 disabled 반환).

제공되지 않는 기능

다음: 웹훅 · 연동과 채널

최종 업데이트: