Skip to content

Issuers API ​

Pamahalaan ang mga badge issuer — ang mga organisasyon o indibidwal na nag-iissue ng mga badge.

Kailangan ng authentication sa lahat ng endpoint sa pamamagitan ng X-Api-Key header. Tingnan ang Authentication.

Gumawa ng Issuer ​

Gumawa ng bagong badge issuer.

POST /issuers

Mga Parameter ​

ParameterUriKailanganPaglalarawan
namestringOoPangalan ng organisasyon (minimum na 3 character)
urlstringOoWebsite ng organisasyon (dapat ay wastong HTTP/HTTPS URL)
emailstringOoContact email ng issuer
logostringHindiImaheng naka-encode sa Base64 (PNG o JPG)
linkedinOrganizationIdstringHindiNumeric na ID ng LinkedIn company page. Kapag naka-set, ang bawat public credential page mula sa issuer na ito ay magpapakita ng Add to LinkedIn Profile button.

Halimbawa ​

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

Response ​

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

Mga Tala ​

  • Binibilang sa issuer limit ng plan mo (Free: 2, Starter: 5, Pro: 10). Walang quota deduction.
  • Kung tugma ang email ng issuer sa email ng account mo, awtomatikong na-verify ang issuer.
  • Kung iba ang email, magpapadala ng verification email sa email ng issuer.
  • Pagkatapos i-configure ang isang issuer, gamitin ang Credentials API para magsimulang mag-issue ng mga credential sa ilalim ng issuer na iyon.

Ilista ang mga Issuer ​

Kunin ang lahat ng issuer na ginawa mo.

GET /issuers

Halimbawa ​

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

Response ​

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

Ang timestamp ay Unix epoch sa milliseconds. Kapag mas marami ang issuer kaysa sa kasya sa isang page, may ibinabalik ding lastEvaluatedKey para sa pagination.


I-verify ang Issuer ​

I-verify ang isang issuer gamit ang verification code na ipinadala sa email nito.

POST /issuers/{issuerId}/verify

Mga Parameter ​

ParameterUriKailanganPaglalarawan
issuerIdstringOoAng issuer ID (path parameter)
codestringOoAng verification code mula sa email

Halimbawa ​

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

Response ​

Isang payak na string:

json
"issuer has been verified"

Tanggalin ang Issuer ​

Magtanggal ng issuer. Dapat ay walang badge na naka-link sa issuer.

DELETE /issuers/{issuerId}

Halimbawa ​

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

Response ​

Isang payak na string:

json
"issuer has been deleted"

Mga Error ​

  • 400 — may mga badge pang naka-link sa issuer: issuer has {n} badge(s) linked — delete the badges first. Ang pagtanggal ay hinaharang lamang ng mga naka-link na badge — hindi nakahaharang ang mga credential.
  • 404 — hindi natagpuan ang issuer

I-update ang Issuer ​

I-update ang mga field ng isang issuer. Mga unverified na issuer lang ang maaaring i-edit — kapag na-verify na ang isang issuer, magbabalik ang endpoint na ito ng 400 verified issuers cannot be edited para mapanatili ang katatagan ng mga credential. Ang pag-edit ng issuer ay bumubuo ng bagong verification code: kung tugma ang email sa email ng account mo, awtomatikong magve-verify muli ang issuer, kung hindi ay magpapadala ng bagong verification email sa address na iyon.

PUT /issuers/{issuerId}

Mga Parameter ​

ParameterUriKailanganPaglalarawan
issuerIdstringOoAng issuer ID (path parameter)
namestringHindiBagong pangalan
urlstringHindiBagong URL
emailstringHindiBagong email (nagpapadala ng bagong verification mail maliban kung tugma sa email ng account mo)
logostringHindiBagong logo na naka-encode sa Base64
linkedinOrganizationIdstringHindiBagong LinkedIn organization ID (o walang laman na string para i-clear)

Response ​

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

Mga Error ​

  • 400 — verified issuers cannot be edited (na-verify na ang issuer)
  • 400 — not authorized (pag-aari ng ibang account ang issuer)
  • 404 — hindi natagpuan ang issuer

badges.ninja Documentation