models

ByteDance: Seedance 2.0

Markdown · JSON

ByteDance: Seedance 2.0

ByteDance Seedance 2.0 combina generación nativa de audio y video con referencias de imagen, video y sonido. Dirige escenas nuevas, edita material existente o extiende una secuencia; la edición estándar incluye salida documentada de 1080p y 4K de 10 bits.

Sobre el modelo

Esta descripción cubre las capacidades del modelo. Las entradas, salidas y opciones disponibles en Ailoot se indican a continuación para el método seleccionado.

Seedance 2.0 es el modelo estándar de ByteDance Seed para creación multimodal de audio y video. Combina texto, imágenes, videos y audio en una arquitectura de generación conjunta, con flujos creativos separados para escenas guiadas por referencias, edición y extensión de video. Sirve cuando el encargo requiere una interpretación coherente e información visual o sonora específica de materiales preparados.

Referencia multimodal y control de dirección

Las imágenes pueden definir apariencia del sujeto, estilo visual y composición. Los videos de referencia pueden orientar acción, movimiento de cámara y efectos. El audio puede orientar timbre, música o diálogo. Define la función de cada material y describe después la escena resultante. El fabricante enfatiza el control de interpretación, luz, sombras y lenguaje de cámara.

Para una historia de producto, prepara una imagen del producto, una referencia de movimiento de cámara y una indicación sonora. Un encargo podría decir: «Conserva el florero de vidrio azul de Image 1. Usa el travelling lateral lento de Video 1. El florero está en una repisa iluminada por el sol, con música instrumental suave basada en Audio 1». La salida prevista es una escena nueva que combine información seleccionada de las referencias.

Las entradas pueden combinar imagen y audio, imagen y video, video y audio o los tres. No se admite audio solo ni texto con audio sin imagen o video. También se documentan texto a video tradicional, generación con primer fotograma y generación con primero y último. Si importan composiciones inicial y final fijas, usa su flujo específico: nombrar una imagen de referencia como extremo en omni-reference solo la guía indirectamente.

Edición de material

El modelo puede sustituir un sujeto, añadir o eliminar objetos, cambiar elementos y redibujar o reparar partes de un video. Describe el cambio específico e identifica el material fuente. Para añadir, incluye momento y posición de aparición; para eliminar o sustituir, precisa el objeto y nombra lo que debe permanecer.

Por ejemplo: «Sustituye la lámpara de escritorio de Video 1 por la lámpara de latón de Image 1. Conserva el movimiento de cámara, la disposición del escritorio y la dirección de la luz». El resultado deseado es una versión editada con esa sustitución. Revisa las zonas sin cambios además del objeto nuevo, especialmente durante oclusiones, movimiento y cambios de toma.

Extensión y conexión de una secuencia

Seedance 2.0 puede extender video hacia adelante o atrás y conectar hasta tres clips mediante transiciones generadas. Especifica la dirección temporal y el evento nuevo. Para unirlos, ordena los clips y describe la transición de cada pareja, como una cámara que entra por una puerta en una toma y llega al siguiente entorno.

Una extensión sencilla suele devolver la continuación desarrollada alrededor del material fuente; incluye una instrucción clara si el resultado también debe repetir el segmento original. Al completar una conexión entre dos o tres clips, el flujo puede incluir material original y contenido nuevo de transición. Sirve para desarrollar un inicio o final o conectar escenas preparadas sin dejar indefinida la acción de unión.

Salida de la edición estándar y 4K

La edición estándar documenta MP4 a 24 fps y duraciones de 4 a 15 segundos. Sus niveles son 480p, 720p y 1080p con profundidad de color de 8 bits, además de 4K de 10 bits. Las relaciones compatibles son 21:9, 16:9, 4:3, 1:1, 3:4 y 9:16. También se documentan encuadre adaptativo y duración automática. Fast tiene una especificación propia más limitada de 480p/720p.

