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

# wan2.7-i2v

> API usage guide for wan2.7-i2v.

{/* source_model_id: wan2.7-i2v */}

{/* source_updated_at: 1775605358 */}

**Model ID**

```bash theme={null}
wan2.7-i2v
```

**Calling method:** async

# wan2.7-i2v API Usage Guide

## Overview

**wan2.7-i2v** converts images into videos with improved visual fidelity, temporal consistency, and flexible media inputs. It supports first frame, last frame, driving audio, and first clip as media references, with continuous duration from 2 to 15 seconds.

Requests are submitted to the request-queue API and results are retrieved via polling.

## Authentication

All API requests require authentication using an API key. Include your API key in the Authorization header:

```bash theme={null}
Authorization: Bearer YOUR_API_KEY
```

## Submit Video Generation Request

### Base URL

```
https://console.gmicloud.ai
```

### Endpoint

```
POST /api/v1/ie/requestqueue/apikey/requests
```

### Request Format

```bash theme={null}
curl -X POST "https://console.gmicloud.ai/api/v1/ie/requestqueue/apikey/requests" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "wan2.7-i2v",
    "payload": {
      "prompt": "Slow cinematic pan around a futuristic tower at sunset with neon accents",
      "first_frame": "https://example.com/start-frame.jpg",
      "last_frame": "https://example.com/end-frame.jpg",
      "negative_prompt": "blurry, low quality, distorted",
      "resolution": "1080P",
      "duration": 10,
      "prompt_extend": true,
      "watermark": false,
      "seed": 987654321
    }
  }'
```

### Request Parameters

| Parameter         | Type          | Required | Description                           | Default | Constraints                  |
| ----------------- | ------------- | -------- | ------------------------------------- | ------- | ---------------------------- |
| `prompt`          | string        | No       | Text prompt guiding motion/styling    | ""      | Max 1500 characters          |
| `negative_prompt` | string        | No       | What to avoid in the video            | ""      | Max 500 characters           |
| `first_frame`     | image (URL)   | No       | Starting frame image                  | null    | 360–2000 px, ≤10 MB, 1 image |
| `last_frame`      | image (URL)   | No       | Ending frame image                    | null    | 360–2000 px, ≤10 MB, 1 image |
| `driving_audio`   | audio (URL)   | No       | Audio to drive video generation       | null    | wav/mp3, 3–30s, ≤15 MB       |
| `first_clip`      | video (URL)   | No       | Video clip used as starting reference | null    | 1 video                      |
| `resolution`      | string (enum) | No       | Output resolution tier                | "1080P" | Options: `"720P"`, `"1080P"` |
| `duration`        | integer       | No       | Video length in seconds               | 5       | 2–15                         |
| `prompt_extend`   | boolean       | No       | LLM rewrites prompt for richer detail | true    | -                            |
| `watermark`       | boolean       | No       | Add fixed `AI Generated` watermark    | false   | -                            |
| `seed`            | integer       | No       | Random seed for reproducibility       | -       | 0–2147483647                 |

### Response

```json theme={null}
{
  "request_id": "550e8400-e29b-41d4-a716-446655440000",
  "model": "wan2.7-i2v",
  "status": "queued",
  "created_at": 1750442925,
  "updated_at": 1750442925,
  "queued_at": 1750442925
}
```

## Check Request Status

### Endpoint

```
GET /api/v1/ie/requestqueue/apikey/requests/{request_id}
```

### Example

```bash theme={null}
curl -X GET "https://console.gmicloud.ai/api/v1/ie/requestqueue/apikey/requests/550e8400-e29b-41d4-a716-446655440000" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

### Response

```json theme={null}
{
  "request_id": "550e8400-e29b-41d4-a716-446655440000",
  "org_id": "your-org-id",
  "model": "wan2.7-i2v",
  "status": "success",
  "is_public": false,
  "payload": {
    "prompt": "Slow cinematic pan around a futuristic tower at sunset with neon accents",
    "first_frame": "https://example.com/start-frame.jpg",
    "last_frame": "https://example.com/end-frame.jpg",
    "negative_prompt": "blurry, low quality, distorted",
    "resolution": "1080P",
    "duration": 10,
    "prompt_extend": true,
    "watermark": false,
    "seed": 987654321
  },
  "outcome": {
    "video_url": "https://storage.googleapis.com/bucket/generated-video.mp4",
    "thumbnail_image_url": "https://storage.googleapis.com/bucket/thumbnail.jpg"
  },
  "created_at": 1750442925,
  "updated_at": 1750442930,
  "queued_at": 1750442925
}
```

## Request Status Values

| Status       | Description                             |
| ------------ | --------------------------------------- |
| `queued`     | Request is waiting to be processed      |
| `processing` | Video generation is in progress         |
| `success`    | Video generation completed successfully |
| `failed`     | Video generation failed                 |
| `cancelled`  | Request was cancelled                   |

## List Your Requests

### Endpoint

```
GET /api/v1/ie/requestqueue/apikey/requests?model_id=wan2.7-i2v
```

### Example

```bash theme={null}
curl -X GET "https://console.gmicloud.ai/api/v1/ie/requestqueue/apikey/requests?model_id=wan2.7-i2v" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

## List Available Models

### Endpoint

```
GET /api/v1/apikey/models
```

### Example

```bash theme={null}
curl -X GET "https://console.gmicloud.ai/api/v1/apikey/models" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

## Tips for Better Results

1. **Provide clear reference frames**: High-quality first/last frame images yield smoother interpolation
2. **Detailed prompts**: Describe motion, camera movement, and atmosphere explicitly
3. **Prompt Extension**: Keep `prompt_extend` enabled for short prompts
4. **Driving Audio**: Supply `driving_audio` for precise audio-visual synchronization
5. **First Clip**: Use `first_clip` to provide motion reference from an existing video
6. **Seed for reproducibility**: Fix a seed value to regenerate consistent results
