Verify a JWT

jwt.openverbs.com · 3 paid endpoints · listed 2026-10-27

Verify a JSON Web Token's signature and claims against a shared secret (HS*) or a PEM public key (RS/ES/PS). Returns { valid, payload } on success or { valid: false, reason } for a bad signature, expired/not-yet-active token, or a failed issuer/audience/subject check. Pass `algorithms` to pin the accepted signing algorithms and prevent algorithm-confusion attacks.

livelast check 5 days ago
100%valid x402 answers, 72 h
sharedUSDC received on Base, 7 days
28distinct payers, 7 days
69.9score (0-100)

Paid endpoints

MethodEndpointPriceNetworks
POSTjwt.openverbs.com/v1/decode
Decode a JSON Web Token WITHOUT verifying its signature and return the header, payload and signature. A structurally malformed token is rejected before payment.
$0.004Base
POSTjwt.openverbs.com/v1/sign
Mint a signed JSON Web Token from a JSON claims object, using a shared secret (HS*) or a PEM private key (RS/ES/PS). Supports expiresInSec, notBeforeSec, issuer
$0.004Base
POSTjwt.openverbs.com/v1/verify
Verify a JSON Web Token's signature and claims against a shared secret (HS*) or a PEM public key (RS/ES/PS). Returns { valid, payload } on success or { valid: f
$0.004Base

Latest checks

WhenEndpointHTTPmsResult
5 days agojwt.openverbs.com/v1/decode402628valid x402 v2 terms

Income on Base (7 days)

This provider's payout address is shared by several providers, so its income is not shown as its own.

Is this your API?

Add the live badge to your docs:
<a href="https://logicnodes.io/observatory/p/jwt.openverbs.com"><img src="https://logicnodes.io/observatory/badge/jwt.openverbs.com.svg" alt="x402 status"></a>
x402 status badge
Claim it for free with x402_provider_claim (sign with your payout address), and get an alert within minutes when it stops answering with x402_monitor_create ($5 for 30 days). Both work over MCP (https://logicnodes.io/mcp/v2) or POST https://logicnodes.io/v1/tools/<tool>.

Income is all USDC received by the provider's payout address on Base, whatever the source. Score: 0-100: 50 x share of checks in the last 72 h that returned valid x402 payment terms + 30 x min(1, log10(1 + USDC received in 7 days) / 4) + 20 x min(1, log10(1 + distinct payers in 7 days) / 3). A provider never checked scores on income only; income is all USDC received by its payout address on Base, whatever the source. JSON: /v1/observatory/providers/jwt.openverbs.com