API リファレンス

Responses

POST/v1/responses

OpenAI の Responses API 形式 — 単一の input フィールド、構造化された出力アイテム、そして対応モデルでは推論の要約を返します。

#リクエストパラメーター

  • modelstring必須

    /v1/models から取得したモデル ID。ゲートウェイはこの値から上流ベンダーを判定します。

  • inputstring | array必須

    プロンプト:プレーンな文字列、または input アイテムの配列。

  • instructionsstring任意

    システムレベルの指示。system メッセージと同等です。

  • streamboolean任意

    1 つの JSON ボディではなく、response.* の SSE イベントをストリーミングします。

  • max_output_tokensinteger任意

    生成トークン数の上限。事前確保する利用枠の見積もりの上限にもなります。

  • toolsarray任意

    モデルが呼び出せる関数の宣言 — ツール呼び出しガイドを参照してください。

  • previous_response_idstring任意

    履歴を再送せずに、前回のレスポンスに続けて次のターンをつなげます。

#長い会話の圧縮

POST/v1/responses/compact

コンパクションは、毎回再送したくないほど長くなった会話を要約し、以降に引き継ぐための短縮版を返します。コーディングエージェントがセッションのコンテキスト上限に近づいたときに行う呼び出しです。

  • modelstring必須

    コンパクションに対応したモデル。その他のモデルは unsupported_endpoint でこのパスを拒否します。

  • inputarray | string任意

    圧縮する会話(Responses の input 形式)。

  • instructionsstring | array任意

    圧縮時に残す内容 — 例:「すべてのファイルパスと決定事項を残す」。

  • previous_response_idstring任意

    履歴全体を再送せず、保存済みのレスポンスから続けます。

compacted.json
{
  "id": "resp_…",
  "object": "response",
  "created_at": 1789000000,
  "output": [ /* the compacted conversation */ ],
  "usage": {"input_tokens": 8120, "output_tokens": 240, "total_tokens": 8360}
}

ストリーミングなし、常にトークン課金

コンパクションにストリーミング形式はありません — このリクエストに stream:true は含まれません。他の Responses の呼び出しと同様に、読み書きしたトークン数で料金が決まるため、毎ターンではなく必要なときに圧縮してください。

#関連するエラー

  • 400 invalid_request_errorボディの形式が不正か、このモデルが対応していないパラメーターがあります。
  • 401Bearer トークンが無効か、ありません。このパスでは error.code が付きません — ステータスで判定してください。
  • 402 insufficient_user_quotaウォレット残高が事前確保の見積額に足りません。
  • 429キー単位のレート制限です。ボディは空なので、Retry-After の時間だけ待ってください。insufficient_user_quota が付いた 429 は、レート制限ではなく 1 日の利用上限額によるものです。
  • 503 model_not_found不明なモデルか、現在そのモデルを提供できる正常なチャネルがありません。

エラーコード一覧 →

#リクエスト例

curl https://www.aisplice.store/v1/responses \
  -H "Authorization: Bearer sk-YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-5.6-luna",
    "input": "Say hello."
  }'

#レスポンス

response.json
{
  "id": "resp_…",
  "object": "response",
  "model": "gpt-5.6-luna",
  "output": [{
    "type": "message",
    "role": "assistant",
    "content": [{"type": "output_text", "text": "Hello!"}]
  }],
  "usage": {"input_tokens": 9, "output_tokens": 3, "total_tokens": 12}
}

まだ解決しませんか?

リクエスト ID かエラーメッセージを送っていただければ、こちらで調査します。