Image to Video API
Animate a still image into a short video clip with one REST request. Self-hosted SVD clips cost $0.05 on plans from $21/mo, and eight self-hosted video models are unlimited on $149/mo.
- SVD clips from $0.05
- 8 video models unlimited on $149/mo
- Plans from $21/mo
Animate an image with one request
Send the image URL, a prompt and a model_id to POST /api/v7/video-fusion/image-to-video. The prompt describes the motion you want. The response has the output URL or a request id.
init_image: an array of image URLs, even for one image.prompt: the motion and the scene.model_id: the video model to run.duration: 4 to 30 seconds, where the model supports it.webhook: a URL. We post the result to it when the clip is ready.
Without a webhook, fetch the result with POST /api/v7/video-fusion/fetch/{id}. One subscription and one API key cover image, video, speech and LLM APIs.
Trusted by
API Requests Processed
Registered Users
Discord Community Members
Available AI APIs
GPUs in Our Own Datacenter
Which models can animate an image
Three self-hosted models take an image as input: SVD, MiniMax H3 reference-to-video and MiniMax H3 start-end-frame. They run on our own GPUs.
Partner models Kling, Veo and Seedance use the same endpoint. To switch between models, change model_id. The request shape stays the same.
To generate a clip from a prompt alone, use the Text to Video API.
Image to video pricing
SVD costs $0.05 a clip on Basic and Standard, charged from the plan allowance. On the $149 Open Source Unlimited plan, the eight self-hosted video models have no per-clip charge. Partner models are priced per second.
| Model | model_id | Basic ($21) and Standard ($47) | Open Source Unlimited ($149) |
|---|---|---|---|
| Self-hosted on our GPUs | |||
| SVD | svd | $0.05 a clip | Unlimited on $149 |
| MiniMax H3 reference-to-video | h3-minimax-r2v | $0.05 per second | Unlimited on $149 |
| MiniMax H3 start-end-frame | h3-minimax-start-end-frame | $0.05 per second | Unlimited on $149 |
| Partner models | |||
| Kling, Veo, Seedance | Set per model | Priced per second, from the plan allowance, then the wallet | Priced per second, billed from the wallet |
Each plan is a dollar allowance, not a call count. Basic, Standard and Open Source Unlimited cost $21, $47 and $149 a month and run 5, 10 and 15 generations in parallel.
Image to video API quick start
Animate an image with SVD, then get the result by webhook or with the fetch endpoint. Replace YOUR_MODELSLAB_API_KEY with the key from your dashboard.
Image to video with Python and a webhook (SVD)
Python1import requests23response = requests.post(4 "https://modelslab.com/api/v7/video-fusion/image-to-video",5 headers={6 "key": "YOUR_MODELSLAB_API_KEY",7 "Content-Type": "application/json",8 },9 json={10 "model_id": "svd",11 "prompt": "slow camera push-in, leaves moving in the wind",12 # init_image is a list, even for one image13 "init_image": ["https://example.com/product-shot.jpg"],14 # We post the finished clip to this URL.15 "webhook": "https://example.com/modelslab-webhook",16 },17)1819print(response.json())
Image to video with JavaScript, then poll the fetch endpoint
JavaScript1const headers = {2 'Content-Type': 'application/json',3 key: 'YOUR_MODELSLAB_API_KEY',4};56const submit = await fetch('https://modelslab.com/api/v7/video-fusion/image-to-video', {7 method: 'POST',8 headers,9 body: JSON.stringify({10 model_id: 'svd',11 prompt: 'slow orbit around the product, soft studio light',12 init_image: ['https://example.com/product-shot.jpg'],13 }),14});1516const { id, output } = await submit.json();1718// No output yet? Poll the fetch endpoint with the request id.19let video = output?.[0];20while (!video) {21 await new Promise((resolve) => setTimeout(resolve, 5000));22 const poll = await fetch(`https://modelslab.com/api/v7/video-fusion/fetch/${id}`, {23 method: 'POST',24 headers,25 });26 video = (await poll.json()).output?.[0];27}2829console.log(video);
Image to video with cURL
Bash1curl https://modelslab.com/api/v7/video-fusion/image-to-video \2 -H "key: YOUR_MODELSLAB_API_KEY" \3 -H "Content-Type: application/json" \4 -d '{5 "model_id": "svd",6 "prompt": "gentle waves, clouds drifting across the sky",7 "init_image": ["https://example.com/beach.jpg"]8 }'
Start Creating Amazing AI Videos in Minutes
Choose plan as per your needs, cancel anytime.
100% refund policy on monthly & yearly plans — cancel anytime
Open Source Unlimited
Mission-Critical
100% refund policy · cancel anytime
Standard
Production
100% refund policy · cancel anytime
Basic
Prototype
100% refund policy · cancel anytime
Get your image to video API key
Plans start at $21 a month. The same key works for image, video, speech and LLM APIs.
Get API keyRelated Video APIs
- Text to Video API
AI video generation from a prompt, self-hosted and partner models.
- Cheapest AI video API
Per-clip prices for every video model.
- Lip Sync API
Sync a face video to new speech.
- Best AI video APIs in 2026
Video providers compared.
- Cheapest AI API
Image, video and speech prices side by side.
- Unlimited AI API
Every self-hosted open-source model for $149/mo.
Get Expert Support in Seconds
We're Here to Help.
Want to know more? You can email us anytime at support@modelslab.com
Explore Our Other Solutions
Unlock your creative potential and scale your business with ModelsLab's comprehensive suite of AI-powered solutions.
AI Image Generation & Tools
Generate, edit, upscale, and transform images with state-of-the-art AI models.
AI Audio Generation
Text-to-speech, voice cloning, music generation, and audio processing APIs.
Engage Seamlessly with LLM
Access powerful language models for chatbots, content generation, and AI assistants.
Create Stunning 3D Models
Transform images and text into 3D models with advanced AI-powered generation.
Explore Plugins for Pro
Our plugins are designed to work with the most popular content creation software.
Build Apps with ModelsLabML API
Use our API to build apps, generate AI art, create videos, and produce audio with ease.