---
title: "Generate images with Kling"
method: POST
path: "/kling/v1/images/generations"
---

# Generate images with Kling

`POST /kling/v1/images/generations`

## Headers

- `Content-Type` string

## Request body

- object
  - `model_name` 'kling-v1' | 'kling-v1-5' | 'kling-v2' | 'kling-v2-1' | 'kling-v3' — Kling image model variant. Use `kling-v3` for new requests. Omitting `model_name` uses the legacy CometAPI route default.
  - `prompt` string, required — Text prompt describing the image to generate. Maximum 2500 characters.
  - `negative_prompt` string — Elements to exclude from the image. Maximum 2500 characters. Not supported when `image` is provided.
  - `image` string — Reference image as a raw Base64 string without a `data:` prefix, or a public URL. Accepted formats: JPG, JPEG, PNG. Maximum 10 MB, minimum 300x300 px, aspect ratio between 1:2.5 and 2.5:1.
  - `image_reference` 'subject' | 'face' — Reference mode for legacy image-to-image requests when `image` is provided.
  - `image_fidelity` number — How closely the output follows the reference image. Range: 0-1. Used by legacy image-reference models.
  - `human_fidelity` number — Human-subject fidelity control. Range: 0-1. Used only by legacy subject-reference requests.
  - `element_list` object[] — Optional Kling element references. The total count of element references and input images must not exceed 10.
    - `element_id` integer, required — Kling element ID.
  - `resolution` '1k' | '2k' — Output resolution. Defaults to `1k`.
  - `n` integer — Number of images to generate. Range: 1-9.
  - `aspect_ratio` '16:9' | '9:16' | '1:1' | '4:3' | '3:4' | '3:2' | '2:3' | '21:9' — Output aspect ratio (width:height).
  - `watermark_info` object — Watermark options.
    - `enabled` boolean — Whether to add the official watermark.
  - `callback_url` string — Webhook URL to receive task status updates when the task completes.
  - `external_task_id` string — Optional user-defined task ID for your own tracking. Must be unique per account.

## Response `200`

Task request accepted or an error response returned by the API.

- object
  - `code` union, required — Response code. `0` means the task request was accepted.
    - integer
    - string
  - `message` string, required — Response message.
  - `request_id` string — Request identifier returned when present.
  - `data` object, required
    - `task_id` string, required — System-generated task ID.
    - `task_status` 'submitted' | 'processing' | 'succeed' | 'failed', required — Task status.
    - `task_status_msg` string, nullable — Task status detail when present.
    - `task_info` object
      - `external_task_id` string, nullable — Caller-provided external task ID when supplied.
    - `task_result` object, nullable — Task result payload after the task completes.
    - `created_at` integer, required — Task creation time as a Unix timestamp in milliseconds.
    - `updated_at` integer, required — Task update time as a Unix timestamp in milliseconds.

---

[API](https://skmtc.net/cometapi/apis/create-api-key.md) · [All operations](https://skmtc.net/cometapi/apis/create-api-key/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/cometapi/create-api-key/versions/0863102dbf34/schema)
