{"provider":"OceanAlt","kind":"compliance / AML address screening + RAP compliance decision","standard":{"name":"RAP (Responsible Agentic Payments)","url":"https://oceanalt.com/en/rap"},"model":"hybrid: free basic screening + paid x402 decision endpoints","free":{"note":"Basic screening is free: no payment, no API key, CORS enabled. Rate limited for fair use.","resources":[{"method":"GET|POST","endpoint":"/api/decide","params":"to, network?, amountUsdc?, purpose?","desc":"Pre-payment decision: allow / review / decline with evidence and a signed receipt. Same decision as the paid endpoint, without settlement."},{"method":"GET","endpoint":"/api/endpoint","params":"url","desc":"Check a payment page URL before paying: phishing lists, brand lookalikes (homoglyphs, mixed alphabets), shared hosting."},{"method":"POST","endpoint":"/api/payment-request","params":"from?, headers?, subject?, body?, body_html?, pay_to?, network?, previous_pay_to?, expected_sender_domain?","desc":"An email, invoice or message asks your agent to pay: check the sender, links, payee and wording first. allow / review / decline; text processed in memory, not stored."},{"method":"GET","endpoint":"/api/risk","params":"addr, network","desc":"Screen one address (sanctions, mixer and scam lists, issuer freezes, on-chain heuristics) with checkable evidence."},{"method":"GET","endpoint":"/api/risk/recent","desc":"Recently flagged addresses."},{"method":"POST","endpoint":"/api/risk/batch","params":"addresses","desc":"Screen several addresses in one call."},{"method":"POST","endpoint":"/api/payee/decide","params":"payee, amountUsdc?, purpose?, network?, payer?","desc":"For the payee: should I accept this payment from this payer?"},{"method":"POST","endpoint":"/api/x402/verify-requirements","params":"body, expect?","desc":"Verify signed x402 payment requirements before paying."},{"method":"GET","endpoint":"/api/evidence/bundle","params":"address, network?","desc":"Signed evidence bundle for an address, verifiable offline."},{"method":"POST","endpoint":"/api/intent/check","params":"intent, contract?, data?, value?, network?, transaction?","desc":"Before signing: does the transaction match the stated intent?"},{"method":"POST","endpoint":"/api/mandate/check","params":"mandate, payment, mandate_signature?, expected_signer?","desc":"Check a payment against its mandate."}]},"x402":{"scheme":"exact","network":"eip155:8453","networks":["eip155:8453","eip155:196","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"accepts":[{"scheme":"exact","network":"eip155:8453","payTo":"0x93c67dabee533a9689a1e3a67201352b6b29dcd4","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","signing":"EIP-3009 transferWithAuthorization"},{"scheme":"exact","network":"eip155:196","payTo":"0x93c67dabee533a9689a1e3a67201352b6b29dcd4","asset":"0xB6CEceAB302E2E4948951eE7843FC24E92933061","signing":"EIP-3009 transferWithAuthorization"},{"scheme":"exact","network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","payTo":"FynLgz9YrGb3sSiATj7aXc6CrDvNLMXj8zLVYEBXSSDh","asset":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","signing":"partially signed SPL TransferChecked transaction"}],"status":"mainnet (Base, X Layer, Solana)","asset":"USDC","facilitator":"Third-party x402 facilitator. OceanAlt does not custody funds.","how":"A paid endpoint answers HTTP 402 with a `payment-required` header (base64: x402Version / accepts). On EVM, sign a USDC transferWithAuthorization (EIP-3009); on Solana, a partially signed SPL transfer. Put it base64-encoded in the `PAYMENT-SIGNATURE` header (x402 v2, preferred; the v1 `X-PAYMENT` header is also read and matched against the current quote) and resend; the facilitator verifies and settles USDC to payTo. Any x402 wallet or SDK works, with no signup and no key.","resources":[{"method":"POST","endpoint":"/api/x402/decision","price_usd":0.002,"desc":"Pre-payment decision: should this agent make this payment? Returns allow / review / decline with advice and checkable evidence. body: { to, amountUsdc?, purpose?, network? }"},{"method":"GET","endpoint":"/api/x402/trace","price_usd":0.01,"desc":"Multi-hop taint trace on TRON: follows the largest inflows upstream to see whether funds touch listed addresses. ?addr=T…"},{"method":"POST","endpoint":"/api/x402/batch","price_usd":0.01,"desc":"Batch screening, up to 25 addresses. body: { addresses: string[] }"},{"method":"POST","endpoint":"/api/x402/payee","price_usd":0.002,"desc":"Payee and route check before paying: sanctions screening plus the public x402 directory ledger (payee shared across hosts, route listed with the same payee, recent payout-address change). body: { pay_to, resource_url? }"},{"method":"POST","endpoint":"/api/x402/credits","price_usd":0.1,"credits":100,"valid_days":365,"desc":"Credit pack: one payment buys 100 decision calls, valid 365 days. The response returns a credit token once; send it as the X-OceanAlt-Credit header on POST /api/x402/decision. GET /api/x402/credits with the same header shows the balance."}]},"differentiation":"A compliance decision with verifiable evidence, aligned with the RAP standard. Basic screening is free; the paid endpoints add per-call settlement over x402.","lang":"en","docs":"https://oceanalt.com/en/api-docs","contact":"https://oceanalt.com/en/partner"}