Rivya AI dokumentáció

OpenAPI és séma szerződés

Tekintsd át a Rivya API v1 sémaforrásait, kompatibilitási szabályait, nyilvános mezőit és csak olvasható OpenAPI JSON szerződését.

Utoljára ellenőrizve: 2026/08/26

A Rivya API v1 csak olvasható séma szerződést tesz közzé itt:

https://rivya.ai/api/v1/openapi.json

Ez az útvonal nyilvános szerződéskimenet. Nem olvas felhasználói munkamenet-adatokat, nem küld be modellfeladatokat, és nem tesz közzé privát fiókadatokat.

Szerződésforrások

A szerződés ezekből származik:

  • nyilvános API request sémák

  • nyilvános hibakódok

  • a nyilvános API modellreferencia rétege

  • ugyanaz a modellkatalógus, amelyet a /api/v1/models használ

A modelllista dinamikus. Ne építs olyan integrációt, amely kézzel írt modell-darabszámtól függ.

Verziószabályzat

A jelenlegi API-verzió v1.

Visszafelé kompatibilis változások lehetnek:

  • modell hozzáadása a /api/v1/models listához

  • opcionális válaszmező hozzáadása

  • opcionális request paraméter hozzáadása egy modellhez

  • új nyilvános hibakód hozzáadása

Törő változásokhoz új verzió vagy dokumentált migrációs út szükséges.

Nyilvános mezőhatár

A nyilvános séma mezői nyilvános neveket használnak:

  • id

  • status

  • model

  • session_id

  • message

  • usage

  • reserved_credits

  • final_credits

  • created_at

  • updated_at

  • result

  • error

Ne támaszkodj belső task-tárolási mezőkre. Ezek nem részei a nyilvános szerződésnek.

Request séma

A POST /api/v1/generations ezt fogadja:

  • model: kötelező nyilvános modellazonosító

  • prompt: opcionális string, sok modellnél kötelező

  • params: opcionális objektum modell-specifikus paraméterekkel

  • client_request_id: opcionális string saját trace ID-hoz

Modell-specifikus params mezőkhöz használd a Modell API referenciát.

A /api/v1/files által visszaadott referenciamédia a params.referenceMediaItems mezőbe tartozik. A séma dokumentálja az url, kind, opcionális name, opcionális mimeType, opcionális durationSeconds / durationToken, opcionális width / height / sizeBytes / imageDimensionsToken, valamint opcionális framesPerSecond / videoBitrateMbps / videoMetadataToken mezőket. Minden Image5, Grok Imagine Image 2.0 és Wan 3.0 referenciaképhez szükség van az eredeti, modellhez kötött feltöltési válasz aláírt képtokenjére és a hozzá kötött bájtméretre; a Layer Decomposition a dokumentált geometriai korlátait is érvényesíti. Minden Video8 és Wan 3.0 referenciavideóhoz szükség van az eredeti, modellhez kötött feltöltési válasz aláírt időtartam-tokenjére és aláírt videómetaadataira. A Rivya nem fogad el felső szintű files mezőt a POST /api/v1/generations kérésben.

A POST /api/v1/files multipart form adatot fogad file, kind, opcionális model és opcionális client_request_id mezőkkel. A válasz egy PublicApiFile, amely tartalmazza a size_bytes mezőt, a null értékű is lehető képméreteket és az image_dimensions_token mezőt, valamint a null értékű is lehető video_width, video_height, frames_per_second, video_bitrate_mbps, video_file_size_bytes és video_metadata_token mezőket. A GET /api/v1/files/{fileId} az API-fiók tulajdonában lévő fájlok nyilvános metaadatait adja vissza, de egy nem tartósított aláírt metaadat-token értéke null lehet; ilyenkor új feltöltéssel kell pótolni.

A video_metadata_token az API-fiókhoz, a célmodellhez, az URL-hez, a MIME-típushoz, a méretekhez, a képkockasebességhez, a bitrátához és a feltöltés bájtméretéhez kötődik. Nem helyettesíti a duration_token értékét; azoknak a Video8 és Wan 3.0 referenciavideóknak, amelyek mindkét szerződést használják, mindkét tokent meg kell adniuk. A Wan 3.0 hang-időtartamtokenjei a MIME-típushoz és a feltöltés bájtméretéhez is kötődnek.

A wan-3-0-video esetében a params csak a seedance_scene, variant, resolution, aspect_ratio, duration, audio, seed és referenceMediaItems mezőt fogadja el. A szöveg-, képkocka- és referencia mód kölcsönösen kizárja egymást. Az intelligens időtartam értéke -1, 30 másodpercet foglal le, és referenciavideóval érvénytelen; minden tetszőleges mezőt, aláírás nélküli médiát, valamint file-to-video vagy link-to-video rövidítést tartalék feldolgozás nélkül elutasít a rendszer.

A POST /api/v1/chat/completions model, message, opcionális session_id, opcionális vezérlők, opcionális Files API file_id csatolmányok és opcionális client_request_id mezőt fogad. Egy teljes, nem streamelt asszisztensüzenetet ad vissza.

A POST /api/v1/chat/completions/stream ugyanazt a request sémát fogadja, és text/event-stream választ ad session.created, message.delta, message.completed, usage.completed, heartbeat, error és done eseményekkel. A Chat API v1 nem fogad nyers messages tömböt.

Válaszsémák

Az OpenAPI kimenet ezeket a nyilvános válaszalakokat dokumentálja:

  • ModelList a GET /api/v1/models híváshoz

  • PublicApiModel és ModelParam modellválasztáshoz és paraméterűrlapokhoz

  • PublicApiFile a POST /api/v1/files és GET /api/v1/files/{fileId} hívásokhoz

  • ReferenceMediaItem fájlalapú generálási paraméterekhez

  • PublicGeneration létrehozási és állapotválaszokhoz

  • GenerationResult és GenerationError befejezett feladatokhoz

  • ChatCompletionRequest, ChatCompletion, ChatSession, ChatMessage, ChatUsage, ChatCredits és Chat stream eseménysémák a Chat API-hoz

  • CreditBalance a GET /api/v1/credits híváshoz

  • WebhookEndpoint, WebhookEvent, WebhookDelivery és WebhookTestResult aláírt API webhookokhoz

  • PublicApiError stabil hibaválaszokhoz

A séma biztonságosan használható kliensoldali validáláshoz és belső integrációs tesztekhez. A TypeScript SDK beta ezt a sémát követi.

Példairányítás

Az ezekben a dokumentumokban szereplő curl, JavaScript és Python példák ugyanazokat a nyilvános mezőneveket használják, mint a séma:

  • Authorization: Bearer rvya_sk_...

  • Idempotency-Key

  • model

  • prompt

  • message

  • session_id

  • params

  • client_request_id

A Chat példák emellett ezeket használják:

  • chat:create

  • chat:read

  • file_id

A webhook példák emellett ezeket használják:

  • Rivya-Webhook-Signature

  • Rivya-Webhook-Timestamp

  • webhooks:manage

Amikor egy modellparaméter változik, először a modellkatalógust és a nyilvános szerializálót frissítsd. A dokumentációnak és a debuggernek ugyanazt a nyilvános réteget kell fogyasztania, nem külön táblát másolnia.

Kapcsolódó oldalak