Fields
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
Error | *string | :heavy_minus_sign: | N/A | |
ExpiresAt | *int64 | :heavy_minus_sign: | Unix timestamp in seconds when OpenRouter’s stored copy of the outputs stops being available. Present only when that copy exists. | |
GenerationID | *string | :heavy_minus_sign: | The generation ID associated with this video generation job. Available once the job has been processed. | |
ID | string | :heavy_check_mark: | The video job ID, in the gen-vid-<timestamp>-<20 alphanumerics> generation ID format. Pass it as previous_job_id to continue the generation. | |
PollingURL | string | :heavy_check_mark: | N/A | |
Status | components.VideoGenerationResponseStatus | :heavy_check_mark: | N/A | |
UnsignedUrls | []string | :heavy_minus_sign: | 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. | |
Urls | []string | :heavy_minus_sign: | 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. | |
Usage | *components.VideoGenerationUsage | :heavy_minus_sign: | Usage and cost information for the video generation. Available once the job has completed. | { “cost”: 0.5, “is_byok”: false } |