If you've ever had to issue digital certificates at scale — for a course platform, a training program, or an HR certification workflow — you know the pain. You cobble together a badge designer, a CSV processor, an email sender, and maybe a blockchain verification service, and none of them talk to each other cleanly.
BADGES.ninja is a digital credentialing platform built around the Open Badge v2.0 standard that covers the entire credential lifecycle out of the box: design, issue, verify, share. What makes it interesting for developers is the depth of each feature and the fact that the full REST API is available on every plan — including free.
Here are the seven capabilities that stand out.
1. A REST API on Every Plan (No Paywall)
Most SaaS credentialing platforms treat the API as a premium feature. BADGES.ninja ships it on every tier. Authentication is a simple X-Api-Key header. The API covers issuers, badge classes, awards, email sending, sharing, and engagement stats.
Issuing a credential programmatically is a single POST:
curl -X POST https://api.badges.ninja/awards \
-H "X-Api-Key: your_key_here" \
-H "Content-Type: application/json" \
-d '{
"parameters": {
"badgeId": "your-badge-id",
"recipient": { "name": "Jane Smith", "email": "jane@example.com" },
"issuedOn": "2026-04-25"
}
}'
Public verification endpoints require no auth at all — so integrating credential verification into a third-party system is trivial. The response includes an awardId URL that points to the public Open Badge v2.0 assertion JSON.
2. Optional On-Chain Verification (Per Award)
Blockchain anchoring is available on the Pro plan as a per-award opt-in — you add "blockchain": "supported-chain" to the award request and that specific credential gets an immutable on-chain record. Everything else stays with standard Open Badge hosted verification.
This is the right model. Forcing every credential onto a chain adds overhead and cost for no reason. BADGES.ninja lets you reserve blockchain anchoring for credentials where the tamper-proof guarantee actually matters — professional certifications, compliance records, high-stakes qualifications.
The public verification page shows the on-chain proof alongside the Open Badge v2.0 JSON, so verifiers get both signals without needing to know anything about blockchain infrastructure.
3. IPFS Image Storage with Permanent URLs
Badge images aren't hosted on a CDN that disappears if the company folds. Every image is pinned to IPFS through BADGES.ninja's own gateway (ipfs.ninja), addressed by content hash. The same CID resolves via any public IPFS gateway.
This has a useful side effect: if you redesign a badge later, previously issued credentials retain their original image. The old CID is permanently resolvable. Your historical awards don't break when you rebrand.
From an Open Badge compliance perspective this is correct behavior — the image is part of the assertion, and assertions should be immutable.
4. Bulk Issuance with Fault Tolerance
The bulk awards flow is more robust than most: upload a CSV (name, email), watch live progress, pause mid-batch, resume exactly where you left off. If the browser tab closes mid-run, the session recovers automatically on return.
Failures are collected and exportable as a separate "failures CSV" — you fix the bad rows, re-upload just those, done. No reprocessing the whole batch.
For developers building automated pipelines (webhook → trigger bulk issue), the API supports the same flow programmatically. The quota system is simple: 100 awards/month free, 1K on Starter, 10K on Pro. Quota failures are surfaced per row during bulk processing, not as a full batch rejection.
5. Passwordless Recipient Portal
Recipients access their credentials at badges.ninja/me with a magic link sent to their email — no account creation required. Session tokens are HMAC-signed, stored only in sessionStorage, and expire on tab close or after 1 hour.
From the recipient's perspective: they type their email, get a link, click it, and see every credential they've ever received across all BADGES.ninja issuers in one place. They can claim a public profile at badges.ninja/u/<handle> and selectively hide specific credentials from the public view.
GDPR deletion is also built in: recipients can request erasure of their identity from all awards. The awards themselves remain valid for verification purposes (as required by Open Badge v2.0 spec), but the email association is replaced with an opaque hash.
6. One-Click LinkedIn Add-to-Profile
When an issuer sets their LinkedIn Organization ID in the issuer profile, every public award page shows an "Add to LinkedIn Profile" button. One click, credential lands directly in the recipient's Licenses & Certifications section — no copy-paste, no manual form.
For issuers, this is the single highest-impact configuration change you can make. Credential sharing rates go up significantly when the friction of adding to LinkedIn drops from three steps to one.
7. A Built-In Visual Badge Designer
The platform ships with a canvas editor — 80+ templates across 8 shapes and 8 color palettes, a library of 80+ vector shapes, 20 ribbons, 50 icons, and 11 fonts. Multi-select, z-ordering, alignment snapping, color picker with per-element recoloring, undo/redo (20 steps). You can upload your own background or logo.
When you save, the image is captured from the canvas and pinned to IPFS. No need to use Figma or Canva and then export — the whole design-to-credential pipeline stays in one place.
Getting Started
The free plan covers: 1 issuer, 5 badge classes, 100 awards/month, 1 API key, full designer access, and IPFS storage. No credit card required.
# Generate an API key in the dashboard, then:
curl https://api.badges.ninja/issuers \
-H "X-Api-Key: your_key"
Full API reference and quickstart guide at badges.ninja/docs.
Top comments (0)