
output_schema_invalid 400: read violations path and rule tokens
A Sume Format run with a schema outside the supported subset returns 400 output_schema_invalid with every violation listed. Switch on rule, never on message.
Sume Formats over the API: create and version a Format, call it, run bulk batches, get structured output, take webhooks, and debug failed runs.
Start with: What is a Sume Format? Turn an agent thread into one API call

A Sume Format run with a schema outside the supported subset returns 400 output_schema_invalid with every violation listed. Switch on rule, never on message.

Sume's output_schema caps nesting at 10 levels, 5000 properties, 1000 enum values and 120,000 characters of strings. See which rule fires and how to shrink.

Higgsfield Ads Studio starts with brand setup. On Sume, a saved Format holds your house style and output contract so each ad run starts from it.

Sume documents no white-label program, but its API lets you run AI video for your clients under your brand: one server key, per-run caps, files you host.

A luxury-style product ad can be one API call. Sume's sume-cinematic-studio-commercial Format makes a studio commercial from a packshot; the call and limits.

A UGC-style video generator can be one API call. Sume's sume-close-camera-ugc Format makes a handheld selfie-style video; see the request and the receipt.

A 403 insufficient_scope on a Sume Format call means the key lacks formats:write or is a service-account key. How to tell which, and the fix: a new key.

A Sume Format run is force-finalized as failed 90 minutes after it was created, or sooner if it goes silent. How to read expires_at and set your own timeout.

A 403 workspace_key_required means a personal key called a team workspace's Format. Create a key inside that workspace; details.workspace_id names it.

The model field on a Sume Format run picks the LLM that orchestrates it, default gpt-6-sol. It does not pick the image, video or audio models. Rules and errors.

Copyable JSON Schemas for AI video output on Sume: one video, video plus copy, a poster, aspect ratios, and caption cues, all in the strict subset.

To regenerate one scene of an AI video, continue the Sume Format run with previous_run_id and name the scene. It can redo that clip and leave the rest alone.

A failed Sume Format run names its cause in error.code. Here is each code with its details fields, what gets billed, and whether to continue or retry.

Put customer text in a Sume run's input object, not its instruction. The agent is told to read it as data; the docs call that a trust boundary, not a sandbox.

A Sume Format recipe is a SKILL.md file plus references. Keep SKILL.md a short index, move detail into references/, and follow the package rules.

Before you count a Sume run as delivered, check status and primary_output_url, read filled_by, and probe the file. Here is what Sume checks, and what it skips.

A failed Sume Format run still reports the scenes it made if your output schema allows a partial. Use nullable fields, skip minItems, and name a primary key.

Edit a Sume Format's files over the API without overwriting another writer: each write carries the file's blob sha, and If-Match guards the whole package.

Create a Sume Format with POST /v1/formats, then write its SKILL.md recipe through the Contents API. The fields, the slug rules, and the errors to handle.

Share a Sume team Format with another team workspace. Once the grant is live, that team calls the owner's address with its own team key and pays for its runs.

The documented Sume Format API limits in one place: request and input sizes, attachments, schemas, spend caps, queues, run deadlines, webhooks, rate limits.

Sume rejects an output_schema outside the OpenAI strict-mode subset with 400 output_schema_invalid. Read each violation's rule, then port oneOf and nullable.

GET /v1/formats lists the Formats your key can call. Address one by {handle}/{slug} or by its permanent skl_ id, and list its runs newest first.

A checklist for a Sume Format run that did something unexpected: the composed first message, the carried instruction, the version, events, and output.

Every Sume Format edit bumps its version, and each run receipt records the version that ran. Runs cannot be pinned to a version, and there is no rollback API.

When a Sume bulk queue completes, read counts.failed, then continue each failed child that left work behind or resubmit it under a new Idempotency-Key.

It depends on your input, presenter, languages, and volume. Arcads, Creatify, HeyGen, Runway, Synthesia, and Sume compared on API, pricing, and limits.

Bind a JSON Schema as output_schema and a Sume Format run returns output in that shape, with each media URL checked against what the run made.

A Sume bulk request queues 1 to 100 ordinary Format runs on the server and keeps 1 to 16 in flight. Poll one queue URL; read each child as a normal run.

A Sume Format run goes from queued to processing to a terminal status. Learn the outcome from one signed format.run.terminal webhook, by polling, or both.

To embed AI video generation, your server holds one Sume API key and runs a Format per customer, with a derived Idempotency-Key, spend cap, and webhook.

A Sume Format is a saved video recipe your backend calls by handle and slug. One POST runs it in a fresh sandbox and returns media plus optional typed JSON.

Sume ships ready-made Formats for product and UGC-style video and images, each callable from your backend with one HTTP request at the reserved sume handle.