Seedance 1.0 Pro API: Professioneel videogebruikerseindpunt voor videogeneratie
Complete gids voor de Seedance 1.0 Pro API voor professionele videogeneratie. Leer eindpuntintegratie, authenticatie, parameters, foutafhandeling en best practices voor het integreren van AI-video in uw applicaties.

Als je video in een product, workflow of pipeline integreert, wordt de web UI uiteindelijk een bottleneck. De Seedance 1.0 Pro API is hetzelfde model als achter de UI, beschikbaar als een schoon REST-eindpunt met bearer-token authenticatie, voorspelbare prijs per seconde en eenvoudig job polling. Deze gids dekt alles wat je nodig hebt om het in productie in te zetten.
TL;DR
- REST API voor Seedance 1.0 Pro native 1080p videogeneratie
- Auth: bearer token van je accountdashboard
- Facturering: per seconde tegen $0.24/sec ($0.12 basis × 2x marge)
- Patroon: job indienen → status opvragen → MP4 downloaden
- Geschikt voor: SaaS-integraties, batch pipelines, automatisering, white-label producten
Wat de API je geeft
Alles wat de Seedance 1.0 Pro web UI biedt, beschikbaar via programma:
- Afbeelding-naar-video generatie met een bron-afbeelding-URL
- Motion prompt om de animatie te sturen
- Duur controle van 2 tot 12 seconden
- Eindframe controle voor gerichte transities
- Camera lock toggle
- Job polling voor status en resultaat-URL
- MP4 output op native 1080p
Gebruik het voor SaaS-producten die ingebedde videogeneratie nodig hebben, interne agency pipelines, batch productie workflows of automatisering van repetitieve videotaken.
Genereer broadcast-quality 1080p video
Professionele afbeelding-naar-video AI. Standaard 1080p output, superieure beweging. 50 gratis credits.
Probeer Seedance 1.0 Pro gratis5 gratis generaties · Geen creditcard nodig
Authenticatie
Alle API-aanroepen authenticeren met een bearer token. Genereer er een van je Arteza account dashboard op arteza.ai.
Authorization: Bearer YOUR_API_KEY
Beveiligingsregels:
- Leg API-sleutels nooit vast in versiebeheer
- Draai sleutels regelmatig
- Gebruik omgevingsvariabelen of een secrets manager
- Beperk sleutels tot specifieke oorsprongen indien mogelijk
De kernendpunten
Dien een generatiejob in
POST /v1/seedance-1-pro/generate
Request body:
{
"source_image_url": "https://your-cdn.com/source.jpg",
"prompt": "Slow camera push-in on the subject, warm golden hour light, shallow depth of field",
"duration_seconds": 6,
"camera_lock": false,
"end_frame_url": null
}
Parameters:
| Veld | Type | Verplicht | Beschrijving |
|---|---|---|---|
source_image_url | string | ja | Openbaar toegankelijke URL naar de bronafbeelding |
prompt | string | ja | Motion beschrijving |
duration_seconds | integer | ja | 2, 12 seconden |
camera_lock | boolean | nee | Standaard false |
end_frame_url | string | nee | Optionele eindframe-URL |
Response:
{
"job_id": "job_abc123xyz",
"status": "queued",
"created_at": "2026-04-10T12:00:00Z",
"estimated_seconds": 90
}
Controleer jobstatus
GET /v1/seedance-1-pro/status/{job_id}
Response (bezig):
{
"job_id": "job_abc123xyz",
"status": "processing",
"progress": 0.45,
"created_at": "2026-04-10T12:00:00Z"
}
Response (voltooid):
{
"job_id": "job_abc123xyz",
"status": "completed",
"video_url": "https://arteza.ai/videos/abc123xyz.mp4",
"duration_seconds": 6,
"resolution": "1920x1080",
"credits_charged": 144
}
Mogelijke statuswaarden: queued, processing, completed, failed
Download het resultaat
Zodra status completed is, wijst video_url naar een 1080p MP4-bestand. Download het onmiddellijk en sla het op in je eigen infrastructuur, vertrouw niet op het feit dat de URL voor onbepaalde tijd geldig blijft.
Een volledig Python-voorbeeld
import os
import time
import requests
API_KEY = os.environ["SEEDANCE_API_KEY"]
BASE_URL = "https://api.arteza.ai/v1/seedance-1-pro"
HEADERS = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
def generate_video(source_image_url, prompt, duration=6, camera_lock=False, end_frame=None):
payload = {
"source_image_url": source_image_url,
"prompt": prompt,
"duration_seconds": duration,
"camera_lock": camera_lock,
}
if end_frame:
payload["end_frame_url"] = end_frame
response = requests.post(f"{BASE_URL}/generate", headers=HEADERS, json=payload)
response.raise_for_status()
return response.json()["job_id"]
def wait_for_completion(job_id, poll_interval=5, timeout=300):
start = time.time()
while time.time() - start < timeout:
r = requests.get(f"{BASE_URL}/status/{job_id}", headers=HEADERS)
r.raise_for_status()
data = r.json()
if data["status"] == "completed":
return data["video_url"]
if data["status"] == "failed":
raise RuntimeError(f"Job failed: {data.get('error', 'unknown')}")
time.sleep(poll_interval)
raise TimeoutError(f"Job {job_id} did not complete within {timeout}s")
def download_video(url, output_path):
response = requests.get(url, stream=True)
response.raise_for_status()
with open(output_path, "wb") as f:
for chunk in response.iter_content(chunk_size=8192):
f.write(chunk)
# Gebruik het
job_id = generate_video(
source_image_url="https://example.com/product.jpg",
prompt="Slow camera orbit around the product, studio lighting, 6 seconds",
duration=6,
camera_lock=True
)
video_url = wait_for_completion(job_id)
download_video(video_url, "output.mp4")
print(f"Video saved to output.mp4")
Een volledig Node.js-voorbeeld
import fs from 'fs';
import fetch from 'node-fetch';
const API_KEY = process.env.SEEDANCE_API_KEY;
const BASE_URL = 'https://api.arteza.ai/v1/seedance-1-pro';
const HEADERS = {
'Authorization': `Bearer ${API_KEY}`,
'Content-Type': 'application/json'
};
async function generateVideo(opts) {
const response = await fetch(`${BASE_URL}/generate`, {
method: 'POST',
headers: HEADERS,
body: JSON.stringify(opts)
});
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const data = await response.json();
return data.job_id;
}
async function waitForCompletion(jobId, { pollInterval = 5000, timeout = 300000 } = {}) {
const start = Date.now();
while (Date.now() - start < timeout) {
const r = await fetch(`${BASE_URL}/status/${jobId}`, { headers: HEADERS });
const data = await r.json();
if (data.status === 'completed') return data.video_url;
if (data.status === 'failed') throw new Error(`Job failed: ${data.error}`);
await new Promise(res => setTimeout(res, pollInterval));
}
throw new Error('Timeout');
}
async function downloadVideo(url, path) {
const response = await fetch(url);
const buffer = await response.buffer();
fs.writeFileSync(path, buffer);
}
// Gebruik het
const jobId = await generateVideo({
source_image_url: 'https://example.com/product.jpg',
prompt: 'Slow camera orbit around the product, studio lighting, 6 seconds',
duration_seconds: 6,
camera_lock: true
});
const videoUrl = await waitForCompletion(jobId);
await downloadVideo(videoUrl, 'output.mp4');
console.log('Saved output.mp4');

