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

# Kling Elements Pro - Create video from image

> Generate a video from an image using the Kling Elements Pro model.

## Important

The service allows up to 3 concurrent requests per user.


## OpenAPI

````yaml post /v1/ai/image-to-video/kling-elements-pro
openapi: 3.0.0
info:
  description: >-
    The Freepik 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: Freepik API
  version: 1.0.0
servers:
  - description: B2B API Production V1
    url: https://api.freepik.com
security:
  - apiKey: []
paths:
  /v1/ai/image-to-video/kling-elements-pro:
    post:
      tags:
        - image-to-video
      summary: Kling Elements Pro - Create video from image
      description: Generate a video from an image using the Kling Elements Pro model.
      operationId: create_video_from_image_kling_elements_pro
      requestBody:
        content:
          application/json:
            examples:
              required-params:
                $ref: >-
                  #/components/examples/request-itv-kling-elements-pro-required-params
              all-params:
                $ref: >-
                  #/components/examples/request-itv-kling-elements-pro-all-params
            schema:
              $ref: '#/components/schemas/itvke-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-elements-pro task
        '400':
          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/get_all_style_transfer_tasks_400_response'
            application/problem+json:
              examples:
                invalid_page:
                  summary: Parameter 'page' is not valid
                  value:
                    message: Your request parameters didn't validate.
                    invalid_params:
                      - name: page
                        reason: Parameter 'page' must be greater than 0
                      - name: per_page
                        reason: Parameter 'per_page' must be greater than 0
              schema:
                $ref: >-
                  #/components/schemas/get_all_style_transfer_tasks_400_response_1
          description: >-
            Bad Request - The server could not understand the request due to
            invalid syntax.
        '401':
          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/get_all_style_transfer_tasks_400_response'
          description: >-
            Unauthorized - The client must authenticate itself to get the
            requested response.
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_500_response'
          description: >-
            Internal Server Error - The server has encountered a situation it
            doesn't know how to handle.
        '503':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_503_response'
          description: Service Unavailable
components:
  examples:
    request-itv-kling-elements-pro-required-params:
      summary: Request - Kling Elements Standard required params
      value:
        images:
          - >-
            https://img.freepik.com/foto-gratis/disparo-aislado-gatito-jengibre-sentado-frente-blanco-mirando-derecha_181624-45937.jpg?semt=ais_hybrid&w=740
    request-itv-kling-elements-pro-all-params:
      summary: Request - Kling Elements Standard all params
      value:
        images:
          - >-
            https://img.freepik.com/foto-gratis/hermosa-foto-olas-mar-cielo-rosa-morado-sol-brillando-hora-dorada_181624-3784.jpg?ga=GA1.1.937563726.1730992487&semt=ais_hybrid&w=740
        prompt: A beautiful sunset over a calm ocean
        negative_prompt: ugly, deformed, bad anatomy
        duration: '5'
        aspect_ratio: widescreen_16_9
        webhook_url: https://webhook.site/123e4567-e89b-12d3-a456-426614174000
  schemas:
    itvke-request-content:
      properties:
        images:
          description: >-
            Array of up to 4 images to use for video generation. Images must be
            at least 300x300px, aspect ratio between 1:2.5 ~ 2.5:1, and under
            10MB
          items:
            description: 'Image URL (must be accessible). Supported formats: jpg, jpeg, png'
            type: string
          maxItems: 4
          type: array
        prompt:
          description: Positive text prompt
          maxLength: 2500
          type: string
        negative_prompt:
          description: Negative text prompt
          maxLength: 2500
          type: string
        duration:
          description: Duration of the generated video in seconds
          enum:
            - '5'
            - '10'
          type: string
        aspect_ratio:
          default: widescreen_16_9
          description: Aspect ratio for the generated video
          enum:
            - widescreen_16_9
            - social_story_9_16
            - square_1_1
          type: string
        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
      required:
        - images
      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
    get_all_style_transfer_tasks_400_response:
      example:
        message: message
      properties:
        message:
          type: string
      type: object
    get_all_style_transfer_tasks_400_response_1:
      properties:
        problem:
          $ref: >-
            #/components/schemas/get_all_style_transfer_tasks_400_response_1_problem
      type: object
    get_all_style_transfer_tasks_500_response:
      example:
        message: Internal Server Error
      properties:
        message:
          example: Internal Server Error
          type: string
      type: object
    get_all_style_transfer_tasks_503_response:
      example:
        message: Service Unavailable. Please try again later.
      properties:
        message:
          example: Service Unavailable. Please try again later.
          type: string
      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
    get_all_style_transfer_tasks_400_response_1_problem:
      properties:
        message:
          example: Your request parameters didn't validate.
          type: string
        invalid_params:
          items:
            $ref: >-
              #/components/schemas/get_all_style_transfer_tasks_400_response_1_problem_invalid_params_inner
          type: array
      required:
        - invalid_params
        - message
      type: object
    get_all_style_transfer_tasks_400_response_1_problem_invalid_params_inner:
      properties:
        name:
          example: page
          type: string
        reason:
          example: Parameter 'page' must be greater than 0
          type: string
      required:
        - name
        - reason
      type: object
  securitySchemes:
    apiKey:
      description: >
        Your Freepik API key. Required for authentication. [Learn how to obtain
        an API
        key](https://docs.freepik.com/authentication#obtaining-an-api-key)
      in: header
      name: x-freepik-api-key
      type: apiKey

````

Built with [Mintlify](https://mintlify.com).