Skip to content

Fel ​

När en API-förfrågan misslyckas returnerar badges.ninja ett JSON-felsvar med lämplig HTTP-statuskod.

Felformat ​

Alla fel följer den här strukturen:

json
{
  "error": "description of what went wrong"
}

Statuskoder ​

KodBetydelseNär det inträffar
400Bad RequestParametrar saknas eller är ogiltiga, plangräns eller kvot har nåtts, funktionen kräver en högre plan eller saknad behörighet — alla valideringsfel returnerar 400
402Payment RequiredReserverad för slut på krediter. Märkes-API:et drar för närvarande inga krediter, så den här koden returneras aldrig i praktiken
404Not FoundDen begärda resursen finns inte
500Internal Server ErrorEtt oväntat fel inträffade på servern

Det finns varken 403 eller 429: behörighetsfel returnerar 400 ("not authorized") och det finns ingen hastighetsbegränsning på applikationsnivå.

Vanliga fel och lösningar ​

Obligatoriska parametrar saknas ​

json
{ "error": "missing required parameters: name, url, email" }

Lösning: Ta med alla obligatoriska parametrar i förfrågans body. Se slutpunktens dokumentation för den fullständiga listan.

Ogiltig e-postadress ​

json
{ "error": "invalid email" }

Lösning: Ange en giltig e-postadress i formatet user@domain.com.

Ogiltig URL ​

json
{ "error": "invalid URL" }

Lösning: Ange en fullständig URL inklusive protokoll, t.ex. https://example.com.

För kort namn ​

json
{ "error": "name must be at least 3 characters" }

Lösning: Använd ett längre namn. Utfärdarnamn måste vara minst 3 tecken. Mottagarnamn måste vara minst 5 tecken.

Utfärdaren är inte verifierad ​

json
{ "error": "issuer must be verified before creating badges" }

Lösning: Verifiera utfärdaren först. Leta efter verifieringslänken i utfärdarens e-post, eller använd slutpunkten Verifiera utfärdare.

Credential-kvoten har nåtts (400) ​

json
{ "error": "Your Free plan reached its credential limit (1200/1200) — your allowance renews on your plan anniversary, or upgrade to Starter" }

Lösning: Du har använt hela din årliga credential-pool (Free: 1 200/år, Starter: 12 000/år, Pro: 120 000/år). Poolen återställs på ditt kontos registreringsårsdag — inte vid en kalendermånadsgräns. Uppgradera din plan för en högre kvot. Se Planer och fakturering.

Plangränsen har nåtts (400) ​

json
{ "error": "Your Free plan reached its issuer limit (2/2) — delete an issuer or upgrade to Starter" }

Gränsen för märken har samma form:

json
{ "error": "badge limit reached (5/5 on the starter plan) — delete a badge or upgrade your plan" }

Lösning: Du har nått din plans tak för utfärdare eller märken. Ta bort en oanvänd resurs eller uppgradera din plan.

Resursen har beroenden (400) ​

json
{ "error": "issuer has 3 badge(s) linked — delete the badges first" }

Lösning: Ta bort alla märken som är kopplade till utfärdaren innan du tar bort utfärdaren. På samma sätt ska du ta bort alla credentials under ett märke innan du tar bort märket.

Saknad behörighet (400) ​

json
{ "error": "not authorized" }

Behörighetsfel är valideringsfel, så de returnerar 400 (inte 401 eller 403).

Lösning: Du kan bara ändra resurser som du äger. Kontrollera att du använder rätt API-nyckel.

HTML i delningstext ​

json
{ "error": "HTML tags are not allowed" }

Lösning: Delningstexten måste vara ren text. Ta bort alla HTML-taggar från text-parametern.

badges.ninja Documentation