Docs Rivya AI

Error dan Limit API

Tangani kode error publik Rivya API, nilai HTTP status, rate limit, konflik idempotensi, dan keputusan retry.

Terakhir ditinjau pada 2026/05/11

Rivya API mengembalikan kode error publik yang stabil dalam JSON. Perlakukan nilai error.code sebagai kontrak integrasi.

Bentuk Error

{
  "error": {
    "code": "api_key_missing",
    "message": "A valid Bearer API key is required.",
    "requestId": "req_..."
  }
}

Simpan requestId di log Anda saat meminta dukungan Rivya menyelidiki permintaan API yang gagal.

Kode Error Stabil

CodeHTTP statusArtiTindakan yang disarankan
public_api_disabled503Panggilan Public API sedang dinonaktifkan sementara.Coba lagi nanti atau gunakan Studio secara manual.
api_key_missing401Permintaan tidak menyertakan Bearer API key.Kirim Authorization: Bearer rvya_sk_....
api_key_invalid401Key tidak dapat diverifikasi.Periksa key dan rotasi jika perlu.
api_key_revoked401Key dicabut di Settings.Buat key baru.
api_key_expired401Key tidak lagi valid.Buat key baru.
api_scope_denied403Key tidak memiliki scope yang dibutuhkan.Buat key dengan scope yang diperlukan.
rate_limited429Terlalu banyak permintaan dalam window saat ini.Mundur sejenak dan coba lagi nanti.
validation_failed400Body, model, prompt, atau params tidak valid.Bandingkan body Anda dengan referensi model.
not_found404Tugas yang diminta tidak ada atau bukan milik akun.Periksa ID tugas publik dan batas akun.
webhook_url_rejected400URL endpoint webhook tidak diizinkan.Gunakan URL HTTPS publik tanpa credentials, fragment, localhost, atau alamat jaringan privat.
chat_model_not_supported400Model yang dipilih tidak tersedia untuk Chat API.Baca /api/v1/models dan pilih model chat yang tersedia.
chat_session_conflict409Session chat tidak dapat digunakan untuk permintaan ini.Gunakan session yang dibuat API, milik akun dan model yang sama.
chat_attachment_not_supported400Lampiran chat tidak didukung.Unggah gambar melalui Files API dan kirim file_id-nya.
idempotency_conflict409Idempotency key yang sama dipakai ulang dengan input berbeda.Gunakan key baru atau kirim ulang body yang persis sama.
insufficient_credits402Akun tidak memiliki credits yang cukup.Tambahkan credits atau pilih permintaan dengan biaya lebih rendah.
internal_error500Permintaan tidak dapat diselesaikan.Retry dengan idempotensi atau hubungi support dengan requestId.

Rate Limit

Rivya menerapkan rate limit Public API tingkat aplikasi per API key. Limit production default dikonfigurasi oleh PUBLIC_API_RATE_LIMIT_PER_MINUTE.

Saat menerima rate_limited, gunakan exponential backoff. Jangan retry dalam loop yang rapat.

Retry Idempoten

Kirim Idempotency-Key dengan setiap permintaan production POST /api/v1/generations dan POST /api/v1/chat/completions.

Pola yang disarankan:

  • buat key unik untuk setiap permintaan generasi logis
  • gunakan ulang key yang sama hanya saat retry body yang sama
  • simpan ID tugas publik yang dikembalikan bersama record job Anda sendiri
  • untuk Chat API, simpan session_id yang dikembalikan saat Anda ingin melanjutkan percakapan yang sama
  • jangan gunakan satu key untuk model, prompt, atau params yang berbeda

Jika jaringan gagal setelah submission, retry dengan body yang sama dan Idempotency-Key yang sama. Rivya dapat mengembalikan respons publik yang tersimpan alih-alih membuat tugas duplikat.

Keputusan Retry

Retry error berikut dengan backoff:

  • public_api_disabled
  • rate_limited
  • internal_error
  • kegagalan jaringan sementara

Jangan retry error berikut tanpa mengubah input:

  • api_key_invalid
  • api_key_revoked
  • api_scope_denied
  • validation_failed
  • webhook_url_rejected
  • chat_model_not_supported
  • chat_session_conflict
  • chat_attachment_not_supported
  • idempotency_conflict
  • insufficient_credits

Halaman Terkait

Daftar Isi