API-snelstart
Een beeld-naar-video-generatie maken en pollen.
1. Stel referenties in
export SEEDANCE_BASE_URL="https://api.seedance2video.io/v1"
export SEEDANCE_API_KEY="sd_live_replace_me"Bewaar de Key alleen in een server Secret Manager of n8n Credential.
2. Maak een generatie
De invoerhost moet vooraf voor de API Key zijn goedgekeurd.
curl --request POST "$SEEDANCE_BASE_URL/videos" \
--header "Authorization: Bearer $SEEDANCE_API_KEY" \
--header "Idempotency-Key: order-10086-shot-1" \
--header "Content-Type: application/json" \
--data '{
"model":"seedance-2.0-pro","mode":"image-to-video",
"prompt":"Het onderwerp draait langzaam naar de camera terwijl de achtergrond stabiel blijft.",
"inputs":[{"type":"image","url":"https://media.example.com/reference.png"}],
"parameters":{"duration_seconds":5,"resolution":"720p","aspect_ratio":"16:9","generate_audio":true}
}'De API retourneert 202, id, status_url en de werkelijke billing.cost_credits, berekend zoals op PC.
3. Poll dezelfde generatie
curl "$SEEDANCE_BASE_URL/generations/GENERATION_ID" \
--header "Authorization: Bearer $SEEDANCE_API_KEY"Volg bij queued of processing retry_after_seconds/Retry-After. Gebruik na voltooiing output.video_url of output.image_urls.
Bij een time-out opnieuw proberen met exact dezelfde body en Idempotency-Key; maak niet automatisch een vervangende taak met een nieuwe Key.
Een geaccepteerde aanvraag retourneert 202 Accepted. Een voltooid antwoord behoudt dit schema en het beleid same_as_pc:
{
"status": "completed",
"output": {
"urls": ["https://.../completed-video.mp4"],
"video_url": "https://.../completed-video.mp4"
},
"billing": {
"unit": "credits",
"cost_credits": 355,
"policy": "same_as_pc"
}
}De eerste video staat in output.video_url.