Transform Images into Dynamic Videos
Animate any image you generated into a 480p to 1080p clip, with native audio on Motion 3. One POST /v1/videos/generations call, from $0.05 per second, and failed renders are refunded.

{
"status": "succeeded",
"output": {"video_url":"…/gen_8f3k2m.mp4"},
"cost_usd": 1
}From still to video in two calls
curl https://api.spicyapi.com/v1/videos/generations \ -H "Authorization: Bearer $SPICYAPI_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "spicy-motion-3", "prompt": "slow push-in, she turns toward the camera", "image_url": "<a URL from /v1/images/generations>", "resolution": "720P", "duration": 5 }'# 202 returns a task id, then poll it or take the webhook:curl https://api.spicyapi.com/v1/videos/tasks/<id> \ -H "Authorization: Bearer $SPICYAPI_KEY"
Video models, one endpoint
Real results from our API
Raw outputs, no retouching. Blurred until you confirm you are 18 or older.












Why developers choose this image to video API
480p, 720p or 1080p
Pick the resolution per request and the per-second rate scales with it. Motion 3 renders 480p, 720p or 1080p; Motion 2 720p or 1080p.
Clips from 2 to 30 seconds
Motion 3 goes to 30s with native dialogue, music and sound effects, or pass duration -1 and let the model choose the length.
Custom sex acts, no prompt engineering
Pick one of 64 ready-made sex acts as action on Spicy Motion 3 and pass an image of your character: she performs it in a realistic 8 second clip with sound.
Webhooks or polling
Poll the task or receive a signed task.succeeded webhook with the MP4 URL.
Your own generations only
Source images must be generated under your account, so real photos of real people cannot be animated.
Refunded automatically
Blocked prompts cost nothing and failed renders are refunded to your balance.
Pay per second of video
Prepaid credits in USD, spent at each model's rate when a job succeeds. Failed or blocked generations are never billed and the balance never expires. Top up from $50 by card or crypto.
Common questions
Is the image to video API live?
Yes. POST /v1/videos/generations is in production. Pass an image URL from your own generations as image_url, a prompt, a resolution and a duration. The call returns a task id straight away; poll GET /v1/videos/tasks/{id} or take the webhook.
How much does image to video cost?
From $0.10 per second at 480p on Motion 3. Motion 2 is $0.20 per second at 720p, and 1080p costs more on every model. A clip costs the resolution's rate times its duration; with duration -1 on Motion 3 you pay for the length actually rendered. Failed renders are refunded automatically.
What resolutions and lengths are supported?
Motion 3 and Motion 3 Fast render 480p, 720p or 1080p from 2 to 30 seconds, with native audio, or duration -1 to let the model pick the length. Motion 2 and Spicy Video 1 render 720p or 1080p from 2 to 15 seconds. Image to video keeps the shape of the source image; text to video takes an aspect_ratio (16:9, 9:16, 1:1, 4:3, 3:4, 21:9).
Can I set the last frame as well?
Yes on Motion 3, Motion 3 Fast and Motion 2: add last_frame_url and the clip moves from your first frame to it. On Motion 3 a first and last frame cannot be combined with reference images or audio in the same request.
Can I upload my own image?
No, by design. image_url and last_frame_url must be images generated under your account with /v1/images/generations or /v1/images/edits. This keeps real photos of real people off the platform.
How long does a video take?
Video is asynchronous: the request returns a task id at once and the clip renders in the background. Render time grows with duration and resolution. Poll every 10 to 15 seconds or set a webhook, and use Motion 3 Fast when turnaround matters more than price.
Ready to start converting images to videos?
Create a still, animate it, and ship the MP4 in the same afternoon.