Skip to content

Javna provjera ​

Ovi su endpointi javni i ne zahtijevaju autentifikaciju. Omogućuju svakome da provjeri vjerodajnice bedževa i dohvati Open Badge v2.0 JSON podatke.

Svi su endpointi relativni u odnosu na https://api.badges.ninja.

Dohvat izdavatelja ​

Dohvatite Open Badge v2.0 Issuer Profile JSON za zadanog izdavatelja.

GET /certify-badge/issuer/{guid}

Primjer ​

bash
curl https://api.badges.ninja/certify-badge/issuer/a1b2c3d4-e5f6-7890-abcd-ef1234567890

Odgovor ​

json
{
  "@context": "https://w3id.org/openbadges/v2",
  "type": "Issuer",
  "id": "https://api.badges.ninja/certify-badge/issuer/a1b2c3d4-...",
  "name": "Acme Academy",
  "url": "https://acme.example.com",
  "email": "badges@acme.example.com",
  "verification": {
    "type": "hosted",
    "allowedOrigins": "api.badges.ninja"
  }
}

Dohvat bedža ​

Dohvatite Open Badge v2.0 BadgeClass JSON za zadani bedž.

GET /certify-badge/badge/{guid}

Primjer ​

bash
curl https://api.badges.ninja/certify-badge/badge/b1c2d3e4-f5a6-7890-bcde-f12345678901

Odgovor ​

json
{
  "@context": "https://w3id.org/openbadges/v2",
  "type": "BadgeClass",
  "id": "https://api.badges.ninja/certify-badge/badge/b1c2d3e4-...",
  "name": "JavaScript Fundamentals",
  "description": "Demonstrates proficiency in core JavaScript concepts",
  "criteria": {
    "narrative": "Completed the JavaScript Fundamentals course with a score of 80% or higher"
  },
  "image": "https://badges.ninja/images/{sha256}.png",
  "issuer": "https://api.badges.ninja/certify-badge/issuer/a1b2c3d4-..."
}

Dohvat vjerodajnice ​

Dohvatite Open Badge v2.0 Assertion JSON za zadanu vjerodajnicu.

GET /certify-badge/award/{guid}

Primjer ​

bash
curl https://api.badges.ninja/certify-badge/award/c1d2e3f4-a5b6-7890-cdef-123456789012

Odgovor ​

json
{
  "@context": "https://w3id.org/openbadges/v2",
  "type": "Assertion",
  "id": "https://api.badges.ninja/certify-badge/award/c1d2e3f4-...",
  "recipient": {
    "type": "email",
    "hashed": true,
    "identity": "sha256$..."
  },
  "badge": "https://api.badges.ninja/certify-badge/badge/b1c2d3e4-...",
  "issuedOn": "2025-01-15T00:00:00.000Z",
  "verification": {
    "type": "hosted"
  },
  "revoked": false
}

Ako je vjerodajnica opozvana, assertion sadrži "revoked": true i, ako je naveden razlog, string "revocationReason":

json
{
  "revoked": true,
  "revocationReason": "Issued in error"
}

Ovo je prikaz opoziva prema Open Badges 2.0. Isti je opoziv izražen i u Open Badges 3.0 Verifiable Credentialu te vjerodajnice — pogledajte Opoziv (Bitstring Status List).

Napomene ​

  • E-mail primatelja hashira se (SHA-256) radi privatnosti, u skladu sa specifikacijom Open Badge.
  • Odgovori se predmemoriraju 5 minuta (Cache-Control: public, max-age=300). Opozvane vjerodajnice koriste kraću predmemoriju od 30 sekundi (max-age=30) kako bi se opoziv brzo proširio.

Dohvat teksta za dijeljenje vjerodajnice ​

Dohvatite prilagođeni tekst za dijeljenje bedža vjerodajnice.

GET /certify-badge/award/{guid}/share-text

Primjer ​

bash
curl https://api.badges.ninja/certify-badge/award/c1d2e3f4-a5b6-7890-cdef-123456789012/share-text

Odgovor ​

json
{
  "text": "I just earned the JavaScript Fundamentals badge! Check it out:"
}

Ako prilagođeni tekst za dijeljenje nije postavljen, vraća se zadana poruka.


Slanje e-maila o vjerodajnici (javno) ​

Pošaljite e-mail s obavijesti o vjerodajnici s javnog endpointa. Koristi ga javna stranica za dijeljenje.

POST /certify-badge/award/{guid}/send-email

Parametri ​

ParametarTipObaveznoOpis
recipientsstringDaPopis e-mail adresa odvojenih zarezom
messagestringNePrilagođena poruka koja se uključuje u e-mail

Primjer ​

bash
curl -X POST https://api.badges.ninja/certify-badge/award/c1d2e3f4-a5b6-7890-cdef-123456789012/send-email \
  -H "Content-Type: application/json" \
  -d '{
    "parameters": {
      "recipients": "colleague@example.com",
      "message": "Check out this badge!"
    }
  }'

Odgovor ​

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

Ovo je jedini endpoint koji svoj rezultat omotava u envelope { "statusCode", "info" }. Svi ostali endpointi vraćaju svoj sadržaj izravno.


Provjera izdavatelja ​

Provjerite izdavatelja klikom na poveznicu za provjeru poslanu na e-mail izdavatelja. Obično se otvara putem poveznice u e-mailu za provjeru, a ne poziva se izravno.

GET /certify-badge/verify-issuer/{guid}/{code}

Parametri ​

ParametarTipOpis
guidstringGUID izdavatelja
codestringKôd za provjeru

Odgovor ​

Vraća HTML stranicu koja potvrđuje je li provjera uspjela ili nije. Ovaj je endpoint predviđen za otvaranje u pregledniku.

badges.ninja Documentation