API Hop ドキュメント
OpenAI マルチモーダル Responses
OpenAI 互換の Responses API です。OpenAI 形式の `input` を使用し、テキスト、公開画像 URL、PDF ファイル入力、ツール呼び出し、推論オプション、ストリーミングパラメータに対応しています。
https://api.apihop.ai/openai/responsesOpenAI 互換の Responses API です。OpenAI 形式の input を使用し、テキスト、公開画像 URL、PDF ファイル入力、ツール呼び出し、推論オプション、ストリーミングパラメータに対応しています。
POST https://api.apihop.ai/openai/responses認証
すべてのリクエストに Bearer Token 認証が必要です。
Authorization: Bearer YOUR_API_KEYリクエストボディ
modelstring必須既定値: gpt-5.4現在有効で、Responses に対応しているモデル:
gpt-5.4gpt-5.5gpt-5.6-solgpt-5.6-terragpt-6-astra
現在の API キーから見えるモデルについては、モデルカタログを参照してください。
inputstring | object[]入力内容です。空でない previous_response_id を指定する場合を除き、必須です。 両方のフィールドを省略した場合や入力の型が無効な場合は、課金の前に 400 を返します。
対応する形式:
- 文字列。1 件の
userテキスト入力と同等です。 - 入力項目の配列。会話履歴、マルチモーダル入力、ツール呼び出しの結果に使用します。
入力配列の各オブジェクトには、次のフィールドを含めることができます。
typestring入力項目の種類です。
主な値:
message:メッセージ入力。function_call_output:関数ツール呼び出しの結果。
rolestringtype=message の場合のロールです。
主な値:
developersystemuserassistant
contentstring | object[]メッセージの内容です。
マルチモーダルのリクエストには、コンテンツブロックの配列を使用してください。コンテンツブロックは次のフィールドに対応しています。
typestringコンテンツブロックの種類です。
現在対応している値:
input_textinput_imageinput_file
textstringtype=input_text の場合のテキスト内容です。
image_urlstringtype=input_image の場合の公開画像 URL です。
公開アクセス可能な http:// または https:// の画像 URL のみに対応しています。 data:image/...;base64,... などの Base64 Data URL には対応していません。
detailstring既定値: autotype=input_image の場合の画像の詳細レベルです。
主な値:
autolowhigh
file_datastringtype=input_file の場合のファイル内容の Data URL です。PDF には data:application/pdf;base64,... を使用できます。
filenamestringtype=input_file の場合のファイル名です。
instructionsstringモデルのコンテキストに挿入する、システムまたは開発者の指示です。
max_output_tokensinteger任意の最大出力トークン数で、正の整数を指定します。省略すると、選択したモデルの上流側の既定値を使用します。モデルによっては、予算に最終テキストだけでなく推論トークンも含まれます。予算が小さいと、回答が途中で切れたり、最終テキストの生成前に予算を使い切ったりする可能性があります。予算を増やすと費用が増える場合があります。
streamboolean既定値: falseレスポンスをストリーミングするかどうかを指定します。
false:1 つの完全なレスポンスを返すtrue:OpenAI Responses 形式の SSE イベントを返す
temperaturenumber既定値: 1.0サンプリング温度です。通常は 0 から 2 です。
top_pnumber既定値: 1.0ニュークリアスサンプリングのパラメータです。通常は 0 から 1 です。
textobjectテキスト出力の設定です。
text.formatobjectテキスト形式の設定です。{ "type": "text" } または JSON スキーマなどを指定します。
text.verbositystring出力の詳しさです。low、medium、high などを指定します。対応状況は選択したモデルによって異なります。
toolsobject[]ツール定義です。利用可否は、選択したモデルと利用可能な機能によって異なります。
tool_choicestring | objectツールの選択方針です。
parallel_tool_callsbooleanツールの並列呼び出しを許可するかどうかを指定します。
reasoningobject推論に関するオプションです。
includestring[]レスポンスに含める追加フィールドです。
prompt_cache_keystringプロンプトキャッシュを再利用するためのキャッシュキーです。
prompt_cache_retentionstringプロンプトキャッシュの保持方針です。対応する値は、選択したモデルと利用可能な機能によって異なります。
safety_identifierstring安全性の制御に使用する、安定したエンドユーザー識別子です。
storebooleanレスポンスの状態を保存してよいかどうかを指定します。
モデルによるパラメータの違い
- ネイティブな OpenAI 互換 Responses の転送では、上流リクエストの
top_pを保持します。検証とサンプリングの動作は、選択したモデルと上流によって異なります。2026-09-26 の確認では、gpt-5.5、gpt-5.6-sol、gpt-5.6-terraがtop_p: 0.9を受け付けました。受け付けや転送は、サンプリングへの効果を証明するものでも、他の値、モデル、後のリクエストでの対応を保証するものでもありません。最小限のリクエストから始めてください。 - このページで説明する対応範囲は、通常の
/openai/responsesエンドポイントに限られます。同じモデルが/openai/responses/compact、WebSocket、状態を保持するprevious_response_idにも対応することを意味しません。 - 上記の 5 つの GPT モデルには、現在検証済みの Compact チャネルがありません。明示的に有効化されたチャネルが利用できない場合、Compact のリクエストは課金前に拒否されます。通常の Responses と Responses WebSocket は引き続き利用できます。
リクエスト例
以下の例では input を指定しています。有効な previous_response_id を指定し、選択したチャネルが状態を保持した継続に対応している場合、継続リクエストでは input を省略できます。レスポンス ID があっても、未対応のチャネルでこの機能が有効になるわけではありません。function_call_output を含むツール結果は、引き続き有効な入力項目です。
テキスト
{
"model": "gpt-5.4",
"input": "Hello, introduce yourself in one sentence."
}Codex CLI 形式のパラメータ
{
"model": "gpt-5.5",
"input": "Reply with READY only.",
"reasoning": {
"effort": "xhigh"
},
"store": false,
"text": {
"verbosity": "low"
},
"stream": true
}画像の理解
{
"model": "gpt-5.4",
"input": [
{
"type": "message",
"role": "user",
"content": [
{
"type": "input_text",
"text": "What is in this image?"
},
{
"type": "input_image",
"image_url": "https://example.com/cat.png",
"detail": "high"
}
]
}
]
}ファイル入力
PDF の内容を送信するには、file_data と filename を使用してください。file_data は完全な Data URL にする必要があります。
{
"model": "gpt-5.4",
"input": [
{
"type": "message",
"role": "user",
"content": [
{
"type": "input_text",
"text": "Summarize the key points in this PDF."
},
{
"type": "input_file",
"file_data": "data:application/pdf;base64,JVBERi0xLjQKJc...",
"filename": "report.pdf"
}
]
}
]
}画像とファイルの入力
{
"model": "gpt-5.4",
"input": [
{
"type": "message",
"role": "user",
"content": [
{
"type": "input_text",
"text": "Give three conclusions based on the image and attachment."
},
{
"type": "input_image",
"image_url": "https://example.com/chart.png",
"detail": "high"
},
{
"type": "input_file",
"file_data": "data:application/pdf;base64,JVBERi0xLjQKJc...",
"filename": "notes.pdf"
}
]
}
]
}ストリーミング出力
{
"model": "gpt-5.4",
"stream": true,
"input": [
{
"role": "user",
"content": [
{
"type": "input_text",
"text": "Explain this diagram step by step."
},
{
"type": "input_image",
"image_url": "https://example.com/diagram.png"
}
]
}
]
}レスポンス
非ストリーミングのレスポンスは OpenAI Responses 形式に従います。実際のフィールドは、選択したモデルの機能によって異なる場合があります。
idstringレスポンスの一意な識別子です。
objectstringレスポンスオブジェクトの種類です。通常は response です。
created_atinteger作成時刻のタイムスタンプです。
modelstring実際に使用されたモデルです。
outputobject[]出力項目の一覧です。主な項目には message、function_call、ツール関連の出力があります。
usageobjectinput_tokens、output_tokens、total_tokens などのトークン使用量の統計です。
成功時の例
{
"id": "resp_123",
"object": "response",
"created_at": 1766534400,
"model": "gpt-5.4",
"output": [
{
"type": "message",
"role": "assistant",
"content": [
{
"text": "The image shows a cat, and the attachment is a document about pet care."
}
]
}
],
"usage": {
"input_tokens": 128,
"output_tokens": 42,
"total_tokens": 170
}
}ストリーミングのレスポンス
stream=true の場合、エンドポイントは Server-Sent Events を返します。
event: response.output_text.delta
data: {"type":"response.output_text.delta","delta":"The image"}
event: response.completed
data: {"type":"response.completed","response":{"id":"resp_123"}}response.completed または接続の終了までイベントを読み取ってください。
エラーレスポンス
コードの一覧、プロトコルごとの違い、診断手順については、エラーコードとトラブルシューティングを参照してください。
プラットフォームが生成する HTTP エラーは、error で囲む形式ではなく、以下のフラットなフィールドを使用します。一部の上流エラーは元の構造を保持する場合があります。すでに開始した SSE ストリーム内のエラーは、この HTTP レスポンスの例には従いません。
{
"code": 40000,
"message": "Insufficient credit. Required: 30000, Available: 20000",
"type": "api_error"
}注意事項
Responsesエンドポイントはmessagesではなくinputを使用します。クライアントがmessagesしか送信できない場合は、/openai/v1/chat/completionsを使用してください。- 画像入力には
input_imageを使用します。image_urlは公開のhttp://またはhttps://URL にする必要があります。画像の Base64 Data URL には対応していません。 - ファイル入力には
input_fileを使用します。PDF にはfile_dataとfilenameを使用してください。file_dataは完全なdata:application/pdf;base64,...URL にします。 - 音声の入出力、画像生成ツール、ファイル検索、その他の高度な機能は、選択したモデルと利用可能な機能によって異なります。
- このページに記載されたフィールドが、現在公開されている Responses のリクエスト仕様です。記載されていないフィールドが利用できるとは想定しないでください。
- 推奨する公開パスは
/openai/responsesです。 /v1/responsesも同じ公開のリクエスト・レスポンス仕様に従います。/compat/v1/responsesも同じ公開のリクエスト・レスポンス仕様に従います。/openai/v1/responsesも同じ公開のリクエスト・レスポンス仕様に従います。