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

# Wan 3.0 Image to Video API

> Animate a first frame or first-and-last-frame sequence with Alibaba Wan 3.0.

<div className="models-color-scope" aria-hidden="true" />

<div className="model-workflow-tabs" aria-label="Wan 3.0 endpoints">
  <a className="model-workflow-tab" href="/docs/models/wan-3/text-to-video">Text to video</a>
  <a className="model-workflow-tab is-active" href="/docs/models/wan-3/image-to-video">Image to video</a>
  <a className="model-workflow-tab" href="/docs/models/wan-3/reference-to-video">References</a>
</div>

**Endpoint:** `POST https://api.higgsfield.ai/alibaba/wan-3.0/image-to-video`

**Endpoint ID:** `alibaba/wan-3.0/image-to-video`

<a className="model-playground-card" href="https://console.higgsfield.ai/models/alibaba%2Fwan-3.0%2Fimage-to-video/playground" target="_blank" rel="noreferrer">
  <span className="model-playground-icon">▶</span>
  <span className="model-playground-copy"><span className="model-playground-title">Try Wan 3.0 Image to Video</span><span>Open this endpoint in the Higgsfield API Playground.</span></span>
  <span className="model-card-arrow">↗</span>
</a>

## Quick Start

<CodeGroup>
  ```python Python theme={"dark"}
  import higgsfield_client

  result = higgsfield_client.subscribe(
      "alibaba/wan-3.0/image-to-video",
      arguments={
          "prompt": "The camera slowly pushes in as the neon reflections begin to move",
          "image_url": "https://cdn.example.com/first-frame.jpg",
          "end_image_url": "https://cdn.example.com/last-frame.jpg",
          "resolution": "1080p",
          "aspect_ratio": "adaptive",
          "duration": 8,
          "generate_audio": True,
      },
  )

  print(result["video"]["url"])
  ```

  ```typescript TypeScript theme={"dark"}
  import { config, higgsfield } from "@higgsfield/client/v2";

  config({ credentials: process.env.HF_CREDENTIALS });

  const result = await higgsfield.subscribe(
    "alibaba/wan-3.0/image-to-video",
    {
      input: {
        prompt: "The camera slowly pushes in as the neon reflections begin to move",
        image_url: "https://cdn.example.com/first-frame.jpg",
        end_image_url: "https://cdn.example.com/last-frame.jpg",
        resolution: "1080p",
        aspect_ratio: "adaptive",
        duration: 8,
        generate_audio: true,
      },
      withPolling: true,
    },
  );

  if (result.isCompleted) console.log(result.jobs[0].results?.raw.url);
  ```

  ```bash cURL theme={"dark"}
  curl --request POST \
    --url https://api.higgsfield.ai/alibaba/wan-3.0/image-to-video \
    --header "Authorization: Key ${HF_API_KEY_ID}:${HF_API_KEY_SECRET}" \
    --header "Content-Type: application/json" \
    --data '{
      "prompt": "The camera slowly pushes in as the neon reflections begin to move",
      "image_url": "https://cdn.example.com/first-frame.jpg",
      "end_image_url": "https://cdn.example.com/last-frame.jpg",
      "resolution": "1080p",
      "aspect_ratio": "adaptive",
      "duration": 8,
      "generate_audio": true
    }'
  ```
</CodeGroup>

## Input Schema

<ParamField body="prompt" type="string" required>
  Text instructions for motion, camera behavior, action, and audio.
</ParamField>

<ParamField body="image_url" type="string" required>
  Public URL of the first frame image.
</ParamField>

<ParamField body="end_image_url" type="string">
  Optional public URL of the last frame image.
</ParamField>

<ParamField body="resolution" type="string" default="1080p">
  Supported values: `480p`, `720p`, `1080p`.
</ParamField>

<ParamField body="aspect_ratio" type="string" default="adaptive">
  Supported values: `adaptive`, `16:9`, `4:3`, `1:1`, `3:4`, `9:16`. `adaptive` follows the source frame.
</ParamField>

<ParamField body="duration" type="integer" default="5">
  Output duration in seconds. Supported range: `2`–`30`.
</ParamField>

<ParamField body="generate_audio" type="boolean" default="true">
  Generate synchronized dialogue, ambience, sound effects, and music.
</ParamField>

<ParamField body="enable_thinking" type="boolean" default="false">
  Enable additional reasoning for complex instructions.
</ParamField>

<ParamField body="seed" type="integer">
  Optional integer seed from `0` to `2147483647` for reproducibility.
</ParamField>

## Output Schema

<ResponseField name="status" type="string" required>
  Request state. A newly accepted request returns `queued`.
</ResponseField>

<ResponseField name="request_id" type="string" required>
  Stable identifier used for polling, cancellation, and support.
</ResponseField>

<ResponseField name="status_url" type="string" required>
  URL to poll until the request reaches a terminal state.
</ResponseField>

<ResponseField name="cancel_url" type="string" required>
  URL used to cancel a request before processing starts.
</ResponseField>

<ResponseField name="video" type="object">
  Completed video output containing its download `url`.
</ResponseField>

## Input Example

```json theme={"dark"}
{
  "prompt": "The camera slowly pushes in as the neon reflections begin to move",
  "image_url": "https://cdn.example.com/first-frame.jpg",
  "end_image_url": "https://cdn.example.com/last-frame.jpg",
  "resolution": "1080p",
  "aspect_ratio": "adaptive",
  "duration": 8,
  "generate_audio": true
}
```

## Output Example

<CodeGroup>
  ```json Accepted theme={"dark"}
  {
    "status": "queued",
    "request_id": "d7e6c0f3-6699-4f6c-bb45-2ad7fd9158ff",
    "status_url": "https://api.higgsfield.ai/requests/d7e6c0f3-6699-4f6c-bb45-2ad7fd9158ff/status",
    "cancel_url": "https://api.higgsfield.ai/requests/d7e6c0f3-6699-4f6c-bb45-2ad7fd9158ff/cancel"
  }
  ```

  ```json Completed theme={"dark"}
  {
    "status": "completed",
    "request_id": "d7e6c0f3-6699-4f6c-bb45-2ad7fd9158ff",
    "video": { "url": "https://cdn.example.com/wan-3-image-to-video.mp4" }
  }
  ```
</CodeGroup>

<Tip>
  Use an SDK for automatic polling, or poll the returned [status URL](/docs/concepts/polling).
</Tip>


## Related topics

- [Wan 3.0 API](/docs/models/wan-3.md)
- [Wan 3.0 Reference to Video API](/docs/models/wan-3/reference-to-video.md)
- [Wan 3.0 Text to Video API](/docs/models/wan-3/text-to-video.md)
- [Kling 3.0 Pro Image to Video API](/docs/models/kling-3/pro-image-to-video.md)
- [Kling 3.0 Turbo Image to Video API](/docs/models/kling-3/turbo-image-to-video.md)
