OpenAPI 3.2 generator: Sume's spec is still 3.0.3
Sume's published OpenAPI document declares 3.0.3, not 3.2. Check that your generator reads 3.0.x before pointing it at api.sume.com/reference/json.

Sume's OpenAPI document declares "openapi": "3.0.3". It is not a 3.2 document, so a generator that only reads 3.2 will not be a match, while one that reads 3.0.x will. The live schema at https://api.sume.com/reference/json is the source of truth.
Sume's side is from the Public API page and the OpenAPI file the docs serve, read 2026-09-30. The generator example is from the fastify-swagger release page.
What does the generator release say?
The fastify-swagger releases page lists v9.9.0 (2026-09-22) with the single change "OpenAPI 3.2.0 compatibility". v9.9.1 (2026-09-30) lists fixes including converting nullable values and keeping examples for OpenAPI 3.1+. The page does not say what a generator does with an older 3.0.3 document, so check your tool's docs for the versions it reads.
Which version does Sume serve?
| Fact | Value |
|---|---|
| Declared version | 3.0.3 |
| Live JSON | https://api.sume.com/reference/json |
| Swagger UI | https://api.sume.com/reference |
| Path prefix | Every path starts with /v1 |
| SDK | Types generated from the same schema; covers every operation |
How do I check what my tool will read?
Fetch the live document and print the version before wiring a generator into CI.
const res = await fetch("https://api.sume.com/reference/json");
const spec = await res.json();
console.log(spec.openapi); // 3.0.3 when read on 2026-09-30
console.log(Object.keys(spec.paths).length + " paths");Do I need a generator at all?
Not for TypeScript. The docs say @sume-com/sdk wraps every operation with types generated from the same OpenAPI document, so you can skip your own generation step. For other languages, point a generator that supports 3.0.x at the live URL, and pin the output to the schema you generated from. Sume OpenAPI spec and API clients lists what is in the spec.
What if my tool insists on 3.2?
I found nothing in Sume's docs that promises a 3.2 version, so do not assume one. Keep the tool on a 3.0-capable release for Sume, or hand-write the operations you need. The schema, not this post, is the authority on field names.
Sources
Related posts
More in Developers
- OpenCode MCP timeout: 5000 ms tools fetch vs Sume jobs_wait
OpenCode's remote MCP timeout is in milliseconds, default 5000, and covers fetching tools. Sume's jobs_wait holds up to 55 seconds per call, a separate limit.
- OpenRouter video provider.options on Sume: rejected, not dropped
OpenRouter lists provider passthrough configuration. Sume v1 runs one backend per model, so a non-empty provider.options returns 400 unsupported_parameter.
- OpenRouter video seed on Sume: no v1 model accepts it
OpenRouter lists seed for deterministic video generation. On Sume no v1 video model accepts seed: each reports seed false and the field is rejected.
- OpenRouter video size parameter on Sume: 400 unsupported_parameter
On Sume every video model reports supported_sizes null, so a size parameter returns 400 unsupported_parameter. Send resolution and aspect_ratio instead.
Written by Sume