Video & materi

Membuat Aset Material

Mengunggah aset material Seedance ke dalam grup material TokenLab.

POST
/v1/videos/assets

Impor satu URL sumber yang dapat diakses publik ke dalam grup material Seedance. TokenLab menyimpan material tersebut untuk digunakan nanti; gunakan id aset material yang dikembalikan untuk pembuatan, bukan URL sumbernya.

Untuk library_type: "aigc_avatar", group_id bersifat opsional; TokenLab menggunakan atau membuat grup virtual-avatar default organisasi. Untuk library_type: "liveness_face", group_id wajib diisi dan harus berupa grup TokenLab yang dikembalikan oleh Mendapatkan hasil validasi visual.

TipeInput yang didukung
Gambarjpeg, jpg, png, webp, bmp, tiff, gif, heic, heif; ≤30 MiB; lebar dan tinggi [300, 6000] px; rasio aspek [0.4, 2.5].
Videomp4, mov; ≤200 MiB.
Audioaac, wav, mp3; ≤15 MiB.

TokenLab memeriksa URL sumber, jenis media, ukuran file, dan dimensi gambar yang dapat dibaca. Impor yang diterima belum berarti aset siap: tunggu ACTIVE dan periksa error_message jika pemrosesan gagal. Persyaratan media dan wajah lainnya diperiksa selama pemrosesan.

Pembuatan bersifat asinkron. Lakukan polling pada Mendapatkan Material Asset hingga status menjadi ACTIVE. Untuk grup orang asli (real-person), satu grup dipetakan ke satu orang yang terverifikasi; unggahan dengan banyak wajah atau wajah yang tidak cocok dengan orang yang terverifikasi dapat gagal.

project_name memisahkan sumber daya dalam organisasi yang terautentikasi. Nilai default adalah default; gunakan nilai yang sama dan peka huruf besar-kecil untuk grup dan aset terkait. Kirim di body JSON untuk POST/PUT dan parameter kueri untuk GET/DELETE.

Contoh Permintaan

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"}'

Contoh Respons

{
  "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}

Otorisasi

BearerAuth
AuthorizationBearer <token>

Autentikasi API Key. Buat atau kelola API key di Dashboard > API > API Keys.

Lokasi: header

Body permintaan

application/json

Respons

application/json

application/json

application/json

application/json

application/json

application/json