Seedream 5.0 Lite API: Snelste endpoint voor afbeeldingsgeneratie
Ontwikkelaarshandleiding voor de Seedream 5.0 Lite API - authenticatie, eindpunten, aanvraagparameters, codevoorbeelden in Python en JavaScript, batchgeneratie, webhooks en best practices.

REST API, Bearer-authenticatie, asynchrone generatie, webhooks, native batching tot 50 afbeeldingen per verzoek. Alles wat beschikbaar is in de Arteza-webinterface is ook in de API. Hier is de volledige referentie met werkende Python- en JavaScript-voorbeelden die je vandaag in productie kunt gebruiken.
TL;DR
- POST /v1/images/generate - eindpunt voor enkele afbeelding
- POST /v1/images/batch - tot 50 afbeeldingen per verzoek
- ~5-15 seconden gemiddelde latentie met async- en webhook-ondersteuning
- Python- en JavaScript-SDK's beschikbaar (
seedance/@seedance/sdk) - Bearer token-authenticatie - genereer sleutels in Instellingen > API-sleutels
API-overzicht
De Seedream 5.0 Lite API biedt programmatische toegang tot de pijplijn voor afbeeldingsgeneratie op het Arteza-platform. Alles in de webinterface - tekst-naar-afbeelding, diep nadenken, stijloverbracht, tekstweergave - zit in de REST API.
De API volgt REST-conventies met JSON-aanvraag- en antwoordteksten. Generatie is asynchroon: dien een verzoek in, ontvang een taak-ID en poll vervolgens of ontvang een webhook wanneer de taak voltooid is.
Volledig functieoverzicht in onze complete gids.
Bekijk de tekstweergave zelf
Het enige AI-model dat tekst goed krijgt. €0,07 per afbeelding, 50 gratis credits.
Probeer Seedream 5.0 Lite gratisBasis-URL
https://api.arteza.ai/v1
Belangrijkste kenmerken
| Kenmerk | Detail |
|---|---|
| Protocol | HTTPS REST |
| Aanvraagindeling | JSON |
| Antwoordindeling | JSON |
| Authenticatie | Bearer token |
| Generatiemodel | Asynchroon |
| Gemiddelde latentie | 5-15 seconden |
| Batch-ondersteuning | Ja (tot 50 per verzoek) |
| Webhook-ondersteuning | Ja |
| SDK's | Python, JavaScript |
5 gratis generaties · Geen creditcard nodig
Authenticatie
Bearer token-authenticatie. Genereer je API-sleutel van het Arteza-dashboard onder Instellingen > API-sleutels.
Je API-sleutel ophalen
- Registreren of log in op je Arteza-account
- Navigeer naar Instellingen > API-sleutels
- Klik Nieuwe sleutel genereren
- Kopieer en bewaar je sleutel veilig (wordt slechts eenmaal weergegeven)
Authenticatieheader
Authorization: Bearer YOUR_API_KEY
Authenticatie testen
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.arteza.ai/v1/account/credits
Antwoord:
{
"credits_remaining": 1050,
"tier": "starter"
}
Eindpunt voor enkele afbeelding
POST /v1/images/generate
Minimaal verzoek
{
"model": "seedream-5.0-lite",
"prompt": "Een sereen berglandschap bij zonsopgang"
}
Volledig verzoek
{
"model": "seedream-5.0-lite",
"prompt": "Professionele YouTube-thumbnail met tekst 'TOP 10 TIPS' in vet rood lettertype, opgewonden persoon aan de linkerkant, helderblauwe achtergrond",
"aspect_ratio": "16:9",
"deep_thinking": true,
"style": "photorealistic",
"webhook_url": "https://your-app.com/webhook/image-complete",
"metadata": {
"project": "youtube-thumbnails",
"batch_id": "thumb-2026-04"
}
}
Antwoord
{
"task_id": "img_abc123def456",
"status": "processing",
"model": "seedream-5.0-lite",
"credits_charged": 7,
"credits_remaining": 1043,
"estimated_time_seconds": 10
}
Aanvraagparameters
| Parameter | Type | Vereist | Standaard | Beschrijving |
|---|---|---|---|---|
model | string | Ja | - | Model-identificatie: seedream-5.0-lite |
prompt | string | Ja | - | Tekstbeschrijving (max 1000 tekens) |
aspect_ratio | string | Nee | 1:1 | Beeldschermverhouding uitvoer |
deep_thinking | boolean | Nee | false | Activeer deep thinking-modus |
style | string | Nee | auto | Stijlvoorinstelling of beschrijving |
colors | array | Nee | - | Kleurenpalet (hex-codes) |
webhook_url | string | Nee | - | URL voor voltooiingsmelding |
metadata | object | Nee | - | Aangepaste metagegevens (geretourneerd met resultaten) |
Beeldschermverhoudingen
| Waarde | Resolutie | Gebruiksscenario |
|---|---|---|
1:1 | 1024x1024 | Sociale media, productafbeeldingen |
16:9 | 1360x768 | Miniaturen, presentaties, banners |
9:16 | 768x1360 | Verhalen, telefoonstaartschermen |
4:3 | 1184x888 | Blog-afbeeldingen, e-mailheaders |
3:4 | 888x1184 | Pinterest, portretten |
3:2 | 1248x832 | Fotografiestijl |
Stijlvoorinstellingen
| Voorinstelling | Beschrijving |
|---|---|
auto | Model selecteert beste stijl op basis van prompt |
photorealistic | Levensechte fotografiestijl |
digital-art | Schone digitale illustratie |
watercolor | Aquareleffect |
oil-painting | Klassieke olieverfschildering |
anime | Japanse animatiestijl |
minimalist | Schoon, minimalistisch ontwerp |
retro | Vintage/retro esthetiek |
Antwoordindeling
Polling voor resultaten
GET /v1/images/{task_id}
Verwerking:
{
"task_id": "img_abc123def456",
"status": "processing",
"progress": 0.65,
"estimated_time_remaining": 5
}
Voltooid:
{
"task_id": "img_abc123def456",
"status": "completed",
"image_url": "https://cdn.arteza.ai/generated/img_abc123def456.png",
"image_url_webp": "https://cdn.arteza.ai/generated/img_abc123def456.webp",
"width": 1024,
"height": 1024,
"model": "seedream-5.0-lite",
"deep_thinking_used": true,
"credits_charged": 7,
"metadata": {
"project": "youtube-thumbnails",
"batch_id": "thumb-2026-04"
},
"created_at": "2026-04-10T14:30:00Z"
}
Vervaldatum afbeeldings-URL
Gegenereerde afbeeldings-URL's zijn 24 uur geldig. Download en bewaar afbeeldingen in je eigen opslag binnen dit venster.

