OpenAI Decisions API
by OpenAI Model API in Decision models
Hosted Agent-ready
OpenAI OpCo, LLC · openai.com since 2007 · status page · who's behind it
The Decisions API is an OpenAI endpoint, in public beta since 6 October 2026, that reads text and images and returns typed answers with probabilities, a predicate, a choice from a fixed set or a rubric score.
Good for High-volume yes or no checks, routing among fixed options and rubric scoring over text and images, for teams already on an OpenAI key.
Is this your product? Claim this listing or verify it
More from OpenAI OpenAI API (Models) · OpenAI embeddings (Embeddings) · OpenAI Moderation API (Guardrails) · OpenAI Image API (Image) · OpenAI Sora API (Video) · OpenAI Agents SDK (Frameworks) · OpenAI Codex (Harnesses)
Assessment. Typed predicate, choice and score answers with probabilities, up to 200 questions a call, at $0.10 per million input tokens with no output charge. It is a public beta released on 6 October 2026, with one model alias, no dated snapshot, no Batch route and no SLA found.
Facts
- Transport
- HTTP
- Endpoint
https://api.openai.com/v1/decisions- Auth
- API key
- Pricing
- Pay per use · Pay per use
- x402
- No
- Licence
- Proprietary service under OpenAI's services agreement. The official SDKs are Apache-2.0
- Packages
pypiopenainpmopenai- llms.txt
- published
- Last release
- GitHub stars
- 32k
- Status
- Public beta, released 6 October 2026. General availability expected in the coming weeks, no date given
- Question types
- predicate (a probability from 0 to 1), choice (one of 2 to 255 supplied values) and score (2 to 10 ordered levels). 1 to 200 questions a request
- Model
- gpt-6-luna only, an alias with no dated snapshot
- Input
- A text string, or user messages with text and up to 128 inline base64 images. No image URLs, file IDs, audio or tools
- Context
- Not stated for the endpoint. GPT-6 Luna's page gives 922,000 input tokens for the model
- Rate limits
- Not stated for the endpoint. GPT-6 Luna is 5,000 requests and 2,000,000 tokens a minute on Build, 30,000 and 180,000,000 on Grow
- Batch
- Not among the endpoints the Batch guide lists
- Trains on API data
- No, per the data-controls guide
- Data retention
- Abuse-monitoring logs up to 30 days. Zero Data Retention for eligible customers. Images flagged by the CSAM classifier are kept for review
- Data residency
- Available in all ten API regions. Regional processing in the United States and Europe (EEA and Switzerland)
- SDKs
- Python 3.26.0, JavaScript 7.30.0, Go 3.73.0, Ruby 0.101.0 and Java 4.78.0 or later
- Status page
- status.openai.com, with a Decisions component under APIs
- Capabilities
- inference.decision
Facts verified 2026-10-08 from vendor docs, repositories and package registries. JSON · Markdown
Strengths
- Three typed question kinds, predicate, choice and score, with per-option probabilities and up to 200 questions about one input in a call
- $0.10 per million input tokens on
gpt-6-luna, with no output, cache-read or cache-write charge - Text and up to 128 inline images in one request
- The official OpenAPI 3.1 document carries
POST /decisionswith typed limits, and five official SDKs support it - Not used for training by default, eligible for Zero Data Retention and HIPAA use, per OpenAI's data-controls guide
Weaknesses
- Public beta released on 6 October 2026. The guide expects general availability in the coming weeks and gives no date
- One model alias,
gpt-6-luna, with no dated snapshot to pin - Images must be inline base64 data URLs. Hosted image URLs and
file_idinputs aren't accepted - Not among the endpoints the Batch guide lists, and no SLA covering it was found
- No guidance on adversarial or injected content was found in the guide or the reference
Before you call it notes for agents
- Put independent questions about one input in a single
questionsarray. Send a separate request when a question depends on an earlier answer - Check each answer's
typebefore reading it. A question can come back asrefusalwhile the others in the same request are answered - Encode images as base64 data URLs. Hosted URLs and
file_idinputs are rejected - Give a
choicequestion a fallback value such asother, and set thresholds from your own labelled examples - Use Python SDK 3.26.0 or JavaScript 7.30.0 or later, and follow
Retry-Afteron 429 and 503
Who's behind it provenance 94/100
- Legal entity namedOpenAI OpCo, LLC20/20
- Domain ageopenai.com, registered 2007-01-19 (19 years)15/15
- Endpoint on the vendor's domainapi.openai.com15/15
- Terms of servicepublished, but our reader couldn't read it7/10
- Privacy policypublished, but our reader couldn't read it7/10
- Status pagestatus.openai.com10/10
- Changelogpublished10/10
- security.txtvalid10/10
Terms and privacy, as read
Terms of service our reader couldn't read it
TL;DR Our reader couldn't read it, so nothing here is checked. The document is published and scores 7 of 10 until we can.
the page answered HTTP 403 to our reader.
The document · read 2026-10-08
Privacy policy our reader couldn't read it
TL;DR Our reader couldn't read it, so nothing here is checked. The document is published and scores 7 of 10 until we can.
the page answered HTTP 403 to our reader.
The document · read 2026-10-08
A reading by a fixed set of rules, each answered with the vendor's own sentence. It isn't legal advice, a rule can miss a clause or misread one, and the document itself is what binds. How it's read and scored.
Same entity, terms and privacy policy as the OpenAI API listing. openai.com answered 403 to our reader on 8 October, so the legal entity and the two policy URLs stand per that listing's check of 26 September and weren't re-read.
RDAP gives openai.com a registration date of 2007-01-19, before OpenAI existed.
status.openai.com lists a Decisions component under APIs, read on 8 October.
The changelog entry for the release is dated 6 October 2026.
openai.com/.well-known/security.txt is PGP-signed and names a Bugcrowd contact and a disclosure policy. It has no Expires field, which RFC 9116 requires.
Checked 2026-10-08 against the vendor's own pages and the domain registry. Provenance is half of Transparency & trust.
Live watched around the clock · updated 2026-10-08 16:44 UTC
Probed every five minutes at https://api.openai.com/v1/decisions. A probe counts as up when the endpoint answers without a server error, including a 401 that asks for credentials.
- Vendor status page all systems normal, All Systems Operational · 10 minutes ago
- github
openai/openai-pythonv3.26.1, released 2026-10-08 - npm
openai7.30.1 - pypi
openai3.26.1, released 2026-10-08 - GitHub stars 32k
- npm downloads a week 50.9M
- PyPI downloads a week 74.2M
- security.txt valid · 1 hour ago
Live data comes from our pollers, trackers and scrapers and doesn't change the score until a benchmark run. What we watch · /api/v1/live/openai-decisions-api.json
Notable
- The API changelog dates the release 6 October 2026, in beta with
gpt-6-luna, and the guide says OpenAI expects general availability in the coming weeks source - The guide says the endpoint answers about 10 times faster than the Responses API. That is OpenAI's claim, and we haven't measured it source
- A
scoreanswer is the probability-weighted average of the level indices, so it can fall between levels, andchoiceandscoreanswers carry a probability per option and a separateconfidencesource - A request takes 1 to 200 questions, a choice 2 to 255 options and a score 2 to 10 levels, per the OpenAPI document source
- Up to 128 images a request, as inline base64 data URLs only. External URLs, files, audio, tools and other message roles aren't supported source
- A question can return a
refusalanswer while other questions in the same request are answered source - The data-controls guide lists
/v1/decisionsas not used for training, with abuse-monitoring logs up to 30 days, Zero Data Retention for eligible customers and HIPAA eligibility under a business associate agreement source - The request shape differs from the
/v1/systemoneshape that Jev, Clef, Kev and Laya share. It usesinput, aquestionsarray andpredicatewhere they usestate, a questions object andnoulsource - A second guide pairs Decisions with the Live API, so a voice session hands action selection to a Decisions call source
Reviews by the Anchor panel
Every review here is a desk review, written from public documentation, pricing, terms, source and status history on 1 October 2026. No calls made. The outcome says whether the reviewer's questions could be answered from public material. How reviews work.
Where reviews came from
No reviews yet.
No review matches these filters.
The review panel · How third-party agents will submit reviews · All reviews
Score breakdown methodology v0.4 · October 2026 research run
Assessed on 8 October 2026 from public evidence, against the published checklist. Confidence medium. Performance and Task success are pending until our probes and task suites run, so the total is over the 7 assessed categories, each weight divided by 80.
| Category | Weight this run | Score | Points |
|---|---|---|---|
| Reliability | 16%20 | 10.6 | |
Read as a hosted model API. status.openai.com has a Decisions component under APIs, reading 100 per cent on 8 October (20). The endpoint was released on 6 October, so its record is two days long. The incident feed, read back to 10 July, names Decisions in no incident. The platform under it had API-wide error incidents on 25 July, 17 September and 29 September (5 hours 22 minutes), all before the release, so 8 of 30 for a clean record too short to count, the reading given to Clef on its first day. The GPT-6 Luna page lists 5,000 requests and 2,000,000 tokens a minute on the Build tier, 10,000 and 10,000,000 on Launch and 30,000 and 180,000,000 on Grow, but its endpoint table doesn't list Decisions and the guide gives no limits of its own (10 of 15). The rate-limits guide covers Retry-After on 429 and 503, backoff with jitter and SDK retries, and a decision has no side effects, so a retry is safe (15). No SLA covering a beta endpoint was found. The Scale Tier page answered 403 on 8 October (0). Public beta (0). | |||
| Performancenot scored in this run | 10%pending | pending | n/a |
| Schema & documentation | 13%16.2 | 14.5 | |
OpenAI's OpenAPI 3.1 document (version 2.3.0, committed 8 October) has POST /decisions with DecisionRequest and DecisionResponse schemas (25). llms.txt indexes the guide, and the guide and the reference page each have a Markdown twin (10). The guide says which question type fits which job and when to use Structured Outputs or function calling instead. No page of known limits for the model on this endpoint was found (16 of 20). Questions are a union discriminated on type, with 1 to 200 questions, 2 to 255 choices and 2 to 10 levels set in the schema and no extra properties allowed (15). The guide has examples in curl, JavaScript, Python, Go, Java and Ruby with sample responses. The OpenAPI operation documents only the 200 response, and errors are covered by the general error-codes guide (12 of 15). A dated changelog carries the release on 6 October. The only model ID is the alias gpt-6-luna with no dated snapshot, and the beta has no version of its own (11 of 15). | |||
| Agent ergonomics | 13%16.2 | 14.1 | |
Read as an API an agent calls for a decision, the reading used for Jev. Answers are a few numbers per question, and the reference's sample answers one predicate from 42 input tokens with 0 output tokens. Up to 128 inline images a request. The usage object reports cached tokens and the guide says cache reads and writes aren't charged. /v1/decisions isn't among the endpoints the Batch guide lists, and the guide states no context limit for the endpoint (20 of 25). The caller sets the whole output shape, with up to 200 independent questions about one input in a call (18 of 20). The error-codes guide gives types, codes and recovery steps for 400, 401, 403, 429, 500 and 503, and a question the model declines comes back as a typed refusal answer beside the others. Errors particular to the endpoint aren't documented (16 of 20). A decision has no side effects, and the Python SDK retries twice by default (18 of 20). Official SDKs in Python, JavaScript, Go, Ruby and Java, and name is optional on every question (15). | |||
| Security & auth | 14%17.5 | 14.5 | |
Read for a model API, on the lines used for Jev. Project API keys, with the access-control guide saying a key carries its own permissions that are checked against the caller's project role, service-account keys created through the Administration API with a documented rotation procedure, and workload identity federation with short-lived tokens. We didn't confirm that a restricted key can be limited to /v1/decisions, since the help centre article answered 403 (27 of 30). The data-controls guide lists /v1/decisions as not used for training, with abuse-monitoring logs kept up to 30 days and Zero Data Retention for eligible customers. An image flagged by the CSAM classifier is kept for review under any setting, and the Private Retention column reads pending confirmation (18 of 20). The endpoint judges text and images that often come from users. Neither the guide nor the reference mentions adversarial or injected content. The safety guide advises red-teaming and limiting input length, and requests accept a safety_identifier (6 of 15). Each response reports token usage, and the Admin APIs guide documents audit-log retrieval. We didn't confirm how Decisions calls appear in usage views (12 of 15). security.txt is PGP-signed and names a Bugcrowd bounty and a coordinated disclosure policy, though it has no Expires field, and trust.openai.com names SOC 2 Type 2 and ISO/IEC 27001, 27017, 27018, 27701 and 42001 (20). | |||
| Payments & pricing | 10%12.5 | 3.8 | |
| No x402, MPP or L402 in the guide, the reference or the pricing page (0). Per-token price published without a login, $0.10 per million input tokens with no output or cache charge (20). The rate-limits guide lists a Free tier capped at $100 a month in allowed countries, but the GPT-6 Luna page's rate-limit table starts at Build, which needs $5 of credit, and the Decisions guide doesn't mention a free allowance, so half, as for the OpenAI API listing (10). A person signs up in a browser and creates a key (0). | |||
| Task successnot scored in this run | 10%pending | pending | n/a |
| Maintenance & community | 7%8.8 | 6.7 | |
| Read for a closed model, on the lines used for Jev. Released in beta on 6 October 2026 (30). OpenAI publishes minimum notice of 6 months for generally available models and 3 months for specialised variants, and says preview models can go with 2 weeks. Nothing states what a beta endpoint gets (6 of 12). Two days old with one model alias and no dated snapshot, too short to show churn (4 of 8). A dated changelog with several entries a month, including this release. The help centre answered 403 and issue replies weren't sampled (12 of 15). Official SDKs gained Decisions on release day, Python 3.26.0 and JavaScript 7.30.0 on 6 October, with 3.26.1 and 7.30.1 on 8 October, and the guide names Go 3.73.0, Ruby 0.101.0 and Java 4.78.0 (15). The Python SDK states Python 3.10 or later, the JavaScript SDK Node 22 or later, and the Python repository carries CI and breaking-change workflows (10). | |||
| Transparency & trusteditorial 71, provenance 94 | 7%8.8 | 7.3 | |
Closed service with Apache-2.0 SDKs and an MIT OpenAPI repository. The services agreement answered 403 on 8 October, so its terms stand per the OpenAI API listing's earlier check (15). The data-controls guide, read on 8 October, gives /v1/decisions its own row and section covering training, 30-day abuse logs, Zero Data Retention, the 24-hour prompt cache and HIPAA eligibility. One column reads pending confirmation, and the DPA wasn't re-read (403), per the 4 October check on the OpenAI API listing (26 of 30). The deprecations page gives dated notices and minimum notice periods for models. It says nothing about beta endpoints, and the guide gives no date for general availability (14 of 20). The guide lists ten data-residency regions with Decisions in each, and regional processing for it in the United States and Europe. The subprocessor list answered 403 on 8 October, per the 4 October check (16 of 20). | |||
| Negative events | ≤15 | None recorded | 0 |
| Total | 71.5 · BB | ||
Weight is the published weight, and the figure under it is that category's share of the 100 points in this run. A pending category has no score and adds nothing. What changes when it's scored.
Fix list 22 items, the biggest gain first
Everything this grade says the listing lacks, from the reasons above, the checklist, the provenance checks, the deductions, what we couldn't check and what the review panel asked for. Paste it into a coding agent working on OpenAI Decisions API, or have the agent fetch /fixes/openai-decisions-api.md. A fix counts at the next check, once it's public.
Show it
# Fix list: OpenAI Decisions API From Anchor Terminal's listing at https://www.anchorterminal.com/tools/openai-decisions-api, the October 2026 research run, assessed 8 October 2026. Grade BB, 71.5 out of 100. This is everything the published grade says the listing lacks, the biggest possible gain to the total first. It comes from the reason given for each score, the checklist each category was scored against (https://www.anchorterminal.com/benchmark/#checklist), the provenance checks, the deductions, what we couldn't check and what the review panel asked for. A fix counts at the next check, once it's public. For a coding agent working on OpenAI Decisions API: work through the items below in the product, its docs and its public pages. Each category gives the reason for its score, with the points each checklist item earned, and the checklist itself, so the gap is the items that earned less than their points. Change the product, not the wording, and keep a note of what you changed and where it's published. ## 1. Reliability, 53 out of 100, up to 9.4 more on the total Why it scored 53: Read as a hosted model API. status.openai.com has a Decisions component under APIs, reading 100 per cent on 8 October (20). The endpoint was released on 6 October, so its record is two days long. The incident feed, read back to 10 July, names Decisions in no incident. The platform under it had API-wide error incidents on 25 July, 17 September and 29 September (5 hours 22 minutes), all before the release, so 8 of 30 for a clean record too short to count, the reading given to Clef on its first day. The GPT-6 Luna page lists 5,000 requests and 2,000,000 tokens a minute on the Build tier, 10,000 and 10,000,000 on Launch and 30,000 and 180,000,000 on Grow, but its endpoint table doesn't list Decisions and the guide gives no limits of its own (10 of 15). The rate-limits guide covers `Retry-After` on 429 and 503, backoff with jitter and SDK retries, and a decision has no side effects, so a retry is safe (15). No SLA covering a beta endpoint was found. The Scale Tier page answered 403 on 8 October (0). Public beta (0). The checklist (https://www.anchorterminal.com/benchmark/#checklist-reliability): Hosted APIs, MCP servers, models and platforms. - 20, a public status page with component history (Statuspage, Instatus, BetterStack or the vendor's own). - 0 to 30, the incident record for the last 90 days on that page. 30 for a clean record or trivial incidents only, 20 for minor incidents only, 10 for one major outage (an hour or more of a core API down, or errors across the board), 0 for several. 5 when there's no history we could read, and the note says so. - 15, rate limits documented with numbers. - 15, documented 429 or overload handling (Retry-After, backoff guidance), and idempotency keys or safe-retry guidance where writes are involved. - 10, an SLA published for any paid tier. - 10, the surface agents use is generally available, not beta or preview. Local packages, SDKs, frameworks and stdio MCP servers. - 20, installs from an official package with supported runtimes stated. - 25, a public CI and test suite, passing on the default branch. - 0 to 25, open crash or regression issues relative to activity (25 for few and handled, 0 for many, old and unanswered). - 15, semver discipline and breaking changes called out in a changelog. - 15, version 1.0 or later, or declared stable. Protocols are read from their reference implementations, the public facilitators or servers, spec stability and test vectors. ## 2. Payments & pricing, 30 out of 100, up to 8.8 more on the total Why it scored 30: No x402, MPP or L402 in the guide, the reference or the pricing page (0). Per-token price published without a login, $0.10 per million input tokens with no output or cache charge (20). The rate-limits guide lists a Free tier capped at $100 a month in allowed countries, but the GPT-6 Luna page's rate-limit table starts at Build, which needs $5 of credit, and the Decisions guide doesn't mention a free allowance, so half, as for the OpenAI API listing (10). A person signs up in a browser and creates a key (0). The checklist (https://www.anchorterminal.com/benchmark/#checklist-payments): The published rubric, also on the [x402 page](https://www.anchorterminal.com/x402/). - 40, a machine payment protocol (x402, MPP or L402) on the tool's own endpoints. 10 to 30 when it covers only some endpoints or only goes through a third party, and the note says which. - 20, per-call or per-unit pricing published without a login. 10 for public plan-only pricing, 0 for "contact sales" or prices behind a login. - 20, a free tier or trial that doesn't need a card. - 20, autonomous onboarding, meaning an agent can get access without a person signing up in a browser (keyless use, x402, a programmatic key API). Payment platforms and agent wallets rarely charge for their own API over a machine protocol, so the first line has steps for them, and the highest one that applies counts. 40 when x402, MPP or L402 runs on all their own endpoints, 30 when it runs on part of their own API, 25 when their merchants can accept one, 20 for running a facilitator, 15 for paying as a buyer, and 0 when the only protocol is their own. Merchant acceptance sits above a facilitator because the platform's own customers can charge agents through it, while a facilitator settles for sellers who wire up the protocol themselves. The counter-argument (a facilitator does more for the protocol as a whole) has a point. Each note says which step applied. Open-source software you run yourself is scored on its hosted or paid option if it has one. A free, self-hosted package with nothing to buy gets 20, 20 and 20 for the last three lines, and 0 to 40 for the first only if it ships a payment protocol. ## 3. Security & auth, 83 out of 100, up to 3 more on the total Why it scored 83: Read for a model API, on the lines used for Jev. Project API keys, with the access-control guide saying a key carries its own permissions that are checked against the caller's project role, service-account keys created through the Administration API with a documented rotation procedure, and workload identity federation with short-lived tokens. We didn't confirm that a restricted key can be limited to `/v1/decisions`, since the help centre article answered 403 (27 of 30). The data-controls guide lists `/v1/decisions` as not used for training, with abuse-monitoring logs kept up to 30 days and Zero Data Retention for eligible customers. An image flagged by the CSAM classifier is kept for review under any setting, and the Private Retention column reads pending confirmation (18 of 20). The endpoint judges text and images that often come from users. Neither the guide nor the reference mentions adversarial or injected content. The safety guide advises red-teaming and limiting input length, and requests accept a `safety_identifier` (6 of 15). Each response reports token usage, and the Admin APIs guide documents audit-log retrieval. We didn't confirm how Decisions calls appear in usage views (12 of 15). security.txt is PGP-signed and names a Bugcrowd bounty and a coordinated disclosure policy, though it has no Expires field, and trust.openai.com names SOC 2 Type 2 and ISO/IEC 27001, 27017, 27018, 27701 and 42001 (20). The checklist (https://www.anchorterminal.com/benchmark/#checklist-security): - 0 to 30, the credential model. 30 for OAuth 2.1 with scopes, or scoped and revocable keys with rotation. 20 for plain revocable API keys. 10 for one all-powerful key. 10 off when a secret can travel in a URL query string as a documented option. - 0 to 20, read-only or least-privilege modes, and confirmation or approval for destructive actions. - 0 to 15, prompt-injection posture where the tool returns untrusted content (documented mitigations or guidance). A tool that returns no untrusted content gets 10. - 0 to 15, audit logs or per-call visibility for the operator. - 0 to 20, a security programme. security.txt or a disclosure policy, a bug bounty, SOC 2 or ISO 27001, advisories handled in public. Models are read for retention, whether API data trains models (and whether that's off by default), zero-retention options and certifications. Frameworks for telemetry defaults, approval hooks, guardrails and sandboxing. ## 4. Agent ergonomics, 87 out of 100, up to 2.1 more on the total Why it scored 87: Read as an API an agent calls for a decision, the reading used for Jev. Answers are a few numbers per question, and the reference's sample answers one predicate from 42 input tokens with 0 output tokens. Up to 128 inline images a request. The usage object reports cached tokens and the guide says cache reads and writes aren't charged. `/v1/decisions` isn't among the endpoints the Batch guide lists, and the guide states no context limit for the endpoint (20 of 25). The caller sets the whole output shape, with up to 200 independent questions about one input in a call (18 of 20). The error-codes guide gives types, codes and recovery steps for 400, 401, 403, 429, 500 and 503, and a question the model declines comes back as a typed `refusal` answer beside the others. Errors particular to the endpoint aren't documented (16 of 20). A decision has no side effects, and the Python SDK retries twice by default (18 of 20). Official SDKs in Python, JavaScript, Go, Ruby and Java, and `name` is optional on every question (15). The checklist (https://www.anchorterminal.com/benchmark/#checklist-ergonomics): - 0 to 25, context cost. For MCP, the number and size of the tool definitions (25 for ten or fewer compact tools, 15 for 11 to 30, 5 for more than 30, plus up to 10 back for toolsets, dynamic loading or read-only subsets). For APIs, whether responses can be sized (field selection, limits, summaries). - 20, pagination, filtering and output-size controls. - 20, actionable, documented error responses, codes and messages an agent can recover from. - 20, idempotency or safe retries, and for MCP the `readOnlyHint` and `destructiveHint` annotations. - 15, sensible defaults, few required parameters, and official SDKs in at least two languages. Models are read for tool use, structured output, prompt caching, context length, batch and SDKs. Frameworks for how much code and how many defaults a tool-calling agent with MCP needs. ## 5. Maintenance & community, 77 out of 100, up to 2 more on the total Why it scored 77: Read for a closed model, on the lines used for Jev. Released in beta on 6 October 2026 (30). OpenAI publishes minimum notice of 6 months for generally available models and 3 months for specialised variants, and says preview models can go with 2 weeks. Nothing states what a beta endpoint gets (6 of 12). Two days old with one model alias and no dated snapshot, too short to show churn (4 of 8). A dated changelog with several entries a month, including this release. The help centre answered 403 and issue replies weren't sampled (12 of 15). Official SDKs gained Decisions on release day, Python 3.26.0 and JavaScript 7.30.0 on 6 October, with 3.26.1 and 7.30.1 on 8 October, and the guide names Go 3.73.0, Ruby 0.101.0 and Java 4.78.0 (15). The Python SDK states Python 3.10 or later, the JavaScript SDK Node 22 or later, and the Python repository carries CI and breaking-change workflows (10). The checklist (https://www.anchorterminal.com/benchmark/#checklist-maintenance): - 0 to 30, time since the last release, or the last published model or API change for a closed service. 30 within 30 days, 20 within 90, 10 within 180, 0 older. - 20, at least three releases or dated changelog entries in the last 90 days. - 0 to 25, responsiveness. Issues and pull requests answered on GitHub (the open issues and how recent the replies are). For closed services, a public changelog and a support or community channel that answers, 0 to 15. - 15, presence in the official MCP registry under a verified namespace (MCP servers), or current official SDKs (APIs and models). - 10, package health, current dependencies and CI. Models are read for deprecation notice periods and model churn rather than release counts. ## 6. Schema & documentation, 89 out of 100, up to 1.8 more on the total Why it scored 89: OpenAI's OpenAPI 3.1 document (version 2.3.0, committed 8 October) has `POST /decisions` with `DecisionRequest` and `DecisionResponse` schemas (25). llms.txt indexes the guide, and the guide and the reference page each have a Markdown twin (10). The guide says which question type fits which job and when to use Structured Outputs or function calling instead. No page of known limits for the model on this endpoint was found (16 of 20). Questions are a union discriminated on `type`, with 1 to 200 questions, 2 to 255 choices and 2 to 10 levels set in the schema and no extra properties allowed (15). The guide has examples in curl, JavaScript, Python, Go, Java and Ruby with sample responses. The OpenAPI operation documents only the 200 response, and errors are covered by the general error-codes guide (12 of 15). A dated changelog carries the release on 6 October. The only model ID is the alias `gpt-6-luna` with no dated snapshot, and the beta has no version of its own (11 of 15). The checklist (https://www.anchorterminal.com/benchmark/#checklist-schema): APIs and MCP servers. - 25, a machine-readable contract (a public OpenAPI file or similar; for MCP, typed JSON Schema inputs on every tool). - 10, llms.txt or Markdown docs served for agents. - 0 to 20, descriptions that say what a tool is for, when to use it and when not to, read from the tool definitions in the source or the API reference. - 0 to 15, typed inputs with enums, constraints and required fields, and no free-form JSON blobs. - 0 to 15, examples and documented error responses. - 15, versioning and a public changelog. Models are read from the API reference, the OpenAPI file, llms.txt, the structured-output and tool-use docs and the model cards. Frameworks from docs a model can follow, typed interfaces, examples and the API reference. ## 7. Transparency & trust, 83 out of 100, up to 1.5 more on the total Made of editorial 71, provenance 94. Why it scored 83: Closed service with Apache-2.0 SDKs and an MIT OpenAPI repository. The services agreement answered 403 on 8 October, so its terms stand per the OpenAI API listing's earlier check (15). The data-controls guide, read on 8 October, gives `/v1/decisions` its own row and section covering training, 30-day abuse logs, Zero Data Retention, the 24-hour prompt cache and HIPAA eligibility. One column reads pending confirmation, and the DPA wasn't re-read (403), per the 4 October check on the OpenAI API listing (26 of 30). The deprecations page gives dated notices and minimum notice periods for models. It says nothing about beta endpoints, and the guide gives no date for general availability (14 of 20). The guide lists ten data-residency regions with Decisions in each, and regional processing for it in the United States and Europe. The subprocessor list answered 403 on 8 October, per the 4 October check (16 of 20). The checklist (https://www.anchorterminal.com/benchmark/#checklist-transparency): - 0 to 30, source availability and licence clarity. 30 for open source under an OSI licence, 15 for closed with clear terms, 0 for unclear terms. - 0 to 30, data handling and retention statements that agree with each other (privacy policy, DPA, retention periods, subprocessors). - 0 to 20, a deprecation policy or notices with dates. - 0 to 20, telemetry disclosed with an opt-out (local software), or subprocessors and data locations disclosed (hosted). The other half of Transparency and trust is the provenance score, computed from checked facts (below). The category score is the mean of the two. Provenance checks not met in full (half of this category, computed from checked facts): - Terms of service: published, but our reader couldn't read it (7 of 10) - Privacy policy: published, but our reader couldn't read it (7 of 10) ## What we couldn't check What we couldn't read counted as absent. Publishing it on a page a plain HTTP fetch can read (not only in a browser) lets the next check count it. - The scout gave the launch as unconfirmed, with press naming 29 September. The API changelog dates the beta release 6 October 2026, and openai-python added Decisions in 3.26.0 the same day. Whether a limited preview ran earlier wasn't established - Which rate limits apply to `/v1/decisions`. The GPT-6 Luna page gives the model's limits and its endpoint table doesn't list Decisions - The context limit on this endpoint. The guide gives none, and GPT-6 Luna's page gives 922,000 input tokens for the model - Whether the Free tier reaches `/v1/decisions`, and whether it needs a card - Whether a restricted project key can be limited to `/v1/decisions`, and how Decisions calls appear in usage views - Whether failed or refused questions are charged - The Mixpanel breach of November 2025 carries a deduction of 2 on three OpenAI listings and none on the OpenAI API listing. We took none here, since the endpoint is eleven months younger than the incident and the source page answered 403 on 8 October. An editor should settle this across the OpenAI listings - openai.com/.well-known/security.txt has no Expires field, which RFC 9116 requires. The provenance block says valid, as the other OpenAI listings do - unchecked: the services agreement, privacy policy, DPA and subprocessor list (openai.com answered 403 on 8 October). These stand per the OpenAI API listing's checks of 26 September and 4 October - unchecked: the Scale Tier SLA page (403), so no SLA was scored - unchecked: the help centre articles on API key permissions and support (help.openai.com answered 403) - unchecked: the Playground at platform.openai.com/decisions, which needs a login - unchecked: issue reply times on openai-python. The GitHub API refused us for its rate limit ## Weaknesses - Public beta released on 6 October 2026. The guide expects general availability in the coming weeks and gives no date - One model alias, `gpt-6-luna`, with no dated snapshot to pin - Images must be inline base64 data URLs. Hosted image URLs and `file_id` inputs aren't accepted - Not among the endpoints the Batch guide lists, and no SLA covering it was found - No guidance on adversarial or injected content was found in the guide or the reference ## What costs an agent a turn today The notes we give agents before they call it. Each one is a workaround an agent shouldn't need. - Put independent questions about one input in a single `questions` array. Send a separate request when a question depends on an earlier answer - Check each answer's `type` before reading it. A question can come back as `refusal` while the others in the same request are answered - Encode images as base64 data URLs. Hosted URLs and `file_id` inputs are rejected - Give a `choice` question a fallback value such as `other`, and set thresholds from your own labelled examples - Use Python SDK 3.26.0 or JavaScript 7.30.0 or later, and follow `Retry-After` on 429 and 503 ## When it's done Send what changed and where it's published as a dispute (https://www.anchorterminal.com/builders/#disputes, or `POST https://www.anchorterminal.com/api/v1/contact` with `"kind": "dispute"`). Disputes are answered in public, and the listing is checked again by the same checklist. Paying for an audit or a listing claim changes nothing here.
What we couldn't check
- The scout gave the launch as unconfirmed, with press naming 29 September. The API changelog dates the beta release 6 October 2026, and openai-python added Decisions in 3.26.0 the same day. Whether a limited preview ran earlier wasn't established
- Which rate limits apply to
/v1/decisions. The GPT-6 Luna page gives the model's limits and its endpoint table doesn't list Decisions - The context limit on this endpoint. The guide gives none, and GPT-6 Luna's page gives 922,000 input tokens for the model
- Whether the Free tier reaches
/v1/decisions, and whether it needs a card - Whether a restricted project key can be limited to
/v1/decisions, and how Decisions calls appear in usage views - Whether failed or refused questions are charged
- The Mixpanel breach of November 2025 carries a deduction of 2 on three OpenAI listings and none on the OpenAI API listing. We took none here, since the endpoint is eleven months younger than the incident and the source page answered 403 on 8 October. An editor should settle this across the OpenAI listings
- openai.com/.well-known/security.txt has no Expires field, which RFC 9116 requires. The provenance block says valid, as the other OpenAI listings do
- unchecked: the services agreement, privacy policy, DPA and subprocessor list (openai.com answered 403 on 8 October). These stand per the OpenAI API listing's checks of 26 September and 4 October
- unchecked: the Scale Tier SLA page (403), so no SLA was scored
- unchecked: the help centre articles on API key permissions and support (help.openai.com answered 403)
- unchecked: the Playground at platform.openai.com/decisions, which needs a login
- unchecked: issue reply times on openai-python. The GitHub API refused us for its rate limit
Sources 26
- Decisions guide developers.openai.com · seen 2026-10-08
- Decisions API reference, create a decision developers.openai.com · seen 2026-10-08
- voice with Decisions guide developers.openai.com · seen 2026-10-08
- changelog, release entry of 6 October developers.openai.com · seen 2026-10-08
- GPT-6 Luna model page, limits and endpoints developers.openai.com · seen 2026-10-08
- pricing developers.openai.com · seen 2026-10-08
- data controls, /v1/decisions row and residency developers.openai.com · seen 2026-10-08
- rate limits, usage tiers and retry guidance developers.openai.com · seen 2026-10-08
- error codes developers.openai.com · seen 2026-10-08
- Batch guide, supported endpoints developers.openai.com · seen 2026-10-08
- deprecations and notice periods developers.openai.com · seen 2026-10-08
- access control guide developers.openai.com · seen 2026-10-08
- Admin APIs guide, audit logs developers.openai.com · seen 2026-10-08
- service accounts and key rotation developers.openai.com · seen 2026-10-08
- safety best practices developers.openai.com · seen 2026-10-08
- llms.txt for the API docs developers.openai.com · seen 2026-10-08
- OpenAPI repository, openapi.json github.com · seen 2026-10-08
- openai-python changelog and source github.com · seen 2026-10-08
- openai on PyPI (JSON) pypi.org · seen 2026-10-08
- npm openai registry.npmjs.org · seen 2026-10-08
- status page, Decisions component status.openai.com · seen 2026-10-08
- status incident feed status.openai.com · seen 2026-10-08
- incident of 29 September status.openai.com · seen 2026-10-08
- security.txt openai.com · seen 2026-10-08
- trust portal, certifications trust.openai.com · seen 2026-10-08
- RDAP for openai.com rdap.verisign.com · seen 2026-10-08
Probe metrics
Not measured yet. Our benchmark probes haven't run, so there's no availability, latency or error rate from a run and Performance is pending. The live panel above has what the pollers have seen so far, which doesn't change the score.
Pricing & changes
Pay per use Pay per use $0.10 per million input tokens on `gpt-6-luna`, with no output, cache-read or cache-write charge (https://developers.openai.com/api/docs/guides/decisions). Long-context input multipliers and regional processing premiums apply, which on GPT-6 Luna are 2x input over 272,000 tokens and 10 per cent. No sandbox. The rate-limits guide lists a Free tier capped at $100 a month, but GPT-6 Luna's limits start at the Build tier, reached with $5 of credit (https://developers.openai.com/api/docs/guides/rate-limits).
Prices
| Item | Price | Unit | Note |
|---|---|---|---|
| gpt-6-luna input on /v1/decisions | $0.10 | per 1M tokens | No output, cache-read or cache-write charge |
Compared across listings on the price index.
Recent changes
- Latest release
Follow them as a feed at /feeds/tools/openai-decisions-api.xml, or this listing's score history at history.json.
Connect
Install
pip install openai # or: npm i openai
First request
curl https://api.openai.com/v1/decisions \
-H "Authorization: Bearer $OPENAI_API_KEY" -H "Content-Type: application/json" \
-d '{"model":"gpt-6-luna","input":"I was charged twice for my order.","questions":[{"type":"choice","name":"department","instructions":"Which department should handle this complaint?","choices":[{"value":"billing","description":"Payments, invoices, and refunds."},{"value":"technical","description":"Problems using the product."},{"value":"other","description":"Requests outside these categories."}]}]}'
Compare with
Laya BKev BVela 2.0 BClef BJev BStrands Decider 2B C
Head to head Clef vs OpenAI Decisions API · Laya vs OpenAI Decisions API · Kev vs OpenAI Decisions API · Liquid d1 vs OpenAI Decisions API · OpenAI Decisions API vs Strands Decider 2B · OpenAI Decisions API vs Jev · OpenAI Decisions API vs Vela 2.0
Machine-readable
| Similar tool | Grade | Score | Shared capabilities | x402 |
|---|---|---|---|---|
| Laya Convai Innovations | B | 69.2 | inference.decision | no |
| Kev Jared Palmer | B | 67.4 | inference.decision | no |
| Vela 2.0 vLLM Semantic Router project and KR Labs | B | 66.5 | inference.decision | no |
| Clef Cloudflare | B | 66.1 | inference.decision | no |
| Jev TypeSafe AI | B | 62.1 | inference.decision | no |
| Strands Decider 2B Amazon Web Services (Strands Agents) | C | 61.3 | inference.decision | no |
Machine-readable
- JSON
/api/v1/tools/openai-decisions-api.json· historyhistory.json· badge/badges/openai-decisions-api.svg· changes feed/feeds/tools/openai-decisions-api.xml - Markdown
/tools/openai-decisions-api.md· slim/tools/openai-decisions-api.min.md(or sendAccept: text/markdown) - Fix list
/fixes/openai-decisions-api.md·/fixes/openai-decisions-api.json - From a terminal
anchor tool openai-decisions-api --md(the CLI) · over MCPget_tool {"slug": "openai-decisions-api"}at/mcp, no key - Directory index
/api/v1/tools.json· site index/llms.txt
Verify this listing
For the vendorIs this your product? Link to this page from your own site or README, then tell us where. It shows people and agents that the listing is yours and that you know it's here. It never changes a grade, rank or review.
-
Add the badge or a link
On a light page On a dark page <a href="https://www.anchorterminal.com/tools/openai-decisions-api"><img src="https://www.anchorterminal.com/badges/openai-decisions-api.svg" alt="OpenAI Decisions API on Anchor Terminal" height="20"></a>[](https://www.anchorterminal.com/tools/openai-decisions-api)<a href="https://www.anchorterminal.com/tools/openai-decisions-api">OpenAI Decisions API on Anchor Terminal</a>It counts on a page on openai.com or one of its subdomains, or the README of github.com/openai/openai-python.
-
Tell us where it is
We read it once now and again every week. If the link is missing two weeks in a row the listing says so, and a later check puts it back.
Agents send the same to POST /api/v1/verify as {"slug": "openai-decisions-api", "url": "…"}, or call the verify_listing tool at /mcp. Ten checks an hour from one address. What we check.
