Unlimited Open Source Models

Get Plan
Skip to main content
Video API

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

Google logo
Salesforce logo
Amazon logo
IBM logo
Adobe logo
Sony logo
Google logo
Salesforce logo
Amazon logo
IBM logo
Adobe logo
Sony logo
Google logo
Salesforce logo
Amazon logo
IBM logo
Adobe logo
Sony logo
Google logo
Salesforce logo
Amazon logo
IBM logo
Adobe logo
Sony logo
500M+

API Requests Processed

400K+

Registered Users

5K+

Discord Community Members

300+

Available AI APIs

500

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.

Modelmodel_idBasic ($21) and Standard ($47)Open Source Unlimited ($149)
Self-hosted on our GPUs
SVDsvd$0.05 a clipUnlimited on $149
MiniMax H3 reference-to-videoh3-minimax-r2v$0.05 per secondUnlimited on $149
MiniMax H3 start-end-frameh3-minimax-start-end-frame$0.05 per secondUnlimited on $149
Partner models
Kling, Veo, SeedanceSet per modelPriced per second, from the plan allowance, then the walletPriced 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)

Python
1import requests
2
3response = 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 image
13 "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)
18
19print(response.json())

Image to video with JavaScript, then poll the fetch endpoint

JavaScript
1const headers = {
2 'Content-Type': 'application/json',
3 key: 'YOUR_MODELSLAB_API_KEY',
4};
5
6const 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});
15
16const { id, output } = await submit.json();
17
18// 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}
28
29console.log(video);

Image to video with cURL

Bash
1curl 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

Contact Sales
Best Value

Open Source Unlimited

Mission-Critical

$149/month

100% refund policy · cancel anytime

Unlimited Open Source Models
100% refund policy
24x7 Support
15 parallel generations
Access to all APIs
Unlimited generations on all open-source models
For mission critical workloads
Add Team Members
Priority GPU Clusters
Most Popular

Standard

Production

$47/month

100% refund policy · cancel anytime

Moderate Traffic
100% refund policy
Priority Developer Support
10 concurrent API requests
For Production workloads
API access to all models
Prototype

Basic

Prototype

$21/month

100% refund policy · cancel anytime

Moderate Traffic
100% refund policy
Developer Support via Discord/Email
5 concurrent API requests
API access to all models
Shared GPU

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 key

All image to video API models

The 30 most used of 50 models, most used first. Prices are the billed rate per unit.

ModelProviderTaskPriceAdded
LTX 2.3ModelsLabImage to video$0.075 per generation
wan 2.2ModelsLabImage to video$0.075 per generation
Grok Imagine Image To VideoxAIImage to videoFrom $0.06 per second of video
Seedance 1.5 ProBytePlusImage to videoFrom $0.03 per second of video
Grok Imagine 1.5 Preview Image to VideoxAIImage to videoFrom $0.096 per second of video
Kling 3.0 Image To VideoKling AIImage to videoFrom $0.084 per second of video
Seedance 2.0 Multi Reference To VideoBytePlusImage to videoFrom $0.2 per second of video
Hailuo 02 Start/End Frame Image To VideoMiniMaxImage to video$0.096 per second of video
Seedance 2.0 Start/End Frame To VideoBytePlusImage to videoFrom $0.1 per second of video
Seedance 1.0 Pro Fast Image To VideoBytePlusImage to videoFrom $0.024 per second of video
LTX 2 PRO Image To VideoLTXImage to videoFrom $0.07 per second of video
WAN 2.7 Image To VideoAlibabaImage to videoFrom $0.1 per second of video
Gen4 Image To Video TurboRunway MLImage to videoFrom $0.08 per second of video
happyhorse-1.0-i2vAlibaba CloudImage to videoFrom $0.14 per second of video
Veo 3.1 FastGoogleImage to video$0.24 per second of video
Seedance 2.0 Fast Image To VideoBytePlusImage to videoFrom $0.08 per second of video
Wan2.6 Image To VideoAlibaba CloudImage to videoFrom $0.1 per second of video
Kling V2.5 Turbo Image To VideoKling AIImage to video$0.042 per second of video
MiniMax-H3 Image To VideoMiniMaxImage to videoFrom $0.096 per second of video
VEO 3.1 Lite Image To VideoGoogleImage to videoFrom $0.096 per second of video
Wan 2.5 Image to VideoAlibaba CloudImage to videoFrom $0.1 per second of video
Hailuo 2.3 Image To VideoMiniMaxImage to video$0.067 per second of video
Seedance 2.5 Image To VideoBytePlusImage to videoFrom $0.24 per second of video
Hailuo 2.3 Fast Image To VideoMiniMaxImage to video$0.038 per second of video
Seedance-2.5 Multimodal Reference To VideoBytePlusImage to videoFrom $0.24 per second of video
Kling V2.1 Image To VideoKling AIImage to video$0.056 per second of video
Seedance 2.0 Mini — Multireference to VideoBytePlusImage to videoFrom $0.1 per second of video
wan2.6 Image To Video (Flash)Alibaba CloudImage to videoFrom $0.1 per second of video
H3 minimax start end frame(slow)ModelsLabImage to video$0.05 per second of video
Minimax H3 Reference To Video (Fast)ModelsLabImage to videoFrom $0.06 per second of video
See all video models

Get expert support

We're Here to Help.

Want to know more? You can email us anytime at support@modelslab.com

View Docs

POST to /api/v7/video-fusion/image-to-video with your API key, a `model_id`, a `prompt` and the image URL in `init_image`. Short renders return an output URL; longer ones return an id you fetch from /api/v7/video-fusion/fetch/{id}, or you pass a `webhook` and ModelsLab posts the result to you.

Self-hosted models such as SVD and the MiniMax H3 reference-to-video and start-end-frame models run on our own GPUs. Partner models such as Kling, Veo and Seedance are on the same endpoint; you switch with `model_id`.

On Basic ($21/month) and Standard ($47/month), a self-hosted SVD clip costs $0.05 from the usage included in your plan. The $149/month Open Source Unlimited plan has no per-clip charge on the eight self-hosted video models. Partner models are priced per second. On Basic and Standard they use your plan's included usage first, then your wallet; on the $149 plan they bill from your wallet.

Yes, on models that support them: pass `duration` (4 to 30 seconds, depending on the model) and `aspect_ratio`. Longer clips on per-second partner models cost more.

ModelsLab is a paid service. Plans start at $21/month. Creating an account is free, but generating video requires an active plan.

Yes. One subscription and one API key cover image to video, text to video, image generation, speech and LLM calls.
Plugins

Explore Plugins for Pro

Our plugins are designed to work with the most popular content creation software.

API

Build Apps with
ML
API

Use our API to build apps, generate AI art, create videos, and produce audio with ease.