La salida 4K usa codificación H.265/HEVC. La codificación de diez bits conserva más gradaciones tonales y transiciones de color más suaves, algo relevante en material con gradientes sutiles de luz o color. Comprueba que el entorno de reproducción y edición pueda decodificarla; algunos navegadores y dispositivos no la reproducen directamente. Un contenedor compatible no asegura por sí solo decodificación compatible de video.

El modelo puede generar sonido sincronizado o video silencioso y devolver el último fotograma para una escena posterior. El audio generado es mono. La familia 2.0 no admite el modo separado Draft de vista previa en dos etapas, por lo que no debe deducirse esa función a partir de otra edición de Seedance.

Preparación de referencias y límites sustantivos

La capacidad documentada es de hasta nueve imágenes, tres videos y tres clips de audio. Este perfil del fabricante no acepta cargas directas de imágenes o videos de referencia con rostros humanos reales; los retratos usan su flujo compatible de recursos de retrato. Cada clip de video y audio debe durar 2–15 segundos. Todos los videos juntos deben caber en 15 segundos y todos los audios tienen su propio total de 15 segundos. Los videos usan MP4 o MOV a 24–60 fps, hasta 200 MB cada uno; los audios usan WAV o MP3, hasta 15 MB cada uno. Los formatos de imagen enumerados son JPEG, PNG, WebP, BMP, TIFF, GIF, HEIC y HEIF. Cada imagen debe pesar menos de 30 MB y el cuerpo de solicitud no debe superar 64 MB. En el perfil documentado, ancho y alto de imagen deben estar estrictamente entre 300 y 6,000 píxeles, con relación ancho/alto estrictamente entre 0.4 y 2.5. Los videos permiten 300–6,000 píxeles por dimensión y relaciones de 0.4–2.5, inclusive, con 407,696–8,295,044 píxeles totales. Los videos MP4 o MOV usan H.264/AVC o H.265/HEVC y audio AAC o MP3.

Ordena deliberadamente los archivos y menciona cada uno por tipo de medio y número: Image 1, Video 1 y Audio 1. El número sigue el orden de archivos de ese tipo. Explica qué rasgos transferir y qué contenido de fuente no debe definir la escena nueva. Los idiomas de instrucciones documentados incluyen inglés, español, indonesio, portugués y japonés. Mantén consistente el idioma hablado en diálogo; la guía desaconseja mezclar idiomas salvo nombres propios. Para trabajo guiado por voz, separa hablante, línea exacta e indicación de interpretación.

Prepara primera y última imagen con encuadre compatible. Una discrepancia entre imagen de entrada y dimensiones de salida puede causar recorte o cambio visual abrupto; las dimensiones coincidentes y el encuadre adaptativo son soluciones documentadas. Concentra la descripción en el evento y las funciones de referencia. El fabricante advierte que las instrucciones largas pueden dispersar información y hacer que se ignoren detalles. Revisa movimiento, continuidad de referencias, interpretación de audio y uniones entre escenas como partes distintas del resultado creativo.

Plan de tomas y dirección de texto

Para una escena compleja, organiza el encargo como Toma 1, Toma 2 y Toma 3, especificando en orden cámara, acción del sujeto, posición y sonido. La guía recomienda un movimiento de cámara por toma y priorizar acciones lentas y conectadas. Los tiempos exactos por toma son inestables, por lo que una secuencia de eventos controla mejor que forzar varias ventanas de tiempo exactas.

El modelo también genera texto común, incluidos lemas, subtítulos y globos de diálogo. Puedes dirigir color, tratamiento visual, ubicación y entrada. Usa caracteres comunes en vez de raros o símbolos especiales y revisa la redacción en movimiento. En referencias de sujeto, vincula claramente cada recurso al personaje u objeto previsto. Las vistas de producto aportan información visual diferente; los collages de vistas de personaje pueden confundir la identidad facial. La recomendación documentada es un retrato claro y una imagen de cuerpo completo separados.

