Skip to content

Issuers API

Valdykite ženklelių išdavėjus — organizacijas ar asmenis, apdovanojančius ženkleliais.

Visi galutiniai taškai reikalauja autentikavimo per antraštę X-Api-Key. Žr. Autentikavimas.

Sukurti išdavėją

Sukurti naują ženklelių išdavėją.

POST /issuers

Parametrai

ParametrasTipasPrivalomasAprašymas
namestringTaipOrganizacijos pavadinimas (mažiausiai 3 simboliai)
urlstringTaipOrganizacijos svetainė (turi būti galiojantis HTTP/HTTPS URL)
emailstringTaipIšdavėjo kontaktinis el. paštas
logostringNeBase64 koduotas vaizdas (PNG arba JPG)
linkedinOrganizationIdstringNeSkaitinis LinkedIn įmonės puslapio ID. Kai nustatyta, kiekvienas viešas apdovanojimo puslapis iš šio išdavėjo rodo mygtuką Add to LinkedIn Profile.

Pavyzdys

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

Atsakymas

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

Pastabos

  • Skaičiuojama prieš jūsų plano išdavėjų limitą (Free: 1, Starter: 5, Pro: neribotai). Jokio kvotos nuskaitymo.
  • Jei išdavėjo el. paštas atitinka jūsų paskyros el. paštą, išdavėjas automatiškai patvirtinamas.
  • Jei el. paštas skiriasi, į išdavėjo el. paštą siunčiamas patvirtinimo laiškas.

Išvardyti išdavėjus

Gauti visus jūsų sukurtus išdavėjus.

GET /issuers

Pavyzdys

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

Atsakymas

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

Patvirtinti išdavėją

Patvirtinti išdavėją, naudojant patvirtinimo kodą, išsiųstą į jo el. paštą.

POST /issuers/{issuerId}/verify

Parametrai

ParametrasTipasPrivalomasAprašymas
issuerIdstringTaipIšdavėjo ID (kelio parametras)
codestringTaipPatvirtinimo kodas iš el. laiško

Pavyzdys

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

Atsakymas

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

Ištrinti išdavėją

Ištrinti išdavėją. Išdavėjas neturi turėti ženklelių.

DELETE /issuers/{issuerId}

Pavyzdys

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

Atsakymas

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

Klaidos

  • 400 — išdavėjas turi ženklelių arba apdovanojimų ir negali būti ištrintas (pirmiausia ištrinkite juos)
  • 404 — išdavėjas nerastas

Atnaujinti išdavėją

Atnaujinti nepatvirtinto išdavėjo laukus. Patvirtinus išdavėją, tik logo ir linkedinOrganizationId lieka redaguojami, kad būtų išlaikytas pažymėjimo stabilumas.

PUT /issuers/{issuerId}

Parametrai

ParametrasTipasPrivalomasAprašymas
issuerIdstringTaipIšdavėjo ID (kelio parametras)
namestringNeNaujas pavadinimas (tik kai nepatvirtinta)
urlstringNeNaujas URL (tik kai nepatvirtinta)
emailstringNeNaujas el. paštas (tik kai nepatvirtinta — siunčia naują patvirtinimo laišką)
logostringNeNaujas base64 koduotas logotipas
linkedinOrganizationIdstringNeNaujas LinkedIn organizacijos ID (arba tuščia eilutė išvalymui)

Patvirtinimo kodo rotacija

Panaikinti ankstesnę patvirtinimo nuorodą ir išsiųsti naują. Galioja tik tada, kai išdavėjas vis dar nepatvirtintas.

POST /issuers/{issuerId}/rotate-code

Atsakymas

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

badges.ninja Documentation