UlazAI udviklerdokumenter
Seedance API dokumentation: generering, status, 1080p og prissætning
Seedance 1.5 pro reference
Seedance API docs Seedance API dokumentation: generering, status, 1080p og prissætning
For at bruge Seedance API, godkend med en bærernøgle, brug
POST /seedance/generate/ at skabe arbejdspladser og afstemning
GET /seedance/status/{generation_id}/ indtil videoen er klar.
UlazAI understøtter i øjeblikket Seedance 1.5 Pro-output i 480p, 720p og 1080p med 4, 8 eller 12 sekunders varighed.
Kerneendepunkter
POST /seedance/upload/
POST /seedance/generate/
GET /seedance/status/{generation_id}/
Nuværende muligheder
Tekst-til-video og billede-til-video
Op til 2 guidebilleder
Valgfri indbygget lyd
Tip
Denne side besvarer hele udviklerflowet på det første skærmbillede: genereringsslutpunktet, statuspolling, 1080p-understøttelse, bærergodkendelse og prissætningsruten.
Brug/seedance/upload/ kun når du har brug for billedstyret videogenerering. Ring kun for tekstkørsel
/seedance/generate/ direkte og spring over upload-trinnet.
Seedance-modelfamilien: 1.5 Pro, 2.0 og 2.5
Seedance er ByteDances tekst-til-video og billede-til-video model. ByteDance lancerede den første Seedance i juni 2025, frigivet Seedance 2.0 i februar 2026, og har siden vist Seedance 2.5. hver generation skubber den samme kerneidé videre: filmisk bevægelse, stærkere prompt-følgende, multi-shot scener, billed- og videoreferencer og valgfri indbygget lyd i en enkelt gengivelse. API guiden dækker de aktuelt understøttede Seedance-versioner uden at du skal opsætte ByteDances egen platform.
| version | Udgivet af ByteDance | Hvad det tilføjer |
|---|---|---|
Seedance 1.5 Pro | 2025 | Tekst- og billede-til-video, op til 2 guidebilleder, valgfri lyd, 480p/720p/1080p. Kablet til UlazAI i dag. |
Seedance 2.0 | februar 2026 | Multimodale input (tekst, billede, video, lyd), multi-kamera storytelling, native audio co-generation, længere klip. |
Seedance 2.5 | 2026 | Det nyeste trin, ByteDance har vist, sigter mod hurtigere generering og yderligere kvalitets- og kontrolgevinster. |
Samme kode, nyere model
UlazAI's offentlige API genererer med bytedance/seedance-1.5-pro i dag. Den vigtige del for udviklere:
når en nyere Seedance-version er aktiveret her, genbruger den samme Ihændehaver auth og den samme
generer-og-poll-endepunkter nedenfor. Din integration ændrer sig ikke - kun model-id'en gør - så
du kan bygge mod denne reference nu og flytte op i familien senere.
ByteDance og ARK: den officielle model, én samlet rute
Folk søger efter ByteDance Seedance officielle dokumentation eller den Ark Seedance API søger normalt to forskellige ting: selve modellen og en måde at kalde den på. Seedance er ByteDance's egen model, udgivet gennem ByteDance's Volcano Engine ARK platform. Den rute betyder at oprette en ARK konto, regionsadgang og råmodelslutpunkter.
UlazAI sidder foran det som et tredjepartslag API. Du får en bærenøgle, en vært
billed upload step, en delt kreditpung og det lille sæt af slutpunkter på denne side - ingen ARK
onboarding, ingen regional løsning og intet VPN eller kinesisk telefonnummer for at nå modellen. Hvis du specifikt søgte
ARK API Seedance billede upload, det tilsvarende her er et enkelt opkald: POST /seedance/upload/
returnerer en permanent URL, som du falder ind på input_urls på generere (se upload-endepunktet nedenfor).
ARK-koncepter kortlagt til denne API
Hvis du allerede læser ByteDances ARK-dokumentation, er ordforrådet anderledes, men det trin er de samme. Dette er den direkte oversættelse:
| På ByteDance ARK | Her | Hvad ændrer sig for dig |
|---|---|---|
| ARK konto, projekt og slutpunkt opsætning | En bærenøgle | Ingen platform onboarding før det første opkald. |
| Vær selv vært for guidebilledet, send en offentlig URL | POST /seedance/upload/ |
Du kan sende råfilen; svaret giver dig en permanent URL. |
| Model-id i anmodningens brødtekst | model felt |
Samme idé; kun identifikatoren ændres mellem versioner. |
| Afstemning opgaven, indtil den er fuldført | GET /seedance/status/{generation_id}/ |
Samme afstemningsform, ét endepunkt. |
Billede-til-video i to opkald
Dette er hele billed-upload-flowet. Det første opkald gemmer billedet og returnerer en URL, det andet opkald bruger denne URL som visuel vejledning til videoen.
# 1. upload the guide image
curl -X POST https://ulazai.com/seedance/upload/ \
-H "Authorization: Bearer $ULAZAI_API_KEY" \
-F "[email protected]"
# -> {"url": "https://cdn.ulazai.com/uploads/<id>.jpg"}
# 2. generate, passing that URL back in input_urls
curl -X POST https://ulazai.com/seedance/generate/ \
-H "Authorization: Bearer $ULAZAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "slow dolly in, warm evening light",
"input_urls": ["https://cdn.ulazai.com/uploads/<id>.jpg"],
"resolution": "1080p"
}'
Du kan sende op til to URL'er ind input_urls. To billeder læses som start og
slutreference, som er den sædvanlige måde at holde en karakter eller et produkt konsistent på tværs af
klip. For kun tekstgenerering skal du springe uploadopkaldet helt over.
Hurtig integrationsoversigt
| Auth | Bærer API nøgle fra /dashboard/ -> API nøgler |
|---|---|
| Model id | bytedance/seedance-1.5-pro |
| Varigheder | 4s, 8s, 12s |
| Resolutioner | 480p, 720p, 1080p |
| Størrelsesforhold | 1:1, 21:9, 4:3, 3:4, 16:9, 9:16 |
| Indgange | Kun Prompt eller prompt plus op til 2 billed-URL'er |
| Afstemningsflow | Skab et job, gemme generation_id, derefter afstemningsstatus indtil completed |
Offentlig slutpunktsoversigt
| Metode | Slutpunkt | Hvornår skal man bruge det |
|---|---|---|
| POST | /seedance/upload/ |
Upload først et billede, hvis du ønsker billed-til-video-vejledning |
| POST | /seedance/generate/ |
Opret et Seedance 1.5 Pro generationsjob |
| FÅ | /seedance/status/{generation_id}/ |
Kontroller, om jobbet stadig behandles, fuldført eller mislykkedes |
Autentificering
Alle API-anmodninger kræver et bærer-token:
Authorization: Bearer YOUR_API_KEY
Få en API nøgle fra dit dashboard under API nøgler. Hvis du stadig har brug for kreditter, skal du gå til pakker først.
/seedance/upload/
Upload inputbilleder til billed-til-video-vejledning
Upload et guidebillede før generering, hvis du vil have Seedance til at forankre komposition, karakterindramning eller sceneopsætning.
Svaret giver dig en permanent URL at gå ind på input_urls.
Anmodningsoverskrifter
Authorization: Bearer YOUR_API_KEY
Content-Type: multipart/form-data
Formdataparametre
fil * (fil)
JPG, PNG eller WebP, op til 10 MB.
Successvar (200)
{
"success": true,
"url": "https://media.ulazai.com/seedance_images/u1_abc123.jpg",
"filename": "seedance_images/u1_abc123.jpg"
}
Eksempel på brug (cURL)
curl -X POST https://api.ulazai.com/seedance/upload/ \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "file=@/path/to/image.jpg"
/seedance/generate/
Opret en Seedance 1.5 Pro generationsopgave
Send enten den forenklede nyttelast nedenfor eller den eksplicitte model plus input format.
Brug den forenklede version, hvis du kun har brug for den offentlige Seedance-rute med prompt, valgfri guidebilleder og outputindstillinger.
Anmodningstekst (enkel)
{
"prompt": "A cinematic close-up of a chef flipping noodles in slow motion",
"input_urls": ["https://media.ulazai.com/seedance_images/u1_abc123.jpg"],
"aspect_ratio": "16:9",
"resolution": "1080p",
"duration": "4",
"fixed_lens": true,
"generate_audio": false,
"prompt_directory_optin": true
}
Anmodningstekst (model/inputstil)
{
"model": "bytedance/seedance-1.5-pro",
"input": {
"prompt": "A cinematic close-up of a chef flipping noodles in slow motion",
"input_urls": ["https://media.ulazai.com/seedance_images/u1_abc123.jpg"],
"aspect_ratio": "16:9",
"resolution": "720p",
"duration": "8",
"fixed_lens": true,
"generate_audio": true
}
}
Parametre
prompt * (streng)
3 til 2500 tegn, der beskriver scenen, bevægelsen, indramningen og lydhensigten.
input_urls (array)
Valgfrit. Op til 2 billed-URL'er til billed-til-video-vejledning.
aspect_ratio (streng)
En af: 1:1, 21:9, 4:3, 3:4, 16:9, 9:16.
opløsning (streng)
En af: 480p, 720p, 1080p.
varighed (streng)
4, 8 eller 12 sekunder.
fixed_lens (boolesk)
Aktiver for en mere stabil kameravisning.
generate_audio (boolesk)
Aktiver synkroniseret lydgenerering. Dette øger kreditforbruget.
prompt_directory_optin (boolesk)
Valgfrit. Del kvalificerede prompter til promptbiblioteket, og anvend en rabat, når det understøttes.
Successvar (200)
{
"success": true,
"generation_id": "abc12345-1234-1234-1234-123456789012",
"task_id": "seedance_task_xyz789",
"credits_used": 40,
"directory_discount_applied": true,
"message": "Video generation started. This may take a few minutes."
}
/seedance/status/{generation_id}/
Status for afstemningsopgave
Afstemning dette slutpunkt, indtil jobbet forlader processing. Ved succes får du en video-URL tilbage; på fiasko
du bør inspicere fejlen og prøve igen med en rettet nyttelast.
Behandler svar
{
"success": true,
"status": "processing",
"message": "Video is being generated..."
}
Successvar (200)
{
"success": true,
"status": "completed",
"video_url": "https://media.ulazai.com/seedance_outputs/video.mp4"
}
Kodeeksempler: cURL, Python og JavaScript
Det fulde flow er indsend → butik generation_id → afstemningsstatus. Her er genereringskaldet i tre almindelige stakke; swap i din egen nøgle og prompt.
krølle
curl -X POST https://api.ulazai.com/seedance/generate/ \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A cinematic close-up of a chef flipping noodles in slow motion",
"aspect_ratio": "16:9",
"resolution": "1080p",
"duration": "4"
}'
Python (anmodninger)
import time, requests
BASE = "https://api.ulazai.com"
HEADERS = {"Authorization": "Bearer YOUR_API_KEY"}
# 1. Start the job
job = requests.post(f"{BASE}/seedance/generate/", headers=HEADERS, json={
"prompt": "A cinematic close-up of a chef flipping noodles in slow motion",
"aspect_ratio": "16:9",
"resolution": "1080p",
"duration": "4",
}).json()
generation_id = job["generation_id"]
# 2. Poll until it leaves "processing"
while True:
status = requests.get(f"{BASE}/seedance/status/{generation_id}/", headers=HEADERS).json()
if status.get("status") == "completed":
print("Video:", status["video_url"])
break
if status.get("status") == "failed":
raise RuntimeError(status)
time.sleep(8) # back off; do not hammer generate
JavaScript (hent)
const BASE = "https://api.ulazai.com";
const HEADERS = { "Authorization": "Bearer YOUR_API_KEY", "Content-Type": "application/json" };
const job = await fetch(`${BASE}/seedance/generate/`, {
method: "POST",
headers: HEADERS,
body: JSON.stringify({
prompt: "A cinematic close-up of a chef flipping noodles in slow motion",
aspect_ratio: "16:9",
resolution: "1080p",
duration: "4",
}),
}).then(r => r.json());
const id = job.generation_id;
let video;
while (!video) {
const s = await fetch(`${BASE}/seedance/status/${id}/`, { headers: HEADERS }).then(r => r.json());
if (s.status === "completed") video = s.video_url;
else if (s.status === "failed") throw new Error(JSON.stringify(s));
else await new Promise(r => setTimeout(r, 8000)); // poll every ~8s
}
console.log("Video:", video);
Brugsflow
- Upload et eller to guidebilleder med
/seedance/upload/kun hvis du har brug for billed-til-video-vejledning. - Ring
/seedance/generate/med din prompt, outputindstillinger og valgfriinput_urls. - Opbevar det returnerede
generation_id. - Afstemning
/seedance/status/{generation_id}/indtilstatusblivercompleted. - Brug det returnerede
video_urlat downloade, integrere eller overføre det endelige aktiv til din egen arbejdsgang.
Fejlkoder
400 Ugyldige anmodningsparametre
401 Godkendelse mislykkedes (manglende eller ugyldig API nøgle)
402 Utilstrækkelige kreditter
429 Satsgrænsen er overskredet
500 Intern serverfejl
Pris- og takstgrænser
Seedance-fakturering på UlazAI kører på kreditter, så omkostningerne skaleres med opløsning og varighed i stedet for en fast sats pr. sekund. Brug dette som en planlægningsvejledning; live kreditomkostningerne vises i pakker og på anmodningstidspunkt.
| Output | Typisk brug | Omkostningsdriver |
|---|---|---|
480p | Udkast og hurtige gentagelser | Laveste kredit per sekund |
720p | Socialt parate klip | Mid credits per sekund |
1080p | Endelig levering | Højeste kredit per sekund; længere varigheder koster mere |
Satsgrænser og 429-håndtering: hvis du sender mange job parallelt, kan du modtage 429 Rate limit exceeded. Behandl API som jobbaseret: indsend, gem generation_id, og afstemning /seedance/status/{generation_id}/ hvert 5.-10. sekund frem for at hamre generere. På en 429, gå tilbage eksponentielt (for eksempel 2s, 4s, 8s), før du prøver igen.
Seedance 1.5 pro vs Seedance 2.0: denne reference dækker bytedance/seedance-1.5-pro, den model, der i øjeblikket er tilsluttet Video Studio. ByteDance har siden introduceret Seedance 2.0 som næste generation; når det er aktiveret her, bruger det det samme generere-og-poll-flow og samme godkendelse, så integrationskoden ændres ikke - kun model-id'en gør det.
Ofte stillede spørgsmål
Understøtter UlazAI Seedance API Seedance 2.0 og 2.5?
API genererer med bytedance/seedance-1.5-pro i dag. ByteDance udgav Seedance 2.0 i februar 2026 og har siden vist 2.5. Når en nyere version er aktiveret her, bruger den den samme bærergodkendelse og de samme generere-og-poll-slutpunkter, så din integrationskode ændres ikke - kun model-id'en gør det.
Hvordan forholder UlazAI sig til ByteDances officielle Seedance / ARK API?
Seedance er ByteDances egen model, der tilbydes gennem ByteDances Volcano Engine ARK platform. UlazAI er et tredjeparts API-lag, der kører Seedance bag én forenklet rute med en enkelt bærernøgle, hostet billedupload og en delt kreditpung – ingen ARK-konto eller råmodelslutpunkter at administrere.
Hvordan uploader jeg et billede til Seedance image-to-video?
Send billedet som multipart/form-data til POST /seedance/upload/ med din bærernøgle. Svaret returnerer en permanent URL; videregive det (op til to) i input_urls array på POST /seedance/generate/. prompt'er, der kun indeholder tekst, springer uploadtrinet over.
Hvor meget koster Seedance API?
Fakturering kører på kreditter, så omkostningerne skalerer med opløsning og varighed. Et kort 480p-udkast koster færrest kreditter; en 12-sekunders 1080p-gengivelse med lyd koster mest. Den nøjagtige pris viser sig pakker og igen som credits_used i genereringssvaret.
Er Seedance tilgængelig i hele verden gennem API?
Ja. Du ringer til UlazAI's hostede HTTPS-endepunkter med en bærernøgle, så ingen VPN, regional løsning eller kinesisk telefonnummer er påkrævet. Enhver server, der kan foretage en autentificeret HTTPS-anmodning, kan indsende job og afstemning for resultater.