Skip to main content
GET
Retrieve a video generation's status and result
Retrieve the status of a video-generation job. While it is pending or processing, keep polling; once completed, the response carries the produced video with a presigned url valid for 24 hours. Only jobs your organization created are visible; any other id returns 404 not_found.
Pass a webhook_url on the original video request to receive a signed callback instead of polling. See Webhooks.

Authorizations

Authorization
string
header
required

Organization API key as a bearer token: Authorization: Bearer samsa_sk_....

Path Parameters

generation_id
string<uuid>
required

Response

Successful Response

GET /videos/generations/{id} body (ADR §7.2).

created_at comes from the immutable credit-ledger row (the durable public submit record) and credits_used is that row's charge NET of any refund for the same job (SAM-1028); mode prefers the same source because the worker's completion path rewrites video_jobs.metadata.

id
string<uuid>
required
status
enum<string>
required

pending, processing, completed, failed, or cancelled.

Available options:
pending,
processing,
completed,
failed,
cancelled
Example:

"completed"

created_at
string<date-time>
required

When the job was submitted.

mode
string | null

image_to_video, text_to_video, or text_to_video_styled.

Example:

"image_to_video"

credits_used
integer | null

Net credits charged for this job, after any refunds.

Example:

80

video
PublicVideoAsset · object | null

The produced video (presigned URL); null until completed.

error
string | null

Failure detail when status is failed; otherwise null.