Comportamientos a revisar antes de una edición

La guía documenta subtítulos, logotipos, personajes duplicados no deseados y variación de estilo. El material limpio, etiquetas consistentes y restricciones explícitas reducen esos riesgos, pero no garantizan eliminar texto no deseado o figuras duplicadas. Más de cuatro personas de referencia se considera un riesgo de estabilidad, distinto del número de archivos aceptado.

La extensión puede crear saltos o retrocesos en la unión y las continuaciones repetidas acumular degradación de imagen. Revisa los fotogramas límite y limita extensiones encadenadas. Una voz de referencia puede diferir del timbre fuente; la narración puede terminar con un clic o corte abrupto, para lo cual se documenta un fundido de audio como solución. Los caracteres chinos polifónicos, poco comunes o de forma similar pueden pronunciarse mal. Para un efecto animado preciso, como una cuenta regresiva, una referencia de movimiento informa más que una solicitud verbal sola. Son razones concretas para revisar por separado identidad, texto, movimiento y sonido al seleccionar el clip.

Ailoot Ultra · Video POST /v1/videos bytedance/seedance-2.0

bytedance/seedance-2.0

ByteDance /bytedance/seedance-2.0

Inicio

ByteDance Seedance 2.0 combina generación nativa de audio y video con referencias de imagen, video y sonido. Dirige escenas nuevas, edita material existente o extiende una secuencia; la edición estándar incluye salida documentada de 1080p y 4K de 10 bits.

Entradas aceptadas
Texto · Imágenes · Audio
Resultados
Video

Disponible en Ailoot · entradas y métodos

Ailoot Ultra · Video POST /v1/videos
Entrada
text, image, audio
Salida
video
Formato de salida
bytes MP4 originales; sin normalización ni transcodificación
CampoTipoRequisitoValores y límitesPredeterminado
CampomodelTipostringRequisitoObligatorioValores y límites
bytedance/seedance-2.0
Predeterminado—
CampopromptTipostringRequisitoObligatorioValores y límitesPredeterminado—
CampodurationTipointegerRequisitoObligatorioValores y límites
4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
Mínimo: 1
Máximo: 600
Predeterminado—
CamporesolutionTipostringRequisitoOpcionalValores y límites
480p, 720p, 1080p, 4K
Predeterminado—
Campoaspect_ratioTipostringRequisitoOpcionalValores y límites
1:1, 3:4, 9:16, 4:3, 16:9, 21:9, 9:21
Predeterminado—
Campogenerate_audioTipobooleanRequisitoOpcionalValores y límites
false, true
Condiciones: En 480p y 720p, omitir generate_audio selecciona el precio con audio y false selecciona el precio sin audio. En 1080p y 4K, el precio por resolución se aplica a cualquiera de las dos configuraciones. Revisa has_audio en el resultado para conocer la pista de audio devuelta.
Predeterminado—
Campoframe_imagesTipoarrayRequisitoOpcionalValores y límites
Número mínimo de elementos: 1
Número máximo de elementos: 2
Contenido de entrada: Arreglo de objetos de fotograma. Cada uno tiene type=image_url, image_url que contiene url y frame_type=first_frame o last_frame. Cada función puede aparecer como máximo una vez. Usa URL HTTPS públicas.
Claves exactas: type, image_url, frame_type
Condiciones: Estas claves se aplican a cada objeto de fotograma. Omite frame_images para una solicitud de solo texto.
Predeterminado—
Campoinput_referencesTipoarrayRequisitoOpcionalValores y límites
Contenido de entrada: Arreglo de objetos de referencia de imagen o audio. Establece type en image_url o audio_url y proporciona el objeto URL correspondiente que contiene url. Las referencias de video siguen sin poder cotizarse.
Condiciones: Omite frame_images para usar el modo de referencias. Usa URL HTTPS públicas.
Predeterminado—
CamposizeTipostringRequisitoOpcionalValores y límites
480x480, 480x640, 480x854, 640x480, 854x480, 1120x480, 720x720, 720x960, 720x1280, 720x1680, 960x720, 1280x720, 1680x720, 1080x1080, 1080x1440, 1080x1920, 1440x1080, 1920x1080, 2520x1080, 3840x2160, 2160x3840, 2160x2160, 2880x2160, 2160x2880, 5040x2160
Patrón: ^[1-9][0-9]*x[1-9][0-9]*$
Predeterminado—
CamposeedTipointegerRequisitoOpcionalValores y límites
Mínimo: -9,223,372,036,854,775,808
Máximo: 9,223,372,036,854,775,807
Predeterminado—
Campocallback_urlTipostringRequisitoOpcionalValores y límites
Patrón: ^https://
Predeterminado—
Camposession_idTipostringRequisitoOpcionalValores y límitesPredeterminado—
CampotraceTipoobjectRequisitoOpcionalValores y límitesPredeterminado—
CampouserTipostringRequisitoOpcionalValores y límitesPredeterminado—
Combinaciones de materiales de entrada

