{"openapi":"3.1.0","info":{"title":"Sigmora API","version":"1.0.0","description":"The priced, versioned public API. Every call authenticates with a workspace API key (`Authorization: Bearer sk_live_…`), names the project it files its output under, and reports what it cost. `GET /v1/capabilities` answers what this deployment can serve right now and at what price; anything it reports as unavailable answers 503 `capability_unavailable` rather than 404."},"servers":[{"url":"https://api.sigmora.org"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"A workspace API key."}},"schemas":{"Error":{"type":"object","required":["success","error","code"],"properties":{"success":{"const":false},"error":{"type":"string","description":"Human-readable. Copy may change between releases — do not match on it."},"code":{"type":"string","enum":["invalid_request","unauthorized","forbidden","origin_not_allowed","not_found","conflict","payload_too_large","insufficient_credits","budget_capped","rate_limited","capability_unavailable","upstream_unavailable","upstream_error","internal_error"],"description":"Stable machine-readable cause. Branch on this."},"details":{"description":"Optional structured context, e.g. the credits shortfall."}}}}},"paths":{"/v1/openapi.json":{"get":{"summary":"The OpenAPI 3.1 description of this deployment’s public API.","description":"Generated from the live route table and the same zod schemas the router validates against, so the published contract and the enforced one cannot drift. Free, and the only /v1 route that needs no credential.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"openapi":{"type":"string"}},"required":["openapi"],"additionalProperties":{}}}}}}}},"/v1/capabilities":{"get":{"summary":"What this deployment can serve, and what it costs.","description":"The live catalogue with current prices, plus this caller’s credit balance. Prices are read from the same table the charge is taken from, so a quote and an invoice cannot disagree. Free: reading the catalogue is never billed.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/projects":{"get":{"summary":"List this workspace's projects.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"parameters":[{"name":"status","in":"query","required":false,"schema":{"default":"active","type":"string","enum":["active","archived","all"]}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}}]},"post":{"summary":"Create a project.","description":"The container every capability files its output under. Untitled is a legal state — a project stays unnamed until someone names it.","responses":{"201":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"title":{"type":"string","maxLength":120},"kind":{"type":"string","enum":["mixed","video","footage","script","image","audio"]}}}}}}}},"/v1/projects/{projectId}":{"get":{"summary":"Read one project.","description":"A project belonging to another workspace answers 404 rather than 403, so ids cannot be used to test for existence across tenants.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200}}]},"patch":{"summary":"Rename, archive, or unarchive a project.","description":"DELETE is deliberately absent: a public hard-delete of a container holding renders a customer paid for is not a verb worth exposing. Archiving is the reversible equivalent.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"parameters":[{"name":"projectId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"title":{"type":"string","maxLength":120},"status":{"type":"string","enum":["active","archived"]}}}}}}}},"/v1/jobs/{jobId}":{"get":{"summary":"Read one job.","description":"Every async capability converges here, whatever produced the id — there is no per-capability polling path. A job belonging to another workspace answers 404 rather than 403, so ids cannot be used to test for existence across tenants. `status` is what a poller branches on; `phase` is the pipeline’s own stage word and is for display only. `awaiting_review` is terminal until a person acts — polling will not advance it. THIS DEPLOYMENT resolves footage edits (`video.edit`); render and 3D asset jobs belong to video-curriculum, which also mints them, and answer 404 here. Free: reading status is never billed.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"parameters":[{"name":"jobId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":200}}]}},"/v1/usage":{"get":{"summary":"This workspace’s API consumption, by endpoint, key and day.","description":"The same numbers our own dashboard reads — measuring our consumption with the instrument we hand customers is what stops the two drifting. Defaults to the last 30 days; the window is capped at 366 days. Free, and readable with a key that cannot spend: checking your own bill must never require a key that can run up a new one.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"parameters":[{"name":"from","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"to","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}}]}},"/v1/text/script":{"post":{"summary":"Send a seed video; receive a researched, fact-checked script with title options.","description":"The engine watches the source video, live-searches during generation, fact-checks its own claims, and returns a script plus title options and a claim ledger. Slow by nature — one call can hold a model for minutes.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sourceUrl":{"type":"string","format":"uri"},"referenceUrls":{"maxItems":20,"type":"array","items":{"type":"string","format":"uri"}},"angle":{"type":"string","maxLength":500},"audience":{"type":"string","maxLength":200},"niche":{"type":"string","maxLength":200},"presenterName":{"type":"string","maxLength":120},"channelName":{"type":"string","maxLength":120},"language":{"type":"string","maxLength":60},"targetDurationMinutes":{"type":"number","minimum":1,"maximum":60},"titleOptions":{"type":"integer","minimum":1,"maximum":20},"brandContext":{"type":"string","maxLength":4000},"projectId":{"type":"string","minLength":1,"maxLength":200,"description":"The project to file this work under. Required — create one with POST /v1/projects. A project this workspace does not own answers not_found; the work is never silently filed somewhere else."}},"required":["sourceUrl","projectId"]}}}}}},"/v1/text/adapt":{"post":{"summary":"Adapt a competitor's hook and format into an original short-form script.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sourceTitle":{"type":"string","minLength":1,"maxLength":300},"sourcePlatform":{"type":"string","minLength":1,"maxLength":60},"targetPlatform":{"type":"string","minLength":1,"maxLength":60},"pattern":{"type":"string","maxLength":200},"hookType":{"type":"string","maxLength":120},"formatTags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"niche":{"type":"string","maxLength":200},"projectId":{"type":"string","minLength":1,"maxLength":200,"description":"The project to file this work under. Required — create one with POST /v1/projects. A project this workspace does not own answers not_found; the work is never silently filed somewhere else."}},"required":["sourceTitle","sourcePlatform","targetPlatform","projectId"]}}}}}},"/v1/text/localize":{"post":{"summary":"Translate a transcript into many languages with cue-accurate captions, and optionally dubbed audio.","description":"Priced per language-minute. One request can be twenty languages of a ten-minute cut — two independent multipliers, so both move the price.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"transcript":{"description":"The transcript to translate. Send exactly one of `transcript` or `assetId`.","type":"object","properties":{"language":{"type":"string","minLength":1,"maxLength":20},"cues":{"minItems":1,"maxItems":5000,"type":"array","items":{"type":"object","properties":{"start":{"type":"number","minimum":0},"end":{"type":"number","minimum":0},"text":{"type":"string","minLength":1},"speaker":{"type":"string","maxLength":120}},"required":["start","end","text"]}}},"required":["language","cues"]},"assetId":{"description":"Translate a transcript this workspace has already had transcribed instead of sending one. Send exactly one of `transcript` or `assetId`. An asset in another workspace is reported as not found.","type":"string","minLength":1,"maxLength":200},"sourceLanguage":{"description":"Source language. Required with `assetId` when no language was recorded for that asset — there is no default, because guessing would mis-translate a non-English asset silently.","type":"string","minLength":1,"maxLength":20},"targetLanguages":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":20}},"dub":{"default":false,"type":"boolean"},"captionFormat":{"type":"string","enum":["srt","vtt"]},"voiceId":{"type":"string","maxLength":120},"provider":{"type":"string","maxLength":60},"context":{"type":"string","maxLength":4000},"projectId":{"type":"string","minLength":1,"maxLength":200,"description":"The project to file this work under. Required — create one with POST /v1/projects. A project this workspace does not own answers not_found; the work is never silently filed somewhere else."}},"required":["targetLanguages","projectId"]}}}}}},"/v1/text/packaging":{"post":{"summary":"Turn a finished edit's transcript into titles, description, tags and thumbnail prompts, grounded in a channel brief.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"channel":{"type":"string","minLength":1,"maxLength":120},"asr":{"type":"object","properties":{"text":{"type":"string","minLength":1},"languageCode":{"type":"string","minLength":1,"maxLength":20},"words":{"maxItems":200000,"type":"array","items":{"type":"object","properties":{"text":{"type":"string"},"start":{"anyOf":[{"type":"number"},{"type":"null"}]},"end":{"anyOf":[{"type":"number"},{"type":"null"}]},"type":{"type":"string","enum":["word","spacing","audio_event"]},"speakerId":{"anyOf":[{"type":"string"},{"type":"null"}]},"confidence":{"type":"number"}},"required":["text","start","end","type"]}}},"required":["text","languageCode","words"]},"topic":{"type":"string","maxLength":300},"channelName":{"type":"string","maxLength":120},"channelHandle":{"type":"string","maxLength":120},"shorts":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":120},"summary":{"type":"string","minLength":1,"maxLength":2000},"durationSec":{"type":"number","exclusiveMinimum":0,"maximum":600}},"required":["id","summary"]}},"titleCount":{"type":"integer","minimum":1,"maximum":20},"longVideoLink":{"type":"string","format":"uri"},"projectId":{"type":"string","minLength":1,"maxLength":200,"description":"The project to file this work under. Required — create one with POST /v1/projects. A project this workspace does not own answers not_found; the work is never silently filed somewhere else."}},"required":["channel","asr","projectId"]}}}}}},"/v1/text/article":{"post":{"summary":"Turn a script and its verified claims into a citation-bearing article (HTML, Markdown, excerpt, tags).","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"script":{"type":"string","minLength":1,"maxLength":200000},"claims":{"maxItems":500,"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"text":{"type":"string","minLength":1,"maxLength":4000},"category":{"type":"string","enum":["number","name","date","quote","timeline","domain"]},"location":{"type":"string","maxLength":500},"verdict":{"type":"string","enum":["verified","disputed","unverified","patched"]},"source":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"tier":{"type":"string","enum":["primary","secondary","wiki"]},"title":{"type":"string","maxLength":300}},"required":["url","tier"]},"finalForm":{"type":"string","maxLength":4000},"livingPersonWrongdoing":{"type":"boolean"},"isHookOrThesis":{"type":"boolean"},"note":{"type":"string","maxLength":2000}},"required":["id","text","category","location"]}},"channel":{"type":"string","maxLength":120},"title":{"type":"string","maxLength":300},"publisherName":{"type":"string","maxLength":200},"authorName":{"type":"string","maxLength":200},"projectId":{"type":"string","minLength":1,"maxLength":200,"description":"The project to file this work under. Required — create one with POST /v1/projects. A project this workspace does not own answers not_found; the work is never silently filed somewhere else."}},"required":["script","projectId"]}}}}}},"/v1/video/moments":{"post":{"summary":"Score a transcript and return the moments worth cutting — chosen on meaning, not clock position.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"transcript":{"description":"The segments to score. Send exactly one of `transcript` or `assetId`.","minItems":1,"maxItems":20000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":120},"start":{"type":"number","minimum":0},"end":{"type":"number","minimum":0},"text":{"type":"string","minLength":1,"maxLength":10000}},"required":["id","start","end","text"]}},"assetId":{"description":"Score a transcript this workspace has already had transcribed instead of sending one. Send exactly one of `transcript` or `assetId`. An asset in another workspace is reported as not found.","type":"string","minLength":1,"maxLength":200},"channel":{"type":"string","minLength":1,"maxLength":120},"niche":{"type":"string","minLength":1,"maxLength":200},"thresholds":{"type":"object","properties":{"standalone":{"type":"number","minimum":0,"maximum":1},"hook":{"type":"number","minimum":0,"maximum":1},"payoff":{"type":"number","minimum":0,"maximum":1}}},"projectId":{"type":"string","minLength":1,"maxLength":200,"description":"The project to file this work under. Required — create one with POST /v1/projects. A project this workspace does not own answers not_found; the work is never silently filed somewhere else."}},"required":["projectId"]}}}}}},"/v1/image/thumbnail":{"post":{"summary":"Generate a platform-sized thumbnail from a title, with the brief LLM-refined first.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"title":{"type":"string","minLength":1,"maxLength":200},"subject":{"type":"string","maxLength":300},"transcript":{"type":"string","maxLength":3000},"description":{"type":"string","maxLength":500},"mood":{"type":"string","maxLength":80},"colors":{"type":"string","maxLength":100},"composition":{"type":"string","enum":["subject_left","subject_right","centered"]},"style":{"type":"string","enum":["viral","cinematic","bold-text","dramatic","educational","minimal"]},"platform":{"type":"string","enum":["youtube","youtube_shorts","instagram_reels","tiktok"]},"projectId":{"type":"string","minLength":1,"maxLength":200,"description":"The project to file this work under. Required — create one with POST /v1/projects. A project this workspace does not own answers not_found; the work is never silently filed somewhere else."}},"required":["title","projectId"]}}}}}},"/v1/audio/music":{"post":{"summary":"Generate music from weighted prompts, up to three minutes.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"prompts":{"minItems":1,"maxItems":10,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":500},"weight":{"type":"number","minimum":0.01,"maximum":10}},"required":["text","weight"]}},"durationMs":{"default":30000,"type":"integer","minimum":5000,"maximum":180000},"bpm":{"type":"integer","minimum":60,"maximum":200},"density":{"type":"number","minimum":0,"maximum":1},"projectId":{"type":"string","minLength":1,"maxLength":200,"description":"The project to file this work under. Required — create one with POST /v1/projects. A project this workspace does not own answers not_found; the work is never silently filed somewhere else."}},"required":["prompts","projectId"]}}}}}},"/v1/video/render":{"post":{"summary":"Send prose, a topic, or a catalogue id; receive a narrated video.","description":"Asynchronous: answers with a jobId. Poll GET /v1/jobs/{jobId} for status and artifacts. Artifact URLs point at the origin holding the bytes, so downloads never travel through this API.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"domain":{"type":"string","enum":["algorithms","science","course","stories","chess","howto","ugc"]},"videoId":{"type":"string","minLength":1,"maxLength":300},"slug":{"type":"string","minLength":1,"maxLength":300},"topic":{"type":"string","minLength":1,"maxLength":300},"story":{"type":"string","minLength":1,"maxLength":40000},"title":{"type":"string","minLength":1,"maxLength":200},"aspect":{"type":"string","enum":["horizontal","vertical"]},"quality":{"type":"string","enum":["l","m","h","k"]},"renderer":{"type":"string","enum":["motif","images","blender"]},"ttsProvider":{"type":"string","minLength":1,"maxLength":60},"ttsVoice":{"type":"string","minLength":1,"maxLength":200},"ttsModel":{"type":"string","minLength":1,"maxLength":200},"callbackUrl":{"type":"string","format":"uri"},"projectId":{"type":"string","minLength":1,"maxLength":200,"description":"The project to file this work under. Required — create one with POST /v1/projects. A project this workspace does not own answers not_found; the work is never silently filed somewhere else."}},"required":["domain","projectId"]}}}}}},"/v1/video/shorts":{"post":{"summary":"Cut platform-shaped short clips from a finished render.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"jobId":{"type":"string","minLength":1,"maxLength":200},"platforms":{"maxItems":10,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"maxPerPlatform":{"type":"integer","minimum":1,"maximum":10},"projectId":{"type":"string","minLength":1,"maxLength":200,"description":"The project to file this work under. Required — create one with POST /v1/projects. A project this workspace does not own answers not_found; the work is never silently filed somewhere else."}},"required":["jobId","projectId"]}}}}}},"/v1/3d/from-text":{"post":{"summary":"Describe an object; receive an animated 3D render of it.","description":"Asynchronous: answers with a jobId. Poll GET /v1/jobs/{jobId}.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"prompt":{"type":"string","minLength":1,"maxLength":2000},"preset":{"type":"string","enum":["turntable","orbit","dolly_in","float_bob","beauty"]},"durationSeconds":{"type":"number","minimum":1,"maximum":30},"fps":{"type":"integer","minimum":8,"maximum":60},"width":{"type":"integer","minimum":128,"maximum":3840},"height":{"type":"integer","minimum":128,"maximum":2160},"background":{"type":"string","enum":["studio","dark","white","gradient"]},"callbackUrl":{"type":"string","format":"uri"},"projectId":{"type":"string","minLength":1,"maxLength":200,"description":"The project to file this work under. Required — create one with POST /v1/projects. A project this workspace does not own answers not_found; the work is never silently filed somewhere else."}},"required":["prompt","projectId"]}}}}}},"/v1/3d/from-image":{"post":{"summary":"Upload a photo; receive an animated 3D render of what is in it.","description":"Asynchronous: answers with a jobId. Poll GET /v1/jobs/{jobId}.","responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"success":{"type":"boolean","const":true}},"required":["success"],"additionalProperties":{}}}}},"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"imageUrl":{"type":"string","format":"uri"},"brief":{"type":"string","maxLength":2000},"preset":{"type":"string","enum":["turntable","orbit","dolly_in","float_bob","beauty"]},"durationSeconds":{"type":"number","minimum":1,"maximum":30},"fps":{"type":"integer","minimum":8,"maximum":60},"width":{"type":"integer","minimum":128,"maximum":3840},"height":{"type":"integer","minimum":128,"maximum":2160},"background":{"type":"string","enum":["studio","dark","white","gradient"]},"callbackUrl":{"type":"string","format":"uri"},"projectId":{"type":"string","minLength":1,"maxLength":200,"description":"The project to file this work under. Required — create one with POST /v1/projects. A project this workspace does not own answers not_found; the work is never silently filed somewhere else."}},"required":["imageUrl","projectId"]}}}}}},"/v1/video/edit":{"post":{"summary":"Send raw footage and a brief; receive an edited cut plus shorts.","description":"Not servable by this deployment: Footage editing is submitted as a videoJobs orchestration by the cockpit; this engine receives the dispatched job but cannot originate one.","responses":{"400":{"description":"Failure. `code` is one of: invalid_request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Failure. `code` is one of: unauthorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Failure. `code` is one of: insufficient_credits, budget_capped.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"403":{"description":"Failure. `code` is one of: forbidden, origin_not_allowed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Failure. `code` is one of: not_found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Failure. `code` is one of: conflict.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"413":{"description":"Failure. `code` is one of: payload_too_large.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Failure. `code` is one of: rate_limited.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"500":{"description":"Failure. `code` is one of: internal_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"502":{"description":"Failure. `code` is one of: upstream_error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Failure. `code` is one of: capability_unavailable, upstream_unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{},"additionalProperties":{}}}}}}}}}