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

# Image to Video

> Grok Imagine Image-to-Video — Guide a video with reference images (xAI)

Generate a video guided by 1-5 reference images plus a text prompt.

### Available Model

`grok-imagine/image-to-video` — \$0.007 per second of generated video.

<ParamField body="model" type="string" required>
  Must be `grok-imagine/image-to-video`.
</ParamField>

<ParamField body="callBackUrl" type="string">
  Webhook callback URL.
</ParamField>

<ParamField body="input" type="object" required>
  <Expandable title="properties" defaultOpen>
    <ParamField body="prompt" type="string" required>
      Describe the motion and scene evolution.
    </ParamField>

    <ParamField body="imageUrls" type="array" required>
      1-5 reference image URLs (publicly accessible).
    </ParamField>

    <ParamField body="duration" type="integer">
      One of `6`, `10`, `12`, `16`, `20`. Default: `6`.
    </ParamField>

    <ParamField body="ratio" type="string">
      `1:1`, `16:9`, or `9:16`. Default: `9:16`.
    </ParamField>

    <ParamField body="resolution" type="string">
      `480p` or `720p`. Default: `720p`.
    </ParamField>

    <ParamField body="mode" type="string">
      `fun`, `normal`, `spicy`, or `custom`. Default: `custom`.
    </ParamField>
  </Expandable>
</ParamField>

<RequestExample>
  ```bash theme={null}
  curl --request POST \
    --url https://api.maxapi.io/api/v1/task/submit \
    --header 'Authorization: Bearer <token>' \
    --header 'Content-Type: application/json' \
    --data '{
    "model": "grok-imagine/image-to-video",
    "callBackUrl": "https://example.com/webhook",
    "input": {
      "prompt": "Camera dollies in slowly, subject turns head",
      "imageUrls": [
        "https://example.com/portrait-a.jpg",
        "https://example.com/portrait-b.jpg"
      ],
      "duration": 10,
      "ratio": "9:16",
      "mode": "normal"
    }
  }'
  ```
</RequestExample>

<ResponseExample>
  ```json 200 Submitted successfully theme={null}
  {
    "code": 0,
    "msg": "ok",
    "data": {
      "taskId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
    }
  }
  ```
</ResponseExample>

<Note>
  Up to 5 reference images. Images are fetched by the backend and forwarded upstream; make sure the URLs are publicly reachable.
</Note>