Wil je broadcast quality zoals dit? Probeer Seedance 1.0 Pro gratis →
Pricing en facturering
Tarief: $0.24 per seconde uitvoervideo (24 credits/seconde)
| Duur | Credits | Kosten |
|---|---|---|
| 2s | 48 | $0.48 |
| 4s | 96 | $0.96 |
| 6s | 144 | $1.44 |
| 8s | 192 | $1.92 |
| 10s | 240 | $2.40 |
| 12s | 288 | $2.88 |
Credits worden alleen in rekening gebracht bij succesvolle generaties. Mislukte jobs gebruiken geen credits.
Creditpakketten zijn hetzelfde als in de web UI: $10 / $25 / $50 / $100. Zie de prijzenpagina.
Tarieflimits en gelijktijdigheid
Standaardaccounts hebben tarieflimits die geschikt zijn voor typische integratiewerklasten. Voor high-volume productie, neem contact op met support voor verhoogde limieten.
Algemene richtlijnen:
- 5, 10 gelijktijdige jobs is betrouwbaar voor meeste accounts
- Exponential backoff op HTTP 429 responses
- Job-level retries op voorbijgaande fouten (tot 3 pogingen)
- Webhook callbacks beschikbaar om excessief polling te vermijden
Webhooks (Optioneel)
In plaats van polling, registreer je een webhook URL in je accountinstellingen of per request. Wanneer een job voltooid is, stuurt Arteza een POST naar je URL:
{
"event": "job.completed",
"job_id": "job_abc123xyz",
"status": "completed",
"video_url": "https://arteza.ai/videos/abc123xyz.mp4",
"duration_seconds": 6,
"credits_charged": 144,
"timestamp": "2026-04-10T12:02:15Z"
}
Webhooks zijn ondertekend met een HMAC-handtekening in de X-Seedance-Signature header. Verifieer voordat je de payload vertrouwt.
Zend 1080p video vanuit je backend
Bearer-token REST API, native 1080p output, webhooks en voorspelbare facturering per seconde. 50 gratis credits.
Haal je API-sleutel opFoutafhandeling
De API retourneert standaard HTTP-statuscodes:
| Code | Betekenis |
|---|---|
200 | Succes |
400 | Slecht request - controleer je payload |
401 | Ongeautoriseerd - slechte API-sleutel |
402 | Onvoldoende credits |
429 | Tarieflimiet bereikt |
500 | Serverfout - probeer opnieuw met backoff |
Error response bodies bevatten een error veld met een leesbaar bericht en een code veld voor programmatische afhandeling.
{
"error": "Source image URL could not be fetched",
"code": "source_image_unreachable"
}
Vereisten voor invoer-afbeelding
- Formaten: PNG, JPEG, WebP
- Grootte: tot 10 MB per afbeelding
- Resolutie: minimum 512x512, hoger is beter (1080p+ aanbevolen)
- URL toegang: moet openbaar bereikbaar zijn door de Arteza servers (geen localhost, geen auth-walled)
Voor privé-afbeeldingen, upload ze naar een ondertekende S3 URL, CloudFront of vergelijkbaar, en geef de ondertekende URL door in het request.
Best practices
- Sla outputs op in je eigen infrastructuur. Vertrouw niet op Arteza URLs op lange termijn.
- Log alles. Job IDs, prompts, timings, statustransities, fouten.
- Retry voorbijgaande fouten. Netwerkproblemen en 5xx responses moeten opnieuw proberen met exponential backoff.
- Valideer inputs vroeg. Controleer afbeelding-URLs en parameterwaarden voordat je indient.
- Monitor creditsaldo. Alert wanneer je onder een drempel zakt.
- Gebruik webhooks voor productie. Polling is prima voor kleine werklasten maar inefficiënt op schaal.
- Cache identieke generaties. Als een gebruiker dezelfde afbeelding + prompt twee keer indient, geef de cached URL terug.
Testen en staging
Begin elke integratie met de $10 credittier (1.050 credits). Dat is voldoende voor enkele tientallen testgeneraties. Bouw en test je integratie end-to-end voordat je je vastlegt op hogere-volume tiers.
Gebruiksscenario's
- SaaS platforms - laat je gebruikers video genereren van hun eigen assets
- E-commerce - genereer productmotievideo's van catalogusafbeeldingen
- Onroerend goed - automatiseer productie van aanbiedingsvideo's van foto's
- Marketing automatisering - gepersonaliseerde video op schaal
- Content platforms - verrijk artikelen, aanbiedingen of social posts met gegenereerde video
- White-label videohulpmiddelen - bouw je eigen AI-videoproduct op de Arteza backend
Gerelateerde lectuur
- Batchverwerkingsworkflows
- Seedance 1.0 Pro volledige gids
- Seedance 1.0 Pro voor agencies
- Seedance 2.0 API-gids
Veelgestelde vragen
Kan ik de API gebruiken voor commerciële toepassingen? Ja, alle output is goedgekeurd voor commercieel gebruik.
Wat gebeurt er als generatie mislukt? Er worden geen credits in rekening gebracht bij mislukte generaties.
Hoe lang worden gegenereerde video's gehost? Video's zijn beschikbaar voor download gedurende een bepaalde tijd na generatie. Download en sla onmiddellijk op.
Ondersteun je SDK-bibliotheken? Community SDK's voor Python en Node zijn beschikbaar. Zie de developer docs op arteza.ai.
Kan ik een job in uitvoering annuleren? Ja, stuur DELETE /v1/seedance-1-pro/jobs/{job_id}. Credits worden niet in rekening gebracht bij geannuleerde jobs.
Hoe krijg ik ondersteuning? Email support via je account dashboard voor API-specifieke problemen.
De Seedance 1.0 Pro API is het production-ready pad voor het inbedden van 1080p AI videogeneratie in je product of pipeline.
Haal je API-sleutel en begin met bouwen → met 50 gratis credits inbegrepen bij aanmelding.
Try Seedance 1.0 Pro - Right Now
5 free generations · No credit card needed