SeedanceLink
Iniciar sesión

DOCUMENTACIÓN PARA DESARROLLADORES

De tu descripción al vídeo, directamente.

Estos ejemplos llaman a SeedanceLink. Usa tu propia clave API; la sesión de Google sirve para la consola web.

En esta página

Antes de empezar

Inicia sesión, añade saldo suficiente para la cotización y crea una clave en un grupo con Seedance habilitado. El ejemplo mínimo de abajo solicita 4 segundos a 480p.

Autenticación

Envía Authorization: Bearer YOUR_API_KEY en las solicitudes de creación, estado y contenido. Usa la misma clave que creó la tarea. Nunca pongas tu clave en una URL.

Authorization: Bearer YOUR_API_KEY
Origen de la APIhttps://seedancelink.io

Si se omiten, la duración es de 5 segundos y la resolución de 720p. Estos ejemplos eligen explícitamente 4 segundos y 480p. Envía application/json y usa uno de los dos ID de modelo mostrados en la página de modelos.

Ejecuta estos ejemplos curl en la misma terminal macOS/Linux o Windows WSL. El primero configura tu clave y la dirección API del sitio. Mantén tu clave privada.

Crear una tarea

El ejemplo solicita un vídeo de 4 segundos. Guarda el id devuelto. Seedance 2.0 admite 4–15 segundos y Seedance 2.5, 4–30. Ambos admiten 480p, 720p y 1080p.

POST /api/v3/contents/generations/tasks
API_KEY='YOUR_API_KEY'
API_BASE='https://seedancelink.io'

curl --fail-with-body --request POST "$API_BASE/api/v3/contents/generations/tasks" \
  --header "Authorization: Bearer $API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
  "model": "seedance-2.0-933",
  "content": [
    {
      "type": "text",
      "text": "Una pequeña barca cruza un lago tranquilo al amanecer, iluminación cinematográfica."
    }
  ],
  "duration": 4,
  "resolution": "480p",
  "ratio": "16:9"
}'

Ejemplo de respuesta

{
  "id": "YOUR_TASK_ID",
  "status": "queued"
}

Guarda el ID de tarea de la respuesta; úsalo en los dos pasos siguientes.

Consultar su estado

Sustituye REPLACE_WITH_RESPONSE_ID por ese id. Consulta cada 15 segundos mientras esté en cola o en ejecución. Descarga al llegar a succeeded. Si es failed o needs_reconcile, deja de consultar; para needs_reconcile contacta con soporte. No vuelvas a enviar automáticamente.

Ejemplo de respuesta

{
  "id": "YOUR_TASK_ID",
  "status": "succeeded"
}

Consulta aproximadamente cada 15 segundos. Descarga solo cuando el estado sea succeeded.

Descargar el vídeo

Usa la misma clave que creó la tarea. Este endpoint protegido requiere tu clave Bearer; abrir su URL en el navegador no basta. curl sigue las redirecciones HTTPS sin compartir la clave con otros hosts.

Estados y facturación

queued
Aceptada y en espera.
running
Generación en curso.
succeeded
Completada; el endpoint de contenido autenticado está listo.
failed
La generación falló; el importe reservado se devolvió.
needs_reconcile
El envío es incierto; el importe reservado se conserva para su revisión.

Cotización antes de generar.

Segundos solicitados × tarifa de resolución × multiplicador aplicable. El importe cotizado se reserva al enviar la solicitud, se cobra si la generación tiene éxito y se devuelve si falla.

Descarga con la misma clave

Tras succeeded, usa content.video_url o el endpoint de contenido de abajo con tu clave API. Un saldo restante de cero no impide descargar una tarea ya pagada.

Si el envío es incierto

Un recibo 202 con needs_reconcile sigue incluyendo un ID de tarea local. Guarda ese ID y consulta su estado. No crees otra tarea automáticamente: el importe original sigue reservado.