共通パターン

Common Patterns のドキュメント

Common Patterns

ページネーション

一覧エンドポイントは次のクエリパラメータを受け付けます。

ParameterTypeDefaultConstraintsDescription
pagenumber1min: 1ページ番号(1 始まり)
limitnumber20min: 1, max: 1001 ページあたり件数

ページネーション付きレスポンスには pagination オブジェクトが含まれます。

json

エラーレスポンス

すべてのエラーは一貫した JSON 形式に従います。

json

一般的な HTTP ステータスコード

StatusMeaning
200 OK成功
201 Createdリソースが正常に作成された
400 Bad Request無効なリクエストパラメータまたはボディ(検証失敗)
401 UnauthorizedJWT トークンが欠落または無効
403 Forbiddenトークンは有効だが権限拒否
404 Not Foundリソースが見つからない、またはアクセス不可(所有権チェック失敗)
429 Too Many Requestsレート制限超過
500 Internal Server Error予期しないサーバーエラー
503 Service Unavailableデプロイのためサーバーがドレイン中;Retry-After 秒後に再試行

注記: セキュリティのため、サーバーは禁止リソースに 404 を使用します。404 を受け取った場合、リソースは存在するがアクセス権がない可能性があります。

Server-Sent Events(SSE)

複数のエンドポイントが Server-Sent Events(SSE) でレスポンスをストリームします。これらはイベントを段階的にプッシュする長寿命 HTTP 接続です。

レスポンスヘッダー

text

イベント形式

各イベントには event 名と JSON エンコードされた data ペイロードがあります。

text

SSE イベントタイプ

チャット / Rules ストリーミング(POST /chats/:threadId/messagesPOST /rules/:threadId/messages

EventDescription
ping9 秒ごとのキープアライブハートビート
messageAI アシスタントのテキストチャンク: { "content": "<text>" }
errorストリームエラー: { "content": "<message>" }

ワークフロー実行ストリーミング(POST /workflow-runs/execute/stream

EventDescription
ping9 秒ごとのキープアライブハートビート
activity-runアクティビティ実行ステータス更新: { "content": { "workflowRunId": "...", "status": "...", ... } }
workflow-runワークフロー実行ステータス更新: { "content": { "workflowRunId": "...", "status": "...", ... } }
thinkingAI 思考トレース: { "content": "<thinking text>", "stepId": "...", "activityRunId": "..." }
resultワークフロー完了時の最終結果: { "success": true, "workflowRun": { ... } }
error実行エラー: { "error": "...", "details": "..." }

SSE エンドポイントへの接続

javascript

デプロイドレインの処理

サーバーがデプロイのため再起動中の場合、SSE 対応エンドポイントはストリーム確立前に 503 Service Unavailable を返します。

text

フォームデータ(Multipart)

ファイルアップロードや AI メッセージ送信を含むエンドポイントは、特に multipart/form-data リクエストを受け付けます。

複雑なフィールドのエンコード

フォームデータ内の JSON オブジェクトと配列は JSON エンコード文字列です。

javascript

ID と UUID

すべての公開リソース ID は UUIDv7 形式(時間ソート可能)を使用します。例:
018f4e3a-1234-7abc-8def-0123456789ab

内部 ID(bigint)は API レスポンスでは公開されません。

タイムスタンプ

すべてのタイムスタンプは ISO 8601 文字列で返されます。
"2024-01-15T10:30:00.000Z"

検索

search をサポートする一覧エンドポイントは、リソース名フィールドに対して大文字小文字を区別しない部分一致検索を行います。

ja/api-docs/common-patterns