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

# Seedance 2.5 Flash Video Edit

> - Edicion sobre un video de entrada: reemplazar sujetos, agregar o quitar objetos, reestilizar o repintar regiones
- Describa directamente el cambio en la indicación, por ejemplo: "Quitar a todos los transeuntes de @video1 y conservar solo al personaje principal"
- Ingrese exactamente 1 video para editar (obligatorio, `4`–`30` segundos) + imágenes de referencia opcionales (0–10) + audio de referencia (0–5); la duración y la relación de aspecto de salida siguen al video de entrada
- Modo de procesamiento asincrono, utilice el ID de tarea devuelto [para consultar](/es/api-manual/task-management/get-task-detail)
- El enlace del video generado es valido por 24 horas, guardelo lo antes posible



## OpenAPI

````yaml es/api-manual/video-series/seedance2.5/seedance-2.5-flash-video-edit.json POST /v1/videos/generations
openapi: 3.1.0
info:
  title: API Seedance 2.5 Flash Video Edit
  description: >-
    API de edicion de video Seedance 2.5 Flash: edita un video de entrada para
    reemplazar sujetos, agregar o quitar objetos y reestilizar regiones
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.evolink.ai
    description: Produccion
security:
  - bearerAuth: []
tags:
  - name: Generacion de video
    description: APIs relacionadas con la generacion de video con IA
paths:
  /v1/videos/generations:
    post:
      tags:
        - Generacion de video
      summary: Seedance 2.5 Flash Video Edit
      description: >-
        - Edicion sobre un video de entrada: reemplazar sujetos, agregar o
        quitar objetos, reestilizar o repintar regiones

        - Describa directamente el cambio en la indicación, por ejemplo: "Quitar
        a todos los transeuntes de @video1 y conservar solo al personaje
        principal"

        - Ingrese exactamente 1 video para editar (obligatorio, `4`–`30`
        segundos) + imágenes de referencia opcionales (0–10) + audio de
        referencia (0–5); la duración y la relación de aspecto de salida siguen
        al video de entrada

        - Modo de procesamiento asincrono, utilice el ID de tarea devuelto [para
        consultar](/es/api-manual/task-management/get-task-detail)

        - El enlace del video generado es valido por 24 horas, guardelo lo antes
        posible
      operationId: createSeedance25FlashVideoEdit
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VideoGenerationRequest'
            examples:
              remove_objects:
                summary: Editar video (quitar objetos)
                value:
                  model: seedance-2.5-flash-video-edit
                  prompt: >-
                    Quitar a todos los transeuntes de @video1 y conservar solo
                    al personaje principal
                  video_urls:
                    - https://example.com/original.mp4
                  quality: 720p
                  generate_audio: true
              replace_subject:
                summary: Editar video (reemplazar un elemento con referencia de imagen)
                value:
                  model: seedance-2.5-flash-video-edit
                  prompt: >-
                    Reemplazar el perfume de la caja de regalo de @video1 por la
                    crema facial de @image1, manteniendo el movimiento de camara
                  image_urls:
                    - https://example.com/cream.jpg
                  video_urls:
                    - https://example.com/original.mp4
                  quality: 720p
      responses:
        '200':
          description: Tarea de generacion de video creada exitosamente
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VideoGenerationResponse'
        '400':
          description: Error en los parametros de la solicitud
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: invalid_parameter
                  message: Invalid request parameters
                  type: invalid_request_error
        '401':
          description: No autenticado, Token invalido o expirado
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: unauthorized
                  message: Invalid or expired token
                  type: authentication_error
        '402':
          description: Cuota insuficiente, se requiere recarga
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: insufficient_quota
                  message: Insufficient quota. Please top up your account.
                  type: insufficient_quota
        '403':
          description: Acceso no autorizado
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: model_access_denied
                  message: >-
                    Token does not have access to model:
                    seedance-2.5-flash-video-edit
                  type: invalid_request_error
        '429':
          description: Limite de frecuencia de solicitudes excedido
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: rate_limit_exceeded
                  message: Too many requests, please try again later
                  type: rate_limit_error
        '500':
          description: Error interno del servidor
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: internal_error
                  message: Internal server error
                  type: api_error
