跳到正文

建立回應

OpenAI Responses API:Codex CLI 與 GPT、GLM、千問、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、千問、Grok,以及 deepseek-v4.1-flash;Gemini 不支援

input:必填string 或 array of object

字串會自動包成單條使用者訊息;也可傳訊息陣列。千問的內容分片只收 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

Token 用量

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 開新對話

相關頁面