Spincrus

Tools › JWT Decoder

JWT Decoder

Decode a JWT header and payload online. See algorithm, issued and expiry times and whether it has expired. Runs in your browser; nothing is uploaded.

Runs in your browser. Nothing is uploaded.

Use it from code

The same function is available as an API endpoint. Free tier: 100 calls per day without a key. Pro lifts the limit.

curl -X POST https://spincrus.uz/api/v1/tools/jwt-decoder \
  -H "content-type: application/json" \
  -H "x-api-key: YOUR_KEY" \
  -d '{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"}'

FAQ

Does this verify the JWT signature?

No. It only decodes the header and payload, which are base64url-encoded JSON, not encrypted. Verifying a signature requires the secret or public key and is out of scope for a client-side viewer.

Is my token uploaded anywhere?

No. Decoding runs entirely in your browser using JavaScript; the token never leaves your device.

Why does the decoder say my token is expired?

The payload's "exp" claim is a Unix timestamp in seconds. If it is earlier than the current time, the token is expired and most servers will reject it.

Related tools