Video y recursos

Crear activo de material

Sube un activo de material de Seedance a un grupo de materiales de TokenLab.

POST
/v1/videos/assets

Importe una URL de origen accesible públicamente a un grupo de materiales de Seedance. TokenLab almacena el material para su uso posterior; utilice el id del activo de material devuelto para la generación, no la URL de origen.

Para library_type: "aigc_avatar", group_id es opcional; TokenLab utiliza o crea el grupo de avatares virtuales predeterminado de la organización. Para library_type: "liveness_face", group_id es obligatorio y debe ser el grupo de TokenLab devuelto por Obtener resultado de validación visual.

TipoEntrada admitida
Imagenjpeg, jpg, png, webp, bmp, tiff, gif, heic, heif; ≤30 MiB; ancho y alto [300, 6000] px; relación de aspecto [0.4, 2.5].
Videomp4, mov; ≤200 MiB.
Audioaac, wav, mp3; ≤15 MiB.

TokenLab comprueba la URL de origen, el tipo de medio, el tamaño del archivo y las dimensiones de imagen legibles. La aceptación de la importación no significa que el activo esté listo: espere a ACTIVE y consulte error_message si falla el procesamiento. Las demás condiciones de medios y rostros se verifican durante el procesamiento.

La creación es asíncrona. Realice consultas a Obtener activo de material hasta que el status sea ACTIVE. Para grupos de personas reales, un grupo se asigna a una persona verificada; las subidas con múltiples rostros o un rostro que no coincida con la persona verificada pueden fallar.

project_name aísla recursos dentro de la organización autenticada. El valor predeterminado es default; use el mismo valor, respetando mayúsculas y minúsculas, para los grupos y activos relacionados. Envíelo en el cuerpo JSON para POST/PUT y en la consulta para GET/DELETE.

Ejemplo de solicitud

curl https://api.tokenlab.sh/v1/videos/assets \
  -H "Authorization: Bearer $TOKENLAB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"library_type":"aigc_avatar","group_id":"group-20260720123456-vrt01","asset_url":"https://example.com/reference.png","asset_type":"Image","asset_name":"Front view","project_name":"default"}'

Ejemplo de respuesta

{
  "id": "asset-20260720123456-qn7wr",
  "object": "seedance.material_asset",
  "project_name": "default",
  "group_id": "group-20260720123456-vrt01",
  "library_type": "aigc_avatar",
  "asset_name": "Front view",
  "asset_type": "Image",
  "status": "PROCESSING",
  "ready": false,
  "error_message": null,
  "metadata": null,
  "created_at": 1782998400000
}
curl -X POST "https://example.com/v1/videos/assets" \  -H "Content-Type: application/json" \  -d '{    "asset_url": "https://example.com/reference.png",    "asset_name": "Front view",    "asset_type": "Image",    "library_type": "aigc_avatar",    "group_id": "group-20260720123456-vrt01"  }'
{  "id": "asset-20260720123456-qn7wr",  "object": "seedance.material_asset",  "group_id": "group-20260720123456-vrt01",  "library_type": "aigc_avatar",  "asset_name": "Front view",  "asset_type": "Image",  "status": "PROCESSING",  "ready": false,  "error_message": null,  "metadata": null,  "created_at": 1782998400000}

Autorización

BearerAuth
AuthorizationBearer <token>

Autenticación con API Key. Cree o gestione API keys en Dashboard > API > API Keys.

Ubicación: header

Cuerpo de la solicitud

application/json

Respuesta

application/json

application/json

application/json

application/json

application/json

application/json