Skip to content

Utfärdar-API

Hantera märkesutfärdare — organisationerna eller personerna som utfärdar märken.

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

Skapa utfärdare

Skapa en ny märkesutfärdare.

POST /issuers

Parametrar

ParameterTypObligatoriskBeskrivning
namestringJaOrganisationsnamn (minst 3 tecken)
urlstringJaOrganisationens webbplats (måste vara en giltig HTTP/HTTPS-URL)
emailstringJaKontakt-e-post för utfärdaren
logostringNejBase64-kodad bild (PNG eller JPG)
linkedinOrganizationIdstringNejNumeriskt ID för LinkedIn-företagssida. När satt visar varje offentlig utmärkelsesida från denna utfärdare en knapp 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
{
  "statusCode": 200,
  "info": {
    "issuerId": "https://api.badges.ninja/certify-badge/issuer/a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
}

Anmärkningar

  • Räknas mot din plans utfärdargräns (Free: 1, Starter: 5, Pro: obegränsat). Inget kvotavdrag.
  • Om utfärdarens e-post matchar din kontoadress verifieras utfärdaren automatiskt.
  • Om adressen skiljer sig skickas ett verifieringsmejl till utfärdarens e-post.

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
{
  "statusCode": 200,
  "info": {
    "issuers": [
      {
        "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": "2025-01-15T10:30:00.000Z"
      }
    ]
  }
}

Verifiera utfärdare

Verifiera en utfärdare med hjälp av verifieringskoden som skickats till dess e-post.

POST /issuers/{issuerId}/verify

Parametrar

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

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

json
{
  "statusCode": 200,
  "info": {
    "verified": true
  }
}

Ta bort utfärdare

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

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

json
{
  "statusCode": 200,
  "info": {
    "deleted": true
  }
}

Fel

  • 400 — utfärdaren har märken eller utmärkelser och kan inte tas bort (ta bort dessa först)
  • 404 — utfärdaren hittades inte

Uppdatera utfärdare

Uppdatera fälten på en overifierad utfärdare. När en utfärdare har verifierats kan endast logo och linkedinOrganizationId fortsatt redigeras för att bevara meritstabiliteten.

PUT /issuers/{issuerId}

Parametrar

ParameterTypObligatoriskBeskrivning
issuerIdstringJaUtfärdar-ID (sökvägsparameter)
namestringNejNytt namn (endast när overifierad)
urlstringNejNy URL (endast när overifierad)
emailstringNejNy e-post (endast när overifierad — skickar ett nytt verifieringsmejl)
logostringNejNy base64-kodad logotyp
linkedinOrganizationIdstringNejNytt LinkedIn organization ID (eller tom sträng för att rensa)

Rotera verifieringskod

Ogiltigförklara den tidigare verifieringslänken och skicka en ny via e-post. Endast giltigt medan utfärdaren fortfarande är overifierad.

POST /issuers/{issuerId}/rotate-code

Svar

json
{
  "statusCode": 200,
  "info": {
    "sent": true
  }
}

badges.ninja Documentation