Texto a video · Una instrucción escrita. · Obligatorio: model, prompt, duration

Proporciona una instrucción de texto y una duración compatible en segundos enteros. Usa un tamaño exacto de la lista o una resolución y relación de aspecto que correspondan a las dimensiones enumeradas.

model: Tipo: string · bytedance/seedance-2.0

prompt: Tipo: string · Máximo de bytes UTF-8: 10,000 · Se requiere contenido distinto de espacios en blanco: Sí

Imagen a video · Una instrucción escrita y una imagen de fotograma. · Obligatorio: model, prompt, duration, frame_images

frame_images es un arreglo de objetos con type=image_url, image_url que contiene url y frame_type. Usa una URL HTTPS pública de imagen; first_frame y last_frame pueden aparecer una vez cada uno. Usa un tamaño de salida enumerado o dimensiones compatibles. No agregues referencias de video.

Claves exactas: type, image_url, frame_type

model: Tipo: string · bytedance/seedance-2.0

prompt: Tipo: string · Máximo de bytes UTF-8: 10,000 · Se requiere contenido distinto de espacios en blanco: Sí

Reference to video · Una instrucción escrita y referencias de imagen o audio. · Obligatorio: model, prompt, duration, input_references

input_references es un arreglo. Cada objeto tiene type=image_url o type=audio_url y un objeto URL correspondiente que contiene url. Usa enlaces HTTPS públicos. Omite frame_images para seleccionar el modo de referencias. Las referencias de video no pueden cotizarse.

model: Tipo: string · bytedance/seedance-2.0

prompt: Tipo: string · Máximo de bytes UTF-8: 10,000 · Se requiere contenido distinto de espacios en blanco: Sí

Parámetros del método y ciclo de vida
ParámetroContrato
Parámetrocontent_typeContratoapplication/json
ParámetrorequiredContratomodel, prompt, duration
Parámetromaterial_typesContratotext, image, audio
Parámetroadditional_propertiesContratofalse
Parámetrooptional_controlsContratoresolution, aspect_ratio, generate_audio, frame_images, input_references, size, seed, callback_url, session_id, trace, user

Ciclo de vida: submit_once_poll_original

GET /v1/videos/{public_id}

GET /v1/videos/{public_id}/content

Tarifas

Cómo se calcula el cargo definitivo

Las tarifas mostradas permiten estimar el costo antes de la generación. El cargo final se calcula a partir del costo registrado para la generación original. La duración medida de la salida y las cantidades estimadas no son la cantidad facturable final.

Las referencias tarifarias no añaden opciones a la solicitud. Los parámetros admitidos se indican en el método seleccionado.

Modo fast
Sin especificar Cuando se selecciona el modo fast
Modo flex
Sin especificar Cuando se selecciona el modo flex
Esfuerzo máximo de razonamiento
Sin especificar Cuando el esfuerzo máximo de razonamiento usa el ajuste default

