Skip to content

Utfärdar-API ​

Hantera märkesutfärdare — de organisationer eller personer som utfärdar märken.

Alla slutpunkter kräver autentisering via headern X-Api-Key. Se Autentisering.

Skapa utfärdare ​

Skapa en ny märkesutfärdare.

POST /issuers

Parametrar ​

ParameterTypObligatoriskBeskrivning
namestringJaOrganisationens namn (minst 3 tecken)
urlstringJaOrganisationens webbplats (måste vara en giltig HTTP/HTTPS-URL)
emailstringJaKontaktadress för utfärdaren
logostringNejBase64-kodad bild (PNG eller JPG)
linkedinOrganizationIdstringNejNumeriskt ID för företagssidan på LinkedIn. När det är satt visar varje offentlig credential-sida från den här utfärdaren knappen Add to LinkedIn Profile.

Exempel ​

bash
curl -X POST https://api.badges.ninja/issuers \
  -H "X-Api-Key: bws_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "parameters": {
      "name": "Acme Academy",
      "url": "https://acme.example.com",
      "email": "badges@acme.example.com"
    }
  }'

Svar ​

json
{
  "issuerId": "https://api.badges.ninja/certify-badge/issuer/a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}

Anmärkningar ​

  • Räknas mot din plans gräns för utfärdare (Free: 2, Starter: 5, Pro: 10). Ingen kvot dras.
  • Om utfärdarens e-postadress matchar din kontoadress verifieras utfärdaren automatiskt.
  • Om e-postadressen är en annan skickas ett verifieringsmejl till utfärdarens adress.
  • När du har konfigurerat en utfärdare använder du Credentials-API:et för att börja utfärda credentials under den utfärdaren.

Lista utfärdare ​

Hämta alla utfärdare du har skapat.

GET /issuers

Exempel ​

bash
curl -X GET https://api.badges.ninja/issuers \
  -H "X-Api-Key: bws_your_api_key_here"

Svar ​

json
{
  "items": [
    {
      "id": "https://api.badges.ninja/certify-badge/issuer/a1b2c3d4-...",
      "name": "Acme Academy",
      "url": "https://acme.example.com",
      "email": "badges@acme.example.com",
      "verified": true,
      "timestamp": 1736937000000
    }
  ]
}

timestamp är en Unix-tid i millisekunder. När det finns fler utfärdare än vad som ryms på en sida returneras även en lastEvaluatedKey för paginering.


Verifiera utfärdare ​

Verifiera en utfärdare med verifieringskoden som skickats till dess e-postadress.

POST /issuers/{issuerId}/verify

Parametrar ​

ParameterTypObligatoriskBeskrivning
issuerIdstringJaUtfärdar-ID (sökvägsparameter)
codestringJaVerifieringskoden från mejlet

Exempel ​

bash
curl -X POST https://api.badges.ninja/issuers/a1b2c3d4-e5f6-7890-abcd-ef1234567890/verify \
  -H "X-Api-Key: bws_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "parameters": {
      "issuerId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "code": "ABC123"
    }
  }'

Svar ​

En ren sträng:

json
"issuer has been verified"

Ta bort utfärdare ​

Ta bort en utfärdare. Utfärdaren får inte ha några märken kopplade till sig.

DELETE /issuers/{issuerId}

Exempel ​

bash
curl -X DELETE https://api.badges.ninja/issuers/a1b2c3d4-e5f6-7890-abcd-ef1234567890 \
  -H "X-Api-Key: bws_your_api_key_here"

Svar ​

En ren sträng:

json
"issuer has been deleted"

Fel ​

  • 400 — utfärdaren har fortfarande märken kopplade till sig: issuer has {n} badge(s) linked — delete the badges first. Borttagning blockeras av enbart kopplade märken — credentials blockerar den inte.
  • 404 — utfärdaren hittades inte

Uppdatera utfärdare ​

Uppdatera en utfärdares fält. Endast overifierade utfärdare kan redigeras — när en utfärdare är verifierad returnerar den här slutpunkten 400 verified issuers cannot be edited för att bevara credentials stabilitet. Redigering av en utfärdare genererar om dess verifieringskod: om email matchar din kontoadress verifieras utfärdaren om automatiskt, annars skickas ett nytt verifieringsmejl till den adressen.

PUT /issuers/{issuerId}

Parametrar ​

ParameterTypObligatoriskBeskrivning
issuerIdstringJaUtfärdar-ID (sökvägsparameter)
namestringNejNytt namn
urlstringNejNy URL
emailstringNejNy e-postadress (skickar ett nytt verifieringsmejl om den inte matchar din kontoadress)
logostringNejNy Base64-kodad logotyp
linkedinOrganizationIdstringNejNytt LinkedIn-organisations-ID (eller tom sträng för att rensa)

Svar ​

json
{
  "issuerId": "https://api.badges.ninja/certify-badge/issuer/a1b2c3d4-...",
  "updated": true
}

Fel ​

  • 400 — verified issuers cannot be edited (utfärdaren är redan verifierad)
  • 400 — not authorized (utfärdaren tillhör ett annat konto)
  • 404 — utfärdaren hittades inte

badges.ninja Documentation