# Kling 3.0 Omni Pro Video Edit API

> Modify an existing video with natural-language instructions using Kling 3.0 Omni Pro.

- Model ID: `kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit`
- Provider: Kling
- Tasks: Video to Video, Video Editing
- Price: ≈ $0.84 per clip, reference price. Billed at the provider's actual cost; a typical clip is listed at $0.84. Your usage log shows the exact charge.
- Web page: https://scalingtensor.com/models/kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit

## How to call it

Authenticate with the `apiKey` request header. Submit a job, then poll for the result:

1. `POST https://restapi.scalingtensor.com/api/media/generate` with JSON `{ "model": "<model ID>", "params": { ... } }`. The response `data.jobId` identifies the job.
2. `GET https://restapi.scalingtensor.com/api/media/result?jobId=<jobId>` until the status is `completed` or `failed`.
3. A response `code` of 0 means success; otherwise read `msg`.

```bash
curl --request POST 'https://restapi.scalingtensor.com/api/media/generate' \
  --header 'apiKey: YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "model": "kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit",
  "params": {
    "video": "https://example.com/your-video.mp4",
    "images": [
      "https://example.com/your-image.png"
    ],
    "prompt": "Replace the character in the video with @Element1, maintaining the same movements and camera angles. Transform the landscape into @Image1",
    "elements": [
      {
        "frontal_image_url": "https://example.com/your-image.png",
        "reference_image_urls": [
          "https://example.com/your-image.png",
          "https://example.com/your-image.png"
        ]
      }
    ],
    "keep_audio": false
  }
}'
```

## Input parameters

Parameters go inside the `params` object.

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `video` | string | Required | Reference video URL. Only .mp4/.mov formats supported, 3-10 seconds duration, 720-2160px resolution, max 200MB. Max file size: 200.0MB, Min width: 720px, Min height: 720px, Max width: 2160px, Max height: 2160px, Min duration: 3.0s, Max duration: 10.05s, Min FPS: 24.0, Max FPS: 60.0, Timeout: 30.0s |
| `prompt` | string | Required | Use @Element1, @Element2 to reference elements and @Image1, @Image2 to reference images in order. · Max length: 2500 |
| `images` | string[] | Optional | Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video. |
| `elements` | object[] | Optional | Elements (characters/objects) to include. Reference in prompt as @Element1, @Element2, etc. Maximum 4 total (elements + reference images) when using video. |
| `keep_audio` | boolean | Optional | Whether to keep the original audio from the video. · Default: false |

## FAQ

### How much does the Kling 3.0 Omni Pro Video Edit API cost?

Kling 3.0 Omni Pro Video Edit is billed at the provider's actual cost for each job (per clip, reference price). The charge is deducted from your prepaid ScalingTensor wallet.

### How do I call the Kling 3.0 Omni Pro Video Edit API?

Send POST /api/media/generate with "model": "kwaivgi/kling-video/3.0/omni/pro/video-to-video/edit" and the parameters in a params object, using your apiKey header. The call returns a jobId. Poll GET /api/media/result?jobId=... until the status is completed, then read the output URL from the result.

### Which parameters does Kling 3.0 Omni Pro Video Edit accept?

Required: video and prompt. Optional: images, elements and keep_audio. The parameter table on this page describes each one.

### Do I need a Kling account to use Kling 3.0 Omni Pro Video Edit?

No. You call Kling 3.0 Omni Pro Video Edit with your ScalingTensor API key and pay from your ScalingTensor wallet. The same key works for every other model in the catalog.
