> ## Documentation Index
> Fetch the complete documentation index at: https://docs.modelslab.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Image to Video Ultra

> Generate high-definition videos from images using the Image to Video Ultra API.

## Request

Make a `POST` request to below endpoint and pass the required parameters in the request body.

```curl curl theme={null}
--request POST 'https://modelslab.com/api/v1/enterprise/image_to_video_ultra/img2video' \
```

## Body

```json json theme={null}
{    
    "key":"",    
    "init_image":"https://assets.modelslab.ai/generations/91c519f4-20fe-4834-ac47-fe5c39c44b34",    
    "prompt":"moving character",    
    "negative_prompt":"low quality",    
    "resolution":320,    
    "num_frames":92,    
    "num_inference_steps":8,    
    "guidance_scale":1.0,    
    "webhook": null,    
    "track_id":null
}
```

## Body Attributes

<ParamField query="key" type="string" required placeholder="Your API Key">
  Your API Key used for request authorization.
</ParamField>

<ParamField query="prompt" type="string" required placeholder="Description of video">
  Text prompt with a description of the things you want in the video to be generated.
</ParamField>

<ParamField query="init_image" type="string" placeholder="URL to initial image">
  Link equivalent of a valid PNG, JPEG, or other image format file to use as initial image conditioning.
</ParamField>

<ParamField query="negative_prompt" type="string" placeholder="Unwanted elements">
  Items you don't want in the video.
</ParamField>

<ParamField query="seed" type="integer" placeholder="Random seed">
  Seed is used to reproduce results. The same seed will give you the same output again. Pass null for random.
</ParamField>

<ParamField query="resolution" type="number" max="480">
  Resolution of the generated output. Maximum is 480.
</ParamField>

<ParamField query="num_frames" type="integer" default="92">
  The number of frames in the generated video. Default is 92.
</ParamField>

<ParamField query="num_inference_steps" type="integer" default="8">
  Number of denoising steps. Required range: `x <= 8`
</ParamField>

<ParamField query="guidance_scale" type="number" min="1.0" max="2.0">
  Scale for classifier-free guidance. Min is 1.0, Max is 2.0.
</ParamField>

<ParamField query="fps" type="integer" max="18">
  Frames per second of the generated video. Should be less than num\_frames. Maximum is 18.
</ParamField>

<ParamField query="portrait" type="boolean" default="false">
  Indicates whether the output should be in portrait mode. Accepts true or false. Default is false.
</ParamField>

<ParamField query="sample_shift" type="string" default="3">
  Controls the sampling shift in the generation process. Default is 3.
</ParamField>

<ParamField query="temp" type="boolean" default="false">
  If true, stores the video in temporary storage (cleaned every 24 hours). Default is false.
</ParamField>

<ParamField query="webhook" type="string" placeholder="https://your.webhook.url">
  A URL to receive a POST API call once the video generation is complete.
</ParamField>

<ParamField query="track_id" type="string" placeholder="Unique ID for webhook">
  A unique ID used in the webhook response to identify the request.
</ParamField>
