# vidu/image-to-video-2.0
> Open and Advanced Large-Scale Video Generative Models.
## Overview
- **Submit endpoint (POST)**: `https://api.atlascloud.ai/api/v1/model/generateVideo` — start an async generation; returns a `prediction_id`
- **Poll endpoint (GET)**: `https://api.atlascloud.ai/api/v1/model/prediction/{prediction_id}` — poll this until the prediction finishes
- **Model ID**: `vidu/image-to-video-2.0`
## API Information
This model can be used via our HTTP API or more conveniently via our client libraries.
See the input and output schema below, as well as the usage examples.
### Input Schema
The API accepts the following input parameters:
- **`model`** (`string`, _required_):
model name
- Default: `"vidu/image-to-video-2.0"`
- **`image`** (`string`, _required_):
An image to be used as the start frame of the generated video. For fields that accept images: Only accepts 1 image; Images Assets can be provided via URLs or Base64 encode; You must use one of the following codecs: PNG, JPEG, JPG, WebP; The aspect ratio of the images must be less than 1:4 or 4:1; All images are limited to 50MB; The length of the base64 decode must be under 50MB, and it must include an appropriate content type string.
- Default: `"https://static.atlascloud.ai/media/images/1745492812795806468_P4jFBxup.jpg"`
- **`prompt`** (`string`, _required_):
Text prompt: A textual description for video generation, with a maximum length of 1500 characters.
- Default: `"Two colorful clowns dancing wildly in a busy street market, their exaggerated gestures and big smiles drawing attention. Vibrant stalls in the background, chaotic and joyful atmosphere, fast-paced movement, playful energy"`
- **`duration`** (`integer`, _optional_):
The duration of the generated media in seconds.
- Default: `4`
- Options: 4, 8
- Min: 4
- **`movement_amplitude`** (`string`, _optional_):
The movement amplitude of objects in the frame. Defaults to auto, accepted value: auto small medium large.
- Default: `"auto"`
- Options: "auto", "small", "medium", "large"
- **`seed`** (`integer`, _optional_):
The random seed to use for the generation.
- Default: `0`
**Required Parameters Example**:
```json
{
"model": "vidu/image-to-video-2.0",
"prompt": "Two colorful clowns dancing wildly in a busy street market, their exaggerated gestures and big smiles drawing attention. Vibrant stalls in the background, chaotic and joyful atmosphere, fast-paced movement, playful energy",
"image": "https://static.atlascloud.ai/media/images/1745492812795806468_P4jFBxup.jpg"
}
```
**Full Example**:
```json
{
"model": "vidu/image-to-video-2.0",
"image": "https://static.atlascloud.ai/media/images/1745492812795806468_P4jFBxup.jpg",
"prompt": "Two colorful clowns dancing wildly in a busy street market, their exaggerated gestures and big smiles drawing attention. Vibrant stalls in the background, chaotic and joyful atmosphere, fast-paced movement, playful energy",
"duration": 4,
"movement_amplitude": "auto",
"seed": 0
}
```
### Output Schema
The API returns the following output format:
- **`id`** (`string`, _optional_):
Unique identifier for the prediction, the ID of the prediction to get.
- **`urls`** (`object`, _optional_):
Object containing related API endpoints.
- **`model`** (`string`, _optional_):
Model ID used for the prediction.
- **`status`** (`string`, _optional_):
Status of the task: created, processing, completed, or failed.
- **`outputs`** (`array[string]`, _optional_):
Array of URLs to the generated content (empty when status is not completed).
- **`created_at`** (`string`, _optional_):
ISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”).
**Example Response**:
```json
{
"id": "",
"urls": {},
"model": "",
"status": "",
"outputs": [
""
],
"created_at": ""
}
```
## Usage Examples
### cURL
```bash
# Step 1: Start generation (async)
curl -X POST "https://api.atlascloud.ai/api/v1/model/generateVideo" \
-H "Authorization: Bearer $ATLASCLOUD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "vidu/image-to-video-2.0",
"image": "https://static.atlascloud.ai/media/images/1745492812795806468_P4jFBxup.jpg",
"prompt": "Two colorful clowns dancing wildly in a busy street market, their exaggerated gestures and big smiles drawing attention. Vibrant stalls in the background, chaotic and joyful atmosphere, fast-paced movement, playful energy",
"duration": 4,
"movement_amplitude": "auto",
"seed": 0
}'
# Response will contain: {"code": 200, "data": {"id": "prediction_id", "status": "processing"}}
# Step 2: Poll for result (replace {prediction_id} with the id returned above)
curl -X GET "https://api.atlascloud.ai/api/v1/model/prediction/{prediction_id}" \
-H "Authorization: Bearer $ATLASCLOUD_API_KEY"
# Keep polling until status is "completed", "succeeded" or "failed"
# When completed, outputs will contain the generated content URL(s)
```
## Additional Resources
### Documentation
- [Model Playground](https://www.atlascloud.ai/models/vidu/image-to-video-2.0)