Spring til indhold

Når et job fejler — fejlkoder

7 min læsning

Når et job ikke kan oprettes eller stopper undervejs, får du en fejlkode — fx kvote_opbrugt. Koden er den samme i dashboardet, i API'et og i denne artikel, så du altid kan slå den op her.

Hvor står koden?

  • I dashboardet: øverst på jobbets detaljeside, sammen med en forklaring og knapper til det, du kan gøre.
  • Via API'et, når et job er stoppet: i feltet job_fejl i svaret fra GET /v1/jobs/{id} — med kode, titel, besked, detaljer, handlinger, reference og tidspunkt.
  • Via API'et, når oprettelsen afvises: i error.details.kode i fejlsvaret fra POST /v1/jobs.

To slags fejl:

  • Under kørslen stopper jobbet med status fejlet (eller kvote_stop ved kvoten). Det, der nåede at blive behandlet, er gemt og kan hentes. Mange af dem kan du fortsætte, når årsagen er løst.
  • Ved oprettelsen bliver jobbet slet ikke oprettet, og intet tæller i kvoten. Ret årsagen, og opret jobbet igen.

Kontakt support på support@danskadresseapi.dk eller i chatten. Send altid job-id'et med — og fejl-referencen, hvis der er en (den ser sådan ud: 7c0e6f0a-3f9a1c). Så kan vi finde præcis det, der skete.

Fejl under kørslen

ingen_noegle

Ingen API-nøgle at afregne på

Jobbet stoppede, fordi teamet ikke længere har en aktiv API-nøgle. Jobs tælles altid på en nøgle.

Hvorfor: Nøglen, jobbet blev startet med, findes ikke længere, og teamet har ingen anden aktiv nøgle. I dashboardet kan oprettelsen også afvises med samme kode, hvis du ikke har nogen nøgle at vælge.

Sådan løser du det:

  1. Opret en nøgle under API-nøgler i dashboardet.
  2. Åbn jobbet, og klik Fortsæt — det fortsætter, hvor det slap.

plan_uden_adgang

Planen giver ikke adgang til jobs

Jobbet stoppede, fordi teamets plan ikke længere giver adgang til batch og jobs.

Hvorfor: Teamet er nedgraderet til Hobby eller Basis, mens jobbet ventede eller kørte. Jobs kræver Pro eller Enterprise.

Sådan løser du det:

  1. Opgradér til Pro eller Enterprise under Fakturering.
  2. Åbn jobbet, og klik Fortsæt.

konto_suspenderet

Teamet er suspenderet

Jobbet stoppede, fordi teamet er suspenderet, spærret eller slettet, mens jobbet ventede eller kørte.

Sådan løser du det: Kontakt support — vi fortæller, hvad der skal til for at åbne teamet igen. Herefter kan jobbet fortsættes.

kvote_opbrugt

Kvoten blev brugt op

Jobbet stoppede med status kvote_stop, fordi teamets kvote blev brugt op undervejs. De rækker, der nåede at blive behandlet, kan hentes.

Hvorfor: Hver række, der gav et svar, tæller som ét opslag — rækker, der fejler, koster ikke noget og stopper aldrig jobbet. Kvoten tjekkes før hver del af jobbet, så jobbet stopper præcis ved kvoten — i stedet for at blive afvist halvvejs inde i en del.

Sådan løser du det:

  1. Hent delresultatet, hvis du skal bruge det nu.
  2. Opgradér planen under Fakturering — eller vent, til kvoten nulstilles ved næste periode.
  3. Åbn jobbet, og klik Fortsæt. Kun de resterende rækker tæller i kvoten.

overforbrugsloft

Overforbrugsloftet blev nået

Jobbet stoppede med status kvote_stop, fordi teamet har nået sit eget loft for overforbrug. De behandlede rækker kan hentes.

Hvorfor: Teamet har slået overforbrug til med et loft, og loftet blev nået, mens jobbet kørte.

Sådan løser du det:

  1. Hæv loftet under Fakturering — eller vent til næste periode.
  2. Åbn jobbet, og klik Fortsæt.

input_mangler

Inputtet mangler

Jobbets input findes ikke længere, så jobbet kunne ikke fortsætte.

Hvorfor: Inputtet gemmes kun lige så længe som resultatet (7 eller 30 dage). Er det slettet, er der intet at fortsætte fra.

Sådan løser du det: Upload filen igen som et nyt job. Har du allerede en del af resultatet, kan du nøjes med de resterende rækker.

pause_udloebet

Pausen varede for længe

Jobbet stod på pause, indtil resultatet og inputtet udløb og blev slettet (7 dage på Pro, 30 dage på Enterprise efter pausen).

Hvorfor: Et job på pause gemmer sit input og delresultat lige så længe som et færdigt resultat. Blev det ikke genoptaget inden da, er der intet at fortsætte fra.

Sådan løser du det: Upload filen igen som et nyt job — kun med de rækker, der manglede, hvis du allerede har hentet delresultatet.

noegle_deaktiveret

API-nøglen blev deaktiveret

Nøglen, jobbet blev afregnet på, blev deaktiveret (eller udløb), mens jobbet kørte, og teamet har ingen anden aktiv nøgle. Jobbet er sat på pause ved den række, det nåede — intet er tabt.

