# JWT Decoder with Safety Flags

> JWT Decoder with Safety Flags is a paid API for AI agents from sigtap-outreach-api.sigtap.workers.dev, paid per call via x402, $0.001/call, status unknown (last checked 2026-09-15).

Decodes a JWT token's header and payload and returns safety flags (expired, alg:none, weak algorithm, missing exp) without verifying the signature

## Facts

- Endpoint: GET https://sigtap-outreach-api.sigtap.workers.dev/tools/jwt-decode
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/jwt-decoder-with-safety-flags-5b0d793a
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_sLIyrlkLPkYaHr9MYFhtF

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 jwt-decoder-with-safety-flags-5b0d793a
```

Example prompt: Can you decode this JWT for me and check if it's expired or using a weak algorithm — eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxIiwiZXhwIjoxNzM1Njg5NjAwfQ.signature — just the header and payload, no signature verification needed.

## When to prefer this

Choose this endpoint when you need to quickly inspect JWT contents and check for common security misconfigurations (expired tokens, alg:none, weak algorithms, missing expiration) without needing signature verification. Ideal for debugging, auditing, or logging token metadata in pipelines where you don't have or need the signing secret. Prefer this over manual base64 decoding when you also want structured safety flags automatically computed.

## Known failure modes

- Malformed or non-base64 JWT string returns an error
- Missing token query parameter returns validation error
- JWT with missing segments (not 3 dot-separated parts) fails to parse
- Network timeout on the Cloudflare Worker edge

## How this service works

Paid micro-utilities for cold-email outreach agents: domain deliverability audits, cold-email grading, template generation, plus a tools toolbox (hashing, JWT decode, IDs, slugs, JSON, regex, crypto prices, domain age, weather). Paid via x402 (USDC on Base). One signature per call. No keys. FREE CHECK: GET /preview/<paid-path> (same URL with /preview/ prefix) returns a 200 demo sample - verify output shape before paying. PAID CALL: GET the url -> 402 challenge -> sign + retry with X-PAYMENT -> settled on-chain (USDC, Base). Ready-to-paste client: GET /llms.txt section "Pay in one call". Catalog+MCP twin: /llms.txt.

## Output

Returns a JSON object containing the decoded JWT header (e.g. alg, typ), decoded payload (all claims including sub, exp, iat, etc.), signature presence flag, and a flags object with boolean safety indicators: expired (whether exp is in the past), alg_none (whether algorithm is 'none'), weak_alg (whether a weak algorithm like HS256 is used), and exp_missing (whether expiration claim is absent).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "properties": {}
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "flags": {
   "expired": true,
   "alg_none": false,
   "weak_alg": false,
   "exp_missing": false
  },
  "header": {
   "alg": "HS256",
   "typ": "JWT"
  },
  "payload": {
   "exp": 1735689600,
   "sub": "1"
  },
  "signature": {
   "present": true
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/jwt-decoder-with-safety-flags-5b0d793a/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from sigtap-outreach-api.sigtap.workers.dev](https://www.zero.xyz/host/sigtap-outreach-api.sigtap.workers.dev/llms.txt)
