Skip to main content

Wan 2.6 - Video to Video

Transform existing videos with new prompts using Wan’s advanced AI model

Overview

Transform existing videos by applying new text prompts using the Wan 2.6 Video to Video model. This allows you to modify or enhance videos with different styles, actions, or themes while preserving the original video structure.

File Upload Requirements

Before using this API, you need to upload your video files:
1

Upload Video

Use the File Upload API to upload your source video.

File Upload API

Learn how to upload videos and get file URLs
2

Get File URL

After upload, you’ll receive a file URL that you can use in the video_urls parameter.
  • Supported formats: MP4, QuickTime, Matroska
  • Maximum file size: 10MB
  • Maximum 3 video URLs per request
  • Video content should be appropriate and follow usage guidelines

Usage Examples

  • Use descriptive prompts to specify how you want the video to change
  • The model preserves the original video timing and structure
  • Experiment with different prompt styles to achieve desired results

Query Task Status

After submitting a task, use the unified query endpoint to check progress and retrieve results:

Get Task Details

Learn how to query task status and retrieve generation results
For production use, we recommend using the callBackUrl parameter to receive automatic notifications when generation completes, rather than polling the status endpoint.
Rate limits and quotas are enforced by Apikley and may differ from upstream providers.

OpenAPI

market/wan/2-6-video-to-video.json post /api/v1/jobs/createTask
openapi: 3.0.0
info:
  title: Wan API
  description: Apikley Wan API Documentation - undefined
  version: 1.0.0
  contact:
    name: Technical Support
    email: [email protected]
servers:
  - url: https://api.apikley.ru
    description: API Server
security:
  - BearerAuth: []
paths:
  /api/v1/jobs/createTask:
    post:
      summary: Generate content using wan/2-6-video-to-video
      operationId: wan-2-6-video-to-video
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - model
              properties:
                model:
                  type: string
                  enum:
                    - wan/2-6-video-to-video
                  default: wan/2-6-video-to-video
                  description: |-
                    The model name to use for generation. Required field.

                    - Must be `wan/2-6-video-to-video` for this endpoint
                  example: wan/2-6-video-to-video
                callBackUrl:
                  type: string
                  format: uri
                  description: >-
                    The URL to receive generation task completion updates.
                    Optional but recommended for production use.


                    - System will POST task status and results to this URL when
                    generation completes

                    - Callback includes generated content URLs and task
                    information

                    - Your callback endpoint should accept POST requests with
                    JSON payload containing results

                    - Alternatively, use the Get Task Details endpoint to poll
                    task status
                  example: https://your-domain.com/api/callback
                input:
                  type: object
                  description: Input parameters for the generation task
                  properties:
                    prompt:
                      description: >-
                        Text prompts for video generation. Supports both Chinese
                        and English, with a minimum of 2 characters and a
                        maximum of 5,000 characters. (Max length: 5000
                        characters)
                      type: string
                      maxLength: 5000
                      example: >-
                        The video drinks milk tea while doing some improvised
                        dance moves to the music.
                    video_urls:
                      description: >-
                        The URL of the image used to generate video (File URL
                        after upload, not file content; Accepted types:
                        video/mp4, video/quicktime, video/x-matroska; Max size:
                        10.0MB)
                      type: array
                      items:
                        type: string
                        format: uri
                      maxItems: 3
                      example:
                        - >-
                          https://static.aiquickdraw.com/tools/example/1765957777782_cNJpvhRx.mp4
                    duration:
                      description: The duration of the generated video in seconds
                      type: string
                      enum:
                        - '5'
                        - '10'
                      default: '5'
                      example: '5'
                    resolution:
                      description: Video resolution tier
                      type: string
                      enum:
                        - 720p
                        - 1080p
                      default: 1080p
                      example: 1080p
                  required:
                    - prompt
                    - video_urls
            example:
              model: wan/2-6-video-to-video
              callBackUrl: https://your-domain.com/api/callback
              input:
                prompt: >-
                  The video drinks milk tea while doing some improvised dance
                  moves to the music.
                video_urls:
                  - >-
                    https://static.aiquickdraw.com/tools/example/1765957777782_cNJpvhRx.mp4
                duration: '5'
                resolution: 1080p
      responses:
        '200':
          description: Request successful
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/ApiResponse'
                  - type: object
                    properties:
                      data:
                        type: object
                        properties:
                          taskId:
                            type: string
                            description: >-
                              Task ID, can be used with Get Task Details
                              endpoint to query task status
                            example: task_wan_1765967743009
              example:
                code: 200
                msg: success
                data:
                  taskId: task_wan_1765967743009
        '500':
          $ref: '#/components/responses/Error'
components:
  schemas:
    ApiResponse:
      type: object
      properties:
        code:
          type: integer
          enum:
            - 200
            - 401
            - 402
            - 404
            - 422
            - 429
            - 455
            - 500
            - 501
            - 505
          description: >-
            Response status code


            - **200**: Success - Request has been processed successfully

            - **401**: Unauthorized - Authentication credentials are missing or
            invalid

            - **402**: Insufficient Credits - Account does not have enough
            credits to perform the operation

            - **404**: Not Found - The requested resource or endpoint does not
            exist

            - **422**: Validation Error - The request parameters failed
            validation checks

            - **429**: Rate Limited - Request limit has been exceeded for this
            resource

            - **455**: Service Unavailable - System is currently undergoing
            maintenance

            - **500**: Server Error - An unexpected error occurred while
            processing the request

            - **501**: Generation Failed - Content generation task failed

            - **505**: Feature Disabled - The requested feature is currently
            disabled
        msg:
          type: string
          description: Response message, error description when failed
          example: success
  responses:
    Error:
      description: Server Error
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: >-
        All APIs require authentication via Bearer Token.


        Get API Key:

        1. Visit [API Key Management Page](https://app.apikley.ru/keys) to get your
        API Key


        Usage:

        Add to request header:

        Authorization: Bearer APIKLEY_API_KEY


        Note:

        - Keep your API Key secure and do not share it with others

        - If you suspect your API Key has been compromised, reset it immediately
        in the management page


To find navigation and other pages in this documentation, fetch the llms.txt file at: https://docs.apikley.ru/llms.txt