Hvorfor: Et job afregnes altid på en aktiv nøgle. Bliver nøglen deaktiveret undervejs, skifter jobbet selv til din egen nyeste aktive nøgle (ellers teamets nyeste) — skiftet står i jobbets Historik. Findes der ingen, stopper jobbet i stedet for at afregne videre.

Sådan løser du det:

  1. Opret en ny nøgle (eller genaktivér den gamle) under API-nøgler.
  2. Åbn jobbet, og klik Genoptag — det fortsætter præcis, hvor det slap.

for_mange_forsoeg

Jobbet blev afbrudt for mange gange

Jobbet blev afbrudt flere gange — fx under en opdatering af vores servere — og er opgivet. Det, der nåede at blive behandlet, er gemt.

Hvorfor: Et afbrudt job genoptages automatisk efter sidste gemte del, uden dubletter. Bliver det afbrudt mere end 5 gange, stopper vi det, så det ikke kører i ring.

Sådan løser du det:

  1. Klik Fortsæt — oftest går det igennem næste gang.
  2. Sker det igen, så kontakt support med job-id'et.

intern_fejl

Der opstod en fejl hos os

Jobbet stoppede på grund af en fejl hos DanskAdresseAPI — ikke i din fil.

Hvorfor: Noget gik galt på vores side, flere gange i træk. Vi viser aldrig selve den tekniske fejl, men en reference, som også står i vores log.

Sådan løser du det:

  1. Kontakt support med job-id'et og referencen — så finder vi præcis fejlen.
  2. Du kan prøve Fortsæt; de behandlede rækker er gemt.

Fejl ved oprettelsen

input_ugyldigt

Filen har ugyldige rækker

Jobbet blev ikke oprettet, fordi mindst én linje i filen ikke kan bruges. Fejlen fortæller linjenummeret og hvad der er galt — fx lat: Number must be less than or equal to 58. Via API'et står de første fem eksempler i error.details.eksempler.

Hvorfor: Et ugyldigt element afviser hele filen — hellere en klar fejl nu end et job, der fejler halvvejs. Typiske årsager:

  • En påkrævet kolonne mangler i overskriften (fx lat), eller filen har ingen overskrift.
  • En celle er tom eller uden for det tilladte område (fx en koordinat uden for Danmark, eller lat og lon byttet om).
  • Et BBR-id er ikke et gyldigt UUID.
  • En NDJSON-linje er ikke gyldig JSON.
  • En adresse er kortere end 3 tegn.

Sådan løser du det: Ret linjen (linjenummeret tæller overskriften som linje 1), og upload filen igen. Se Filformat til jobs.

input_for_stort

Filen er for stor

Filen er større end planens grænse: 24 MB på Pro og 64 MB på Enterprise. API'et svarer med 413.

Sådan løser du det: Del filen op i flere jobs — eller opgradér til Enterprise. Fjern evt. kolonner, jobbet ikke bruger.

input_tomt

Filen er tom

Filen har ingen rækker under overskriften.

Sådan løser du det: Tjek, at du har valgt den rigtige fil, og at rækkerne står under overskriften.

for_mange_raekker

For mange rækker

Filen har flere rækker, end planen tillader pr. job: 10.000 på Pro og 1.000.000 på Enterprise.

Sådan løser du det: Del filen op i flere jobs — eller opgradér til Enterprise.

ugyldig_noegle

Den valgte nøgle kan ikke bruges

Nøglen, du valgte under «Afregnes på nøglen», findes ikke i teamet, er deaktiveret, er udløbet eller er en IP-binding.

Sådan løser du det: Vælg en anden aktiv nøgle — eller opret en ny under API-nøgler.

for_mange_aktive

For mange job i gang

Teamet har allerede det maksimale antal job i kø eller i gang: 3 på Pro og 10 på Enterprise. API'et svarer med 429 og error.details.retry_after_seconds.

Sådan løser du det: Vent, til et af jobbene er færdigt, eller annullér et. Opretter du jobs fra kode, så vent de sekunder, svaret angiver, og prøv igen.

input_udloebet

Inputtet er udløbet

«Kør igen» kunne ikke starte et nyt job, fordi det oprindelige jobs input er slettet.

Hvorfor: Inputtet gemmes lige så længe som resultatet (7 dage på Pro, 30 dage på Enterprise). Derefter kan jobbet ikke køres igen.

Sådan løser du det: Upload filen igen som et nyt job.

Andre svar ved oprettelsen

Disse fejl har ingen jobkode, fordi de gælder alle kald:

  • 429 med type: quota_exceeded — kvoten er allerede brugt, før jobbet startede. Opgradér, eller vent til kvoten nulstilles.
  • 403 med type: plan_upgrade_required — planen har ikke jobs (kræver Pro eller Enterprise).
  • 403 om scope eller nøgletype — nøglen mangler scope batch, eller det er en pub-nøgle. Brug en live-nøgle med batch.

Se også Rækker der ikke kunne behandles, hvis jobbet er færdigt, men nogle rækker ikke gav et svar.

Var dette nyttigt?