{"error": {"code": "...", "message": "..."}}. Daftar lengkap ada di Error.
401 UNAUTHORIZED
API key tidak ada, salah salin, sudah dicabut, atau kedaluwarsa. Pastikan header memakaiAuthorization: Bearer sk-... atau x-api-key, lalu cek status key di Console → API Keys.
402 PAYMENT_REQUIRED
Ada dua penyebab:- Saldo akun tidak cukup untuk estimasi biaya request.
- Limit kredit API key tercapai (harian, mingguan, bulanan, atau total).
404 MODEL_NOT_FOUND
Slug model tidak ada di katalog. Ambil slug persis dariGET /v1/models atau halaman Model. Jangan menebak slug dari nama tampilan.
400 MODEL_NOT_IN_SERVICE_MODE
Model ada, tetapi tidak tersedia untuk Service Mode API key yang dipakai. Contoh: key Low-Cost memanggil model yang hanya punya rute Performance. Buat key dengan mode yang sesuai atau pilih model lain.422 VALIDATION_FAILED
Body request tidak lolos validasi:messages kosong, tipe field salah, atau field wajib hilang. Respons menyertakan detail per field. Periksa contoh body di Chat Completions.
429 RATE_LIMITED
Batas request terlampaui. Baca headerRetry-After dan RateLimit-*, lalu ulangi dengan backoff eksponensial. Request yang ditolak limiter tidak memotong saldo. Detail: Pemakaian & Limit.
503 MODEL_UNAVAILABLE / UPSTREAM_ERROR
Model sedang deprecated/tidak tersedia, atau upstream mengalami gangguan sementara. UntukUPSTREAM_ERROR, coba lagi beberapa saat. Untuk MODEL_UNAVAILABLE, cek pesan error apakah ada replacement_slug.

