本文へスキップ

レスポンスを作成

OpenAI Responses API:Codex CLI と GPT、GLM、Qwen、Grok などのモデルが使います。ステートレスのため、毎ターン履歴全体を送る必要があります。

POST/v1/responses

OpenAI Responses 互換のエンドポイントで、Codex CLI はこちらを使います。HopBase の Responses はステートレスです。store は false 固定、previous_response_id は削除されるため、マルチターンの会話では毎回 input 全体を送ってください。

記載のないフィールドはそのまま転送されます。モデルが受け付けないフィールド(DeepSeek の truncation、reasoning.summary など)を黙って削除するかどうかは各モデルページに記載しています。ストリーミング出力の途中で失敗した場合は event: response.failed で通知され、HTTP ステータスは 200 のままです。

ヘッダー

Authorization:必須string

Bearer sk-…:コンソールの「API キー」で作成したキー。キーのグループにリクエストするモデルが含まれている必要があります

リクエストボディJSON

model:必須string

現在のキーのグループに含まれるモデル ID。Responses に対応するグループ:GPT(Codex)、GLM-5.3、Qwen、Grok、および deepseek-v4.1-flash。Gemini は非対応です

input:必須string または array of object

文字列は自動的に 1 件のユーザーメッセージに包まれます。メッセージ配列も指定できます。Qwen のコンテンツパーツは input_text、input_image、input_file のみ受け付け、動画は受け付けません

max_output_tokens:任意integer

出力上限。ゲートウェイは切り詰めも書き換えもしません。上限はモデルの公式仕様に従います

stream:任意boolean

true で Responses の SSE イベントストリームを返します。ストリーミングイベントを参照

デフォルトfalse

tools:任意array of object

ツール定義。そのまま転送されます。Responses の関数ツールはフラットな構造(name と type が同じ階層)で、Chat Completions とは異なります

tool_choice:任意string または object

そのまま転送

reasoning:任意object

推論設定。そのまま転送されます。Codex CLI の model_reasoning_effort はここに書き込まれます

service_tier:任意string

priority / flex のみ保持します。その他の値は削除してから転送します

取りうる値priorityflex

previous_response_id:任意string

非対応:ゲートウェイはこのフィールドを削除し、前のターンを引き継ぎません。マルチターンの会話では input に履歴全体を含めてください

store:任意false

false 固定:サーバー側でレスポンスを保存しないため、後から ID で取得できません

デフォルトfalse

レスポンス

200成功。非ストリーミングでは response JSON、stream: true のときは SSE

id:任意string

レスポンス ID(store は false 固定のため、ID で取得はできません)

object:任意"response"
created_at:任意integer

Unix 秒

status:任意string

completed / incomplete / failed

model:任意string

モデル ID

output:任意array of object

出力項目:message、reasoning、function_call など

usage:任意object

トークン使用量

error:任意object または null

失敗時のエラー

エラー

400リクエストボディが読み取れない、またはフィールドが不足している
401キー未指定、キーが無効または期限切れ(missing_api_key / invalid_api_key / api_key_expired)
402残高、またはキー・メンバー・部門のクォータを使い切った(insufficient_quota)
404モデルがこのキーのグループにない(model_not_found)、またはパスがそのグループに属さない(route_not_found)
413リクエストボディが 60 MB を超えた(request_too_large)
429アカウントまたはキーの同時実行数が上限に達した(user_concurrency_limit / apikey_concurrency_limit)。Retry-After 付き
503ステートフルなセッションが「can no longer be resumed」と表示された場合は、previous_response_id を外して新しい会話を始めてください

関連ページ