# Typické chyby

<Aside type="note">
Kódy chyb we **ne** zapisujeme do logu požadavků, pouze HTTP-stav. Protože níže jsou frekvence stavů, ale není žádný rating kódů jako `INVALID_FIELD`. Nevytvořili jsme ho.
</Aside>

## Chyby cesty

Nejčastější 4xx v logu jsou `404`, a téměř všechny nejsou vaši: jsou to skenery, které procházejí `.env`, `.git/config`, `wordpress/`, `wp-content/…`. Skutečné chyby cesty v integraci jsou jiné a jsou již popsány s příklady zde: [Chybné volání, které vidíme nejčastěji](/api-conventions/#chybné-volání-je-vidíme-nejčastěji). Krátké: `/api/…` místo `/v1/…`, zdvojený `/v1/v1/…`, `/swagger.json` místo `/v1/openapi.json`.

## `402`: taryf neobsahuje endpoint

385 odpovědí za 30 dní. Rozložení ukazuje, kam častěji než všechno selže bezplatný taryf:

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

V těle odpovědi přichází `current_plan` a `upgrade_to`. To není chyba požadavku: tělo je správné, klíč je platný, pouze taryf neobsahuje tento endpoint.

## `429`: dva různé limity

6 791 odpovědí za 30 dní, z nichž 3 769 bez klíče a 3 022 s klíčem. To jsou dva různé mechanismy, a plývat s nimi nevážte:

- **bez klíče** limit je spočítán podle IP, 30 požadavků na hodinu. Největší blok v našem logu není ani integrace, ale syntetický audit Chrome-Lighthouse z 15 adres;
- **s klíčem** limit je taryf RPU vašeho taryfu. V odpovědi je `Retry-After` v sekundách, a to je to, co byste měli čekat, a ne udělat retray hned.

## `400`: téměř vždy tělo kartového požadavku

700 odpovědí za 30 dní, a jsou soustředěny na endpointech, které přijímají datum, čas a koordináty: `chart` (111), `horoscope/daily` (19), `transits` (18), `synastry` (15), `rectification` (15).

Nejdražší z těchto chyb není ani ta, která dá `400`, ale ta, která kdysi dala `200`: krátké zkracování polí. Pravidla a příklady odpovědi: [Formáty polí](/agent-setup/field-formats/).

## `401` a `403`

`401` je chybí nebo neplatný klíč; zpráva nazývá obě třídy, `aw_` a `pk_`. `403` je chybí původ: klíč `pk_` odmítnut, pokud požadavek přišel bez původu nebo z cizího doménu, a klíč s oblastí endpointů odpovídá `ENDPOINT_NOT_IN_SCOPE` a seznamuje svůj seznam v `details`.

Plná tabulka kódů: [Chyby](/errors/).
