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

# Kling 1.6 Standard Image to Video

> Kling 1.6 Standard Image to Video parameters and billing factors.

# Kling 1.6 Standard Image to Video

Public model ID: `kwaivgi/kling-video/v1.6/standard/image-to-video`.

<Tip>
  Submit with `VIDGO_API_KEY`, then use [Query Task Status](/api-manual/task-management/status) with the returned `task_id`. Optional root-level `callback_url` enables [webhook notifications](/api-manual/task-management/webhooks).
</Tip>

## Input workflow

Provide **either** `start_image_url` for first-frame animation **or** `image_urls` for Elements. The endpoint does not accept text-only requests.

* Elements accepts 1–4 reference images and cannot be combined with `start_image_url` or `cfg_scale`.
* Standard first-frame animation does not support `aspect_ratio`; Elements does.

The image fields select the workflow.

## Parameters

Place generation parameters inside `input`. Keep `model` and optional `callback_url` at the request root. Unsupported input fields are rejected before credits are deducted.

| Parameter         | Requirement | Description                                                                                                               |
| ----------------- | ----------- | ------------------------------------------------------------------------------------------------------------------------- |
| `prompt`          | Required    | Required nonblank string, at most 2,500 Unicode characters after trimming.                                                |
| `duration`        | Required    | Required integer: 5 or 10 seconds. No API default.                                                                        |
| `aspect_ratio`    | Optional    | Optional: 1:1, 16:9 or 9:16. No API default. Not supported in Standard first-frame image-to-video; supported in Elements. |
| `negative_prompt` | Optional    | Optional string, at most 2,500 Unicode characters.                                                                        |
| `cfg_scale`       | Optional    | Optional finite number from 0 to 1. Not supported with image\_urls. No API default.                                       |
| `start_image_url` | Conditional | First-frame HTTP(S) URL. Required for the first-frame workflow; mutually exclusive with image\_urls.                      |
| `image_urls`      | Conditional | Elements: 1 to 4 HTTP(S) reference URLs. Mutually exclusive with start\_image\_url and cfg\_scale.                        |

Image URLs must be public HTTP(S) URLs with a hostname, without embedded credentials or whitespace. Local files can be uploaded in the playground before submitting their URL. Optional parameters have no documented API defaults.

## Billing Factors

Billing depends on the selected model tier (Standard or Pro) and video duration (`duration`). Usage is charged per generated second. Within a tier, text-to-video, first-frame animation, and Elements use the same rate.

Credits are deducted on submission and refunded if the task fails.


## OpenAPI

````yaml api-manual/video-series/kwaivgi-kling-video-v1-6-standard-image-to-video.json POST /api/generate/submit
openapi: 3.0.0
info:
  title: Vidgo API - Kling 1.6 Image to Video
  description: >-
    Animate reference images with Kling 1.6 Standard, using text direction and
    negative prompts to shape the scene and motion.
  version: 1.0.0
servers:
  - url: https://api.vidgo.ai
security:
  - BearerAuth: []
