Responses
POST /v1/responses — a stateless OpenAI Responses facade over chat completions.
POST /v1/responses accepts the OpenAI Responses request shape and translates it into a chat completion. It then translates the result back into a Responses response object or Responses SSE events. Routing, quota, sticky conversations, and settlement are the same as for /v1/chat/completions.
The facade is stateless. Send the full conversation in input on every call.
Endpoint
Example
Say hi, trimmed:
Supported request fields
Rejected
These return400 with code: "unsupported_parameter" and a param naming the field:
previous_response_id,conversation, andstore: true. There is no server-side state, so send the fullinput.background: true.truncationother than"disabled".response_format. Usetext.formatinstead.
400 invalid_request and param: null.
Notes
- Receipts: the translated body is not an OpenAI chat-completions body, so the receipt verifier’s bundle mode does not apply to it. Use
/v1/chat/completionsfor receipts you plan to verify. Offline verification of current receipts is pending a verifier update. See Signed receipts. - Sticky conversations work the same way. Send
X-MacProvider-Conversation. See Sticky conversations. - Errors use the OpenAI error envelope with
retryable. See Chat completions → Errors.