Comparison
OpenAI Decisions API vs Responses API
The Responses API is OpenAI's general endpoint: it generates text or structured output from text and image input, with tool calling and multi-turn state. The Decisions API, announced 2026-09-29 at DevDay, does one narrower thing — pick one of your predefined answers and report how sure it is about every option.
Updated
What each API is for
The Responses API is the general workhorse: send text or images, get back generated text, schema-constrained JSON, or tool calls, and keep a conversation going across turns. It is the endpoint you use when the model has to produce something new.
The Decisions API is narrower by design. You send context plus a question with a finite set of answers you define, and it returns one of those answers — with a probability per option and a confidence, per OpenAI's announcement. It is in limited preview as of 2026-09-30, with broad release announced for the coming days. The endpoint on this site runs the same finite-answer pattern today on decisions-1.
Side by side
| Responses API | Decisions API | |
|---|---|---|
| Job | Generate text, structured output, or tool calls | Pick one of your predefined answers |
| Output | Free text or schema-valid JSON | One answer + probability per option + confidence |
| Confidence per option | Not per option — token logprobs at most | Yes — the core of the response |
| Input | Text and images, tools, multi-turn state | Text or image context + question with defined answers |
| Status | Generally available | Limited preview, announced 2026-09-29 |
| Public pricing | Published per model and token | Not published as of 2026-09-30 |
A decision on the Responses API today
You can already approximate a decision with the Responses API: constrain the output with a JSON schema and an enum. You get back a valid label — but no per-option probabilities for the runner-ups.
Responses API
// OpenAI Responses API: ask for a label inside a JSON schema.
// You get a label — not a probability per option.
const res = await client.responses.create({
model: "YOUR_MODEL",
input: "The page renders blank in Safari. Route this ticket.",
text: {
format: {
type: "json_schema",
name: "route",
strict: true,
schema: {
type: "object",
properties: {
team: { type: "string", enum: ["payments", "frontend", "account"] },
},
required: ["team"],
additionalProperties: false,
},
},
},
});
// res.output_text -> { "team": "frontend" }The same task as a decision request
As a choice question on this site's endpoint, the same routing task returns the winning label, a probability for every option, and a confidence — the inputs you need to auto-route the clear cases and escalate the close ones.
Decision request
// decisions-1 on this site: the same routing task as a choice question.
const res = await fetch("https://decisions-api.net/api/v1/decisions", {
method: "POST",
headers: {
Authorization: "Bearer YOUR_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "decisions-1",
state: "The page renders blank in Safari.",
questions: {
team: {
type: "choice",
instructions: "Which team should own this ticket?",
criteria: {
payments: "Checkout or billing.",
frontend: "Rendering or browser behavior.",
account: "Login or permissions.",
},
},
},
}),
});
// Illustrative response: answers.team ->
// { choice: "frontend", probabilities: {...}, confidence: 0.86 }When to use which
Use the Responses API when the model has to produce content: draft the reply, write the summary, call the tool. Use a decision API when the model has to choose — which queue, which branch, which next action — and when you need the distribution to decide whether to trust it.
They compose well: a decision call picks the branch, then a Responses API call writes the reply for that branch. Choosing and writing are different jobs.
FAQ
Is the Decisions API part of the Responses API?
OpenAI announced it on 2026-09-29 as a separate API for finite-answer decisions. The public request schema has not been published, so the exact relationship is not documented — as of 2026-09-30, treat them as separate surfaces.
Can the Responses API give me confidence scores?
You can ask the model to emit a confidence field, but that is generated text, not a computed probability. Token logprobs exist, but they score tokens, not your options — turning them into a per-option distribution is work you do yourself. A decision endpoint returns per-option probabilities directly.
Which one costs less?
OpenAI has not published Decisions API pricing as of 2026-09-30. On this site a decision call is a flat 1 credit regardless of question count, and failed calls are free.
Can I use both together?
Yes — that is the natural split. Let a decision call pick the route or action, then let the Responses API generate the user-facing content for that choice.
Read the distribution yourself
One free trial decision for new visitors — run a choice question and see every option's probability.