# Foundry JWT Decoder

> Foundry JWT Decoder is a paid API for AI agents from minty-sprout.onrender.com, paid per call via x402, $0.001/call, status unknown (last checked 2026-11-01).

Decodes a JWT into its header, payload, issued/expiry times, and expiration status without verifying the signature.

## Facts

- Endpoint: POST https://minty-sprout.onrender.com/v1/jwt-decode?utm_source=zero.xyz
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-11-01
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/foundry-jwt-decoder-864e8845
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_cO7DkNzu_Y4rTM5Wkq4dQ

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability foundry-jwt-decoder-864e8845 -d '<json body>'
```

Example prompt: Can you decode this JWT for me and tell me what's in the header and payload, and whether it's expired? Here's the token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjMiLCJleHAiOjE3MDAwMDAwMDB9.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

## When to prefer this

Use this endpoint when you need to quickly inspect the contents of a JWT — its claims, expiry, and header — without needing cryptographic signature verification. Ideal for debugging, logging, expiry checks, or extracting identity fields from tokens in a trusted context where signature validation is handled elsewhere.

## Known failure modes

- Malformed or invalid JWT string returns an error — token must be a valid dot-separated base64url string
- Empty or missing input field returns a validation error
- Very long tokens may be rejected if they exceed the 8000-character input limit
- Tokens with non-standard encoding may fail to parse correctly

## How this service works

JWT decoder: header, payload, issued and expiry times, and whether it has expired (signature not verified). Input: a JWT.

## Output

A JSON object containing the decoded JWT header (with algorithm and type), the full payload (all claims such as sub, iat, exp, etc.), UTC-formatted expiry and issued-at times, a boolean indicating whether the token has expired, and a note clarifying that the signature is not verified.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "input": {
   "type": "string",
   "maxLength": 8000,
   "description": "A JSON Web Token"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "note": "Decoded only; the signature is not verified.",
  "header": {
   "alg": "HS256"
  },
  "expired": true,
  "payload": {
   "exp": 1700000000,
   "sub": "123"
  },
  "times_utc": {
   "exp": "2023-11-14T22:13:20+00:00"
  },
  "signature_verified": false
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/foundry-jwt-decoder-864e8845/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from minty-sprout.onrender.com](https://www.zero.xyz/host/minty-sprout.onrender.com/llms.txt)
