Pola Umum
Penanganan Error
API Qwetty menggunakan kode status HTTP standar dan format respons error yang konsisten.
Format respons error
Seluruh error mengembalikan JSON dengan struktur berikut:
Code
Objek errors hanya ada untuk error validasi.
Kode status HTTP
| Kode | Arti | Kapan terjadi |
|---|---|---|
| 400 | Bad Request | Body permintaan atau parameter tidak valid |
| 401 | Unauthorized | API key hilang, tidak valid, atau kedaluwarsa |
| 403 | Forbidden | API key tidak memiliki izin untuk tindakan ini |
| 404 | Not Found | Resource tidak ada atau milik organisasi lain |
| 422 | Validation Error | Body permintaan gagal validasi |
| 429 | Too Many Requests | Batas rate terlampaui |
| 503 | Service Unavailable | Masalah server sementara |
Error umum dan solusinya
| Error | Penyebab | Solusi |
|---|---|---|
| "Missing or invalid Authorization header" | Tidak ada Bearer token | Tambahkan header Authorization: Bearer YOUR_KEY |
| "Invalid or expired API key" | Key tidak ada, dicabut, atau kedaluwarsa | Periksa key Anda di Pengaturan → API Keys |
| "Rate limit exceeded" | Terlalu banyak permintaan | Terapkan backoff; periksa header batas rate (rate limit) |
| "Chat not found" | ID chat tidak ada atau bukan milik organisasi Anda | Verifikasi ID chat dengan GET /chats |
Header batas rate (rate limit)
Ketika dibatasi rate, respons menyertakan:
| Header | Deskripsi |
|---|---|
X-RateLimit-Limit | Maksimum permintaan per jendela |
X-RateLimit-Remaining | Permintaan tersisa |
X-RateLimit-Reset | Kapan jendela direset (stempel waktu Unix) |
Langkah selanjutnya
- Paginasi & Filter — Menavigasi kumpulan hasil yang besar
- Batas Rate (Rate Limit) — Informasi batas rate (rate limit) terperinci
Last modified on