# Fouten

> Elke foutcode en wat je eraan doet.

Bron: https://huispedia.dev/nl/docs/errors/

Een fout is `application/problem+json` (RFC 9457) met een vaste `code`; `detail` zegt in je `Accept-Language` wat je kunt doen. Een fout kost geen credits.

```json
{
  "type": "https://huispedia.dev/nl/docs/errors#insufficient_credits",
  "title": "Onvoldoende credits",
  "status": 402,
  "code": "insufficient_credits",
  "detail": "Deze aanroep kost 8 credits; je saldo is 3. Koop credits in het dashboard.",
  "request_id": "req_01M4…",
  "errors": []
}
```

| HTTP | `code` | Wanneer |
|---|---|---|
| 400 | `invalid_request` | Het verzoek klopt niet; `errors` noemt per veld wat er mis is |
| 401 | `unauthenticated` | Geen of onbekende sleutel |
| 401 | `key_revoked`, `key_expired` | Sleutel ingetrokken of verlopen |
| 402 | `insufficient_credits` | Je saldo dekt de aanroep niet |
| 402 | `spend_cap_reached` | Je uitgavenlimiet van deze maand is bereikt |
| 403 | `entitlement_required` | Dit endpoint hoort niet bij je account |
| 403 | `ip_not_allowed` | IP-adres buiten de lijst van de sleutel |
| 403 | `account_suspended` | Account opgeschort |
| 403 | `forbidden` | Je mag dit niet met dit account |
| 404 | `not_found` | De locator vindt niets |
| 405 | `method_not_allowed` | Deze methode bestaat niet op dit pad |
| 409 | `address_ambiguous` | Meerdere woningen op het adres; `errors` bevat de kandidaten |
| 409 | `conflict` | De actie botst met de huidige staat; `detail` zegt wat |
| 422 | `data_unavailable` | De woning of het gebied bestaat, maar deze gegevens zijn er niet voor |
| 429 | `rate_limited` | Limiet per sleutel of account; zie `Retry-After` |
| 503 | `upstream_unavailable` | Tijdelijk niet beschikbaar; zie `Retry-After` |
| 503 | `billing_unavailable` | Betalen is op dit moment niet mogelijk |
| 500 | `internal_error` | Een fout aan onze kant; noem het `request_id` |
