Skip to main content
invalid_verdict_schema means OpenType refused the JSON Schema of a verdict run, or the capability_hint list of any run. Read this page when a run is refused with this code and you need to know which bound the schema broke.

What happened

Route: POST /v1/runs. OpenType checks every schema against fixed bounds before it admits a run. The schema, or the capability hints, broke one of them. The run was refused before it existed. Nothing was stored and nothing was charged. Every message starts with the verdict schema is not acceptable: and ends with one of these reasons. The limits in the right-hand column are not part of the message text.

Size and shape

References and keywords

Capability hints

These reasons use this code on decision runs too. The accepted capability_hint values are chat, reasoning, tools, vision, streaming, embedding and structured_read. Hints can only narrow routing.

How to fix

  1. Find the reason after the prefix in the tables above.
  2. Flatten deep nesting, split very large schemas into smaller runs, or move shared parts under $defs and point at them with local #/... references.
  3. Remove $id, $anchor and the other identity keywords. Inline or $defs the subschema instead.
  4. Remove duplicate and unneeded capability_hint values.
  5. Send the corrected request. It was refused before a run existed, so you may keep the same Idempotency-Key.
Neon 1.1 does not serve verdict runs. A verdict run whose schema passes these checks returns no_route_available today. The checks on this page still apply, and still run first.
A schema that passes these checks can also fail later: if no answer satisfies it after the permitted attempts, the run ends with verdict_schema_violation.

Example

A verdict request whose schema stays inside every bound. It passes validation; the run itself returns no_route_available until a model that serves verdicts is available.