Dasar
Error
Error memakai format OpenAI supaya SDK bisa membacanya:
Code
Di /v1/messages (Anthropic), error memakai format Anthropic
({"type": "error", "error": {"type": "...", "message": "..."}}) supaya Claude Code dan Anthropic SDK
menampilkan pesan yang benar.
| Status | type | Arti & solusi |
|---|---|---|
| 400 | invalid_request_error | Body tidak valid, model tidak dikenal/nonaktif, atau model dipakai di endpoint yang salah (mis. model embedding di chat). |
| 401 | authentication_error | API key salah, dicabut, kedaluwarsa, atau akun ditangguhkan. |
| 402 | insufficient_credits | Saldo habis atau batas kredit key tercapai. Top-up atau naikkan batas. |
| 403 | permission_error | IP tidak ada di allow-list key, atau model tidak diizinkan untuk key ini. |
| 404 | not_found_error | Resource tidak ada. |
| 429 | rate_limit_error | Terlalu banyak request (per menit atau paralel). Tunggu lalu coba lagi dengan backoff. |
| 502 | upstream_error | Provider model sedang bermasalah. Coba lagi atau pakai model lain. |
| 500 | internal_error | Kesalahan di sisi SumoRouter. |
Rekomendasi: retry otomatis dengan exponential backoff untuk 429 dan 5xx; jangan retry 400, 401, 402, 403.
Last modified on