GET

/v1/schemas/openrouter/video/videos/alibaba/happyhorse-1.0?kind=output

kind outputactivity videohash 04f93874…extracted Oct 15, 2026version currentsource upstream spec ↗
fieldrecorded source
schemaSource linked above.

upstream-spec

Source trace
99f94e7f921f3be4000bfdc5d970ad01c61dba0a0592b4ccaf6fdacca06ac248
{
  "fetchedAt": 1792042223,
  "extractorVersion": "1",
  "verifiedAt": null
}

Response body

9 properties · 3 required · 1 $defs
propertytypedescriptionconstraints
id*stringThe video job ID, in the `gen-vid-<timestamp>-<20 alphanumerics>` generation ID format. Pass it as `previous_job_id` to continue the generation.
polling_url*string
status*enumpending | in_progress | completed | failed | cancelled | expired
errorstring
expires_atintegerUnix timestamp in seconds when OpenRouter's stored copy of the outputs stops being available. Present only when that copy exists.
generation_idstringThe generation ID associated with this video generation job. Available once the job has been processed.
unsigned_urlsstring[]OpenRouter content URLs for each output. They need your API key in the `Authorization` header and keep working for as long as the output is available.
urlsstring[]Signed download URLs for OpenRouter's stored copy of each output, usable without an API key until `expires_at`. Anyone holding a URL can download that output until it expires, so treat it like a secret. Present only when the stored copy exists.
usageVideoGenerationUsageUsage and cost information for the video generation. Available once the job has completed.

Types

1 $defs

VideoGenerationUsageobject

Usage and cost information for the video generation. Available once the job has completed.

costanyThe cost of the video generation in USD.format: double
is_byokbooleanWhether the request was made using a Bring Your Own Key configuration.

Validate a payload

before you spend tokens
shell
$ curl -X POST https://modelschemas.com/v1/validate \
    -d '{"provider":"openrouter","endpointId":"videos/alibaba/happyhorse-1.0","payload":{…}}'
→ {"valid": false, "errors": [{"path": "#", "keyword": "required", …}]}