# API v2 fejl og genforsøg

> Håndter GenderAPI v2 Problem Details, valideringsfejl, takstgrænser og faktureringsusikkerhed. Forstå debiteringer, der skal prøves igen, og hvornår du skal kontakte support.

Canonical HTML: https://www.genderapi.io/da/docs/v2/errors-and-retries

Last reviewed: 2026-09-25

## Fejl og HTTP statuskoder

Applikationsfejl bruger application/problem+json (RFC 9457). Håndter fejl ved at bruge de stabile felter code og action i stedet for den forklarende tekst i detail. For valideringsfejl indeholder errors JSON Pointer-placeringer for de berørte felter. Inkluder request_id, når du kontakter support. Proxy- eller forbindelsesfejl kan returnere en anden svartekst; tjek Content-Type før parsing af JSON.

Det følgende syntetiske 422-eksempel viser ugyldig e-mail-syntaks før fakturering. Det offentlige fejlkatalog viser hver kode, status, forklaring og foreslået handling.

| HTTP status | Typisk betydning | Næste trin |
| --- | --- | --- |
| 400 / 413 / 415 | Misformet JSON, overdimensioneret krop eller ikke-understøttet medietype. | Ret anmodningen. |
| 401 / 403 | Adgang afvist, kontobegrænsning eller utilstrækkelig kredit. | Undersøg code; korrekt adgang eller genopfyld kreditter / vent på nulstilling af prøveversionen. |
| 422 | Ugyldig input eller inkompatible muligheder. | Ret de felter, der er identificeret i errors. |
| 404 / 405 | Ukendt rute eller ikke-understøttet HTTP-metode. | Kontroller endepunktstien og Allow-svarheaderen. |
| 429 | Sats- eller samtidighedsgrænse. | Vent på Retry-After, før du sender endnu en anmodning. |
| 500 | Uventet serverfejl. | Kontakt support med request_id; kontrollere fakturering, før du prøver igen. |
| 502 / 503 / 504 | Fejl ved udbyder, afhængighed, fakturering eller timeout. | Undersøg code, action og billing_status, før du prøver igen. |

```json
{
  "type": "urn:genderapi:problem:validation_error",
  "title": "validation error",
  "status": 422,
  "detail": "A valid email address is required.",
  "instance": "urn:uuid:11111111-1111-4111-8111-111111111111",
  "code": "validation_error",
  "request_id": "11111111-1111-4111-8111-111111111111",
  "documentation": "https://api.genderapi.io/api/v2/errors",
  "action": "correct_request",
  "errors": [
    {
      "pointer": "/value",
      "message": "Invalid email address."
    }
  ],
  "meta": {
    "request_id": "11111111-1111-4111-8111-111111111111",
    "duration_ms": 12,
    "access": {
      "mode": "ip_trial",
      "reason": "api_key_missing"
    },
    "usage": {
      "charged_credits": 0,
      "remaining_credits": null,
      "billing_status": "not_charged",
      "resets_at": "2026-09-26T12:00:00.000Z",
      "limit": 10,
      "period_seconds": 86400
    }
  }
}
```

- [Fuld v2 fejlkatalog](https://api.genderapi.io/api/v2/errors)

## Forsøg igen og fakturering

Hver forudsigelsesanmodning er en ny operation, inklusive en identisk anmodning sendt igen. Normale kreditregler gælder for hver anmodning. Der er ingen duplikat-anmodningsbeskyttelse, så undgå automatiske genforsøg efter et forbindelsestab eller et ukendt resultat.

For et 429-svar skal du vente på Retry-After, før du sender endnu en anmodning. For forudsigelsesfejl skal du først inspicere code, action og meta.usage.billing_status. For billing_reconciliation_required eller ubekræftet fakturering skal du kontakte support med request_id, før du prøver igen.

En delvis vellykket batch kan returnere HTTP 200. Kontroller hver vare og genindsend kun mislykkede varer, efter at faktureringen er bekræftet; vellykkede varer vil blive faktureret igen, hvis de indsendes igen.

X-Request-ID og meta.request_id identificerer det aktuelle HTTP-forsøg. Læs /usage for den aktuelle saldo. HEAD starter ikke en fakturerbar forudsigelse. Forudsigelse og kontosvar kan ikke cachelagres.

Klienter bør tolerere additive responsfelter og bevare null-værdier, når information ikke er tilgængelig.

## Anmodningsgrænser

Håndter HTTP 429 og Retry-After i stedet for at antage, at anmodninger altid vil blive accepteret ved disse lofter. Servicekapacitet er delt. De viste værdier er de aktuelle servicestandarder. Rate-limit svar inkluderer X-RateLimit-Limit, X-RateLimit-Remaining og X-RateLimit-Reset (Unix sekunder). Retry-After er en forsinkelse i sekunder. Disse overskrifter beskriver anmodningsgrænser, ikke resterende kreditter. Selv den gratis /usage-læsning tæller med i hastighedsgrænserne.

| Grænse | Værdi |
| --- | --- |
| JSON anmodningstekst | 64 KiB maksimum |
| Forudsigelsesværdi | 1–254 tegn |
| Batch | 50 genstande med en API nøgle; 10 med IP prøveversionen |
| Kontotakst | 120 anmodninger i minuttet |
| IP rate | 600 anmodninger i minuttet |
| Samtidige operationer | 2 pr. konto; 16 på tværs af tjenesten |
