Skip to content

API за издаваоце ​

Управљајте издаваоцима значки — организацијама или појединцима који издају значке.

Све крајње тачке захтевају аутентификацију преко заглавља X-Api-Key. Погледајте Аутентификација.

Креирање издаваоца ​

Креирајте новог издаваоца значки.

POST /issuers

Параметри ​

ПараметарТипОбавезанОпис
namestringДаНазив организације (најмање 3 карактера)
urlstringДаВеб-сајт организације (мора бити исправан HTTP/HTTPS URL)
emailstringДаКонтакт имејл издаваоца
logostringНеСлика кодирана у Base64 (PNG или JPG)
linkedinOrganizationIdstringНеНумерички ID странице компаније на LinkedIn-у. Када је постављен, свака јавна страница сертификата овог издаваоца приказује дугме Add to LinkedIn Profile.

Пример ​

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

Одговор ​

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

Напомене ​

  • Урачунава се у ограничење броја издаваоца вашег плана (Free: 2, Starter: 5, Pro: 10). Квота се не одузима.
  • Ако се имејл издаваоца поклапа са имејлом вашег налога, издавалац се аутоматски верификује.
  • Ако је имејл другачији, на имејл издаваоца се шаље имејл за верификацију.
  • Након подешавања издаваоца, користите API за сертификате да бисте почели да издајете сертификате под тим издаваоцем.

Листа издаваоца ​

Преузмите све издаваоце које сте креирали.

GET /issuers

Пример ​

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

Одговор ​

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 је Unix време у милисекундама. Када постоји више издаваоца него што стаје на једну страницу, враћа се и lastEvaluatedKey за пагинацију.


Верификација издаваоца ​

Верификујте издаваоца кодом за верификацију послатим на његов имејл.

POST /issuers/{issuerId}/verify

Параметри ​

ПараметарТипОбавезанОпис
issuerIdstringДаID издаваоца (параметар путање)
codestringДаКод за верификацију из имејла

Пример ​

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

Одговор ​

Обичан стринг:

json
"issuer has been verified"

Брисање издаваоца ​

Обришите издаваоца. Са издаваоцем не сме бити повезана ниједна значка.

DELETE /issuers/{issuerId}

Пример ​

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

Одговор ​

Обичан стринг:

json
"issuer has been deleted"

Грешке ​

  • 400 — са издаваоцем су и даље повезане значке: issuer has {n} badge(s) linked — delete the badges first. Брисање спречавају само повезане значке — сертификати га не блокирају.
  • 404 — издавалац није пронађен

Ажурирање издаваоца ​

Ажурирајте поља издаваоца. Могу се уређивати само неверификовани издаваоци — када је издавалац верификован, ова крајња тачка ради стабилности сертификата враћа 400 verified issuers cannot be edited. Уређивање издаваоца поново генерише његов код за верификацију: ако се email поклапа са имејлом вашег налога, издавалац се аутоматски поново верификује, у супротном се на ту адресу шаље нови имејл за верификацију.

PUT /issuers/{issuerId}

Параметри ​

ПараметарТипОбавезанОпис
issuerIdstringДаID издаваоца (параметар путање)
namestringНеНови назив
urlstringНеНови URL
emailstringНеНови имејл (шаље нови имејл за верификацију осим ако се поклапа са имејлом вашег налога)
logostringНеНови логотип кодиран у Base64
linkedinOrganizationIdstringНеНови ID организације на LinkedIn-у (или празан стринг за брисање)

Одговор ​

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

Грешке ​

  • 400 — verified issuers cannot be edited (издавалац је већ верификован)
  • 400 — not authorized (издавалац припада другом налогу)
  • 404 — издавалац није пронађен

badges.ninja Documentation