Rivya AI दस्तावेज़

Generation create करें

model, prompt, params, Idempotency-Key और public response fields के साथ asynchronous Rivya API generation jobs submit करें.

अंतिम समीक्षा 2026/05/10 को

असिंक्रोनस image, video या audio generation job submit करने के लिए POST /api/v1/generations इस्तेमाल करें।

Chat models के लिए Chat API इस्तेमाल करें। POST /api/v1/generations chat sessions या assistant messages create नहीं करता।

Endpoint

POST https://rivya.ai/api/v1/generations

जरूरी headers:

Authorization: Bearer rvya_sk_...
Content-Type: application/json

अनुशंसित header:

Idempotency-Key: your-unique-request-key

Request Body

{
  "model": "z-image",
  "prompt": "A clean editorial product image on a soft studio background",
  "params": {
    "aspect_ratio": "1:1"
  },
  "client_request_id": "order-123-preview"
}

Fields:

  • model: जरूरी public model ID
  • prompt: prompt text, कई models में जरूरी
  • params: model-specific parameter object
  • client_request_id: आपके system से optional trace ID

Model-specific params के लिए Model API Reference पढ़ें।

Params में Reference Files

जिन models में uploaded reference media स्वीकार होती है, उनके लिए पहले Files API call करें। फिर upload result को model params के माध्यम से pass करें; generation request में top-level files field न जोड़ें।

नई integrations के लिए params.referenceMediaItems इस्तेमाल करें:

{
  "model": "nano-banana-2",
  "prompt": "Restyle this product photo for a clean editorial catalog page",
  "params": {
    "referenceMediaItems": [
      {
        "url": "https://...",
        "kind": "image",
        "name": "reference.png",
        "mimeType": "image/png"
      }
    ]
  }
}

जिन audio या video inputs में duration verification जरूरी है, उनमें returned duration_token को /api/v1/files से संबंधित durationToken के रूप में referenceMediaItems entry पर शामिल करें।

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": "A clean editorial product image on a soft studio background",
    "params": {
      "aspect_ratio": "1:1"
    }
  }'

JavaScript उदाहरण

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: "A clean editorial product image on a soft studio background",
    params: { aspect_ratio: "1:1" }
  })
});

const generation = await response.json();
console.log(generation.id, generation.status);

Python उदाहरण

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": "A clean editorial product image on a soft studio background",
        "params": {"aspect_ratio": "1:1"},
    },
    timeout=30,
)

generation = response.json()
print(generation["id"], generation["status"])

Response

{
  "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
}

id save करें और Generation Status poll करें। अगर आप API Webhooks configure करते हैं, तो task terminal state तक पहुंचने पर Rivya signed generation.succeeded या generation.failed event भी भेज सकता है।

Idempotency

Retries के लिए Idempotency-Key इस्तेमाल करें। अगर वही key और वही request body replay होती है, तो duplicate task create करने के बजाय Rivya stored public response return कर सकता है।

अगर वही key अलग input के साथ reuse होती है, तो API idempotency_conflict लौटाता है।

संबंधित पेज

विषय-सूची