Saltar al contenido principal
POST
/
v1
/
videos
/
generations
seedance-2.0 API
curl --request POST \
  --url https://api.evolink.ai/v1/videos/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "seedance-2.0",
  "prompt": "@Image1 as first frame, a cinematic drone shot over a coastal city at golden hour",
  "image_urls": [
    "https://example.com/ref1.jpg",
    "https://example.com/ref2.jpg"
  ],
  "video_urls": [
    "https://example.com/reference.mp4"
  ],
  "audio_urls": [
    "https://example.com/reference.mp3"
  ],
  "duration": 10,
  "quality": "1080p",
  "aspect_ratio": "16:9",
  "generate_audio": true
}
'
{
  "created": 1761313744,
  "id": "task-unified-1761313744-vux2jw0k",
  "model": "seedance-2.0",
  "object": "video.generation.task",
  "progress": 0,
  "status": "pending",
  "task_info": {
    "can_cancel": true,
    "estimated_time": 165,
    "video_duration": 8
  },
  "type": "video",
  "usage": {
    "billing_rule": "per_call",
    "credits_reserved": 8,
    "user_group": "default"
  }
}
Este modelo aún no está disponible. Los parámetros de la API pueden ajustarse antes del lanzamiento oficial. Consulte el comportamiento real después del lanzamiento.

Autorizaciones

Authorization
string
header
requerido

##Todas las APIs requieren autenticación Bearer Token##

Obtener API Key:

Visita la Página de gestión de API Key para obtener tu API Key

Agregar al encabezado de la solicitud:

Authorization: Bearer YOUR_API_KEY

Cuerpo

application/json
model
enum<string>
predeterminado:seedance-2.0
requerido

Nombre del modelo de generación de video

Opciones disponibles:
seedance-2.0
Ejemplo:

"seedance-2.0"

prompt
string
requerido

Prompt que describe el video que desea generar, limitado a 2000 tokens. Use las etiquetas @-referencia para asignar roles a los archivos cargados

Etiquetas @-referencia:

  • @Image1, @Image2... → imágenes de image_urls (en orden)
  • @Video1, @Video2... → videos de video_urls (en orden)
  • @Audio1, @Audio2... → audios de audio_urls (en orden)
  • Ejemplo: @Image1 as first frame, replicate @Video1 camera movement, @Audio1 for BGM rhythm
Maximum string length: 2000
Ejemplo:

"@Image1 as first frame, a cinematic drone shot over a coastal city at golden hour"

image_urls
string<uri>[]

Lista de URLs de imágenes de referencia para generación de imagen a video y multimodal

Nota:

  • Máximo 9 imágenes por solicitud
  • Tamaño máximo: 30MB por imagen
  • Formatos de archivo admitidos: .jpeg, .png, .webp, .bmp, .tiff, .gif
  • Límite total de entrada mixta: 12 archivos en todas las modalidades
  • Las cargas de rostros humanos realistas no son compatibles y serán rechazadas automáticamente
  • Las URLs de las imágenes deben ser directamente accesibles por el servidor
Maximum array length: 9
Ejemplo:
["https://example.com/image.jpg"]
video_urls
string<uri>[]

Lista de URLs de videos de referencia para edición de video a video y sistema de @-referencia

Nota:

  • Máximo 3 videos por solicitud, duración total 2–15 segundos
  • Tamaño máximo: 50MB por video
  • Formatos de archivo admitidos: .mp4, .mov
  • Rango de píxeles: 409.600 (480p) – 927.408 (720p)
  • El uso de referencias de video aumentará el costo
  • Las cargas de rostros humanos realistas no son compatibles y serán rechazadas automáticamente
  • Las URLs deben ser directamente accesibles por el servidor
Maximum array length: 3
Ejemplo:
["https://example.com/reference.mp4"]
audio_urls
string<uri>[]

Lista de URLs de audio de referencia para generación impulsada por audio a través del sistema de @-referencia

Nota:

  • Máximo 3 pistas de audio por solicitud, duración total ≤ 15 segundos
  • Tamaño máximo: 15MB por audio
  • Formatos de archivo admitidos: .mp3, .wav
  • Alinea cortes, energía de movimiento y transiciones al ritmo y beat
  • Las URLs deben ser directamente accesibles por el servidor
Maximum array length: 3
Ejemplo:
["https://example.com/reference.mp3"]
duration
integer

Especifica la duración del video generado (en segundos), por defecto 5 segundos

Nota:

  • Admite cualquier valor entero entre 4 y 15 segundos
  • La facturación de una solicitud individual se basa en el valor de duration; duraciones más largas resultan en costos más altos
Rango requerido: 4 <= x <= 15
quality
enum<string>

Resolución de video, por defecto 720p

Nota:

  • 480p: Resolución más baja, precio más bajo
  • 720p: Definición estándar, precio estándar, este es el valor predeterminado
  • 1080p: Alta definición, precio más alto
Opciones disponibles:
480p,
720p,
1080p
Ejemplo:

"720p"

aspect_ratio
string

Relación de aspecto del video

Valores admitidos:

  • 16:9 (horizontal), 9:16 (vertical), 1:1 (cuadrado), 4:3, 3:4, 21:9 (ultra panorámico), adaptive
  • Valor predeterminado: 16:9
Ejemplo:

"16:9"

generate_audio
boolean
predeterminado:true

Si se genera audio, habilitarlo aumentará el costo, por defecto true

Opciones:

  • true: El video de salida del modelo incluye audio sincronizado. Seedance 2.0 puede generar automáticamente voz, efectos de sonido y música de fondo coincidentes basándose en los prompts de texto y el contenido visual. Se recomienda colocar los diálogos entre comillas dobles para optimizar la generación de audio. Ejemplo: El hombre detuvo a la mujer y dijo: "Recuerda, nunca debes señalar la luna con el dedo."
  • false: El video de salida del modelo es silencioso
Ejemplo:

true

callback_url
string<uri>

URL de callback HTTPS después de completar la tarea

Momento del callback:

  • Se activa cuando la tarea se completa, falla o se cancela
  • Se envía después de completar la confirmación de facturación

Restricciones de seguridad:

  • Solo se admite el protocolo HTTPS
  • Se prohíben los callbacks 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
  • Máximo de 3 reintentos después de un fallo (los reintentos ocurren después de 1/2/4 segundos tras el fallo)
  • El formato del cuerpo de respuesta del callback es consistente con el formato de respuesta de la API de consulta de tareas
  • La URL de callback que devuelve un código de estado 2xx se considera exitosa; otros códigos de estado activarán reintentos
Ejemplo:

"https://your-domain.com/webhooks/video-task-completed"

Respuesta

Tarea de generación de video creada exitosamente

created
integer

Marca de tiempo de creación de la tarea

Ejemplo:

1761313744

id
string

ID de tarea

Ejemplo:

"task-unified-1761313744-vux2jw0k"

model
string

Nombre del modelo real utilizado

Ejemplo:

"seedance-2.0"

object
enum<string>

Tipo específico de la tarea

Opciones disponibles:
video.generation.task
progress
integer

Porcentaje de progreso de la tarea (0-100)

Rango requerido: 0 <= x <= 100
Ejemplo:

0

status
enum<string>

Estado de la tarea

Opciones disponibles:
pending,
processing,
completed,
failed
Ejemplo:

"pending"

task_info
object

Información detallada de la tarea de video

type
enum<string>

Tipo de salida de la tarea

Opciones disponibles:
text,
image,
audio,
video
Ejemplo:

"video"

usage
object

Información de uso y facturación