Vytvoření generování
Odesílejte asynchronní úlohy generování v Rivya API s modelem, promptem, params, Idempotency-Key a veřejnými poli odpovědi.
Naposledy zkontrolováno 2026/05/10
Použijte POST /api/v1/generations k odeslání asynchronní úlohy generování obrázku, videa nebo audia.
Pro chatové modely použijte Chat API. POST /api/v1/generations nevytváří chatové relace ani zprávy asistenta.
Koncový bod
POST https://rivya.ai/api/v1/generationsPožadované headery:
Authorization: Bearer rvya_sk_...
Content-Type: application/jsonDoporučený header:
Idempotency-Key: your-unique-request-keyTělo požadavku
{
"model": "z-image",
"prompt": "Čistý editorialní produktový obrázek na jemném studiovém pozadí",
"params": {
"aspect_ratio": "1:1"
},
"client_request_id": "order-123-preview"
}Pole:
model: povinné veřejné ID modeluprompt: text promptu, který mnoho modelů vyžadujeparams: objekt parametrů specifických pro modelclient_request_id: volitelné trace ID z vašeho systému
Modelově specifické params najdete v referenci modelového API.
Referenční soubory v params
U modelů, které přijímají nahraná referenční média, nejprve zavolejte Files API. Potom předejte výsledek uploadu přes modelové params; do požadavku na generování nepřidávejte top-level pole files.
U nových integrací použijte params.referenceMediaItems:
{
"model": "nano-banana-2",
"prompt": "Uprav styl této produktové fotografie pro čistou editorialní stránku katalogu",
"params": {
"referenceMediaItems": [
{
"url": "https://...",
"kind": "image",
"name": "reference.png",
"mimeType": "image/png"
}
]
}
}U audio nebo video vstupů, které vyžadují ověření délky, vložte duration_token vrácený z /api/v1/files jako durationToken do související položky referenceMediaItems.
Příklad curl
curl https://rivya.ai/api/v1/generations \
-H "Authorization: Bearer rvya_sk_..." \
-H "Content-Type: application/json" \
-H "Idempotency-Key: product-preview-001" \
-d '{
"model": "z-image",
"prompt": "Čistý editorialní produktový obrázek na jemném studiovém pozadí",
"params": {
"aspect_ratio": "1:1"
}
}'Příklad JavaScriptu
const response = await fetch("https://rivya.ai/api/v1/generations", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.RIVYA_API_KEY}`,
"Content-Type": "application/json",
"Idempotency-Key": "product-preview-001"
},
body: JSON.stringify({
model: "z-image",
prompt: "Čistý editorialní produktový obrázek na jemném studiovém pozadí",
params: { aspect_ratio: "1:1" }
})
});
const generation = await response.json();
console.log(generation.id, generation.status);Příklad Pythonu
import os
import requests
response = requests.post(
"https://rivya.ai/api/v1/generations",
headers={
"Authorization": f"Bearer {os.environ['RIVYA_API_KEY']}",
"Content-Type": "application/json",
"Idempotency-Key": "product-preview-001",
},
json={
"model": "z-image",
"prompt": "Čistý editorialní produktový obrázek na jemném studiovém pozadí",
"params": {"aspect_ratio": "1:1"},
},
timeout=30,
)
generation = response.json()
print(generation["id"], generation["status"])Odpověď
{
"id": "task_public_id",
"status": "queued",
"model": "z-image",
"reserved_credits": 1,
"final_credits": 0,
"created_at": "2026-05-10T00:00:00.000Z",
"updated_at": "2026-05-10T00:00:00.000Z",
"result": null,
"error": null
}Uložte id a pollujte stav generování. Pokud nastavíte API Webhooks, Rivya může také poslat podepsanou událost generation.succeeded nebo generation.failed, když úloha dosáhne koncového stavu.
Idempotence
Pro opakované pokusy používejte Idempotency-Key. Pokud se znovu odešle stejný klíč a stejné tělo požadavku, Rivya může vrátit uloženou veřejnou odpověď místo vytvoření duplicitní úlohy.
Pokud je stejný klíč znovu použit s jiným vstupem, API vrátí idempotency_conflict.
Související stránky
Stav generování
Dotazujte úlohy generování Rivya API podle veřejného ID úlohy, čtěte stavy queued, processing, succeeded a failed a používejte výsledné URL.
Reference modelového API
Vyhledejte ID modelů Rivya API, dostupnost, podporované režimy, tabulky parametrů, limity promptů, pravidla referenčních médií a odkazy na detaily modelů.