Tarifas estimadas para comparar

Precios por configuración

Relaciona cada cargo con las condiciones mostradas. Usa una tarifa para cada conjunto de configuraciones alternativas.

ConfiguraciónTabla de tarifasCantidad previstaUnidad de facturaciónCondiciones de facturaciónCargo
ConfiguraciónTarifas base por tokenTabla de tarifasTarifa baseCantidad prevista—Unidad de facturación—Condiciones de facturación—Cargo
Entrada · Tokens de entrada · Estimación solo para comparar — / 1K tokens
Salida · Tokens de salida · Estimación solo para comparar — / 1K tokens
Entrada · Lectura de caché · Estimación solo para comparar — / 1K tokens
Entrada · Escritura en caché · Estimación solo para comparar — / 1K tokens
Entrada · Escritura en caché, 1 hora · Estimación solo para comparar — / 1K tokens
ConfiguraciónPrecio por token de videoTabla de tarifas—Cantidad prevista—Unidad de facturaciónpor 1K tokens de videoCondiciones de facturaciónNo se declara ninguna condición adicional en esta clave de precios.Cargo
Salida · Precio por token de video · Estimación solo para comparar $0.014 por 1K tokens de video

La tarifa por tokens de video es la referencia principal de precio. Las estimaciones destacadas por segundo son referencias independientes, no un cargo adicional.

ConfiguraciónPrecio por token de videoTabla de tarifas—Cantidad prevista—Unidad de facturaciónpor 1K tokens de videoCondiciones de facturaciónresolution: 1080pCargo
Salida · Precio por token de video · Estimación solo para comparar $0.0154 por 1K tokens de video

La tarifa por tokens de video es la referencia principal de precio. Las estimaciones destacadas por segundo son referencias independientes, no un cargo adicional.

ConfiguraciónPrecio por token de videoTabla de tarifas—Cantidad prevista—Unidad de facturaciónpor 1K tokens de videoCondiciones de facturaciónentrada: with_video_input; resolución: 1080pCargo
reference · Precio por token de video · Estimación solo para comparar $0.0094 por 1K tokens de video

La tarifa por tokens de video es la referencia principal de precio. Las estimaciones destacadas por segundo son referencias independientes, no un cargo adicional.

ConfiguraciónPrecio por token de videoTabla de tarifas—Cantidad prevista—Unidad de facturaciónpor 1K tokens de videoCondiciones de facturaciónresolution: 4kCargo
Salida · Precio por token de video · Estimación solo para comparar $0.008 por 1K tokens de video

La tarifa por tokens de video es la referencia principal de precio. Las estimaciones destacadas por segundo son referencias independientes, no un cargo adicional.

ConfiguraciónPrecio por token de videoTabla de tarifas—Cantidad prevista—Unidad de facturaciónpor 1K tokens de videoCondiciones de facturaciónentrada: with_video_input; resolución: 4kCargo
reference · Precio por token de video · Estimación solo para comparar $0.0048 por 1K tokens de video

La tarifa por tokens de video es la referencia principal de precio. Las estimaciones destacadas por segundo son referencias independientes, no un cargo adicional.

ConfiguraciónPrecio por token de videoTabla de tarifas—Cantidad prevista—Unidad de facturaciónpor 1K tokens de videoCondiciones de facturaciónentrada: with_video_inputCargo
reference · Precio por token de video · Estimación solo para comparar $0.0086 por 1K tokens de video

La tarifa por tokens de video es la referencia principal de precio. Las estimaciones destacadas por segundo son referencias independientes, no un cargo adicional.

ConfiguraciónPrecio por token de videoTabla de tarifas—Cantidad prevista—Unidad de facturaciónpor 1K tokens de videoCondiciones de facturaciónconfiguración de audio: without_audioCargo
Salida · Precio por token de video · Estimación solo para comparar $0.014 por 1K tokens de video