components:
  schemas:
    VideoGenerationRequest:
      type: object
      required:
        - model
        - prompt
        - video_urls
      properties:
        model:
          type: string
          description: Nombre del modelo de generacion de video
          enum:
            - seedance-2.5-flash-video-edit
          default: seedance-2.5-flash-video-edit
          example: seedance-2.5-flash-video-edit
        prompt:
          type: string
          description: >-
            Indicacion de texto que describe la edicion deseada. Admite chino e
            ingles; se recomienda no superar 500 caracteres en chino. Longitud
            maxima de la indicacion: 10000 tokens


            **Detalles:**

            - Describa directamente el cambio que desea, por ejemplo: "Quitar a
            todos los transeuntes de @video1 y conservar solo al personaje
            principal"

            - Puede usar lenguaje natural para indicar el proposito de cada
            material, por ejemplo: "reemplazar al personaje de @video1 por la
            persona de @image1"

            - El modelo entiende automaticamente la correspondencia entre los
            numeros de material y su uso previsto
          example: >-
            Quitar a todos los transeuntes de @video1 y conservar solo al
            personaje principal
        video_urls:
          type: array
          description: >-
            Arreglo de URL de videos de entrada, **obligatorio; exactamente 1
            video**


            **Requisito:** proporcione exactamente 1 video, el que se va a
            editar. La duración y la relación de aspecto de salida siguen a este
            video.


            **Requisitos de video:**

            - Formatos admitidos: `.mp4`, `.mov`

            - Resolucion: 480p, 720p, 1080p, 4K

            - Duración del video: `4` ~ `30` segundos

            - Relacion de aspecto (ancho/alto): `0.4` ~ `2.5`

            - Pixeles de ancho/alto: `300` ~ `6000` px

            - Pixeles de imagen (ancho x alto): `409,600` ~ `8,295,044` (ej.
            640x640 ~ 3326x2494)

            - Tamano por archivo: no mas de `200MB`

            - Velocidad de fotogramas: `24` ~ `60` FPS

            - El tamano total del cuerpo de la solicitud no debe exceder `64MB`,
            no use codificacion Base64

            - La validez del codec, la resolucion y otros detalles del material
            se comprueba adicionalmente por el modelo

            - Las URLs de video deben ser accesibles directamente por el
            servidor
          items:
            type: string
            format: uri
          minItems: 1
          maxItems: 1
          example:
            - https://example.com/original.mp4
        image_urls:
          type: array
          description: >-
            Array de URLs de imagenes de referencia, **opcional; si se
            proporciona, debe contener de 1 a 10 imagenes**


            **Requisito:** en este modelo `video_urls` es obligatorio; las
            imagenes son referencias complementarias opcionales.


            **Descripcion del rol:**


            | Tipo de medio | Rol | Uso tipico |

            |---------|------|----------|

            | Imagen | `reference_image` | Referencia de estilo, imagen de
            producto, sujeto de reemplazo (indicado en el prompt) |


            **Requisitos de imagen:**

            - Formatos admitidos: `.jpeg`, `.png`, `.webp`

            - Relacion de aspecto (ancho/alto): `0.4` ~ `2.5`

            - Pixeles de ancho/alto: `300` ~ `6000` px

            - Tamano por imagen: no mas de `30MB`

            - El tamano total del cuerpo de la solicitud no debe exceder `64MB`,
            no use codificacion Base64

            - Las URLs de imagenes deben ser accesibles directamente por el
            servidor
          items:
            type: string
            format: uri
          minItems: 1
          maxItems: 10
          example:
            - https://example.com/ref1.jpg
            - https://example.com/ref2.jpg
        audio_urls:
          type: array
          description: >-
            Array de URLs de audio de referencia, **opcional; si se proporciona,
            debe contener de 1 a 5 segmentos**


            **Requisito:** en este modelo `video_urls` es obligatorio; el audio
            es una referencia complementaria opcional.


            **Descripcion del rol:**


            | Tipo de medio | Rol | Uso tipico |

            |---------|------|----------|

            | Audio | `reference_audio` | Musica de fondo, efectos de sonido,
            referencia de voz/dialogos |


            **Requisitos de audio:**

            - Formatos admitidos: `.wav`, `.mp3`

            - Duracion por segmento de audio: `2` ~ `30` segundos, maximo 5
            segmentos, duracion total de todo el audio <= `30` segundos

            - Tamano por archivo: no mas de `15MB`

            - El tamano total del cuerpo de la solicitud no debe exceder `64MB`,
            no use codificacion Base64

            - Las URLs de audio deben ser accesibles directamente por el
            servidor
          items:
            type: string
            format: uri
          minItems: 1
          maxItems: 5
          example:
            - https://example.com/bgm.mp3
        duration:
          type: integer
          description: >-
            Duracion del video de salida (segundos), valor predeterminado `-1`


            **Detalles:**

            - Puede omitir este campo; si se envía, solo se acepta `-1` y la
            duración de salida sigue al video de entrada

            - No se aceptan duraciones personalizadas
          enum:
            - -1
          default: -1
          example: -1
        quality:
          type: string
          description: |-
            Resolucion del video, valor predeterminado `720p`

            **Valores opcionales:**
            - `480p`: menor claridad, precio mas bajo
            - `720p`: claridad estandar, este es el valor predeterminado
          enum:
            - 480p
            - 720p
          default: 720p
          example: 720p
        aspect_ratio:
          type: string
          description: >-
            Relacion de aspecto del video, valor predeterminado `adaptive`


            **Valores opcionales:**

            - `adaptive`: la relación de salida sigue al video de entrada;
            también puede omitir este campo

            - Las relaciones fijas como `16:9` o `9:16` se rechazan
          enum:
            - adaptive
          default: adaptive
          example: adaptive
        generate_audio:
          type: boolean
          description: |-
            Si se genera audio sincronizado, valor predeterminado `true`

            **Valores opcionales:**
            - `true`: el video incluye audio sincronizado, sin cargo adicional
            - `false`: no se genera audio nuevo
          default: true
          example: true
        callback_url:
          type: string
          description: >-
            Direccion de callback HTTPS despues de completar la tarea


            **Momento del callback:**

            - Se activa cuando la tarea se completa (completed) o falla (failed)

            - Se envia despues de confirmar la facturacion


            **Restricciones de seguridad:**

            - Solo admite protocolo HTTPS

            - Prohibido el callback a direcciones IP de red interna (127.0.0.1,
            10.x.x.x, 172.16-31.x.x, 192.168.x.x, etc.)

            - La longitud de la URL no debe exceder `2048` caracteres


            **Mecanismo de callback:**

            - Tiempo de espera: `10` segundos

            - Maximo `3` reintentos despues del fallo (reintentos a los
            `1`/`2`/`4` segundos despues del fallo)

            - El formato del cuerpo de respuesta del callback es consistente con
            el formato de retorno de la interfaz de consulta de tareas

            - Un codigo de estado 2xx se considera exitoso, otros codigos de
            estado activan reintentos
          format: uri
          example: https://your-domain.com/webhooks/video-task-completed
    VideoGenerationResponse:
      type: object
      properties:
        created:
          type: integer
          description: Marca de tiempo de creacion de la tarea
          example: 1761313744
        id:
          type: string
          description: ID de la tarea
          example: task-unified-1774857405-abc123
        model:
          type: string
          description: Nombre del modelo utilizado
          example: seedance-2.5-flash-video-edit
        object:
          type: string
          enum:
            - video.generation.task
          description: Tipo especifico de la tarea
        progress:
          type: integer
          description: Porcentaje de progreso de la tarea (0-100)
          minimum: 0
          maximum: 100
          example: 0
        status:
          type: string
          description: Estado de la tarea
          enum:
            - pending
            - processing
            - completed
            - failed
          example: pending
        task_info:
          $ref: '#/components/schemas/VideoTaskInfo'
          description: Informacion detallada de la tarea de video
        type:
          type: string
          enum:
            - text
            - image
            - audio
            - video
          description: Tipo de salida de la tarea
          example: video
        usage:
          $ref: '#/components/schemas/VideoUsage'
          description: Informacion de uso y facturacion
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              description: Identificador del codigo de error
            message:
              type: string
              description: Mensaje de descripcion del error
            type:
              type: string
              description: Tipo de error
    VideoTaskInfo:
      type: object
      properties:
        can_cancel:
          type: boolean
          description: >-
            Indica si se puede cancelar la tarea. Seedance 2.5 Flash no permite
            que el usuario cancele tareas; este campo siempre devuelve `false`.
          example: false
        estimated_time:
          type: integer
          description: Tiempo estimado de finalizacion (segundos)
          minimum: 0
          example: 165
        video_duration:
          type: integer
          description: >-
            Duración del video (segundos). En la edición de video, es la
            duración del video de entrada redondeada hacia arriba al segundo
            entero
          example: 8
    VideoUsage:
      type: object
      description: Informacion de uso y facturacion
      properties:
        billing_rule:
          type: string
          description: Regla de facturacion
          enum:
            - per_call
            - per_token
            - per_second
          example: per_second
        credits_reserved:
          type: number
          description: Creditos estimados a consumir
          minimum: 0
          example: 50
        user_group:
          type: string
          description: Categoria del grupo de usuarios
          example: default
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        ##Todas las interfaces requieren autenticacion mediante Bearer Token##


        **Obtener API Key:**


        Visite la [Pagina de gestion de API
        Key](https://evolink.ai/dashboard/keys) para obtener su API Key


        **Agregue en el encabezado de la solicitud al usar:**

        ```

        Authorization: Bearer YOUR_API_KEY

        ```

````

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