{"service":"pocket-api","name":"Pocket API","summary":"Spending limits for AI agents.","description":"Pocket gives each AI agent its own wallet and a hard cap it cannot raise. This service holds the decision: it prices a purchase, checks it against the budget and policy the operator set, and only then asks a custodian to sign. Every attempt is recorded, including the ones it refused.","role":"Policy engine, ledger and audit trail. The dashboard and the MCP server are both clients of this API.","guarantees":["Every payment is decided before a wallet is asked to sign, so a refused purchase has no signature attached to it.","No private key reaches this service. Wallets are custodied elsewhere and only a signature crosses back.","A refusal is recorded with the rule that stopped it and the room that was left, not discarded.","Agents cannot change their own limits. Budgets and policies are written by a signed-in human or an organization key.","Money is carried as decimal strings beside its asset, never as a JSON number."],"chain":"hedera-testnet","adapters":{"wallet":{"provider":"privy","live":true},"chain":{"provider":"hedera","live":true},"analytics":{"provider":"the-graph","live":true},"market":{"provider":"the-graph","live":true},"identity":{"provider":"privy","live":true}},"auth":{"scheme":"Bearer","credentials":["pocket_sk_… — an organization API key, minted in the dashboard","A Privy identity token, for a signed-in person"],"public":["GET /","GET /v1/health","POST /v1/orgs","POST /v1/auth/session"],"note":"Everything else is scoped to the organization the credential belongs to."},"endpoints":["POST /v1/auth/session","GET /v1/health","POST /v1/orgs","GET /v1/orgs/me","PATCH /v1/orgs/me","GET /v1/api-keys","POST /v1/api-keys","DELETE /v1/api-keys/:id","POST /v1/agents","GET /v1/agents","GET /v1/agents/:id","PATCH /v1/agents/:id","POST /v1/agents/:id/transfer","DELETE /v1/agents/:id","PUT /v1/agents/:id/budget","PUT /v1/agents/:id/policy","POST /v1/agents/:id/wallet/associate","POST /v1/agents/:id/wallet/activate","POST /v1/agents/:id/task-budgets","GET /v1/agents/:id/task-budgets","POST /v1/task-budgets/:id/close","POST /v1/payments/preview","POST /v1/payments","GET /v1/payments","GET /v1/payments/:id","POST /v1/payments/:id/approve","POST /v1/payments/:id/reject","POST /v1/payments/x402/authorize","POST /v1/payments/:id/settlement","POST /v1/payments/x402/purchase","GET /v1/analytics/spend","GET /v1/analytics/timeseries","GET /v1/payments/stats","GET /v1/audit","GET /"],"links":{"product":"https://www.pocket-app.xyz","documentation":"https://docs.pocket-app.xyz/docs","protocol":"https://x402.org","health":"/v1/health"},"release":{"version":"0.1.0","commit":null,"builtAt":null,"startedAt":"2026-11-07T18:30:29.229Z","uptimeSeconds":75856,"environment":"production"}}