Seedream v4.5 API: AI-afbeeldingen integreren in je app
Complete gids voor de Seedream v4.5 API. Leer hoe je AI-afbeeldingsgeneratie integreert in je applicatie met codevoorbeelden, authenticatie, parameters, best practices en prijzen voor API-gebruik.

AI-beeldgeneratie integreren in je app betekende vroeger kiezen uit drie slechte opties: Stable Diffusion zelf draaien (dure infrastructuur), per-token betalen bij OpenAI (onvoorspelbare kosten) of je vastleggen op een abonnements-API (verspilde capaciteit). De Seedream v4.5 API is anders opgezet: betalen per afbeelding voor $0.10, standaard REST en responstijden van slechts enkele seconden. Met deze handleiding ga je van nul naar je eerste generatie in minder dan 10 minuten.
TL;DR
- Seedream v4.5 API kost 1 credits ($0,10) per gegenereerde afbeelding
- Standaard REST API met JSON-verzoeken en -antwoorden
- Parameters: prompt, resolutie, beeldverhouding, num_images (1-6), guidance scale
- Typische responstijd: 5-15 seconden per generatie
- Abonnementen vanaf $5 per maand - credits worden alleen verbruikt bij het genereren
Waarvoor de API geschikt is
De Seedream v4.5 API is geschikt voor applicaties die on-demand AI-beeldgeneratie nodig hebben met voorspelbare kosten per afbeelding. Veelvoorkomende toepassingen:
SaaS-producten waarmee gebruikers afbeeldingen kunnen genereren als onderdeel van hun workflow: ontwerptools, marketingplatforms en content-creatieapps.
E-commerceplatforms die productlevensstijlafbeeldingen of categorie-headers programmatisch genereren.
Marketingautomatisering: tools die campagnevisuals genereren op basis van gestructureerde invoer.
Content managementsystemen die AI-beeldgeneratie als native functie aanbieden.
Ontwikkelaarsprojecten en automatiseringsscripts voor elke workflow die beeldgeneratie op schaal nodig heeft.
Mobiele apps die de API aanroepen vanuit een backend-service om de beeldgeneratie buiten het apparaat te houden.
Als jouw toepassing bij een van deze gevallen past, helpt deze handleiding je snel te integreren.
Haal een API-sleutel op en ga live in 10 minuten
Betaal per afbeelding via REST API voor $0.10 per 4MP-generatie. Gratis credits bij aanmelding voor je eerste integratietests.
Probeer Seedream v4.5 gratis5 gratis generaties · Geen creditcard nodig
Authenticatie en aan de slag
Stap 1: Haal een API-sleutel op
Aanmelden voor een Arteza-account als je er nog geen hebt. Ga naar je accountinstellingen en genereer een API-sleutel. Behandel deze sleutel als een wachtwoord: zet hem nooit in openbare repositories.
Stap 2: Voeg credits toe aan je account
API-gebruik wordt afgetrokken van hetzelfde creditssaldo als webgebruik. Je 10 gratis aanmeldcredits werken ook bij API-aanroepen. Voor productiegebruik kun je een abonnement nemen via de prijzenpagina vanaf $5.
Stap 3: Doe je eerste verzoek
Het API-eindpunt voor Seedream v4.5 is:
POST https://api.arteza.ai/v1/images/generate
Minimale verzoekbody:
{
"model": "seedream-v4-5",
"prompt": "A cozy bookstore at dusk, warm window light",
"width": 2048,
"height": 2048,
"num_images": 1
}
Voeg je API-sleutel toe aan de Authorization-header:
Authorization: Bearer YOUR_API_KEY
Volledige parameterreferentie
| Parameter | Type | Verplicht | Beschrijving |
|---|---|---|---|
model | string | Ja | Model-identifier: seedream-v4-5 |
prompt | string | Ja | Tekstbeschrijving van de afbeelding |
width | integer | Nee | Afbeeldingsbreedte in pixels (standaard 1024) |
height | integer | Nee | Afbeeldingshoogte in pixels (standaard 1024) |
num_images | integer | Nee | Aantal te genereren afbeeldingen (1-6, standaard 1) |
guidance_scale | float | Nee | Sterkte van promptnaleving (standaard 7,5) |
seed | integer | Nee | Willekeurig zaad voor reproduceerbaarheid |
negative_prompt | string | Nee | Elementen die uit de generatie worden uitgesloten |
Ondersteunde resoluties
Seedream v4.5 ondersteunt meerdere resolutieopties tot 4 megapixel:
| Beeldverhouding | Breedte x hoogte | Toepassing |
|---|---|---|
| 1:1 | 2048 x 2048 | Social posts, iconen |
| 16:9 | 2048 x 1152 | Banners, thumbnails |
| 9:16 | 1152 x 2048 | Mobiel, Stories |
| 3:2 | 2048 x 1365 | Redactioneel |
| 2:3 | 1365 x 2048 | Boekomslagen |
| 4:3 | 2048 x 1536 | Presentaties |
| 3:4 | 1536 x 2048 | Portret |
Codevoorbeelden
Node.js (Fetch)
const generateImage = async (prompt) => {
const response = await fetch(
'https://api.arteza.ai/v1/images/generate',
{
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.SEEDANCE_API_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
model: 'seedream-v4-5',
prompt: prompt,
width: 2048,
height: 2048,
num_images: 1,
}),
}
);
if (!response.ok) {
throw new Error(`API error: ${response.status}`);
}
const data = await response.json();
return data.images[0].url;
};
// Gebruik
const imageUrl = await generateImage(
'A cozy bookstore at dusk, warm window light, editorial photography'
);
console.log(imageUrl);
Python (Requests)
import os
import requests
def generate_image(prompt, width=2048, height=2048, num_images=1):
response = requests.post(
'https://api.arteza.ai/v1/images/generate',
headers={
'Authorization': f'Bearer {os.environ["SEEDANCE_API_KEY"]}',
'Content-Type': 'application/json',
},
json={
'model': 'seedream-v4-5',
'prompt': prompt,
'width': width,
'height': height,
'num_images': num_images,
},
)
response.raise_for_status()
data = response.json()
return [img['url'] for img in data['images']]
# Gebruik
urls = generate_image(
'An editorial product photograph of a ceramic coffee mug, '
'warm morning light, minimalist composition'
)
print(urls)
cURL
curl -X POST https://api.arteza.ai/v1/images/generate \
-H "Authorization: Bearer $SEEDANCE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "seedream-v4-5",
"prompt": "A futuristic city skyline at sunset, cinematic photography",
"width": 2048,
"height": 1152,
"num_images": 1
}'
Go
package main
import (
"bytes"
"encoding/json"
"fmt"
"net/http"
"os"
)
type GenerateRequest struct {
Model string `json:"model"`
Prompt string `json:"prompt"`
Width int `json:"width"`
Height int `json:"height"`
NumImages int `json:"num_images"`
}
func generateImage(prompt string) (string, error) {
reqBody := GenerateRequest{
Model: "seedream-v4-5",
Prompt: prompt,
Width: 2048,
Height: 2048,
NumImages: 1,
}
jsonData, _ := json.Marshal(reqBody)
req, _ := http.NewRequest(
"POST",
"https://api.arteza.ai/v1/images/generate",
bytes.NewBuffer(jsonData),
)
req.Header.Set("Authorization", "Bearer "+os.Getenv("SEEDANCE_API_KEY"))
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
return "", err
}
defer resp.Body.Close()
var result map[string]interface{}
json.NewDecoder(resp.Body).Decode(&result)
images := result["images"].([]interface{})
firstImage := images[0].(map[string]interface{})
return firstImage["url"].(string), nil
}
Responsformaat
Succesvolle responses retourneren JSON met deze structuur:
{
"id": "gen_abc123xyz",
"model": "seedream-v4-5",
"created": 1712764800,
"images": [
{
"url": "https://cdn.arteza.ai/gen/abc123.png",
"width": 2048,
"height": 2048,
"seed": 42871
}
],
"credits_used": 8,
"credits_remaining": 1042
}
Afbeeldings-URL's zijn 24 uur geldig. Download en sla afbeeldingen direct op als je permanente toegang nodig hebt.

