Sume Format output_schema: strict false does not loosen the rules
Setting strict to false in a Sume Format output_schema does not relax the OpenAI-strict subset. Fix the schema instead. Responses-style text.format is refused.

In a Sume Format output_schema, strict: false does not make the schema loose, and there is no other switch that bypasses the rules. Schemas must stay inside the OpenAI strict-mode subset, and the root must be an object. If a schema is refused, fix the schema: replace oneOf or allOf with anyOf, and give every node a type. Source: Formats structured output, read 2026-10-06.
What shapes are accepted?
You send either output_schema or its OpenAI-shaped alias response_format, never both.
| Request | Result |
|---|---|
output_schema with strict: true | Accepted if inside the subset |
output_schema with strict: false | Same rules apply; nothing loosens |
response_format with json_schema | Normalized into output_schema on the receipt |
Responses-style flattened text.format | Not accepted |
oneOf, allOf | Rejected; use anyOf |
Why is Sume strict?
The receipt is a typed record. The docs describe input as a flexible concatenation and output_schema as a strict typed receipt, and a final pass runs an OpenAI-strict completion at temperature 0. A loose schema would break that contract, so the platform does not offer one.
Sources
Related posts
More in Formats
- 400 previous_run_format_mismatch: continue a run on its own Format
Continuing a Format run on a different Format returns 400 previous_run_format_mismatch. Call the Format where the run started, or start a new run.
- Sume Format run idempotency key: order id plus version, not uuidgen
Derive the Sume Format run Idempotency-Key from your order id plus a version. A fresh uuidgen per request makes the header do nothing and double-bills retries.
- List Sume Format runs: cursor pages, newest first, one Format only
Sume lists Format runs per Format, newest first, limit 1 to 100 and a next_cursor. There is no cross-Format list, so keep your own index of run ids.
- Format run output_extraction_failed: it stays completed, read again
output_extraction_failed is a transport failure, not a verdict. The run stays completed and Sume projects the output again on your next read of the receipt.
Written by Sume