APIMaster.ai

Verifikasi pemilik dan aset potret

Panduan APIMaster bersama untuk verifikasi, aset, dan pembuatan video Seedance.

Verifikasi pemilik dan aset potret

Keempat model memakai antarmuka APIMaster yang sama. Backend memetakan endpoint, kredensial, ID, dan status penyedia. Verifikasi resmi pemilik, pemeriksaan potret oleh kanal, serta aset biasa atau virtual merupakan alur berbeda. Gunakan hanya foto dengan izin tegas dari pemilik.

1. Kemampuan dan cakupan

Periksa kemampuan menggunakan kunci APIMaster. Gunakan channel_id yang dikembalikan untuk mengikat konteks. Ketersediaan bergantung pada izin, proyek, dan rute model. Alur yang tidak didukung ditolak tanpa mengganti kanal atau model. SD1.0, SD1.5, dan alias khusus memerlukan pemeriksaan protokol terpisah.

model duration Image Video Audio
seedance-2.0 4–15 s ≤9 ≤3 / ≤15 s ≤3 / ≤15 s
seedance-2.0-fast 4–15 s ≤9 ≤3 / ≤15 s ≤3 / ≤15 s
seedance-2.0-mini 4–15 s ≤9 ≤3 / ≤15 s ≤3 / ≤15 s
seedance-2.5 4–30 s / -1 ≤30 ≤10 / ≤30 s ≤10 / ≤30 s

2. Memilih alur

official_h5 memerlukan sesi dan verifikasi pribadi melalui ponsel. channel_material_review memakai grup purpose=channel_portrait lalu mengirim dan memeriksa aset; owner_verified=false bukan bukti verifikasi resmi. purpose=ordinary digunakan untuk aset biasa bila didukung. virtual_or_ordinary tidak menyediakan verifikasi resmi; unverified berarti kemampuan belum diverifikasi. Tanpa purpose, perilaku grup virtual lama dipertahankan.

curl --fail-with-body 'https://apimaster.ai/v1/seedance2/private-avatar/groups' \
 -H "Authorization: Bearer $APIMASTER_KEY" -H 'Content-Type: application/json' \
 -d "{\"model\":\"seedance-2.5\",\"channel_id\":${APIMASTER_CHANNEL_ID},\"purpose\":\"channel_portrait\",\"name\":\"Authorized portrait materials\"}"

3. Verifikasi melalui ponsel

Untuk official_h5, buat sesi lalu pemilik membuka h5_link melalui ponselnya. APIMaster menyediakan callback HTTPS, sehingga pelanggan tidak memerlukan server callback sendiri. Jangan kirim callback_url. Kunci jangka panjang dan BytedToken tetap di server. Hasil browser saja tidak cukup: server mengonfirmasi ke penyedia. Callback berulang tidak membuat sumber daya tambahan.

export APIMASTER_KEY='<your APIMaster key>'
export APIMASTER_CHANNEL_ID='<available channel ID from the capability API>'
curl --fail-with-body 'https://apimaster.ai/v1/seedance2/private-avatar/capabilities?model=seedance-2.5' -H "Authorization: Bearer $APIMASTER_KEY"
curl --fail-with-body 'https://apimaster.ai/v1/seedance2/private-avatar/verifications' \
 -H "Authorization: Bearer $APIMASTER_KEY" -H 'Content-Type: application/json' \
 -H 'Idempotency-Key: portrait-session-001' \
 -d "{\"model\":\"seedance-2.5\",\"channel_id\":${APIMASTER_CHANNEL_ID},\"name\":\"My portrait\"}"

4. Mengonfirmasi hasil

Setelah completed gunakan group_id publik. Status dan batas waktu berikut berbeda dari masa izin penggunaan potret. Kesalahan jaringan sementara mempertahankan status; jangan membuat sesi baru otomatis. Konsol: /console/seedance-materials. Sesi, grup, aset, dan tugas video mempunyai ID berbeda.

curl --fail-with-body 'https://apimaster.ai/v1/seedance2/private-avatar/verifications/verification_PUBLIC_ID' -H "Authorization: Bearer $APIMASTER_KEY"
API fields / values
capabilities model, channel_id, method, configured, reason, hosted_callback, real_person_verified
verification session_id (id), method, status, h5_link (verification_url), created_at, expires_at, group_id
verification.status creating, pending, completed, failed, expired, failed_unconfirmed, submission_unknown
Idempotency-Key 8–128; same request → original receipt; changed request → 409
verification rate ≤3 / user / minute; upstream limits also apply
H5 / BytedToken single-use H5; query credential ≤30 min; expires_at ≠ portrait authorization expiry

5. Mengunggah dan memeriksa aset

POST /uploads hanya menyimpan berkas asli; POST /assets adalah endpoint bersama untuk pendaftaran dan pemeriksaan. POST /v1/seedance2/private-avatar merupakan alias kompatibel untuk proses yang sama. Hanya Active boleh digunakan untuk video; Processing, Pending, dan Failed tidak. Foto baru dalam grup resmi real_person melalui pemeriksaan kesesuaian orang; channel_portrait tetap pemeriksaan aset. Keberhasilan sebagian mempertahankan aset yang diterima. Setelah timeout, periksa aset yang ada; jangan mengulang POST otomatis atau menebak asset_id.