Wil je zulke details? Probeer Seedream v4.5 gratis →
Klaar om te beginnen met integreren? Haal je API-sleutel op →
Foutafhandeling
De API retourneert standaard HTTP-statuscodes:
| Code | Betekenis | Actie |
|---|---|---|
| 200 | Geslaagd | Verwerk de response |
| 400 | Ongeldig verzoek | Controleer de parameters |
| 401 | Authenticatie mislukt | Verifieer de API-sleutel |
| 402 | Onvoldoende credits | Koop meer credits |
| 429 | Snelheidslimiet bereikt | Implementeer backoff |
| 500 | Serverfout | Opnieuw proberen met exponentiële backoff |
Voorbeeld van een foutrespons:
{
"error": {
"code": "insufficient_credits",
"message": "Your account has insufficient credits for this request",
"credits_required": 8,
"credits_available": 3
}
}
Implementeer altijd foutafhandeling en nieuwe pogingen voor 429- en 500-fouten. Probeer 400- en 401-fouten niet opnieuw: die vereisen dat het verzoek zelf wordt gecorrigeerd.
Best practices voor productiegebruik
Snelheidsbeperking
De standaard snelheidslimieten bieden redelijke productiedoorvoer. Als je hogere limieten nodig hebt, neem dan contact op met de ondersteuning met de details van je toepassing.
Implementeer exponentiële backoff bij 429-fouten:
import time
def generate_with_retry(prompt, max_retries=3):
for attempt in range(max_retries):
try:
return generate_image(prompt)
except requests.HTTPError as e:
if e.response.status_code == 429:
wait_time = 2 ** attempt
time.sleep(wait_time)
continue
raise
raise Exception("Max retries exceeded")
Creditsbeheer
Houd het veld credits_remaining in elke response in de gaten. Stel waarschuwingen in wanneer het saldo onder een drempelwaarde zakt, zodat je kunt aanvullen voordat het productieverkeer op nul credits uitkomt.
def check_credits(response):
remaining = response.json().get('credits_remaining', 0)
if remaining < 100:
send_alert(f'Waarschuwing laag creditsaldo: {remaining} credits')
Asynchrone verwerking
Behandel beeldgeneratie voor gebruikersgerichte applicaties asynchroon. Blokkeer de UI-thread niet voor een API-aanroep van 5-15 seconden. Mogelijke aanpakken:
- Retourneer direct een taak-ID en poll op voltooiing
- Gebruik webhooks (indien ondersteund) voor voltooiingsmeldingen
- Genereer speculatief op de achtergrond en sla resultaten op in cache
Caching
Gegenereerde afbeeldingen zijn deterministisch bij dezelfde prompt en hetzelfde zaad. Sla agressief op in cache op basis van een prompthash om te voorkomen dat identieke afbeeldingen opnieuw worden gegenereerd.
import hashlib
def prompt_cache_key(prompt, width, height, seed):
raw = f'{prompt}|{width}x{height}|{seed}'
return hashlib.sha256(raw.encode()).hexdigest()
Promptveiligheid
Als je app prompts blootstelt aan eindgebruikers, implementeer dan contentfiltering voordat je naar de API stuurt. Arteza hanteert contentbeleid: prompts die dit schenden leveren fouten op, waardoor credits worden verspild en gebruikers te maken krijgen met mislukkingen.
Prijzen voor API-gebruik
API-gebruik wordt afgetrokken van het creditssaldo van je account tegen hetzelfde tarief als webgebruik.
| Volume | Kosten |
|---|---|
| 100 afbeeldingen/maand | ~$8 |
| 1.000 afbeeldingen/maand | ~$80 |
| 10.000 afbeeldingen/maand | ~$800 |
| 100.000 afbeeldingen/maand | ~$8.000 |
Credits komen uit hetzelfde prijsniveaus, ongeacht of je ze via het web of de API gebruikt:
- Starter: $5 = 60 credits per maand = 60 afbeeldingen
- Creator: $25 = 300 credits per maand = 300 afbeeldingen
- Pro: $50 = 700 credits per maand = 700 afbeeldingen
- Studio: $120 = 1.800 credits per maand = 1.800 afbeeldingen
Klanten met een hoger volume kunnen contact opnemen met de ondersteuning over volumeprijzen voor aanhoudend gebruik boven de 100.000 afbeeldingen per maand.
Lever AI-beeldgeneratie als functie, niet als belofte
Voorspelbare $0.10 per 4MP-afbeelding, standaard REST, responses in 5-15 seconden. Gratis credits om je integratie te prototypen.
Begin gratis met bouwenCombineren met andere Arteza-modellen
Je applicatie kan meerdere Seedance-modellen gebruiken via dezelfde API door de parameter model te wijzigen:
seedream-v4-5- 1 credits - topkwaliteitseedream-v3- 1 credit - sneller, eenvoudigerseedream-5-lite- 1 credit - modus voor diep denkenseedream-5-edit- 1 credit - afbeeldingen bewerkenseedance-2- videogeneratie (ander eindpunt)
Voor applicaties die naast generatie ook bewerkingsmogelijkheden nodig hebben, verwerkt seedream-5-edit op tekst gebaseerde afbeeldingsbewerking. Zie de Seedream 5 Edit-documentatie voor meer details.
Beveiligingsoverwegingen
Stel nooit API-sleutels bloot aan de clientzijde. Leid API-aanroepen altijd via je backend. Blootgestelde sleutels kunnen worden gebruikt om je creditssaldo leeg te trekken.
Roteer sleutels regelmatig. Als een sleutel is gecompromitteerd, trek hem dan in en genereer een nieuwe.
Log verzoeken voor foutopsporing. Neem verzoek-ID's op in je logs zodat je fouten kunt correleren met API-responses.
Stel gebruiksquota's per gebruiker in. Als je app AI-generatie als functie aanbiedt, beperk dan het verbruik per gebruiker om misbruik te voorkomen.
Veelgestelde vragen
Is er een gratis laag voor de API? Je 10 aanmeldcredits werken ook bij API-aanroepen. Dat zijn 10 gratis Seedream v4.5-generaties om de integratie te testen voordat je betaalt.
Wat is de typische responstijd? 5-15 seconden voor Seedream v4.5, afhankelijk van de resolutie en de huidige belasting.
Mag ik de API gebruiken voor commerciële producten? Ja. Commercieel gebruik is inbegrepen. De door je klanten gegenereerde afbeeldingen zijn van hen en mogen voor elk legitiem doel worden gebruikt.
Is er een Python SDK? Officiële SDK's zijn in ontwikkeling. De huidige REST API werkt uitstekend met standaard HTTP-bibliotheken in elke taal.
Hoe ga ik om met fouten in het contentbeleid? Implementeer gebruikersgerichte berichten die uitleggen dat de prompt is afgewezen. Log de specifieke fout voor foutopsporing.
Wat gebeurt er als mijn credits op raken tijdens een verzoek? De API retourneert een 402-fout voordat de generatie begint. Gedeeltelijke kosten worden nooit in rekening gebracht: je krijgt de volledige afbeelding of een foutmelding.
Kan ik meerdere prompts in één verzoek bundelen?
Niet direct. Gebruik num_images: 6 om variaties van dezelfde prompt te krijgen, of doe parallelle API-aanroepen voor verschillende prompts.
De Seedream v4.5 API biedt productieklare AI-beeldgeneratie tegen voorspelbare kosten per afbeelding en volgens standaard REST-conventies. Voor de meeste integraties ga je van API-sleutel naar je eerste werkende generatie in minder dan 10 minuten. Neem voor vragen of volumeprijzen contact op via je accountdashboard.
Begin vandaag nog met integreren. Haal je API-sleutel op → | Bekijk volledige prijzen → | Lees de v4.5-handleiding →
Seedream v4.5 uitproberen - Nu!
5 gratis generaties · Geen creditcard nodig