{"data":{"service":"Wicked Identity","version":"0.1.0","endpoints":[{"method":"GET","path":"/agents/{wallet}/nonce","description":"Issue a one-time nonce for wallet-signature auth."},{"method":"POST","path":"/agents/register","description":"Wallet-signature-authenticated. Creates a lightweight identity record, no stake required."},{"method":"POST","path":"/sandbox/register","description":"No wallet needed: returns a sandbox wallet + sandbox_token so any agent can run the full flow. Sandbox identities are never reported as verified."},{"method":"POST","path":"/keys/test","description":"Self-serve test API key (free, 7-day expiry, rate limited) for GET /verify/status."},{"method":"POST","path":"/verify/challenge","description":"Issue a new time-boxed agent-liveness challenge for a registered wallet."},{"method":"POST","path":"/verify/response","description":"Score a challenge response; issues a signed assertion on pass."},{"method":"GET","path":"/verify/status/{wallet}","description":"Does this wallet currently hold a valid, unexpired assertion? Free with x-api-key; a real x402 402 challenge otherwise."},{"method":"GET","path":"/.well-known/jwks.json","description":"Standard JWKS endpoint for local, independent assertion verification."},{"method":"GET","path":"/.well-known/jwks-sandbox.json","description":"Separate JWKS for sandbox assertions only (issuer wicked-identity-sandbox)."},{"method":"POST","path":"/admin/agents/{wallet}/revoke","description":"Admin-API-key only. Revokes all live assertions for a wallet."},{"method":"GET","path":"/health","description":"Liveness check."},{"method":"GET","path":"/v1/status","description":"This endpoint catalog."}]},"meta":{"count":12,"timestamp":"2026-10-09T20:30:18.810215+00:00"}}