Skip to content

क्रेडेंशियल API ​

क्रेडेंशियल (assertion) बनाएँ और प्रबंधित करें — विशिष्ट प्राप्तकर्ताओं को जारी किए गए बैज।

सभी एंडपॉइंट के लिए X-Api-Key हेडर के माध्यम से प्रमाणीकरण आवश्यक है। देखें प्रमाणीकरण।

क्रेडेंशियल बनाएँ ​

किसी प्राप्तकर्ता को बैज जारी करें।

क्या आपको प्रति व्यक्ति एक API कॉल के बजाय सैकड़ों या हज़ारों प्राप्तकर्ताओं को एक साथ जारी करना है? बल्क क्रेडेंशियल UI सुविधा का उपयोग करें, जो CSV अपलोड स्वीकार करती है।

POST /awards

पैरामीटर ​

पैरामीटरप्रकारआवश्यकविवरण
badgeIdstringहाँजारी किए जाने वाले बैज की ID
recipientobjectहाँप्राप्तकर्ता का विवरण (नीचे देखें)
recipient.namestringहाँप्राप्तकर्ता का पूरा नाम (न्यूनतम 5 अक्षर)
recipient.emailstringहाँप्राप्तकर्ता का ईमेल पता
issuedOnstringहाँISO 8601 प्रारूप में जारी करने की तिथि (उदा. 2025-01-15)
expiresstringनहींISO 8601 प्रारूप में समाप्ति तिथि

उदाहरण ​

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

प्रतिक्रिया ​

json
{
  "awardId": "https://api.badges.ninja/certify-badge/award/c1d2e3f4-a5b6-7890-cdef-123456789012"
}

टिप्पणियाँ ​

  • यह आपके वार्षिक क्रेडेंशियल पूल में से एक क्रेडेंशियल के रूप में गिना जाता है (Free: 1,200/वर्ष, Starter: 12,000/वर्ष, Pro: 120,000/वर्ष)। यह पूल एक लचीली वार्षिक सीमा है — इसे साल भर में जब चाहें खर्च करें, एक साथ बड़ी मात्रा में भी — और आपके खाते की पंजीकरण वर्षगाँठ पर रीसेट हो जाता है। बिलिंग मासिक ही रहती है; केवल क्रेडेंशियल कोटा वार्षिक है। विवरण के लिए प्लान और बिलिंग देखें।

क्रेडेंशियल सूचीबद्ध करें ​

वैकल्पिक फ़िल्टरिंग और पेजिनेशन के साथ क्रेडेंशियल प्राप्त करें।

GET /awards

क्वेरी पैरामीटर ​

पैरामीटरप्रकारआवश्यकविवरण
filterJSON stringनहींफ़िल्टर ऑब्जेक्ट (नीचे देखें)
lastEvaluatedKeystringनहींपिछली प्रतिक्रिया से मिला पेजिनेशन टोकन

फ़िल्टर ऑब्जेक्ट ​

filter पैरामीटर इन फ़ील्ड वाली JSON string स्वीकार करता है:

फ़ील्डप्रकारविवरण
badgeIdstringबैज ID से फ़िल्टर करें।
searchstringप्राप्तकर्ताओं के नामों या ईमेल में खोजने के लिए सबस्ट्रिंग (searchField देखें)।
searchFieldstringname (डिफ़ॉल्ट) या email — किस कॉलम में खोजना है।

lastEvaluatedKey के माध्यम से पेजिनेशन फ़िल्टर के साथ या उनके बिना काम करता है। पृष्ठ का आकार 50 है।

उदाहरण — सभी क्रेडेंशियल सूचीबद्ध करें ​

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

उदाहरण — बैज के आधार पर फ़िल्टर करें ​

bash
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"

प्रतिक्रिया ​

json
{
  "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..."
}

