# Responses

> POST /responses: a minimal OpenAI Responses API bridge for simple prompts on any model. Use the native OpenAI route for the full Responses API.

Product: AI Cost Optimizer Gateway (ACOG). Web version: https://tessarac.com/docs/acog/api/responses. Last updated: 2026-10-16.

```http
POST https://gateway.acog.tessarac.com/responses
```

A minimal bridge for code that uses the OpenAI Responses API for simple, single-turn prompts. It runs on any model you have connected: ACOG turns the request into a chat completion, routes it like any other, and returns a Responses-style result.

Note the path: `/responses`, not `/v1/responses`. With the OpenAI SDK, set the base URL to `https://gateway.acog.tessarac.com` (without `/v1`) for this endpoint.

## Request

| Field | Notes |
|---|---|
| `model` | Required. Any declared model, or `auto`. |
| `instructions` | Optional. Sent as a system message. |
| `input` | A string, or an array of input parts. Text and image parts are supported. |

Other Responses API features (tools, structured outputs, streaming, stored conversation state) are not part of the bridge.

```bash
curl -s https://gateway.acog.tessarac.com/responses \
  -H "Authorization: Bearer $ACOG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "gemini-3.5-flash", "input": "Name three prime numbers."}'
```

## Response

```json
{
  "id": "5THSauPYOZSB0ekPo4SkwAk",
  "object": "response",
  "model": "gemini-3.5-flash",
  "output_text": "2, 3 and 5."
}
```

An error from the underlying chat completion is returned as is.

## The full Responses API

To use the Responses API exactly as OpenAI defines it, with tools, streaming and state, call OpenAI models through the native route:

```python
import os
from openai import OpenAI

client = OpenAI(
    base_url="https://gateway.acog.tessarac.com/openai/v1",
    api_key=os.environ["ACOG_API_KEY"],
)
response = client.responses.create(model="gpt-4.1-mini", input="Hello")
```

See [Native provider routes](https://tessarac.com/docs/acog/api/native-routes.md).
