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

# Kling 2.0 - Create video from image

> Create a video from an image using the Kling v2 model

## Important

The service allows up to 3 concurrent requests per user.


## OpenAPI

````yaml post /v1/ai/image-to-video/kling-v2
openapi: 3.0.0
info:
  description: >-
    The Magnific API is your gateway to a vast collection of high-quality
    digital resources for your applications and projects. As a leading platform,
    it offers a wide range of graphics, including vectors, photos,
    illustrations, icons, PSD templates, and more, all curated by talented
    designers from around the world.
  title: Magnific API
  version: 1.0.0
servers:
  - description: B2B API Production V1
    url: https://api.magnific.com
security:
  - magnificApiKey: []
paths:
  /v1/ai/image-to-video/kling-v2:
    post:
      tags:
        - image-to-video
      summary: Kling 2.0 - Create video from image
      description: Create a video from an image using the Kling v2 model
      requestBody:
        content:
          application/json:
            examples:
              required-params:
                $ref: '#/components/examples/request-itv-klingv2-required-params'
              all-params:
                $ref: '#/components/examples/request-itv-klingv2-all-params'
            schema:
              $ref: '#/components/schemas/itvkv2-request-content'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/create_image_from_text_flux_200_response'
          description: OK - Get the status of the kling-v2 task
        '400':
          $ref: '#/components/responses/400-bad-request'
        '401':
          $ref: '#/components/responses/401-unauthorized'
        '500':
          $ref: '#/components/responses/500-internal-server-error'
        '503':
          $ref: '#/components/responses/503-service-unavailable'
components:
  examples:
    request-itv-klingv2-required-params:
      summary: Request - Generate video from image with required parameters
      value:
        image: >-
          https://storage.googleapis.com/fc-freepik-pro-rev1-eu-static/landing-api/examples/freepik__upload__53227.png
        duration: '5'
    request-itv-klingv2-all-params:
      summary: Request - Generate video from image
      value:
        image: >-
          https://storage.googleapis.com/fc-freepik-pro-rev1-eu-static/landing-api/examples/freepik__upload__53227.png
        prompt: >-
          Close-up shot: A girl opens her clear light blue eyes and smiles
          warmly. The camera gently zooms in, capturing the sparkle in her eyes
          in slow motion, creating an intimate and uplifting atmosphere.
        negative_prompt: Blurred or poor quality images
        duration: '5'
        cfg_scale: 0.7
  schemas:
    itvkv2-request-content:
      properties:
        webhook_url:
          description: >
            Optional callback URL that will receive asynchronous notifications
            whenever the task changes status. The payload sent to this URL is
            the same as the corresponding GET endpoint response, but without the
            data field.
          example: https://www.example.com/webhook
          format: uri
          type: string
        image:
          description: >-
            Reference Image. Supports Base64 encoding or URL (ensure
            accessibility). For URL, must be publicly accessible. The image file
            size cannot exceed 10MB, and the resolution should not be less than
            300x300px. Aspect ratio should be between 1:2.5 ~ 2.5:1.
          example: >-
            https://img.freepik.com/free-photo/closeup-vertical-shot-cute-european-shorthair-cat_181624-34587.jpg?t=st=1746439555~exp=1746443155~hmac=a7507c7d4a48a81b22bf222d1e0f1808043c9113ef8aac31a595c9128914e8ed&w=740
          type: string
        prompt:
          description: >-
            Text prompt describing the desired motion, cannot exceed 2500
            characters
          example: A cat moving his head
          type: string
        negative_prompt:
          description: >-
            Text prompt describing what to avoid in the generated video, cannot
            exceed 2500 characters
          example: Blurred or poor quality images
          type: string
        duration:
          description: Duration of the generated video in seconds
          enum:
            - '5'
            - '10'
          example: '5'
          type: string
        cfg_scale:
          default: 0.5
          description: >-
            Flexibility in video generation; The higher the value, the lower the
            model's degree of flexibility, and the stronger the relevance to the
            user's prompt.
          format: float
          maximum: 1
          minimum: 0
          type: number
      required:
        - duration
        - image
      type: object
    create_image_from_text_flux_200_response:
      example:
        data:
          task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
          status: CREATED
      properties:
        data:
          $ref: '#/components/schemas/task'
      required:
        - data
      type: object
    task:
      example:
        task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
        status: CREATED
      properties:
        task_id:
          description: Task identifier
          format: uuid
          type: string
        status:
          description: Task status
          enum:
            - CREATED
            - IN_PROGRESS
            - COMPLETED
            - FAILED
          type: string
      required:
        - status
        - task_id
      type: object
    inline_object:
      example:
        message: message
      properties:
        message:
          type: string
      type: object
    inline_object_1:
      properties:
        problem:
          $ref: '#/components/schemas/inline_object_1_problem'
      type: object
    inline_object_2:
      example:
        message: Internal Server Error
      properties:
        message:
          example: Internal Server Error
          type: string
      type: object
    inline_object_3:
      example:
        message: Service Unavailable. Please try again later.
      properties:
        message:
          example: Service Unavailable. Please try again later.
          type: string
      type: object
    inline_object_1_problem:
      properties:
        message:
          example: Validation error
          type: string
        invalid_params:
          items:
            $ref: '#/components/schemas/inline_object_1_problem_invalid_params_inner'
          type: array
      required:
        - invalid_params
        - message
      type: object
    inline_object_1_problem_invalid_params_inner:
      properties:
        name:
          description: Name of the invalid parameter.
          example: page
          type: string
        field:
          description: Field of the invalid parameter. Mirrors `name`.
          example: page
          type: string
        reason:
          example: Parameter 'page' must be greater than 0
          type: string
      required:
        - field
        - name
        - reason
      type: object
  responses:
    400-bad-request:
      content:
        application/json:
          examples:
            invalid_page:
              summary: Parameter 'page' is not valid
              value:
                message: Parameter 'page' must be greater than 0
            invalid_query:
              summary: Parameter 'query' is not valid
              value:
                message: Parameter 'query' must not be empty
            invalid_filter:
              summary: Parameter 'filter' is not valid
              value:
                message: Parameter 'filter' is not valid
            generic_bad_request:
              summary: Bad Request
              value:
                message: Parameter ':attribute' is not valid
          schema:
            $ref: '#/components/schemas/inline_object'
        application/problem+json:
          examples:
            invalid_page:
              summary: Parameter 'page' is not valid
              value:
                message: Validation error
                invalid_params:
                  - field: page
                    reason: Parameter 'page' must be greater than 0
                  - field: per_page
                    reason: Parameter 'per_page' must be greater than 0
          schema:
            $ref: '#/components/schemas/inline_object_1'
      description: >-
        Bad Request - The server could not understand the request due to invalid
        syntax.
    401-unauthorized:
      content:
        application/json:
          examples:
            invalid_api_key:
              summary: API key is not valid
              value:
                message: Invalid API key
            missing_api_key:
              summary: API key is not provided
              value:
                message: Missing API key
          schema:
            $ref: '#/components/schemas/inline_object'
      description: >-
        Unauthorized - The client must authenticate itself to get the requested
        response.
    500-internal-server-error:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/inline_object_2'
      description: >-
        Internal Server Error - The server has encountered a situation it
        doesn't know how to handle.
    503-service-unavailable:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/inline_object_3'
      description: Service Unavailable
  securitySchemes:
    magnificApiKey:
      description: >
        Your Magnific API key. Required for authentication. [Learn how to obtain
        an API key](https://docs.magnific.com/quickstart)
      in: header
      name: x-magnific-api-key
      type: apiKey

````