Skip to content

API vydavatelů

Spravujte vydavatele odznaků — organizace nebo jednotlivce, kteří udělují odznaky.

Všechny endpointy vyžadují autentizaci přes hlavičku X-Api-Key. Viz Autentizace.

Vytvořit vydavatele

Vytvořte nového vydavatele odznaků.

POST /issuers

Parametry

ParametrTypPovinnýPopis
namestringAnoNázev organizace (minimálně 3 znaky)
urlstringAnoWebová stránka organizace (musí být platná HTTP/HTTPS URL)
emailstringAnoKontaktní e-mail vydavatele
logostringNeObrázek zakódovaný v Base64 (PNG nebo JPG)
linkedinOrganizationIdstringNeČíselný ID firemní stránky LinkedIn. Když je nastaveno, každá veřejná stránka udělení od tohoto vydavatele zobrazí tlačítko Add to LinkedIn Profile.

Příklad

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"
    }
  }'

Odpověď

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

Poznámky

  • Počítá se proti limitu vydavatelů vašeho plánu (Free: 1, Starter: 5, Pro: neomezeně). Žádné odečítání limitu.
  • Pokud se e-mail vydavatele shoduje s e-mailem vašeho účtu, je vydavatel automaticky ověřen.
  • Pokud je e-mail jiný, na e-mail vydavatele se odešle ověřovací zpráva.

Seznam vydavatelů

Načtěte všechny vydavatele, které jste vytvořili.

GET /issuers

Příklad

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

Odpověď

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"
      }
    ]
  }
}

Ověřit vydavatele

Ověřte vydavatele pomocí ověřovacího kódu odeslaného na jeho e-mail.

POST /issuers/{issuerId}/verify

Parametry

ParametrTypPovinnýPopis
issuerIdstringAnoID vydavatele (parametr v cestě)
codestringAnoOvěřovací kód z e-mailu

Příklad

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"
    }
  }'

Odpověď

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

Smazat vydavatele

Smažte vydavatele. Vydavatel nesmí mít žádné odznaky.

DELETE /issuers/{issuerId}

Příklad

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

Odpověď

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

Chyby

  • 400 — vydavatel má odznaky nebo udělení a nelze jej smazat (nejprve smažte je)
  • 404 — vydavatel nenalezen

Aktualizovat vydavatele

Aktualizujte pole neověřeného vydavatele. Jakmile je vydavatel ověřen, zůstávají editovatelná pouze logo a linkedinOrganizationId, aby se zachovala stabilita osvědčení.

PUT /issuers/{issuerId}

Parametry

ParametrTypPovinnýPopis
issuerIdstringAnoID vydavatele (parametr v cestě)
namestringNeNový název (pouze když neověřený)
urlstringNeNová URL (pouze když neověřený)
emailstringNeNový e-mail (pouze když neověřený — odešle čerstvý ověřovací e-mail)
logostringNeNové logo zakódované v Base64
linkedinOrganizationIdstringNeNový identifikátor organizace LinkedIn (nebo prázdný řetězec pro vymazání)

Rotovat ověřovací kód

Zneplatněte předchozí ověřovací odkaz a odešlete e-mailem nový. Platné pouze, dokud je vydavatel stále neověřen.

POST /issuers/{issuerId}/rotate-code

Odpověď

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

badges.ninja Documentation