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

# Create a video enhancement task

> Enhance a public source video using BytePlus AI MediaKit. This independent
endpoint supports only byteplus-video-enhancement. BytePlus supports sources
up to 2K and recommends files no larger than 10 GB. GENGEN validates request
fields and reserves a fixed balance amount without downloading or probing
the source. This reservation is not a quote or maximum charge; actual
output usage is settled on success. Source validation failures are asynchronous.
Each POST creates a new job. Download successful outputs before outputs.expiresAt;
results are not archived. Customer webhook subscriptions are not supported.




## OpenAPI

````yaml /openapi/gengen-v1.yaml post /video/enhancements
openapi: 3.1.0
info:
  title: GENGEN API
  version: 1.0.0
  description: |
    The public GENGEN v1 API. New integrations should use normalized camelCase
    request fields and read generated media from the standard `outputs` object.
servers:
  - url: https://gengen.farm/api/gengen/v1
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Video enhancement
    description: Enhance existing videos with BytePlus AI MediaKit.
  - name: Video generation tasks
    description: Create, inspect, list, and cancel asynchronous video generation tasks.
  - name: Text generation
    description: Create OpenAI-compatible chat completions, including streamed responses.
  - name: Image generation
    description: Generate images synchronously with normalized GENGEN request fields.
  - name: Video understanding
    description: Analyze video content through the BytePlus Responses API surface.
  - name: Files
    description: Authorize direct uploads for image, video, and audio inputs.
paths:
  /video/enhancements:
    post:
      tags:
        - Video enhancement
      summary: Create a video enhancement task
      description: >
        Enhance a public source video using BytePlus AI MediaKit. This
        independent

        endpoint supports only byteplus-video-enhancement. BytePlus supports
        sources

        up to 2K and recommends files no larger than 10 GB. GENGEN validates
        request

        fields and reserves a fixed balance amount without downloading or
        probing

        the source. This reservation is not a quote or maximum charge; actual

        output usage is settled on success. Source validation failures are
        asynchronous.

        Each POST creates a new job. Download successful outputs before
        outputs.expiresAt;

        results are not archived. Customer webhook subscriptions are not
        supported.
      operationId: createVideoEnhancement
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateVideoEnhancementRequest'
            example:
              model: byteplus-video-enhancement
              mode: video_enhancement
              assets:
                sourceVideo: https://example.com/source.mp4
              controls:
                resolution: 1080p
                fps: 30
              providerOptions:
                byteplus:
                  toolVersion: standard
                  enhanceStyle: natural
                  scene: aigc
      responses:
        '200':
          description: Task durably queued; processing continues in the background.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VideoEnhancementTask'
        '400':
          description: Invalid source or unsupported parameters.
        '401':
          description: Invalid API key.
        '402':
          description: Insufficient available balance.
        '503':
          description: Video enhancement is not configured.
components:
  schemas:
    CreateVideoEnhancementRequest:
      type: object
      additionalProperties: false
      required:
        - model
        - assets
      properties:
        model:
          type: string
          enum:
            - byteplus-video-enhancement
        mode:
          type: string
          enum:
            - video_enhancement
          default: video_enhancement
        assets:
          type: object
          additionalProperties: false
          required:
            - sourceVideo
          properties:
            sourceVideo:
              type: string
              format: uri
              description: >-
                Public HTTP(S) video URL without embedded credentials. No asset
                URIs or direct uploads.
        controls:
          type: object
          additionalProperties: false
          properties:
            resolution:
              type: string
              enum:
                - 1080p
                - 2k
                - 4k
              default: 1080p
            fps:
              type: integer
              enum:
                - 30
                - 60
              description: Omit to preserve the source frame rate.
        providerOptions:
          type: object
          additionalProperties: false
          properties:
            byteplus:
              type: object
              additionalProperties: false
              properties:
                toolVersion:
                  type: string
                  enum:
                    - standard
                    - professional
                  default: standard
                enhanceStyle:
                  type: string
                  enum:
                    - natural
                    - hd
                  default: natural
                scene:
                  type: string
                  enum:
                    - common
                    - ugc
                    - short_series
                    - aigc
                    - old_film
                  description: Standard only; defaults to aigc. Omit for Professional.
    VideoEnhancementTask:
      type: object
      additionalProperties: false
      required:
        - id
        - model
        - status
        - outputs
      properties:
        id:
          type: string
          example: byteplus-enhance:12345678-1234-4234-8234-123456789abc
        model:
          type: string
          enum:
            - byteplus-video-enhancement
        status:
          type: string
          enum:
            - pending
            - running
            - succeeded
            - failed
        outputs:
          type: object
          additionalProperties: false
          required:
            - videos
            - images
          properties:
            videos:
              type: array
              description: Temporary output URL; empty before success or after expiry.
              items:
                type: string
                format: uri
            images:
              type: array
              maxItems: 0
              items:
                type: string
            expiresAt:
              type: string
              format: date-time
              description: >-
                ISO 8601 UTC output expiration, normally 24 hours after
                completion.
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        failureReason:
          type: string
          description: Safe explanation when status is failed.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: GENGEN API key
      description: A workspace API key beginning with `gengen_live_`.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.