# Kesalahan Umum

Halaman ini disusun dari distribusi status di produksi selama 30 hari. Di tempat di mana kami tidak mengukur sesuatu, dituliskan apa adanya.

<Aside type="note">
Kode error **tidak** kami catat di log permintaan, hanya status HTTP. Jadi di bawah ada frekuensi status, tapi tidak ada peringkat kode seperti `INVALID_FIELD`. Kami tidak membuatnya.
</Aside>

## Kesalahan jalur

4xx paling umum di log adalah `404`, dan hampir semuanya bukan milikmu: itu pemindai yang menelusuri `.env`, `.git/config`, `wordpress/`, `wp-content/…`. Kesalahan jalur sebenarnya pada integrator berbeda, dan sudah dijelaskan dengan contoh di sini: [Permintaan Salah yang Kami Lihat Paling Sering](/api-conventions/#помилкові-виклики-які-ми-бачимо-найчастіше). Singkatnya: `/api/…` alih-alih `/v1/…`, duplikat `/v1/v1/…`, `/swagger.json` alih-alih `/v1/openapi.json`.

## `402`: paket tidak mencakup endpoint

385 respons selama 30 hari. Distribusi menunjukkan ke mana paket gratis paling sering terhambat:

| Endpoint | `402` dalam 30 hari |
|---|---|
| `chart` | 114 |
| `transit-calendar` | 101 |
| `vedic/dashas/vimshottari/maha` | 48 |
| `ingresses` | 25 |
| `planetary-hours` | 24 |
| `vedic/panchang/full` | 24 |
| `eclipses` | 13 |

Di dalam body respons terdapat `current_plan` dan `upgrade_to`. Ini bukan error permintaan: bodynya benar, kunci valid, hanya saja paket tidak mencakup endpoint ini.

## `429`: dua batas berbeda

6 791 respons selama 30 hari, di antaranya 3 769 tanpa kunci dan 3 022 dengan kunci. Ini dua mekanisme berbeda, dan jangan bingung keduanya:

- **tanpa kunci** batas dihitung per IP, 30 permintaan per jam. Blok terbesar di log kami bahkan bukan integrator, melainkan audit sintetis Chrome-Lighthouse dari 15 alamat;
- **dengan kunci** batas adalah RPM paketmu. Di respons ada `Retry-After` dalam detik, dan itu yang harus kamu tunggu, bukan langsung melakukan retry.

## `400`: hampir selalu body permintaan kartu

700 respons selama 30 hari, dan mereka terpusat pada endpoint yang menerima tanggal, waktu, dan koordinat: `chart` (111), `horoscope/daily` (19), `transits` (18), `synastry` (15), `rectification` (15).

Kesalahan paling mahal di antara ini bahkan bukan yang menghasilkan `400`, melainkan yang dulu menghasilkan `200`: penulisan singkat field. Aturan dan contoh respons: [Format Field](/agent-setup/field-formats/).

## `401` dan `403`

`401` berarti kunci tidak ada atau salah; pesan menyebutkan kedua kelas, `aw_` dan `pk_`. `403` terkait asal: kunci browser `pk_` ditolak jika permintaan datang tanpa asal atau dari domain lain, dan kunci dengan ruang lingkup endpoint menghasilkan `ENDPOINT_NOT_IN_SCOPE` serta mencantumkan daftarnya di `details`.

Tabel kode lengkap: [Kesalahan](/errors/).
