Skip to content

Badges API रेफ़रेंस: बैज बनाएँ, सत्यापित करें और प्राप्त करें ​

बैज टेम्पलेट प्रबंधित करें — वे credentials जो आप प्राप्तकर्ताओं को जारी करते हैं।

API के बजाय CSV अपलोड के माध्यम से इस बैज को एक साथ कई प्राप्तकर्ताओं को जारी करने के लिए, Bulk Credentials देखें।

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

बैज बनाएँ ​

सत्यापित जारीकर्ता के अंतर्गत एक नया बैज बनाएँ।

POST /badges

पैरामीटर ​

पैरामीटरप्रकारआवश्यकविवरण
namestringहाँबैज का शीर्षक
descriptionstringहाँबैज क्या दर्शाता है
criteriastringहाँयह बैज अर्जित करने के लिए प्राप्तकर्ता ने क्या किया
imagestringहाँBase64-एन्कोडेड छवि (PNG या JPG)
issuerIdstringहाँसत्यापित जारीकर्ता की ID
shareTextstringनहींइस बैज के लिए डिफ़ॉल्ट सोशल-शेयर टेक्स्ट। , और प्लेसहोल्डर समर्थित हैं। छोड़ने पर अंतर्निहित डिफ़ॉल्ट का उपयोग होता है।
designJsonstringनहींसीरियलाइज़ किया गया बैज-डिज़ाइनर दस्तावेज़, ताकि बैज को बाद में लेयर-दर-लेयर दोबारा संपादित किया जा सके।

उदाहरण ​

bash
curl -X POST https://api.badges.ninja/badges \
  -H "X-Api-Key: bws_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "parameters": {
      "name": "JavaScript Fundamentals",
      "description": "Demonstrates proficiency in core JavaScript concepts",
      "criteria": "Completed the JavaScript Fundamentals course with a score of 80% or higher",
      "image": "data:image/png;base64,iVBORw0KGgo...",
      "issuerId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
    }
  }'

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

json
{
  "badgeId": "https://api.badges.ninja/certify-badge/badge/b1c2d3e4-f5a6-7890-bcde-f12345678901"
}

नोट्स ​

  • बैज बनाने से पहले जारीकर्ता का सत्यापित होना आवश्यक है।
  • छवि Amazon S3 पर संग्रहीत होती है और हमारे वैश्विक CDN के माध्यम से एक अपरिवर्तनीय, कंटेंट-एड्रेस्ड URL के अंतर्गत परोसी जाती है।
  • बैज क्लास बन जाने के बाद, इसे Credentials API का उपयोग करके प्राप्तकर्ताओं को जारी करें।

बैज सूचीबद्ध करें ​

आपके द्वारा बनाए गए सभी बैज प्राप्त करें।

GET /badges

उदाहरण ​

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

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

json
[
  {
    "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..." },
    "image": "https://badges.ninja/images/{sha256}.png",
    "issuer": "https://api.badges.ninja/certify-badge/issuer/a1b2c3d4-...",
    "timestamp": "2025-01-15T10:30:00.000Z"
  }
]

बैज प्राप्त करें ​

एकल बैज प्राप्त करें, जिसमें उसका शेयर टेक्स्ट और सीरियलाइज़ किया गया बैज-डिज़ाइनर दस्तावेज़ (designJson) शामिल है। Edit Badge मोडल अलग-अलग लेयर को दोबारा लोड करने के लिए इसी एंडपॉइंट का उपयोग करता है; प्रतिक्रियाओं को हल्का रखने के लिए सूची एंडपॉइंट designJson को शामिल नहीं करता।

GET /badges/{badgeId}

पैरामीटर ​

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

उदाहरण ​

bash
curl -X GET https://api.badges.ninja/badges/b1c2d3e4-f5a6-7890-bcde-f12345678901 \
  -H "X-Api-Key: bws_your_api_key_here"

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

json
{
  "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..." },
  "image": "https://badges.ninja/images/{sha256}.png",
  "issuer": "https://api.badges.ninja/certify-badge/issuer/a1b2c3d4-...",
  "shareText": "Excited to share that I just received the \"{{badge_name}}\" certification!",
  "designJson": "{ ...serialized designer document... }",
  "timestamp": "2025-01-15T10:30:00.000Z"
}

शेयर टेक्स्ट हमेशा शामिल होता है। हल्का GET /badges?badgeId={id} सूची संस्करण designJson के बिना वही दस्तावेज़ लौटाता है, और शेयर टेक्स्ट केवल तब शामिल करता है जब उसे includeShareText=true के साथ कॉल किया जाए।


बैज अपडेट करें ​

किसी मौजूदा बैज को अपडेट करें। केवल वही फ़ील्ड बदले जाते हैं जो आप देते हैं।

PUT /badges/{badgeId}

पैरामीटर ​

पैरामीटरप्रकारआवश्यकविवरण
badgeIdstringहाँबैज ID (पाथ पैरामीटर)
namestringनहींनया बैज शीर्षक
descriptionstringनहींनया विवरण
criteriastringनहींनए मानदंड
imagestringनहींनई Base64-एन्कोडेड छवि
designJsonstringनहींनया सीरियलाइज़ किया गया बैज-डिज़ाइनर दस्तावेज़।

उदाहरण ​

bash
curl -X PUT https://api.badges.ninja/badges/b1c2d3e4-f5a6-7890-bcde-f12345678901 \
  -H "X-Api-Key: bws_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "parameters": {
      "badgeId": "b1c2d3e4-f5a6-7890-bcde-f12345678901",
      "name": "JavaScript Fundamentals v2",
      "description": "Updated description for the JS badge"
    }
  }'

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

json
{
  "badgeId": "https://api.badges.ninja/certify-badge/badge/b1c2d3e4-...",
  "updated": true
}

शेयर टेक्स्ट अपडेट करें ​

वह कस्टम टेक्स्ट सेट करें जो प्राप्तकर्ताओं द्वारा इस बैज को सोशल मीडिया पर शेयर करने पर दिखाया जाता है।

PUT /badges/{badgeId}/share-text

पैरामीटर ​

पैरामीटरप्रकारआवश्यकविवरण
badgeIdstringहाँबैज ID (पाथ पैरामीटर)
textstringहाँशेयर टेक्स्ट (HTML की अनुमति नहीं)

उदाहरण ​

bash
curl -X PUT https://api.badges.ninja/badges/b1c2d3e4-f5a6-7890-bcde-f12345678901/share-text \
  -H "X-Api-Key: bws_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "parameters": {
      "badgeId": "b1c2d3e4-f5a6-7890-bcde-f12345678901",
      "text": "I just earned the JavaScript Fundamentals badge! Check it out:"
    }
  }'

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

json
{
  "badgeId": "https://api.badges.ninja/certify-badge/badge/b1c2d3e4-..."
}

बैज हटाएँ ​

किसी बैज को हटाएँ। बैज के अंतर्गत कोई credential नहीं होना चाहिए।

DELETE /badges/{badgeId}

उदाहरण ​

bash
curl -X DELETE https://api.badges.ninja/badges/b1c2d3e4-f5a6-7890-bcde-f12345678901 \
  -H "X-Api-Key: bws_your_api_key_here"

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

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

json
"badge has been deleted"

त्रुटियाँ ​

  • 400 — बैज के अंतर्गत अभी भी जारी किए गए credentials हैं: "This badge still has issued awards. Remove them first from the Awards page (revoke or delete each award), then delete the badge."
  • 404 — बैज नहीं मिला

badges.ninja Documentation