Tiếng Việt
Tiếng Việt
Appearance
Tiếng Việt
Tiếng Việt
Appearance
Quản lý các mẫu huy hiệu — những chứng chỉ bạn cấp cho người nhận.
Để cấp huy hiệu này cho nhiều người nhận cùng lúc bằng cách tải lên CSV thay vì dùng API, xem Chứng chỉ hàng loạt.
Tất cả endpoint đều yêu cầu xác thực qua header X-Api-Key. Xem Xác thực.
Tạo một huy hiệu mới thuộc một tổ chức cấp đã được xác minh.
POST /badges| Tham số | Kiểu | Bắt buộc | Mô tả |
|---|---|---|---|
name | string | Có | Tiêu đề huy hiệu |
description | string | Có | Huy hiệu đại diện cho điều gì |
criteria | string | Có | Người nhận đã làm gì để đạt huy hiệu này |
image | string | Có | Ảnh mã hóa Base64 (PNG hoặc JPG) |
issuerId | string | Có | ID của tổ chức cấp đã được xác minh |
shareText | string | Không | Văn bản chia sẻ mạng xã hội mặc định cho huy hiệu này. Hỗ trợ các trình giữ chỗ , và . Nếu bỏ qua sẽ dùng mặc định có sẵn. |
designJson | string | Không | Tài liệu trình thiết kế huy hiệu đã tuần tự hóa, được lưu để sau này có thể chỉnh sửa lại huy hiệu theo từng lớp. |
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"
}
}'{
"badgeId": "https://api.badges.ninja/certify-badge/badge/b1c2d3e4-f5a6-7890-bcde-f12345678901"
}Truy xuất tất cả huy hiệu bạn đã tạo.
GET /badgescurl -X GET https://api.badges.ninja/badges \
-H "X-Api-Key: bws_your_api_key_here"[
{
"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"
}
]Truy xuất một huy hiệu, bao gồm văn bản chia sẻ và tài liệu trình thiết kế huy hiệu đã tuần tự hóa (designJson). Đây là endpoint mà hộp thoại Chỉnh sửa huy hiệu dùng để khôi phục từng lớp; endpoint liệt kê bỏ qua designJson để phản hồi gọn nhẹ.
GET /badges/{badgeId}| Tham số | Kiểu | Bắt buộc | Mô tả |
|---|---|---|---|
badgeId | string | Có | ID huy hiệu (tham số đường dẫn) |
curl -X GET https://api.badges.ninja/badges/b1c2d3e4-f5a6-7890-bcde-f12345678901 \
-H "X-Api-Key: bws_your_api_key_here"{
"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"
}Văn bản chia sẻ luôn được đưa vào. Biến thể liệt kê nhẹ hơn GET /badges?badgeId={id} trả về cùng tài liệu nhưng không có designJson, và chỉ bao gồm văn bản chia sẻ khi được gọi với includeShareText=true.
Cập nhật một huy hiệu hiện có. Chỉ các trường bạn cung cấp mới bị thay đổi.
PUT /badges/{badgeId}| Tham số | Kiểu | Bắt buộc | Mô tả |
|---|---|---|---|
badgeId | string | Có | ID huy hiệu (tham số đường dẫn) |
name | string | Không | Tiêu đề huy hiệu mới |
description | string | Không | Mô tả mới |
criteria | string | Không | Tiêu chí mới |
image | string | Không | Ảnh mã hóa Base64 mới |
designJson | string | Không | Tài liệu trình thiết kế huy hiệu đã tuần tự hóa mới. |
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"
}
}'{
"badgeId": "https://api.badges.ninja/certify-badge/badge/b1c2d3e4-...",
"updated": true
}Đặt văn bản tùy chỉnh hiển thị khi người nhận chia sẻ huy hiệu này lên mạng xã hội.
PUT /badges/{badgeId}/share-text| Tham số | Kiểu | Bắt buộc | Mô tả |
|---|---|---|---|
badgeId | string | Có | ID huy hiệu (tham số đường dẫn) |
text | string | Có | Văn bản chia sẻ (không cho phép HTML) |
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:"
}
}'{
"badgeId": "https://api.badges.ninja/certify-badge/badge/b1c2d3e4-..."
}Xóa một huy hiệu. Huy hiệu phải không có chứng chỉ nào.
DELETE /badges/{badgeId}curl -X DELETE https://api.badges.ninja/badges/b1c2d3e4-f5a6-7890-bcde-f12345678901 \
-H "X-Api-Key: bws_your_api_key_here"Trả về một chuỗi xác nhận thuần:
"badge has been deleted"400 — huy hiệu vẫn còn chứng chỉ đã cấp: "This badge still has issued awards. Remove them first from the Awards page (revoke or delete each award), then delete the badge."404 — không tìm thấy huy hiệu