Filipino
Filipino
Appearance
Filipino
Filipino
Appearance
Gumawa at mamahala ng mga kredensyal (assertion) — mga badge na ini-issue sa mga partikular na recipient.
Lahat ng endpoint ay nangangailangan ng authentication sa pamamagitan ng X-Api-Key header. Tingnan ang Authentication.
Mag-issue ng badge sa isang recipient.
Kailangan bang mag-issue sa daan-daan o libu-libong recipient nang sabay-sabay sa halip na isang API call kada tao? Gamitin ang Bulk Credentials UI feature, na tumatanggap ng CSV upload.
POST /awards| Parameter | Uri | Kailangan | Paglalarawan |
|---|---|---|---|
badgeId | string | Oo | Ang badge ID na ii-issue |
recipient | object | Oo | Mga detalye ng recipient (tingnan sa ibaba) |
recipient.name | string | Oo | Buong pangalan ng recipient (hindi bababa sa 5 character) |
recipient.email | string | Oo | Email address ng recipient |
issuedOn | string | Oo | Petsa ng pag-issue sa ISO 8601 format (hal. 2025-01-15) |
expires | string | Hindi | Petsa ng pag-expire sa ISO 8601 format |
curl -X POST https://api.badges.ninja/awards \
-H "X-Api-Key: bws_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"parameters": {
"badgeId": "b1c2d3e4-f5a6-7890-bcde-f12345678901",
"recipient": {
"name": "Jane Smith",
"email": "jane@example.com"
},
"issuedOn": "2025-01-15"
}
}'{
"awardId": "https://api.badges.ninja/certify-badge/award/c1d2e3f4-a5b6-7890-cdef-123456789012"
}Kunin ang mga kredensyal na may opsyonal na filtering at pagination.
GET /awards| Parameter | Uri | Kailangan | Paglalarawan |
|---|---|---|---|
filter | JSON string | Hindi | Filter object (tingnan sa ibaba) |
lastEvaluatedKey | string | Hindi | Pagination token mula sa nakaraang response |
Tumatanggap ang filter parameter ng JSON string na may mga sumusunod na field:
| Field | Uri | Paglalarawan |
|---|---|---|
badgeId | string | I-filter ayon sa badge ID. |
search | string | Substring na hahanapin sa pangalan o email ng recipient (tingnan ang searchField). |
searchField | string | Alinman sa name (default) o email — kung aling column ang hahanapan. |
Gumagana ang pagination gamit ang lastEvaluatedKey mayroon man o walang filter. Ang laki ng page ay 50.
curl -X GET https://api.badges.ninja/awards \
-H "X-Api-Key: bws_your_api_key_here"curl -X GET "https://api.badges.ninja/awards?filter=%7B%22badgeId%22%3A%22b1c2d3e4%22%7D" \
-H "X-Api-Key: bws_your_api_key_here"{
"count": 1,
"items": [
{
"id": "https://api.badges.ninja/certify-badge/award/c1d2e3f4-...",
"badge": {
"id": "https://api.badges.ninja/certify-badge/badge/b1c2d3e4-...",
"name": "JavaScript Fundamentals",
"image": "https://badges.ninja/images/{sha256}.png"
},
"recipient": {
"name": "Jane Smith",
"email": "jane@example.com"
},
"issuedOn": "2025-01-15T00:00:00.000Z",
"timestamp": "2025-01-15T10:30:00.000Z"
}
],
"lastEvaluatedKey": "eyJ..."
}Kung may lastEvaluatedKey sa response, may mga susunod pang resulta. Ipasa ito bilang query parameter sa susunod na request para makuha ang susunod na page.
Magpadala ng email notification sa recipient tungkol sa kanilang kredensyal.
POST /awards/{awardId}/send| Parameter | Uri | Kailangan | Paglalarawan |
|---|---|---|---|
awardId | string | Oo | Ang award ID (path parameter at body) |
email | string | Oo | Email address ng recipient |
curl -X POST https://api.badges.ninja/awards/c1d2e3f4-a5b6-7890-cdef-123456789012/send \
-H "X-Api-Key: bws_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"parameters": {
"awardId": "c1d2e3f4-a5b6-7890-cdef-123456789012",
"email": "jane@example.com"
}
}'Nagbabalik ng simpleng confirmation string:
"email sent"I-share ang kredensyal sa maraming recipient sa pamamagitan ng email.
POST /awards/{awardId}/share| Parameter | Uri | Kailangan | Paglalarawan |
|---|---|---|---|
awardId | string | Oo | Ang award ID (path parameter at body) |
recipients | string | Oo | Listahan ng mga email address na pinaghihiwalay ng kuwit |
subject | string | Oo | Subject line ng email |
message | string | Oo | Katawan ng email message |
curl -X POST https://api.badges.ninja/awards/c1d2e3f4-a5b6-7890-cdef-123456789012/share \
-H "X-Api-Key: bws_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"parameters": {
"awardId": "c1d2e3f4-a5b6-7890-cdef-123456789012",
"recipients": "manager@example.com,hr@example.com",
"subject": "Check out my new badge!",
"message": "I just earned the JavaScript Fundamentals badge."
}
}'Nagbabalik ng simpleng confirmation string:
"email sent"I-revoke ang kredensyal na ini-issue mo. Namamarkahan ang naka-host na Open Badges v2.0 assertion ng revoked: true (na may opsyonal na dahilan) para makita ng anumang verifier na hindi na valid ang badge. Pinananatili ang record ng kredensyal para sa audit, at walang ibabalik na credit.
Kumakalat din ang revocation sa Open Badges 3.0 Verifiable Credential ng kredensyal: ibinabaligtad ang bit ng award sa W3C Bitstring Status List na tinutukoy ng credentialStatus ng VC, kaya natutukoy rin ito ng mga VC wallet. Tingnan ang Revocation (Bitstring Status List).
POST /awards/{awardId}/revoke| Parameter | Uri | Kailangan | Paglalarawan |
|---|---|---|---|
awardId | string | Oo | Ang award ID (path parameter) |
reason | string | Hindi | Dahilan ng revocation. Pinuputol sa 500 character. |
notify | boolean | Hindi | Kapag true, nag-e-email sa recipient na na-revoke ang kanilang kredensyal. Default ay false. |
curl -X POST https://api.badges.ninja/awards/c1d2e3f4-a5b6-7890-cdef-123456789012/revoke \
-H "X-Api-Key: bws_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"parameters": {
"awardId": "c1d2e3f4-a5b6-7890-cdef-123456789012",
"reason": "Issued to the wrong recipient",
"notify": true
}
}'{
"revoked": true,
"awardId": "c1d2e3f4-a5b6-7890-cdef-123456789012"
}Idempotent ang pag-revoke ng kredensyal na na-revoke na — ibinabalik nito ang parehong response nang hindi nagpapadala muli ng notification.
Para mag-revoke ng maraming kredensyal nang sabay-sabay, gamitin ang durable bulk endpoint na may action: "revoke" sa halip na tawagin ang endpoint na ito kada award:
curl -X POST https://api.badges.ninja/awards/bulk-send \
-H "X-Api-Key: bws_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{ "parameters": { "action": "revoke", "awardIds": ["<id1>", "<id2>"], "reason": "Program cancelled", "notify": false } }'Nagbabalik ito ng { "jobId", "total" }; nire-revoke ng job ang bawat id sa server (nilalaktawan ang mga na-revoke na) at maaaring ipagpatuloy. Ang mga na-revoke na at hindi umiiral na id ay iniuulat bilang skipped.
Permanenteng burahin ang kredensyal na ini-issue mo. Hindi tulad ng revoke, tuluyang inaalis nito ang record at magbabalik ng 404 ang public credential page. Gamitin ito para sa tunay na pagkakamali (hal. na-issue sa maling tao); mas mainam ang revoke para sa mga tunay na kredensyal para manatiling verifiable ang assertion bilang revoked. Walang ibabalik na credit.
DELETE /awards/{awardId}| Parameter | Uri | Kailangan | Paglalarawan |
|---|---|---|---|
awardId | string | Oo | Ang award ID (path parameter) |
curl -X DELETE https://api.badges.ninja/awards/c1d2e3f4-a5b6-7890-cdef-123456789012 \
-H "X-Api-Key: bws_your_api_key_here"{
"deleted": true,
"awardId": "c1d2e3f4-a5b6-7890-cdef-123456789012"
}Gumawa ng print-ready na A4 PDF certificate para sa isang kredensyal.
GET /certify-badge/award/{awardGuid}/pdfHindi kailangan ng authentication — public ang endpoint na ito para makapag-download ang mga recipient ng sarili nilang certificate.
curl -OJ https://api.badges.ninja/certify-badge/award/c1d2e3f4-a5b6-7890-cdef-123456789012/pdfAng response ay ang binary PDF na may Content-Type: application/pdf header.
Magtala ng engagement event. Ginagamit ng public credential page para punan ang engagement stats. Hindi kailangan ng authentication.
POST /certify-badge/award/{awardGuid}/eventDirektang binabasa ng endpoint na ito ang body nito (walang parameters wrapper).
| Parameter | Uri | Kailangan | Paglalarawan |
|---|---|---|---|
event | string | Oo | Isa sa view, share, download, click_linkedin_addtoprofile, click_pdf, click_verify. |
network | string | Hindi | Kapag event=share, ang social network: linkedin, twitter, facebook, whatsapp, telegram, email, copy. |
Duplicate suppression kada IP: ang parehong event mula sa parehong IP ay isang beses lang binibilang kada 24 oras.
curl -X POST https://api.badges.ninja/certify-badge/award/c1d2e3f4-a5b6-7890-cdef-123456789012/event \
-H "Content-Type: application/json" \
-d '{"event": "share", "network": "linkedin"}'{
"ok": true
}Kunin ang cumulative engagement counters ng isang kredensyal.
GET /certify-badge/award/{awardGuid}/statsHindi kailangan ng authentication.
Ibinabalik ang mga counter na naka-key sa raw event type. Hawak ng totals ang kabuuang bilang kada event; ipinapakita naman ng networks ang hati kada network para sa mga event na may network (kasalukuyan ay share). Ang mga event na walang naitalang aktibidad ay hindi lilitaw.
{
"totals": {
"view": 142,
"share": 16,
"download": 3,
"click_linkedin_addtoprofile": 4
},
"networks": {
"share": { "linkedin": 8, "twitter": 2, "email": 1, "copy": 5 }
}
}