La tarifa por tokens de video es la referencia principal de precio. Las estimaciones destacadas por segundo son referencias independientes, no un cargo adicional.

ConfiguraciónCosto estimado de generaciónTabla de tarifas—Cantidad previstaestimación para una generaciónUnidad de facturación—Condiciones de facturación—Cargo
Salida · Costo estimado de generación · Estimación solo para comparar $0.3024 estimación previa a la generación

Esta estimación no es un cargo adicional ni una tarifa fija por la generación completada.

Ailoot reserva un monto estimado antes de la solicitud. Tras obtener el resultado, liquida el cargo definitivo según el uso medido. En las respuestas en flujo, la liquidación usa el registro de uso final. Cómo funcionan la reserva y la liquidación →

Detalles de la tarifa de referencia

Las tablas de referencia del modelo no cambian la selección del método, las cotizaciones ni los cargos. Los cargos aplicados usan las tarifas del método Ailoot seleccionado.

Referencias de precios por configuración de video

Precios por configuración

Relaciona cada cargo con las condiciones mostradas. Usa una tarifa para cada conjunto de configuraciones alternativas.

ConfiguraciónCondiciones de facturaciónCargo
ConfiguraciónPrecio por token de videoCondiciones de facturaciónNo se declara ninguna condición adicional en esta clave de precios.Cargo
Salida · Precio por token de video $0.014 por 1K tokens de video

La tarifa por tokens de video es la referencia principal de precio. Las estimaciones destacadas por segundo son referencias independientes, no un cargo adicional.

ConfiguraciónPrecio por token de videoCondiciones de facturaciónresolution: 4kCargo
Salida · Precio por token de video $0.008 por 1K tokens de video

La tarifa por tokens de video es la referencia principal de precio. Las estimaciones destacadas por segundo son referencias independientes, no un cargo adicional.

ConfiguraciónPrecio por token de videoCondiciones de facturaciónresolution: 1080pCargo
Salida · Precio por token de video $0.0154 por 1K tokens de video

La tarifa por tokens de video es la referencia principal de precio. Las estimaciones destacadas por segundo son referencias independientes, no un cargo adicional.

ConfiguraciónPrecio por token de videoCondiciones de facturaciónconfiguración de audio: without_audioCargo
Salida · Precio por token de video $0.014 por 1K tokens de video

La tarifa por tokens de video es la referencia principal de precio. Las estimaciones destacadas por segundo son referencias independientes, no un cargo adicional.

ConfiguraciónPrecio por token de videoCondiciones de facturaciónentrada: with_video_inputCargo
reference · Precio por token de video $0.0086 por 1K tokens de video

La tarifa por tokens de video es la referencia principal de precio. Las estimaciones destacadas por segundo son referencias independientes, no un cargo adicional.

ConfiguraciónPrecio por token de videoCondiciones de facturaciónentrada: with_video_input; resolución: 4kCargo
reference · Precio por token de video $0.0048 por 1K tokens de video

La tarifa por tokens de video es la referencia principal de precio. Las estimaciones destacadas por segundo son referencias independientes, no un cargo adicional.

ConfiguraciónPrecio por token de videoCondiciones de facturaciónentrada: with_video_input; resolución: 1080pCargo
reference · Precio por token de video $0.0094 por 1K tokens de video

La tarifa por tokens de video es la referencia principal de precio. Las estimaciones destacadas por segundo son referencias independientes, no un cargo adicional.

Solicitudes de ejemplo

Ailoot Ultra · Video

