# Fejlkoder

> Alle statuskoder fra API'et, hvad de betyder, og hvad du skal gøre ved dem.

Fejl har altid samme form: et JSON-objekt med feltet `fejl`, som er en dansk tekst, der kan vises til en udvikler. Nogle fejl har flere felter, fx `kode` eller `kvote`.

```json
{ "fejl": "CVR-nummer skal være 8 cifre" }
```

## Statuskoder

| Kode  | Betydning                                                                           | Hvad du gør                                                                                                   |
| ----- | ----------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| `200` | OK                                                                                  |                                                                                                               |
| `201` | Oprettet (fx en ny overvågning)                                                     |                                                                                                               |
| `400` | Ugyldigt input, fx et CVR-nummer uden 8 cifre eller en søgning under 2 tegn         | Ret input. Teksten i `fejl` siger, hvad der er galt                                                           |
| `401` | Manglende eller ugyldig nøgle                                                       | Send `Authorization: Bearer cvr_…`. Tjek, at nøglen ikke er slettet eller roteret                             |
| `402` | Endpointet kræver en betalt pakke, eller smagsprøverne er brugt                     | Vælg en pakke på [priser](https://cvrradar.dk/priser), eller vent til næste måned                                                |
| `403` | Endpointet er ikke åbent for din nøgle (fx kun for interne nøgler)                  | Brug et andet endpoint                                                                                        |
| `404` | CVR-nummeret, personen eller adressen findes ikke                                   | Tjek nummeret. Ukendte adresser under `/v1` giver også 404                                                    |
| `413` | Body er for stor                                                                    | Del kaldet op                                                                                                 |
| `422` | Gyldigt input, men det kan ikke udføres, fx flere overvågninger end pakken tillader | Læs `kode` og `fejl`                                                                                          |
| `429` | Kvoten eller grænsen for kald i minuttet er nået                                    | Vent `Retry-After` sekunder. Se [Godkendelse og kvoter](https://cvrradar.dk/docs/godkendelse-og-kvoter.md#naar-kvoten-er-brugt-429) |
| `500` | Fejl hos cvrradar                                                                   | Prøv igen om lidt. Fejlen er logget                                                                           |
| `503` | Midlertidigt utilgængelig, fx under en opdatering                                   | Prøv igen med backoff                                                                                         |

## Fejl, der ikke er fejl

- **Ingen regnskab.** `GET /v1/virksomhed/{cvr}/regnskab` svarer `200` med en tom liste, hvis virksomheden ikke har offentliggjort en årsrapport. Det gælder fx nystiftede selskaber og enkeltmandsvirksomheder.
- **Ikke nok data.** Kreditvurderingen har `tilstand: "ikke_nok_data"` i stedet for en score, når der mangler et regnskab. Vis det som det er, og gæt ikke.
- **Freemail.** `GET /v1/domaene/gmail.com` svarer `200` med `freemail: true` og en tom liste, fordi en gratis mailtjeneste ikke peger på en bestemt virksomhed.

## Når noget ser forkert ud

Er en oplysning forkert i CVR, skal den rettes hos Erhvervsstyrelsen, og cvrradar henter rettelsen ved næste synkronisering. Er det cvrradars egen vurdering eller måling, der er forkert, så [skriv til mig](https://cvrradar.dk/kontakt?type=rettelse).
