Rivya AI-dokumentation

OpenAPI- og schema-kontrakt

Gennemgå Rivya API v1's schema-kilder, kompatibilitetsregler, offentlige felter og den read-only OpenAPI JSON-kontrakt.

Sidst gennemgået den 2026/05/11

Rivya API v1 eksponerer en read-only schema-kontrakt på:

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

Denne route er et offentligt kontraktoutput. Den læser ikke brugerens sessiondata, indsender ikke modeljobs og eksponerer ikke private kontodata.

Kontraktkilder

Kontrakten er afledt af:

  • offentlige API-request schemas
  • offentlige fejlkoder
  • det offentlige API-modelreferencelag
  • det samme modelkatalog, der bruges af /api/v1/models

Modellisten er dynamisk. Byg ikke integrationer, der afhænger af et manuelt skrevet modelantal.

Versionspolitik

Den aktuelle API-version er v1.

Bagudkompatible ændringer kan omfatte:

  • tilføjelse af en model til /api/v1/models
  • tilføjelse af et valgfrit svarfelt
  • tilføjelse af en valgfri request-parameter for en model
  • tilføjelse af en ny offentlig fejlkode

Breaking changes kræver en ny version eller en dokumenteret migreringsvej.

Offentlig feltgrænse

Offentlige schema-felter bruger offentlige navne:

  • id
  • status
  • model
  • session_id
  • message
  • usage
  • reserved_credits
  • final_credits
  • created_at
  • updated_at
  • result
  • error

Afhæng ikke af interne task storage-felter. De er ikke en del af den offentlige kontrakt.

Request schema

POST /api/v1/generations accepterer:

  • model: påkrævet offentlig model-ID
  • prompt: valgfri string, påkrævet af mange modeller
  • params: valgfrit objekt med modelspecifikke parametre
  • client_request_id: valgfri string til dit eget trace-ID

Brug Model API Reference for modelspecifikke params.

Referencemedier returneret af /api/v1/files hører hjemme i params.referenceMediaItems. Schemaet dokumenterer url, kind, valgfri name, valgfri mimeType, valgfri durationSeconds og valgfri durationToken. Rivya accepterer ikke et top-level files-felt i POST /api/v1/generations.

POST /api/v1/files accepterer multipart form data med file, kind, valgfri model og valgfri client_request_id. Svaret er PublicApiFile. GET /api/v1/files/{fileId} returnerer de samme offentlige filmetadata for filer, der ejes af API-kontoen.

POST /api/v1/chat/completions accepterer model, message, valgfri session_id, valgfri kontroller, valgfri Files API-vedhæftninger med file_id og valgfri client_request_id. Det returnerer én komplet ikke-streaming assistant-besked.

POST /api/v1/chat/completions/stream accepterer samme request schema og returnerer text/event-stream med events for session.created, message.delta, message.completed, usage.completed, heartbeat, error og done. Chat API v1 accepterer ikke et råt messages-array.

Response schemas

OpenAPI-outputtet dokumenterer disse offentlige response shapes:

  • ModelList for GET /api/v1/models
  • PublicApiModel og ModelParam for modelvalg og parameterformularer
  • PublicApiFile for POST /api/v1/files og GET /api/v1/files/{fileId}
  • ReferenceMediaItem for filbaserede genereringsparametre
  • PublicGeneration for create- og status-svar
  • GenerationResult og GenerationError for completed tasks
  • ChatCompletionRequest, ChatCompletion, ChatSession, ChatMessage, ChatUsage, ChatCredits og Chat stream event schemas for Chat API
  • CreditBalance for GET /api/v1/credits
  • WebhookEndpoint, WebhookEvent, WebhookDelivery og WebhookTestResult for signerede API webhooks
  • PublicApiError for stabile fejlsvar

Schemaet er sikkert at bruge til klientvalidering og interne integrationstests. TypeScript SDK beta forbliver begrænset af dette schema.

Eksempel-governance

curl-, JavaScript- og Python-eksempler i disse docs bruger de samme offentlige feltnavne som schemaet:

  • Authorization: Bearer rvya_sk_...
  • Idempotency-Key
  • model
  • prompt
  • message
  • session_id
  • params
  • client_request_id

Chat-eksempler bruger desuden:

  • chat:create
  • chat:read
  • file_id

Webhook-eksempler bruger desuden:

  • Rivya-Webhook-Signature
  • Rivya-Webhook-Timestamp
  • webhooks:manage

Når en modelparameter ændres, skal modelkataloget og den offentlige serializer opdateres først. Docs og debugger bør bruge det samme offentlige lag i stedet for at kopiere en separat tabel.

Relaterede sider

Indholdsfortegnelse