Wil je tekst zo schoon? Probeer Seedream 5.0 Lite gratis →
Python-voorbeeld
import requests
import time
API_KEY = "your_api_key_here"
BASE_URL = "https://api.arteza.ai/v1"
headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
# Dien generatieverzoek in
response = requests.post(
f"{BASE_URL}/images/generate",
headers=headers,
json={
"model": "seedream-5.0-lite",
"prompt": "Een futuristische stadssilhouet bij zonsondergang met vliegende auto's",
"aspect_ratio": "16:9",
"deep_thinking": True
}
)
task = response.json()
task_id = task["task_id"]
print(f"Taak ingediend: {task_id}")
print(f"Credits in rekening gebracht: {task['credits_charged']}")
print(f"Resterende credits: {task['credits_remaining']}")
# Poll voor voltooiing
while True:
result = requests.get(
f"{BASE_URL}/images/{task_id}",
headers=headers
).json()
if result["status"] == "completed":
print(f"Afbeelding gereed: {result['image_url']}")
break
elif result["status"] == "failed":
print(f"Generatie mislukt: {result.get('error', 'Onbekende fout')}")
break
time.sleep(2)
JavaScript-voorbeeld
const API_KEY = 'your_api_key_here';
const BASE_URL = 'https://api.arteza.ai/v1';
async function generateImage(prompt, options = {}) {
const response = await fetch(`${BASE_URL}/images/generate`, {
method: 'POST',
headers: {
'Authorization': `Bearer ${API_KEY}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'seedream-5.0-lite',
prompt,
aspect_ratio: options.aspectRatio || '1:1',
deep_thinking: options.deepThinking || false,
...options
})
});
const task = await response.json();
console.log(`Task submitted: ${task.task_id}`);
while (true) {
const result = await fetch(
`${BASE_URL}/images/${task.task_id}`,
{ headers: { 'Authorization': `Bearer ${API_KEY}` } }
).then(r => r.json());
if (result.status === 'completed') {
return result;
}
if (result.status === 'failed') {
throw new Error(result.error || 'Generation failed');
}
await new Promise(resolve => setTimeout(resolve, 2000));
}
}
// Gebruik
const result = await generateImage(
'Een gezellige koffiewinkel interieur met warm licht',
{ aspectRatio: '16:9', deepThinking: true }
);
console.log(`Image URL: ${result.image_url}`);
Gegenereerde afbeeldingen downloaden
import requests
def download_image(image_url, filename):
response = requests.get(image_url)
with open(filename, 'wb') as f:
f.write(response.content)
print(f"Opgeslagen: {filename}")
download_image(result['image_url'], 'output/my_image.png')
Batch-generatie-eindpunt
Voor meerdere afbeeldingen in één verzoek:
POST /v1/images/batch
Batch-verzoek
{
"generations": [
{
"prompt": "Minimalistisch logoontwerp, blauwe cirkel met bliksemflits",
"model": "seedream-5.0-lite",
"aspect_ratio": "1:1",
"deep_thinking": true
},
{
"prompt": "Professionele pasfoto achtergrond, zachte verloop",
"model": "seedream-5.0-lite",
"aspect_ratio": "1:1",
"deep_thinking": false
},
{
"prompt": "YouTube-thumbnail met tekst 'MOET ZIEN' in rood",
"model": "seedream-5.0-lite",
"aspect_ratio": "16:9",
"deep_thinking": true
}
],
"webhook_url": "https://your-app.com/webhook/batch-complete"
}
Batch-antwoord
{
"batch_id": "batch_xyz789",
"status": "processing",
"total_generations": 3,
"total_credits_charged": 21,
"credits_remaining": 1029
}
Polling Batch-status
GET /v1/images/batch/{batch_id}
{
"batch_id": "batch_xyz789",
"status": "completed",
"results": [
{
"index": 0,
"status": "completed",
"task_id": "img_001",
"image_url": "https://cdn.arteza.ai/generated/img_001.png"
},
{
"index": 1,
"status": "completed",
"task_id": "img_002",
"image_url": "https://cdn.arteza.ai/generated/img_002.png"
},
{
"index": 2,
"status": "completed",
"task_id": "img_003",
"image_url": "https://cdn.arteza.ai/generated/img_003.png"
}
]
}
Batch-limieten
| Limiet | Waarde |
|---|---|
| Max generaties per batch | 50 |
| Max gelijktijdige batches | 5 |
| Max promptlengte | 1000 tekens |
| Batch timeout | 5 minuten |
Voor batch-workflows, zie onze gids voor bulkgeneratie.
Webhook-integratie
Webhooks elimineren polling. Wanneer generatie voltooid is, POST de API naar jouw URL.
Webhook Payload
{
"event": "image.completed",
"task_id": "img_abc123def456",
"batch_id": "batch_xyz789",
"status": "completed",
"image_url": "https://cdn.arteza.ai/generated/img_abc123def456.png",
"model": "seedream-5.0-lite",
"credits_charged": 7,
"metadata": {
"project": "youtube-thumbnails"
},
"created_at": "2026-04-10T14:30:00Z"
}
Handler-voorbeeld (Python/Flask)
from flask import Flask, request, jsonify
import requests
app = Flask(__name__)
@app.route('/webhook/image-complete', methods=['POST'])
def handle_image_webhook():
data = request.json
if data['event'] == 'image.completed':
task_id = data['task_id']
image_url = data['image_url']
metadata = data.get('metadata', {})
# Download afbeelding
img_response = requests.get(image_url)
filename = f"images/{metadata.get('project', 'default')}/{task_id}.png"
with open(filename, 'wb') as f:
f.write(img_response.content)
# Update je database
update_generation_record(task_id, filename)
print(f"Afbeelding opgeslagen: {filename}")
elif data['event'] == 'image.failed':
print(f"Generatie mislukt: {data.get('error')}")
return jsonify({'status': 'ok'}), 200
Webhook-beveiliging
Verifieer webhookechtheid via de X-Seedance-Signature-header:
import hmac
import hashlib
def verify_webhook(payload, signature, secret):
expected = hmac.new(
secret.encode(),
payload.encode(),
hashlib.sha256
).hexdigest()
return hmac.compare_digest(expected, signature)
Deep Thinking-modus
Gecontroleerd door de deep_thinking-booleaanse parameter. Ingeschakeld, het model voert aanvullend redeneren uit voordat generatie plaatsvindt.
Wanneer inschakelen
| Scenario | Aanbeveling |
|---|---|
| Eenvoudige afbeeldingen met één onderwerp | false |
| Complexe scènes met meerdere elementen | true |
| Afbeeldingen met tekst | true |
| Specifieke ruimtelijke indelingen | true |
| Abstract/conceptuele afbeeldingen | true |
| Batch eenvoudige afbeeldingen | false (maximale doorvoer) |
Prestatieeffect
| Modus | Gem. generatietijd | Kwaliteitsverbetering |
|---|---|---|
Standaard (false) | ~5-10 seconden | Basislijn |
Deep thinking (true) | ~8-15 seconden | Aanzienlijk voor complexe prompts |
Deep thinking voegt ~3-5 seconden toe maar kost nul aanvullende credits.
Batch tot 50 afbeeldingen per verzoek
Native webhooks, asynchrone generatie, perfecte tekstweergave. Pak 50 gratis credits en je API-sleutel.
Krijg je API-sleutelFoutafhandeling
Antwoordindeling fout
{
"error": {
"code": "insufficient_credits",
"message": "Niet genoeg credits om deze generatie te voltooien. Vereist: 7, Beschikbaar: 3",
"status": 402
}
}
Foutcodes
| Code | Status | Beschrijving | Oplossing |
|---|---|---|---|
invalid_api_key | 401 | API-sleutel ongeldig of verlopen | Regenereer in dashboard |
insufficient_credits | 402 | Niet genoeg credits | Koop meer op /pricing |
invalid_model | 400 | Model-identificatie niet herkend | Gebruik seedream-5.0-lite |
invalid_prompt | 400 | Prompt leeg of te lang | Controleer lengte (max 1000) |
invalid_aspect_ratio | 400 | Beeldschermverhouding niet ondersteund | Gebruik ondersteunde waarden |
rate_limited | 429 | Te veel verzoeken | Implementeer backoff |
content_policy | 400 | Prompt schendt beleid | Wijzig prompt |
generation_failed | 500 | Interne generatiefout | Probeer verzoek opnieuw |
batch_too_large | 400 | Batch overschrijdt 50 items | Verdeel in kleinere batches |
Opnieuw proberen Strategie
import time
def generate_with_retry(prompt, max_retries=3):
for attempt in range(max_retries):
try:
response = requests.post(
f"{BASE_URL}/images/generate",
headers=headers,
json={
"model": "seedream-5.0-lite",
"prompt": prompt
}
)
if response.status_code == 429:
retry_after = int(response.headers.get('Retry-After', 5))
time.sleep(retry_after)
continue
response.raise_for_status()
return response.json()
except requests.exceptions.RequestException as e:
if attempt == max_retries - 1:
raise
time.sleep(2 ** attempt) # Exponential backoff
Snelheidslimieten en best practices
Snelheidslimieten per laag
| Laag | Verzoeken/minuut | Gelijktijdig | Batch-grootte |
|---|---|---|---|
| Gratis | 10 | 2 | 5 |
| Starter | 30 | 5 | 20 |
| Populair | 60 | 10 | 30 |
| Pro | 120 | 20 | 50 |
| Enterprise | 240 | 50 | 50 |
Best practices
- Gebruik webhooks in plaats van polling - efficiënter
- Batch indien mogelijk - één batch-verzoek is beter dan 50 afzonderlijke verzoeken
- Exponential backoff - handle rate limits gracefully
- Cache resultaten - sla afbeeldings-URL's en metagegevens op in je database
- Download snel - afbeeldings-URL's vervallen na 24 uur
- Monitor creditsaldo - controleer
credits_remainingom onderbreking te voorkomen - Gebruik metagegevens - tag generaties met project-ID's voor tracking
- Verwerk fouten voorzichtig - niet elke generatie slaagt
SDK-installatie
Python:
pip install seedance
from seedance import SeedanceClient
client = SeedanceClient(api_key="your_key")
result = client.images.generate(
model="seedream-5.0-lite",
prompt="Een prachtige zonsondergang",
deep_thinking=True
)
JavaScript:
npm install @seedance/sdk
import { SeedanceClient } from '@seedance/sdk';
const client = new SeedanceClient({ apiKey: 'your_key' });
const result = await client.images.generate({
model: 'seedream-5.0-lite',
prompt: 'Een prachtige zonsondergang',
deepThinking: true
});
Veelvoorkomende integratiepatronen
CMS-integratie
Genereer aanbevolen afbeeldingen automatisch bij het maken van een bericht:
@app.route('/cms/webhook/new-post', methods=['POST'])
def handle_new_post():
post = request.json
result = generate_image(
prompt=f"Blog-headerafbeelding voor artikel over {post['title']}, "
f"professionele redactionele stijl, 16:9",
aspect_ratio="16:9",
deep_thinking=True,
metadata={"post_id": post["id"]}
)
update_post_featured_image(post["id"], result["image_url"])
E-Commerce productafbeeldingen
def generate_product_images(product):
prompts = [
f"Productfoto van {product.name}, witte achtergrond, studioverlichting, 1:1",
f"Lifestyle-foto van {product.name} in gebruik, natuurlijke omgeving, 16:9",
f"Productdetail close-up van {product.name}, macrofotografie, 1:1"
]
batch = client.images.batch_generate(
generations=[
{"model": "seedream-5.0-lite", "prompt": p}
for p in prompts
]
)
return batch
Automatisering van sociale media
def generate_weekly_social_content(brand, topics):
generations = []
for topic in topics:
generations.append({
"model": "seedream-5.0-lite",
"prompt": f"{brand.style_prefix} {topic}, social media post, 1:1",
"aspect_ratio": "1:1",
"deep_thinking": True,
"metadata": {"topic": topic, "platform": "instagram"}
})
return client.images.batch_generate(generations=generations)
De Seedream 5.0 Lite API is het snelste pad van tekstprompt naar gegenereerde afbeelding met volledige ondersteuning voor deep thinking, batch-generatie en webhook-integratie.
Haal je API-sleutel op → - 50 gratis credits, genereer je sleutel vanuit Instellingen > API-sleutels, begin in minuten met bouwen.
Try Seedream 5.0 Lite - Right Now
5 free generations · No credit card needed