यदि प्रतिक्रिया में lastEvaluatedKey मौजूद है, तो और परिणाम उपलब्ध हैं। अगला पृष्ठ पाने के लिए इसे अगले अनुरोध में क्वेरी पैरामीटर के रूप में भेजें।


क्रेडेंशियल ईमेल भेजें ​

किसी प्राप्तकर्ता को उनके क्रेडेंशियल के बारे में ईमेल सूचना भेजें।

POST /awards/{awardId}/send

पैरामीटर ​

पैरामीटरप्रकारआवश्यकविवरण
awardIdstringहाँaward ID (पाथ पैरामीटर और बॉडी)
emailstringहाँप्राप्तकर्ता का ईमेल पता

उदाहरण ​

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

प्रतिक्रिया ​

एक सादी पुष्टि string लौटाता है:

json
"email sent"

क्रेडेंशियल साझा करें ​

किसी क्रेडेंशियल को ईमेल के माध्यम से कई प्राप्तकर्ताओं के साथ साझा करें।

POST /awards/{awardId}/share

पैरामीटर ​

पैरामीटरप्रकारआवश्यकविवरण
awardIdstringहाँaward ID (पाथ पैरामीटर और बॉडी)
recipientsstringहाँईमेल पतों की अल्पविराम से अलग की गई सूची
subjectstringहाँईमेल का विषय
messagestringहाँईमेल संदेश की बॉडी

उदाहरण ​

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

प्रतिक्रिया ​

एक सादी पुष्टि string लौटाता है:

json
"email sent"

क्रेडेंशियल रद्द करें ​

आपके द्वारा जारी किया गया कोई क्रेडेंशियल रद्द करें। होस्ट किए गए Open Badges v2.0 assertion पर revoked: true (वैकल्पिक कारण के साथ) चिह्नित हो जाता है, ताकि कोई भी सत्यापनकर्ता देख सके कि बैज अब मान्य नहीं है। क्रेडेंशियल रिकॉर्ड ऑडिट के लिए रखा जाता है, और कोई क्रेडिट वापस नहीं किया जाता।

रद्दीकरण क्रेडेंशियल के Open Badges 3.0 Verifiable Credential पर भी लागू होता है: VC के credentialStatus में संदर्भित W3C Bitstring Status List में उस award की बिट पलट दी जाती है, इसलिए VC वॉलेट भी इसे पहचान लेते हैं। देखें रद्दीकरण (Bitstring Status List)।

POST /awards/{awardId}/revoke

पैरामीटर ​

पैरामीटरप्रकारआवश्यकविवरण
awardIdstringहाँaward ID (पाथ पैरामीटर)
reasonstringनहींरद्द करने का कारण। 500 अक्षरों तक छोटा कर दिया जाता है।
notifybooleanनहींtrue होने पर प्राप्तकर्ता को ईमेल करता है कि उनका क्रेडेंशियल रद्द कर दिया गया है। डिफ़ॉल्ट false है।

उदाहरण ​

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

प्रतिक्रिया ​

json
{
  "revoked": true,
  "awardId": "c1d2e3f4-a5b6-7890-cdef-123456789012"
}

पहले से रद्द किए गए क्रेडेंशियल को दोबारा रद्द करना आइडेम्पोटेंट है — यह सूचना दोबारा भेजे बिना वही प्रतिक्रिया लौटाता है।

बल्क में रद्द करें ​

एक साथ कई क्रेडेंशियल रद्द करने के लिए, प्रति award इस एंडपॉइंट को कॉल करने के बजाय action: "revoke" के साथ टिकाऊ बल्क एंडपॉइंट का उपयोग करें:

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

यह { "jobId", "total" } लौटाता है; जॉब हर id को सर्वर-साइड पर रद्द करता है (पहले से रद्द किए गए को छोड़कर) और पुनः आरंभ करने योग्य है। पहले से रद्द और अस्तित्वहीन id को छोड़े गए के रूप में रिपोर्ट किया जाता है।


क्रेडेंशियल हटाएँ ​

