Générer des vidéos et des images à partir de vos propres outils
Créez une clé, appelez l'API avec l'authentification Bearer, et interrogez le statut de la tâche jusqu'à ce que votre résultat soit prêt. Fonctionne avec Claude Code, Codex, et tout client HTTP.
Démarrage rapide
Étape 1
Créer une clé
Générez une clé API dans votre tableau de bord. Elle n'est affichée qu'une seule fois, alors conservez-la dans un endroit sûr.
Étape 2
Appeler l'API
Envoyez une requête POST avec votre clé Bearer et un en-tête Idempotency-Key.
Étape 3
Vérifier le résultat
Interrogez l'endpoint de statut de la tâche jusqu'à ce que le statut soit « terminé » ou « échoué », puis lisez la sortie.
Authentification
Chaque requête est authentifiée à l'aide d'une clé API Bearer dans l'en-tête Authorization.
Authorization: Bearer sk_live_your_api_key
Content-Type: application/json
Idempotency-Key: a-unique-id-per-requestSeedance Video
Texte, image ou média en vidéo.
/api/v1/video/seedanceParamètres
| Paramètre | Type | Requis | Par défaut | Valeurs autorisées |
|---|---|---|---|---|
modeGeneration mode. | string | Optionnel | text-to-video | text-to-videoimage-to-videomedia-to-video |
quality_tierQuality tier. | string | Optionnel | standard | standardpro |
channelRendering channel. | string | Optionnel | standard | standardrealwild |
promptText prompt. | string | Requis | — | 3–10000 chars |
aspect_ratioAspect ratio. | string | Optionnel | 16:9 | 1:121:94:33:416:99:16 |
durationClip duration. | string | Optionnel | 5 | 4–15 (seconds) |
resolutionOutput resolution. | string | Optionnel | 720p | 720p1080p |
image_urlStart frame — required for image-to-video. | string (URL) | Optionnel | — | public https URL |
end_image_urlOptional end frame. | string (URL) | Optionnel | — | public https URL |
media_urlsRequired for media-to-video. | string[] (URL) | Optionnel | — | ≤ 12 public https URLs |
generate_audioGenerate an audio track. | boolean | Optionnel | true | truefalse |
fixed_lensLock the camera lens. | boolean | Optionnel | false | truefalse |
seedNot supported on the real channel. | integer | Optionnel | — | -1 – 4294967295 |
Soumettre une tâche
curl -X POST https://seedance2ai.io/api/v1/video/seedance \
-H "Authorization: Bearer $SEEDANCE_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: demo-video-001" \
-d '{
"mode": "text-to-video",
"quality_tier": "standard",
"prompt": "A cinematic shot of a glass train crossing a snowy mountain bridge",
"aspect_ratio": "16:9",
"duration": "5",
"resolution": "720p"
}'GPT Image 2
Génération d'images haute fidélité.
/api/v1/image/gpt-image-2Paramètres
| Paramètre | Type | Requis | Par défaut | Valeurs autorisées |
|---|---|---|---|---|
typeGeneration type. | string | Requis | — | text-to-imageimage-to-image |
channelGeneration channel. economy is lower-cost with polling-based delivery. | string | Optionnel | standard | standardeconomy |
promptText prompt. | string | Requis | — | 3–20000 chars |
resolutionOutput resolution. auto only supports 1K; 1:1 cannot use 4K on the standard channel. | string | Requis | — | 1K2K4K |
aspectRatioAspect ratio. | string | Requis | — | auto1:15:49:1621:916:94:33:24:53:42:32:11:23:11:39:21 |
batchCountNumber of images. | integer | Optionnel | 1 | 1–4 |
imageUrlsRequired for image-to-image. | string[] (URL) | Optionnel | — | 1–10 public https URLs |
Soumettre une tâche
curl -X POST https://seedance2ai.io/api/v1/image/gpt-image-2 \
-H "Authorization: Bearer $SEEDANCE_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: demo-gpt-image-001" \
-d '{
"type": "text-to-image",
"prompt": "Editorial product photo of a transparent running shoe on chrome",
"resolution": "1K",
"aspectRatio": "1:1"
}'Nano Banana Pro
Sortie d'image stylisée et premium.
/api/v1/image/nano-banana-proParamètres
| Paramètre | Type | Requis | Par défaut | Valeurs autorisées |
|---|---|---|---|---|
typeGeneration type. | string | Requis | — | text-to-imageimage-to-image |
promptText prompt. | string | Requis | — | 3–10000 chars |
image_sizeAspect ratio. | string | Optionnel | auto | 1:19:1616:93:44:33:22:35:44:521:9auto |
output_formatImage format. | string | Optionnel | png | pngjpeg |
resolutionOutput resolution. | string | Optionnel | 1K | 1K2K4K |
image_urlsRequired for image-to-image. | string[] (URL) | Optionnel | — | 1–8 public https URLs |
Soumettre une tâche
curl -X POST https://seedance2ai.io/api/v1/image/nano-banana-pro \
-H "Authorization: Bearer $SEEDANCE_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: demo-nbp-001" \
-d '{
"type": "text-to-image",
"prompt": "A premium packaging mockup for an AI video studio",
"image_size": "1:1",
"resolution": "1K",
"output_format": "png"
}'Statut de la tâche
Interroger jusqu'à ce que le statut soit terminé ou échoué.
curl https://seedance2ai.io/api/v1/tasks/sd2_xxxxx \
-H "Authorization: Bearer $SEEDANCE_API_KEY"{
"id": "sd2_xxxxx",
"status": "completed",
"model": "seedance",
"output": { "video_url": "https://..." },
"credits_used": 30
}Codes d'erreur
| Code | HTTP | Signification |
|---|---|---|
unauthorized | 401 | Missing, invalid, or revoked API key. |
invalid_request | 400 | Bad input or unsupported field. |
insufficient_credits | 402 | Not enough credits on the balance. |
rate_limited | 429 | Too many requests for this account. |
idempotency_conflict | 409 | Same Idempotency-Key reused with a different body, or still running. |
service_busy | 503 | Temporary upstream or credit-concurrency issue. Retry. |
not_found | 404 | Task does not exist or does not belong to this key owner. |
internal_error | 500 | Unexpected server-side failure. |
Skill
Installez la compétence Seedance dans Claude Code, Codex ou tout autre agent — elle rédige des prompts cinématographiques et les génère via l'API pour vous.
# Clone into Claude Code's skills folder
git clone https://github.com/tkaptop/seedance-skill ~/.claude/skills/seedanceUtiliser avec Claude Code
Cliquez sur Copier pour que l'IA récupère l'API complète au format Markdown propre, collez-la dans Claude Code ou Codex, et laissez-la configurer l'intégration. Ou orientez l'agent directement vers le point d'accès au texte brut.
FAQ
Qui peut utiliser l'API ?
Tout utilisateur disposant de crédits. Aucune restriction de forfait — n'importe quel compte avec des crédits peut créer une clé et appeler l'API.
Comment obtenir des crédits ?
Rechargez ou abonnez-vous sur la page des tarifs. Les crédits sont ajoutés à votre solde instantanément.
Les crédits sont-ils partagés entre le site web et l'API ?
Oui — votre solde de crédits personnel alimente à la fois vos générations web et vos appels API. Dans une équipe, les appels API utilisent le solde personnel de chaque membre, et non le pool partagé de l'équipe.
Par où commencer ?
Créez une clé API dans votre tableau de bord, puis appelez les endpoints avec un jeton Bearer (voir le Quickstart ci-dessus).
Que faire si un appel renvoie insufficient_credits ?
Votre solde est vide — rechargez sur la page des tarifs et réessayez.