{"x402Version":1,"accepts":[{"scheme":"exact","network":"base","chainId":8453,"asset":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","assetSymbol":"USDC","assetDecimals":6,"payTo":"0x3ce398418ca80baf9d2149bb2bcfd6937dc5f470","amountPerCall":"0.100000","amountPerCallUnits":"100000","description":"Onyx AML address screening, one call"},{"scheme":"exact","network":"base","chainId":8453,"asset":"0xfde4c96c8593536e31f229ea8f37b2ada2699bb2","assetSymbol":"USDT","assetDecimals":6,"payTo":"0x3ce398418ca80baf9d2149bb2bcfd6937dc5f470","amountPerCall":"0.100000","amountPerCallUnits":"100000","description":"Onyx AML address screening, one call"}],"howTo":["1. Send any amount of USDC or USDT on Base (8453) to payTo. Both are accepted at par; 0.10 buys one screening call. Heavier operations cost more, see catalog.","2. POST /api/v1/agent/claim {\"payer\":\"<your sending address>\"} after the transfer confirms. Once an address holds paid credit, the claim must be signed by that wallet: the endpoint replies with the exact message to sign (personal_sign / EIP-191), then retry with issued + signature. A signed claim also rotates a lost key.","3. Repeat the request with header X-Api-Key: <api_key>. Top up the same address any time; credit is read from chain."],"catalog":[{"op":"decide","endpoint":"https://onyxprotocol.trade/api/v1/decide","price_usdc":0.1,"unit":"call","returns":"allow | review | deny against your own policy, with reasons","use":"call before every outbound transfer"},{"op":"screen","endpoint":"https://onyxprotocol.trade/api/v1/screen","price_usdc":0.1,"unit":"call","returns":"risk zone, issuer blacklists, sanctions, scam databases, facts","use":"when you want the raw markers rather than a decision"},{"op":"batch","endpoint":"https://onyxprotocol.trade/api/v1/screen/batch","price_usdc":0.08,"unit":"address","max":100,"returns":"the same screening for up to 50 addresses in one call","use":"before a mass payout"},{"op":"trace","endpoint":"https://onyxprotocol.trade/api/v1/trace","price_usdc":0.4,"unit":"call","returns":"multi-hop flow of funds with attribution where known","use":"after receiving funds, to establish provenance"},{"op":"preflight","endpoint":"https://onyxprotocol.trade/api/v1/preflight","price_usdc":0.03,"unit":"call","returns":"whether this is the address you mean and whether funds will arrive: lookalike/address-poisoning detection, contract-recipient and wrong-chain traps","use":"call before every payment, together with decide"},{"op":"watch","endpoint":"https://onyxprotocol.trade/api/v1/watch","price_usdc":0.03,"unit":"address/day","returns":"signed webhook when an address becomes toxic","use":"for counterparties you keep dealing with"}],"endpoints":{"screen":"https://onyxprotocol.trade/api/v1/screen","decide":"https://onyxprotocol.trade/api/v1/decide","batch":"https://onyxprotocol.trade/api/v1/screen/batch","trace":"https://onyxprotocol.trade/api/v1/trace","watch":"https://onyxprotocol.trade/api/v1/watch","preflight":"https://onyxprotocol.trade/api/v1/preflight","claim":"https://onyxprotocol.trade/api/v1/agent/claim","balance":"https://onyxprotocol.trade/api/v1/agent/balance","manifest":"https://onyxprotocol.trade/.well-known/x402","skill":"https://onyxprotocol.trade/agents/skill.md","mcp":"https://onyxprotocol.trade/mcp"},"mcp":{"endpoint":"https://onyxprotocol.trade/mcp","transport":"streamable-http","auth":"X-Api-Key or Authorization: Bearer","note":"Connect your agent runtime here and the tools appear automatically. onyx_payment_info works without a key."},"freeCalls":3,"acceptedAssets":["USDC","USDT"],"custody":"Payments go directly to the operator address on chain. This service holds no keys and no balances.","status":"live"}