paths:
  /api/generate/submit:
    post:
      tags:
        - Video Series
      summary: Kling 1.6 Image to Video
      description: >-
        Send only the fields shown for this workflow. Parameters from other
        workflows are rejected before credits are deducted.


        When supplied, prompt must not be blank. Input URL fields require
        HTTP(S) URLs with a hostname and no embedded credentials.
      operationId: submit_kwaivgi_kling_video_v1_6_standard_image_to_video
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - model
                - input
              additionalProperties: true
              properties:
                model:
                  type: string
                  example: kwaivgi/kling-video/v1.6/standard/image-to-video
                input:
                  type: object
                  required:
                    - prompt
                    - duration
                  description: >-
                    Input parameters for generation. PoYo selects the generation
                    workflow from the provided image fields.
                  additionalProperties: false
                  properties:
                    prompt:
                      type: string
                      description: >-
                        Required nonblank string, at most 2,500 Unicode
                        characters after trimming.
                      maxLength: 2500
                      example: A cinematic video scene
                      minLength: 1
                    duration:
                      type: integer
                      description: 'Required integer: 5 or 10 seconds. No API default.'
                      enum:
                        - 5
                        - 10
                      example: 5
                    aspect_ratio:
                      type: string
                      description: >-
                        Optional: 1:1, 16:9 or 9:16. No API default. Not
                        supported in Standard first-frame image-to-video;
                        supported in Elements.
                      enum:
                        - '1:1'
                        - '16:9'
                        - '9:16'
                      example: '16:9'
                    negative_prompt:
                      type: string
                      description: Optional string, at most 2,500 Unicode characters.
                      maxLength: 2500
                      example: blur, low quality, artifacts
                    cfg_scale:
                      type: number
                      description: >-
                        Optional finite number from 0 to 1. Not supported with
                        image_urls. No API default.
                      minimum: 0
                      maximum: 1
                      example: 0.5
                    start_image_url:
                      type: string
                      format: uri
                      description: >-
                        First-frame HTTP(S) URL. Required for the first-frame
                        workflow; mutually exclusive with image_urls.
                      example: https://example.com/start-frame.png
                    image_urls:
                      type: array
                      items:
                        type: string
                        format: uri
                      description: >-
                        Elements: 1 to 4 HTTP(S) reference URLs. Mutually
                        exclusive with start_image_url and cfg_scale.
                      minItems: 1
                      maxItems: 4
                      example:
                        - https://example.com/reference-1.png
                  oneOf:
                    - required:
                        - start_image_url
                      not:
                        required:
                          - image_urls
                    - required:
                        - image_urls
                      not:
                        anyOf:
                          - required:
                              - start_image_url
                          - required:
                              - end_image_url
                          - required:
                              - cfg_scale
                  allOf:
                    - not:
                        required:
                          - start_image_url
                          - aspect_ratio
                callback_url:
                  type: string
                  nullable: true
                  description: >-
                    Optional public HTTP(S) endpoint for task completion
                    notifications. HTTPS is recommended. Omit, use null, or use
                    an empty string to disable callbacks.
              description: >-
                Keep model and callback_url at the root. Unknown root fields are
                ignored; unsupported input fields are rejected.
            examples:
              basic:
                summary: First-frame image to video
                value:
                  model: kwaivgi/kling-video/v1.6/standard/image-to-video
                  input:
                    prompt: A quiet forest in morning light, with a slow camera pan.
                    duration: 5
                    start_image_url: https://example.com/start-frame.png
              callback:
                summary: Receive a completion callback
                value:
                  model: kwaivgi/kling-video/v1.6/standard/image-to-video
                  input:
                    prompt: A quiet forest in morning light, with a slow camera pan.
                    duration: 5
                    start_image_url: https://example.com/start-frame.png
                  callback_url: https://your-domain.com/callback
              elements:
                summary: Elements reference images
                value:
                  model: kwaivgi/kling-video/v1.6/standard/image-to-video
                  input:
                    prompt: A quiet forest in morning light, with a slow camera pan.
                    duration: 5
                    aspect_ratio: '16:9'
                    image_urls:
                      - https://example.com/reference-1.png
      responses:
        '200':
          description: Task submitted
          content:
            application/json:
              schema:
                type: object
                required:
                  - code
                  - data
                properties:
                  code:
                    type: integer
                    enum:
                      - 200
                  data:
                    type: object
                    required:
                      - task_id
                      - status
                      - created_time
                    properties:
                      task_id:
                        type: string
                      status:
                        type: string
                        enum:
                          - not_started
                          - running
                          - finished
                          - failed
                      created_time:
                        type: string
                        format: date-time
              example:
                code: 200
                data:
                  task_id: task-unified-example
                  status: running
                  created_time: '2026-09-10T08:00:00'
        '400':
          description: >-
            Invalid input, unsupported tier, inaccessible media, or insufficient
            credits
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '401':
          description: Invalid credentials
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '403':
          description: Access denied
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '404':
          description: Unknown or disabled model
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '408':
          description: Request timed out
          content:
            text/plain:
              schema:
                type: string
              example: Request timeout
        '422':
          description: Invalid JSON or non-object request body
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '429':
          description: Rate or API key credit limit exceeded
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '502':
          description: Unable to create the upstream generation task
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '503':
          description: Model configuration or capability is not approved
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: Use VIDGO_API_KEY.

````