↓
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 11 Mei 2026

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