REST API リファレンス
すべての API エンドポイントは /api/ プレフィックス付きで、セッション cookie による認証が必要です。すべてのリクエストとレスポンスは Content-Type: application/json を使用します。
会話
| エンドポイント | メソッド | 説明 |
|---|---|---|
/api/conversations | GET | 会話一覧(フィルター: status, channel_type, tag, search, page) |
/api/conversations/{id} | GET | 会話取得(unread_count をリセット) |
/api/conversations | POST | 会話作成 |
/api/conversations/{id}/status | POST | ステータス更新 |
/api/conversations/{id}/tags | POST | タグ追加 |
/api/conversations/{id}/tags/{tag} | DELETE | タグ削除 |
/api/conversations/{id}/assign | POST | エージェント割り当て |
メッセージ
| エンドポイント | メソッド | 説明 |
|---|---|---|
/api/conversations/{id}/messages | GET | メッセージ一覧 |
/api/conversations/{id}/messages | POST | メッセージ送信 |
AI 提案
| エンドポイント | メソッド | 説明 |
|---|---|---|
/api/ai-suggest?conversation_id={id} | GET | AI 返信提案を取得 |
コンタクト
| エンドポイント | メソッド | 説明 |
|---|---|---|
/api/contacts | GET | コンタクト一覧 |
/api/contacts/{id} | GET | コンタクト取得 |
/api/contacts | POST | コンタクト作成 |
/api/contacts/{id} | PATCH | コンタクト更新 |
/api/contacts/{id} | DELETE | コンタクト削除(管理者) |
チャネル(管理者のみ)
| エンドポイント | メソッド | 説明 |
|---|---|---|
/api/channels | GET | チャネル一覧 |
/api/channels | POST | チャネル作成 |
/api/channels/{id} | PATCH | チャネル更新 |
/api/channels/{id} | DELETE | チャネル削除 |
オートメーション(管理者のみ)
| エンドポイント | メソッド | 説明 |
|---|---|---|
/api/automations | GET | オートメーション一覧 |
/api/automations | POST | オートメーション作成 |
/api/automations/{id}/toggle | POST | 有効/無効の切り替え |
/api/automations/{id} | DELETE | オートメーション削除 |
アナリティクス
| エンドポイント | メソッド | 説明 |
|---|---|---|
/api/analytics?days=30 | GET | アナリティクスデータ取得 |
エージェント(管理者のみ)
| エンドポイント | メソッド | 説明 |
|---|---|---|
/api/agents | GET | エージェント一覧 |
/api/agents | POST | エージェント作成 |
/api/agents/{id}/role | POST | ロール更新 |
/api/agents/{id} | DELETE | エージェント削除 |
設定
| エンドポイント | メソッド | 説明 |
|---|---|---|
/api/settings/workspace | GET | ワークスペース設定取得 |
/api/settings/workspace | POST | ワークスペース更新(管理者) |
/api/settings/password | POST | パスワード変更 |
エラー形式
{"error": "Human-readable error message"}
| コード | 意味 |
|---|---|
200 | 成功 |
201 | 作成済み |
400 | 不正なリクエスト |
401 | 未認証 |
403 | 禁止 |
404 | 見つかりません |
409 | 競合 |
500 | 内部エラー |