curl --fail-with-body 'https://apimaster.ai/v1/seedance2/private-avatar/uploads' \
 -H "Authorization: Bearer $APIMASTER_KEY" -F 'file=@authorized-owner.png'
curl --fail-with-body 'https://apimaster.ai/v1/seedance2/private-avatar/assets' \
 -H "Authorization: Bearer $APIMASTER_KEY" -H 'Content-Type: application/json' \
 -H 'Idempotency-Key: portrait-asset-001' \
 -d '{"model":"seedance-2.5","group_id":"group_PUBLIC_ID","asset_type":"Image","assets":[{"url":"<signed upload URL>","name":"Owner"}]}'
curl --fail-with-body 'https://apimaster.ai/v1/tasks/asset_task_PUBLIC_ID' -H "Authorization: Bearer $APIMASTER_KEY"
curl --fail-with-body 'https://apimaster.ai/v1/seedance2/private-avatar/assets?group_id=group_PUBLIC_ID' -H "Authorization: Bearer $APIMASTER_KEY"
curl --fail-with-body 'https://apimaster.ai/v1/seedance2/private-avatar/assets/asset_PUBLIC_ID' -H "Authorization: Bearer $APIMASTER_KEY"
API fields / values
uploads JPEG / PNG ≤10 MB; upload_id, url, url_expires_at, delete_after
groups public id; group_type=virtual / ordinary / channel_portrait / real_person
assets public asset_id; status=Pending / Processing / Active / Failed
channel_material_review verification_method, owner_verified=false, material_purpose, review.scope_model
review task asset_task_*; GET /v1/tasks/{id}

6. Membuat dan mengunduh

Sebelum membuat video, panggil /v1/videos/quote: perkiraan bukan jaminan biaya maksimum. Server mempertahankan kanal, akun, dan proyek yang kompatibel dengan aset. Kombinasi tidak kompatibel ditolak. Pergantian model tetap harus memeriksa batas inputnya; foto baru perlu pemeriksaan baru. Setelah sukses, periksa tagihan dan unduh video.

curl --fail-with-body 'https://apimaster.ai/v1/videos' \
 -H "Authorization: Bearer $APIMASTER_KEY" -H 'Content-Type: application/json' \
 -H 'Idempotency-Key: portrait-video-001' \
 -d '{"model":"seedance-2.5","prompt":"The person smiles naturally","image_urls":["asset://asset_PUBLIC_ID"],"resolution":"480p","duration":4,"generate_audio":false}'
curl --fail-with-body 'https://apimaster.ai/v1/seedance2/private-avatar/video-requests/video_request_PUBLIC_ID' -H "Authorization: Bearer $APIMASTER_KEY"
curl --fail-with-body 'https://apimaster.ai/v1/videos/task_PUBLIC_ID' -H "Authorization: Bearer $APIMASTER_KEY"
curl --fail-with-body 'https://apimaster.ai/v1/videos/task_PUBLIC_ID/billing' -H "Authorization: Bearer $APIMASTER_KEY"
curl --fail-with-body 'https://apimaster.ai/v1/videos/task_PUBLIC_ID/content' -H "Authorization: Bearer $APIMASTER_KEY" -o owner.mp4
API fields / values
generation Idempotency-Key required; no automatic POST retry
receipt video_request_*; X-Seedance-Request-Id; replay → 202 + original receipt
video task task_*; separate from receipt, verification and asset IDs

7. Privasi dan penghapusan

Tautan bertanda tangan bersifat sensitif: pemegangnya dapat mengunduh selama masa berlaku. Jangan mencatat tautan H5, URL bertanda tangan, atau kredensial callback. Menghapus berkas asli tidak menghapus aset penyedia. Penghapusan aset menghapus pemetaan APIMaster dan memanggil penghapusan penyedia jika didukung; operasi jarak jauh yang tidak tersedia tidak dijanjikan. Hapus aset sebelum grup. Video yang sudah dibuat tidak otomatis terhapus. Tidak menyimpan templat biometrik; persetujuan pemeriksaan bukan pengganti izin penggunaan.

API / storage values
signed original URL 1 h
hosted original access ≤24 h; hourly cleanup ≤25 h; private files 0600
DELETE /uploads/{upload_id} hosted original
DELETE /assets/{asset_id} APIMaster mapping; upstream deletion if supported
DELETE /groups/{group_id} empty group

8. Biaya dan kesalahan

Diperiksa pada 2026-10-07: dokumentasi resmi menyebut verifikasi gratis sementara. Biaya nyata sesi, pemeriksaan, unggahan, penyimpanan, dan pengelolaan bergantung pada konteks dan belum seluruhnya dikonfirmasi. Tidak ada pembelian paket otomatis. Pembuatan video memakai penawaran, pencadangan biaya, penyelesaian, dan pengembalian dana yang ada; periksa bukti tagihan nyata. Kesalahan membedakan izin, kemampuan tidak tersedia, pemeriksaan tertunda atau gagal, aset tidak kompatibel, serta hasil penyedia yang belum pasti. Aset pengguna lain tidak dapat diakses.

HTTP context
400 input / callback
403 permissions
404 resource
409 pending / failed review / incompatible context
429 rate limit
502 / 503 uncertain upstream result / unavailable