Responses API

> Minimum-discount routing: Prefix the path with a min{N} segment (e.g. /min30/v1/responses) to require marketplace seller offers to meet a minimum estimated buyer discount before routing. Buyer-owned providers are not covered. See Minimum-Discount Routing.

POST /v1/responses

Surplus Intelligence exposes an OpenAI Responses-style text endpoint for clients that use the Responses wire protocol. Requests still route through the SI marketplace: API-key auth, x402/MPP payment challenges, seller selection, usage logging, and settlement use the same accounting path as chat completions.

Basic request

curl https://api.surplusintelligence.ai/v1/responses \

-H "Authorization: Bearer $SURPLUS_API_KEY" \

-H "Content-Type: application/json" \

-d '{

"model": "claude-opus-4.7",

"input": "Reply with exactly PONG.",

"max_output_tokens": 16

}'

Response shape:

{

"object": "response",

"status": "completed",

"output": [

{

"type": "message",

"role": "assistant",

"content": [{ "type": "output_text", "text": "PONG" }]

}

],

"usage": {

"input_tokens": 12,

"output_tokens": 3,

"total_tokens": 15

}

}

Streaming

Set "stream": true to receive Responses-style SSE events such as response.created, response.output_text.delta, and response.completed.

curl -N https://api.surplusintelligence.ai/v1/responses \

-H "Authorization: Bearer $SURPLUS_API_KEY" \

-H "Content-Type: application/json" \

-d '{

"model": "claude-opus-4.7",

"input": "Count to 3.",

"stream": true,

"max_output_tokens": 32

}'

Provider compatibility

Some sellers support native /responses upstream; others only support /chat/completions. SI treats /responses as the buyer-facing contract and translates internally when needed:

  • Native Responses sellers, such as Venice for supported models, receive /responses requests directly.
  • Chat-only sellers, such as Bankr's LLM gateway, remain usable through Responses ↔ Chat Completions translation.
  • If a seller marked Responses-capable returns 404, 405, or 501, SI records capability drift and falls back to chat translation when possible instead of marking the whole seller unhealthy.

Codex configuration

For OpenAI Codex clients that require the Responses wire API:

[model_providers.surplus]

name = "Surplus Intelligence"

base_url = "https://api.surplusintelligence.ai/v1"

env_key = "SURPLUS_API_KEY"

wire_api = "responses"

Full OpenAI hosted tools such as file search, computer use, code interpreter, and server-side previous_response_id state are not part of the first compatibility version.