curl · crea un video
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
from pathlib import Path
Path('request.json').write_text('{"model":"bytedance/seedance-2.0","prompt":"A serene mountain landscape at sunset","duration":4,"resolution":"480p","size":"480x480","generate_audio":false}', encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('result.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT

Recibir y guardar resultados

Ailoot Ultra · Video

URL firmadas de contenido que te pertenece

  • GET /v1/videos/{public_id}
  • GET /v1/videos/{public_id}/content
Consultar el estado de la tarea
Obtener el estado de la operación original con GET
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_STATUS_URL'
import json
from pathlib import Path
from urllib.parse import quote
r=json.loads(Path('result.json').read_text())
if not isinstance(r.get('id'),str) or not r['id']:raise SystemExit('Keep the original response and headers for reconciliation; no returned ID')
Path('status-url.txt').write_text('https://api.ailoot.ai/v1/videos/'+quote(r['id'],safe=''))
PY_STATUS_URL
curl --fail-with-body --silent --show-error "$(cat status-url.txt)" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -D status-headers.txt -o status.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('status.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
Otras consultas de contenido
Guarda todos los resultados completados que te pertenecen
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_ASSETS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path('status.json').read_text())
if r.get('status')!='completed':raise SystemExit('Keep the original ID and read its status; never recreate an unknown job')
if not isinstance(r.get('data'),list) or not r['data']:raise SystemExit('Keep the complete original status; no completed outputs supplied')
urls=[]
for i,u in enumerate(r.get('data',[])):
    if not isinstance(u,str):raise SystemExit('Keep the original response; unexpected asset shape')
    urls.append((str(i),u))
for label,path in urls:
    u=urljoin('https://api.ailoot.ai',path);z=urlsplit(u)
    if z.scheme!='https' or z.netloc!='api.ailoot.ai' or z.username or z.password:raise SystemExit('Use the actual returned Ailoot owned content URL')
    target=Path('owned-'+label+'.bin')
    subprocess.run(['curl','--fail-with-body','--silent','--show-error',u,'-H','Authorization: Bearer '+os.environ['AILOOT_API_KEY'],'-D',str(target)+'.headers','-o',str(target)],check=True)
print('All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.')
PY_ASSETS
Conserva todos los resultados completados

Guarda todos los videos completados o archivos recibidos; descarga cada URL de archivo que se haya devuelto.

Conserva cada salida real que te pertenezca y los metadatos medidos que se devuelvan con ella.

Si es necesario revisar la respuesta original

503 result_pending_check + id original + X-Should-Retry:false; nunca repitas el envío original

Campos de respuesta
CampoTipoSignificado
CampoindexTipointegerSignificadoPosición de este video en la lista de salidas, con índice que comienza en cero.
Campocontent_urlTipostringSignificadoURL HTTPS firmada de descarga de este video completado.
Camposha256Tipostring | nullSignificadoResumen SHA-256 de los bytes del video original; null si no está disponible.
Camposize_bytesTipointeger | nullSignificadoTamaño del archivo de video original en bytes; null si no está disponible.
Campoduration_msTipointeger | nullSignificadoDuración medida del video en milisegundos; null si no está disponible.
CampowidthTipointeger | nullSignificadoAncho del video en píxeles; null si no está disponible.
CampoheightTipointeger | nullSignificadoAlto del video en píxeles; null si no está disponible.
Campovideo_codecTipostring | nullSignificadoIdentificador del códec de video; null si no se registró.
Campohas_audioTipoboolean | nullSignificadoIndica si el video contiene una pista de audio; null si no se midió.
Campoaudio_codecTipostring | nullSignificadoIdentificador del códec de audio; null cuando no se registra ningún identificador.
Errores y siguientes pasos
RespuestaCondiciónSiguiente paso
Respuesta404 · not_found_errorCondiciónEl acceso al video no está disponible o no se encontró este ID de video.Siguiente pasoVerifica el acceso al video. Para un video existente, usa su ID público original y la misma clave API.
Respuesta401 · authentication_errorCondiciónLa clave API no coincide con la cuenta autenticada.Siguiente pasoRevisa tu clave API y el acceso de tu cuenta antes de enviar.
Respuesta400 · invalid_request_errorCondiciónNo se pudo leer la solicitud o el índice de descarga no es válido.Siguiente pasoCorrige el cuerpo de la solicitud. Para una descarga, elige un índice de salida devuelto por la tarea original.
Respuesta422 · price_unavailableCondiciónNo se puede cotizar la configuración de video seleccionada.Siguiente pasoElige una configuración de video compatible y completa sus opciones obligatorias antes de enviar una solicitud corregida.
Respuesta422 · invalid_request_errorCondiciónUna entrada de video o la tarea original de continuación no es válida.Siguiente pasoUsa entradas HTTPS válidas. Para una continuación, usa el ID público de tu video original completado con la misma clave API.
Respuesta402 · billing_errorCondiciónEl saldo disponible o los límites no permiten reservar fondos.Siguiente pasoRevisa tu saldo disponible y tus límites antes de enviar una solicitud nueva.
Respuesta503 · server_errorCondiciónLa verificación del video, el almacenamiento o el acceso al servicio no están disponibles temporalmente.Siguiente pasoEspera a que el servicio esté disponible. Si ya tienes un ID de video, consulta esa tarea original en lugar de crear otra generación.
Respuesta503 · result_pending_checkCondiciónEl resultado y el cargo del video original requieren verificación.Siguiente pasoConserva el ID de video devuelto y consulta esa tarea. No envíes una solicitud de generación de reemplazo mientras se verifica.
Respuesta503 · owned_result_unavailableCondiciónLa descarga del video existente no está disponible temporalmente.Siguiente pasoConsulta más tarde la misma tarea de video y descarga su salida existente. Una generación nueva crea una operación independiente.
Respuesta409 · video_not_readyCondiciónEl contenido del video no se ha publicado.Siguiente pasoConsulta el estado de la tarea original. Descarga cuando indique completed; si indica failed, sigue su aviso de verificación del cargo.

Alias

Alias del modelo

Ailoot Ultra bytedance/seedance-2.0

Alias de rutas de métodos

Usa las rutas de método indicadas arriba.

ID de modelo relacionados

bytedance/seedance-2.0

FAQ · ByteDance: Seedance 2.0
¿Qué entradas y resultados están disponibles?

POST /v1/videos · bytedance/seedance-2.0: text, image, audio → video

¿Qué campos utiliza la solicitud?

POST /v1/videos · bytedance/seedance-2.0: model, prompt, duration, resolution, aspect_ratio, generate_audio, frame_images, input_references, size, seed, callback_url, session_id, trace, user

¿Qué límites se aplican?

POST /v1/videos · bytedance/seedance-2.0: duration.minimum: 1; duration.maximum: 600; frame_images.max_items: 2; frame_images.min_items: 1; seed.minimum: -9223372036854775808; seed.maximum: 9223372036854775807

Más detalles

Conecta Ailoot a Claude Code, OpenCode, Hermes o tu aplicación.

La empresa y su cartera de proyectos

La empresa y su cartera de proyectos: millones de clientes; ventas por miles de millones al mes.

Compra tokens con descuento.

Ahorro por suscripción para trabajo habitual. Códigos promocionales: hasta el 50% al comprar tokens.

Suscripción
Elige un plan con descuento para tus peticiones habituales.
Código de hasta el 50%
Introduce el código al comprar. El precio se recalcula según la promoción vigente.
Gasto en el historial
Modelo, tokens e importe quedan guardados por cada petición.

Elegir suscripción · Consultar precios de modelos

Conecta la API al producto que vendes.

SaaS, aplicaciones y bots bajo la oferta y el acuerdo de licencia Ailoot. Solicita una licencia de reventa para redistribuir el acceso.

Aplicación comercial
Integra generación de texto, imágenes, vídeo y sonido en funciones de pago de tu servicio.
Licencia para revendedores
Envía descripción del proyecto y esquema de acceso. Solicita condiciones escritas de uso y reventa.
Documentos en la web
La oferta, el acuerdo de licencia y la política de datos están disponibles antes de conectar.

Solicitar licencia de reventa · Oferta y acuerdo de licencia