Not yet available. The Responses API is on the roadmap. The page below documents the intended behavior.
The core of the Responses API is the response object — a server-managed conversation thread you create once and extend with follow-up turns.
Send a POST /v1/responses request with your model and an initial input. The server returns a response object with an id you use for all subsequent turns.
curl https://opendunes.com/api/v1/responses \
-H "Authorization: Bearer $OPENDUNES_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "anthropic/claude-opus-4.8",
"input": "What is the capital of Algeria?"
}'
from openai import OpenAI
client = OpenAI(
base_url="https://opendunes.com/api/v1",
api_key=os.environ["OPENDUNES_API_KEY"],
)
response = client.responses.create(
model="anthropic/claude-opus-4.8",
input="What is the capital of Algeria?",
)
print(response.output_text)
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://opendunes.com/api/v1",
apiKey: process.env.OPENDUNES_API_KEY,
});
const response = await client.responses.create({
model: "anthropic/claude-opus-4.8",
input: "What is the capital of Algeria?",
});
console.log(response.output_text);
A successful response returns a JSON object:
{
"id": "resp_01ABCdef...",
"object": "response",
"model": "anthropic/claude-opus-4.8",
"output": [
{
"type": "message",
"role": "assistant",
"content": [{ "type": "output_text", "text": "The capital of Algeria is Algiers (الجزائر)." }]
}
],
"usage": {
"input_tokens": 12,
"output_tokens": 14,
"total_tokens": 26
}
}
The id field is the thread handle. Keep it — you'll need it to continue the conversation.
Pass previous_response_id on your next request to append a new turn without resending history:
curl https://opendunes.com/api/v1/responses \
-H "Authorization: Bearer $OPENDUNES_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "anthropic/claude-opus-4.8",
"previous_response_id": "resp_01ABCdef...",
"input": "What language is spoken there?"
}'
The server reconstructs the conversation context from the stored thread — you pay only for the new tokens, not the replay of prior turns.
Add "stream": true to receive output as server-sent events, identical to the streaming behavior in Chat Completions.
When you no longer need a thread, delete it to release server-side storage:
curl -X DELETE https://opendunes.com/api/v1/responses/resp_01ABCdef... \
-H "Authorization: Bearer $OPENDUNES_API_KEY"
The Responses API supports the same model catalog as chat completions. Browse all available models at /models or query the catalog via GET /api/models.