v2.37.0
Pre-launch API-consistency cleanup (Batch 1, piece 3 + exposure hardening). Mirrors the gateway's account-addressing changes in the SDK/CLI/MCP. Lockstep release of run402-mcp, run402, and @run402/sdk at 2.37.0.
Coordinated rollout: these clients now expect the new gateway account routes. The matching gateway change must be deployed for 2.37.0 billing reads to resolve.
Billing — accounts addressed by billing_account_id (UUID)
- Account reads are keyed by the canonical
billing_account_id.billing.getAccount/checkBalancesend a UUID straight toGET /billing/v1/accounts/:account_id, and resolve a wallet/email through the newGET /billing/v1/accounts?wallet=|?email=lookup. billing.history/getHistoryresolve a wallet/email to the account id first, then read/accounts/:account_id/history.- New
billing.lookupAccount(identifier)resolves a wallet/email → account detail (includingbilling_account_id). - Response shape: dropped
identifier_type, addedbilling_account_id.BillingBalanceis now a deprecated alias ofBillingAccountDetail;BillingHistoryResultis keyed bybilling_account_id. - Auth: account reads require SIWX from a wallet linked to the account (or an admin key); email lookups are admin-only.
Security — GET /wallets/v1/:address/projects is now owner-only
projects.listnow signs SIWX. The endpoint was previously public (anyone could enumerate any wallet's project ids/names/usage); it now requires a SIWX wallet matching the address, or an admin key.
Docs & surfaces
- MCP tool descriptions (
check_balance,list_projects,billing_history), CLIbillinghelp, and the comprehensive references (llms-cli.txt,llms-sdk.txt,sdk/README.md, bothSKILL.md) updated.
Closes #432.