Talking Avatar Video/Get video status
Get video status
GET/api/v1/video
Get a single video task by video_id, including its status (queued, creating, created, or failed) and, once ready, the download URL. Poll this to track generation progress.
Query parameters
video_idstringRequired
Id of the video task to fetch, as returned by POST /api/v1/video (the
video_id field) or GET /api/v1/videos.Headers
X-API-KeystringRequired
Your VisionStory API key (
sk-vs-...), kept server-side. Create one at OpenApi (Pro plan and up).Response
200Successful Response
Successful calls return a standard envelope: the endpoint payload under data (its fields are documented below), plus a message string ("success") and an ISO 8601 server_time.
Response fields (
data)video_idstringRequired
Unique identifier of the video task. Use it to poll status or delete the video.
model_idstringRequired
Identifier of the model that produced this video; see GET /api/v1/models.
statusstringRequired
Current task status:
queued (waiting), creating (rendering), created (ready), or failed.video_urlstring | nullOptional
Download URL of the finished video; empty until status is
created. Videos are retained for 7 days.created_atintegerRequired
Unix timestamp (seconds) when the video task was created.
resolutionstringOptionalDefault
"480p"Output resolution of the rendered video.
Allowed values
480p 720p 1080p 2kaspect_ratiostringOptionalDefault
"9:16"Output aspect ratio of the rendered video.
Allowed values
9:16 16:9 1:1cost_creditintegerOptionalDefault
0Credits charged for this video; 0 when the task failed (the charge is auto-refunded).
Errors
All error responses share one JSON envelope: an error object with a numeric code, a human-readable message, an optional details string, and an optional hint giving an actionable next step (handy for AI agents).
errorErrorDetailRequired
Error payload returned with every non-2xx response. Present only on failure; successful calls use the standard success envelope instead.