Animate a character

Your character performs a trend (motion from a video)

A photo of a character — a mascot, a drawing, a 3D character, or a person — performs the moves and expressions of a reference video (a trend, a dance; up to 15 s). 480p or 720p.

  • A mascot or a drawing needs nothing more. When the photo shows a real person, consent (or consent_id) is required, and a public figure or a person who appears to be under 18 is refused (public_figure_refused, minor_refused). The photo is checked first either way.
  • The result is marked as AI-generated inside the file; a small "AI" mark is drawn in the corner when the photo shows a real person (visible_label to choose).

Asynchronous: wait with x-wait-ms or poll GET /v1/executions/{id}. Price: per second of the output, by resolution — see POST /v1/ai/animate/estimate.

Billing: Per second of the output video, by resolution, plus the photo's safety check. A refused or failed request is not charged. · Rate limit: 6/min · Asynchronous

post/v1/ai/animate

Request

  • Base URL: https://apihub.co.il
  • URL: https://apihub.co.il/v1/ai/animate
  • Auth: HTTP bearer

Headers

Idempotency-Keystring

Replay-safe: the same execution is returned instead of charging twice

X-Tagstring

Group calls into one job (e.g. one video) — see GET /v1/usage?tag=…

x-wait-msinteger

Wait for the job inside this call (ms)

Request body

seedinteger
image_urlstring uri required

The character: a mascot, a drawing, a 3D character — or a real person (then consent is required, and a public figure or a minor is refused). PNG / JPEG / WebP, up to 15 MB

video_urlstring uri required

The reference video whose moves and expressions the character performs — a trend, a dance (up to 15 s)

consent_idstring

A consent you recorded before (the dashboard records one when you tick the box)

resolution'480p' | '720p'

Output resolution; the price per second grows with it

visible_labelboolean

Draw a small "AI" mark in the corner — on by default when the photo shows a real person, off for a mascot or a drawing. The file is always marked as AI-generated in its metadata

duration_secondsnumber

The video's length if you know it (only for the estimate)

Response

Completed (or 202 while processing)

idstring

Execution id — stable across internal retries; use it with GET /v1/executions/{id}

status'pending' | 'processing' | 'completed' | 'partial' | 'failed' | 'cancelled' | 'timeout'
operationstring
tagstring nullable

Your X-Tag, if sent

created_atstring date-time
completed_atstring date-time nullable
outputobject

Operation result (see each operation). While a Studio render is processing: stage (queued · transcribing · downloading · preparing · cleaning_voice · mixing_audio · rendering · finishing), phase (the engine's: download · prepare · voice · audio · encode · qa · upload, or null), progress (a percent, 0–100) and progress_fraction (0–1), eta_seconds (seconds left, never below 0) and estimate_seconds

errorstring nullable

Changes

No recorded changes to this operation across all 2 revisions of this API.