आपके द्वारा जारी किया गया क्रेडेंशियल स्थायी रूप से हटाएँ। रद्द करने के विपरीत, यह रिकॉर्ड को पूरी तरह हटा देता है और सार्वजनिक क्रेडेंशियल पृष्ठ 404 लौटाएगा। इसे वास्तविक गलतियों (जैसे गलत व्यक्ति को जारी हो जाना) के लिए उपयोग करें; वास्तविक क्रेडेंशियल के लिए रद्द करना चुनें, ताकि assertion रद्द के रूप में सत्यापन योग्य बना रहे। कोई क्रेडिट वापस नहीं किया जाता।

DELETE /awards/{awardId}

पैरामीटर ​

पैरामीटरप्रकारआवश्यकविवरण
awardIdstringहाँaward ID (पाथ पैरामीटर)

उदाहरण ​

bash
curl -X DELETE https://api.badges.ninja/awards/c1d2e3f4-a5b6-7890-cdef-123456789012 \
  -H "X-Api-Key: bws_your_api_key_here"

प्रतिक्रिया ​

json
{
  "deleted": true,
  "awardId": "c1d2e3f4-a5b6-7890-cdef-123456789012"
}

PDF प्रमाणपत्र डाउनलोड करें ​

किसी क्रेडेंशियल के लिए प्रिंट के लिए तैयार A4 PDF प्रमाणपत्र तैयार करें।

GET /certify-badge/award/{awardGuid}/pdf

प्रमाणीकरण आवश्यक नहीं — यह एंडपॉइंट सार्वजनिक है ताकि प्राप्तकर्ता अपना प्रमाणपत्र स्वयं डाउनलोड कर सकें।

उदाहरण ​

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

प्रतिक्रिया Content-Type: application/pdf हेडर वाली बाइनरी PDF होती है।


क्रेडेंशियल इवेंट ट्रैक करें ​

एक एंगेजमेंट इवेंट दर्ज करें। सार्वजनिक क्रेडेंशियल पृष्ठ द्वारा एंगेजमेंट आँकड़े भरने के लिए उपयोग किया जाता है। प्रमाणीकरण आवश्यक नहीं।

POST /certify-badge/award/{awardGuid}/event

पैरामीटर ​

यह एंडपॉइंट अपनी बॉडी सीधे पढ़ता है (कोई parameters रैपर नहीं)।

पैरामीटरप्रकारआवश्यकविवरण
eventstringहाँइनमें से एक: view, share, download, click_linkedin_addtoprofile, click_pdf, click_verify।
networkstringनहींevent=share होने पर सोशल नेटवर्क: linkedin, twitter, facebook, whatsapp, telegram, email, copy।

प्रति-IP डुप्लिकेट दमन: एक ही IP से आया एक ही इवेंट 24 घंटे में एक बार गिना जाता है।

उदाहरण ​

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

प्रतिक्रिया ​

json
{
  "ok": true
}

क्रेडेंशियल आँकड़े प्राप्त करें ​

किसी क्रेडेंशियल के संचयी एंगेजमेंट काउंटर प्राप्त करें।

GET /certify-badge/award/{awardGuid}/stats

प्रमाणीकरण आवश्यक नहीं।

प्रतिक्रिया ​

काउंटर कच्चे इवेंट प्रकार के अनुसार लौटाए जाते हैं। totals में प्रति इवेंट कुल गिनती होती है; networks उन इवेंट के लिए प्रति-नेटवर्क विभाजन देता है जिनमें network होता है (फ़िलहाल share)। जिन इवेंट की कोई गतिविधि दर्ज नहीं हुई, वे बस अनुपस्थित रहते हैं।

json
{
  "totals": {
    "view": 142,
    "share": 16,
    "download": 3,
    "click_linkedin_addtoprofile": 4
  },
  "networks": {
    "share": { "linkedin": 8, "twitter": 2, "email": 1, "copy": 5 }
  }
}

badges.ninja Documentation