Decode a PEM X.509 certificate
API · /certdecode-api
Certificate Decoder API
Decode an X.509 certificate (PEM) into readable details — without a live connection. Paste a certificate and get back its subject and issuer (parsed into fields), the validity window with days-until-expiry and an expired flag, the serial number, SHA-1 and SHA-256 fingerprints, the Subject Alternative Names, the public-key type and size, and the CA / self-signed flags. Pure local parsing with no third-party service. Live, nothing stored. 2 endpoints. Built for certificate inspection, CI/CD expiry checks, PKI debugging and audit tooling. Distinct from a live SSL/TLS endpoint checker — this decodes a certificate you already hold.
API health
healthy- Uptime
- 100.00%
- Server probes · 24h
- Avg latency
- 80 ms
- Server probes · 24h
- Subscribers
- 3,550
- active
- Total calls
- 38
- last 7 days
Pricing
Pick a tier — billed monthly, cancel anytime.
Free
Free
- 1,140 calls / month
- 2 requests / second
- Hard cap (429 above quota, no overage)
- 1,140 calls/month
- 2 req/sec
- Full X.509 fields
- No credit card
Starter
€3.20 /month
- 10,500 calls / month
- 8 requests / second
- Hard cap (429 above quota, no overage)
- 10.5k calls/month
- 8 req/sec
- SAN + fingerprints
- Email support
Pro
€22.80 /month
- 146,000 calls / month
- 20 requests / second
- Hard cap (429 above quota, no overage)
- 146k calls/month
- 20 req/sec
- CI expiry checks / PKI
- Priority support
Mega
€58.80 /month
- 750,000 calls / month
- 50 requests / second
- Hard cap (429 above quota, no overage)
- 750k calls/month
- 50 req/sec
- Platform scale
- Dedicated SLA
Built by
Related APIs
Other APIs with overlapping tags.
SSL Certificate API
Check any website's SSL/TLS certificate as an API. Pass a domain and the service performs a live TLS handshake and returns the certificate's subject and issuer, the validity window, the exact number of days until it expires, whether it is currently valid and trusted by a standard CA chain, the negotiated TLS protocol, serial number, SHA-256 fingerprint, key size and the full list of Subject Alternative Names (SANs). A lean expiry endpoint returns a simple ok / expiring_soon / expired status, perfect for uptime and certificate-expiry monitoring, dashboards, CI checks and security tooling. Self-contained — no third-party service. IP addresses and internal hosts are not supported.
api.oanor.com/sslcheck-api
CSR API
Generate and parse X.509 Certificate Signing Requests (PKCS#10) — the CSRs you submit to a Certificate Authority to obtain a TLS certificate. Generate a CSR from a common name plus optional organisation, country, locality and Subject Alternative Names, and get back the CSR together with a freshly-generated RSA private key (2048/3072/4096). Or parse an existing CSR to read its subject, SANs, key size and whether its signature is valid. Pure local processing — no key, no third-party service. Note: for development and testing; keep production private keys offline. Live, nothing stored. 3 endpoints. Distinct from key-pair generation, certificate decoding and live SSL checks.
api.oanor.com/csr-api
Programming Languages API
The language definitions GitHub uses to recognise code (the open-source Linguist data) as an API — a clean reference for syntax highlighting, file-type detection, repository dashboards and developer tooling. For each of 800+ languages the API returns its type (programming, markup, data or prose), its brand colour (the hex GitHub paints it), the file extensions associated with it, common aliases, the GitHub language id and the editor (ace) mode. Look a language up by name or alias (golang resolves to Go), reverse-look-up which language(s) own a file extension (.py → Python; .h → C, C++, Objective-C), list the languages of a type, search, or list them all. Distinct from languages-api (ISO 639 human languages) — this is the programming-language reference. Served from memory — always fast.
api.oanor.com/proglang-api
MIME Types API
The canonical MIME / media-type database (the jshttp mime-db used by Express and most of the Node ecosystem: IANA + Apache + nginx), served from memory — no key. Resolve a media type to its file extensions, charset and compressibility; reverse-lookup the media type(s) for a file extension (e.g. png → image/png); and search or list types by source. 2,600+ media types, 1,000+ with file extensions. Lean, predictable JSON. Ideal for upload validation, Content-Type resolution, file-type detection, download handlers and developer tooling.
api.oanor.com/mimetypes-api
Frequently asked questions
Quick answers about pricing, quotas, and integration.
How do I get an API key for Certificate Decoder API?
What's the rate limit for Certificate Decoder API?
How much does Certificate Decoder API cost?
Can I cancel my subscription anytime?
Is Certificate Decoder API GDPR-compliant?
Pick an endpoint from the list on the left to see its details and try it.
Code snippets
Sign up to get an API key, then call any path under your slug.
curl https://api.oanor.com/certdecode-api/SOME_PATH \
-H "x-oanor-key: oanor_test_..."
const res = await fetch("https://api.oanor.com/certdecode-api/SOME_PATH", {
headers: { "x-oanor-key": "oanor_test_..." }
});
const data = await res.json();
$ch = curl_init("https://api.oanor.com/certdecode-api/SOME_PATH");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
$response = curl_exec($ch);
import requests
r = requests.get(
"https://api.oanor.com/certdecode-api/SOME_PATH",
headers={"x-oanor-key": "oanor_test_..."},
)
print(r.json())
Ratings
Sign in to rate.
No reviews yet.
Discussion
Ask questions, share usage tips, get answers from the provider and other developers. Public — anyone can read.
Sign in to start a thread or reply.
Sign inNew thread
·
-
Provider answer
🔒 This thread is locked — no new replies.
-
·
- No threads yet — start the discussion.
Support
Private 1:1 support with the provider — billing questions, integration issues, account problems. Only you and the provider team can see these threads.
Sign in to open a support ticket.
Sign inOpen new ticket
Describe what you need help with. The provider team gets an email and replies on the ticket page.
-
·
Urgent - No tickets yet for this API.