Kişi doğrulaması ve portre varlıkları
Seedance doğrulaması, varlıkları ve üretimi için ortak APIMaster kılavuzu.
Kişi doğrulaması ve portre varlıkları
Dört model aynı APIMaster arayüzlerini kullanır. Arka uç sağlayıcı uç noktalarını, kimlik bilgilerini, kimlikleri ve durumları eşler. Resmî kişi doğrulaması, kanal portre incelemesi ve sıradan veya sanal varlıklar farklı süreçlerdir. Yalnızca açıkça izin verilen fotoğrafları gönderin.
1. Yetenekler ve kapsam
APIMaster anahtarınızla yetenekleri sorgulayın. Dönen channel_id ile bağlamı sabitleyin. Kullanılabilirlik izinlere, projeye ve model yönlendirmesine bağlıdır. Desteklenmeyen akışlar kanal veya model değiştirilmeden reddedilir. SD1.0, SD1.5 ve özel takma adlar ayrı protokol kontrolü gerektirir.
| 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. Akış seçimi
official_h5 bir oturum ve kişinin telefonda doğrulanmasını gerektirir. channel_material_review, purpose=channel_portrait grubu oluşturup varlık gönderimi ve sorgulaması yapar; owner_verified=false resmî doğrulama kanıtı değildir. Destekleniyorsa sıradan varlıklar için purpose=ordinary kullanılır. virtual_or_ordinary resmî doğrulama sunmaz; unverified yeteneğin doğrulanmadığını belirtir. purpose olmadan mevcut sanal grup davranışı korunur.
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. Telefonda doğrulama
official_h5 için oturum oluşturun; kişi kendi telefonunda h5_link açmalıdır. APIMaster HTTPS callback barındırır; müşterinin kendi sunucusu gerekmez. callback_url göndermeyin. Uzun süreli anahtarlar ve BytedToken sunucuda kalır. Tarayıcı sonucu tek başına yeterli değildir: sunucu sağlayıcıdan doğrular. Yinelenen callback yeni kaynak oluşturmaz.
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. Sonucu doğrulama
completed sonrasında herkese açık group_id kullanın. Aşağıdaki durum ve süreler portrenin kullanım izni süresinden farklıdır. Geçici ağ hataları durumu korur; otomatik yeni oturum açmayın. Konsol: /console/seedance-materials. Oturum, grup, varlık ve video görevi farklı kimliklere sahiptir.
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. Varlık yükleme ve inceleme
POST /uploads yalnızca orijinal dosyayı barındırır; POST /assets ortak kayıt ve inceleme uç noktasıdır. POST /v1/seedance2/private-avatar aynı işlemin uyumluluk takma adıdır. Yalnızca Active üretimde kullanılabilir; Processing, Pending ve Failed kullanılamaz. Resmî real_person grubundaki her yeni fotoğraf aynı kişi kontrolünden geçer; channel_portrait varlık incelemesidir. Kısmi başarı kabul edilen varlıkları korur. Zaman aşımından sonra mevcut varlıkları sorgulayın; POST otomatik tekrarlanmaz ve asset_id tahmin edilmez.
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. Üretme ve indirme
Üretmeden önce /v1/videos/quote çağırın: tahmin azami ücret garantisi değildir. Sunucu uyumlu kanal, hesap ve projeyi korur; uyumsuz birleşimleri reddeder. Model değişikliğinde o modelin sınırları kontrol edilir; yeni fotoğraflar yeni inceleme gerektirir. Başarıdan sonra ücret makbuzunu sorgulayın ve videoyu indirin.
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. Gizlilik ve silme
İmzalı bağlantılar hassastır: bağlantıya sahip olanlar geçerlilik süresinde indirebilir. H5 bağlantılarını, imzalı URL veya callback kimlik bilgilerini kaydetmeyin. Orijinali silmek sağlayıcı varlığını silmez. Varlık silme APIMaster eşlemesini kaldırır ve destekleniyorsa sağlayıcı silmesini kullanır; desteklenmeyen uzak silme vaat edilmez. Önce varlıkları, sonra grubu silin. Üretilmiş videolar otomatik silinmez. Biyometrik şablon saklanmaz; inceleme onayı kullanım izni yerine geçmez.
| 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. Ücretler ve hatalar
2026-10-07 tarihinde kontrol edildi: resmî belgeler doğrulamayı geçici ücretsiz olarak tanımlar. Oturum, inceleme, yükleme, depolama ve yönetim ücretleri bağlama bağlıdır ve tümü doğrulanmamıştır. Otomatik paket satın alınmaz. Üretim mevcut teklif, ön ayırma, hesaplaşma ve iade mekanizmalarını kullanır; gerçek makbuzu kontrol edin. Hatalar izinleri, desteklenmeyen yeteneği, bekleyen/başarısız incelemeyi, uyumsuz varlığı ve belirsiz sağlayıcı sonucunu ayırır. Başka kullanıcıların kaynaklarına erişilemez.
| HTTP | context |
|---|---|
| 400 | input / callback |
| 403 | permissions |
| 404 | resource |
| 409 | pending / failed review / incompatible context |
| 429 | rate limit |
| 502 / 503 | uncertain upstream result / unavailable |
