{"x402Version":1,"protocol":"x402","network":"xrpl:0","networks":["xrpl:0","eip155:8453"],"asset":"XRP","assets":["XRP","RLUSD","USDC"],"name":"Greenhead Labs","description":"Public pay-per-call XRPL data and Grok AI. No accounts, JWT, or sessions. Pay XRP or RLUSD on XRPL mainnet (xrpl:0), then retry with X-Payment-Txid set to the validated Payment hash.","url":"https://x402.greenhead.io","discovery":{"catalog":"https://x402.greenhead.io/.well-known/x402","documentation":"https://x402.greenhead.io/docs","documentationMarkdown":"https://x402.greenhead.io/docs.md","llmsTxt":"https://x402.greenhead.io/llms.txt","llmsFullTxt":"https://x402.greenhead.io/llms-full.txt","agentsTxt":"https://x402.greenhead.io/agents.txt","agentsJson":"https://x402.greenhead.io/agents.json","openapi":"https://x402.greenhead.io/openapi.json","skill":"https://x402.greenhead.io/skills/x402/SKILL.md","robots":"https://x402.greenhead.io/robots.txt","sitemap":"https://x402.greenhead.io/sitemap.xml","health":"https://x402.greenhead.io/health","status":"https://x402.greenhead.io/status","receipts":"https://x402.greenhead.io/v1/receipts/{txid}","metrics":"https://x402.greenhead.io/api/metrics"},"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","clients":{"npm":"@greenhead/x402-fetch","install":"npm i @greenhead/x402-fetch","source":"https://github.com/GreenheadLabs/x402/tree/main/packages/x402-fetch","header":"X-Payment-Txid","description":"Thin fetch wrapper: 402 → caller pay hook or paymentTxid → retry with X-Payment-Txid. Does not sign XRPL Payments."},"payment":{"header":"X-Payment-Txid","client":{"npm":"@greenhead/x402-fetch","install":"npm i @greenhead/x402-fetch","source":"https://github.com/GreenheadLabs/x402/tree/main/packages/x402-fetch","header":"X-Payment-Txid","description":"Thin fetch wrapper: 402 → caller pay hook or paymentTxid → retry with X-Payment-Txid. Does not sign XRPL Payments."},"scheme":"exact","network":"xrpl:0","asset":"XRP","assets":["XRP","RLUSD","USDC"],"options":[{"asset":"XRP","network":"xrpl:0","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000","network":"xrpl:0","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"10000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"instructions":"Send the listed amount of XRP, or 0.01 RLUSD, to payTo. After the Payment is validated on the XRP Ledger, retry the same request with header X-Payment-Txid equal to that transaction hash. Each hash can be used once. Base agents: accept eip155:8453 USDC (0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913) at GHL_BASE_PAYTO via official PAYMENT-SIGNATURE; catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed.","base":{"enabled":true,"network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","symbol":"USDC","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","header":"PAYMENT-SIGNATURE","responseHeader":"PAYMENT-RESPONSE","scheme":"exact","facilitator":"verify+settle","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed.","bazaar":true},"errors":[{"code":"payment_required","httpStatus":402,"description":"Missing X-Payment-Txid. Pay the listed amount to catalog payTo, then retry with the validated Payment hash.","retryable":true},{"code":"payment_lookup_failed","httpStatus":402,"description":"XRPL lookup failed: transaction not found, RPC error, or unexpected ledger response.","retryable":true},{"code":"payment_underpaid","httpStatus":402,"description":"Payment delivered less than the endpoint price (XRP drops or RLUSD).","retryable":false,"aliases":["insufficient_amount","payment_insufficient"]},{"code":"payment_wrong_payTo","httpStatus":402,"description":"Payment Destination does not match catalog payTo / GHL_AP_WALLET.","retryable":false,"aliases":["destination_mismatch"]},{"code":"payment_already_used","httpStatus":402,"description":"This X-Payment-Txid has already been redeemed. Send a new Payment.","retryable":false},{"code":"payment_not_validated","httpStatus":402,"description":"Transaction exists but is not yet validated on the XRP Ledger. Wait and retry.","retryable":true,"aliases":["payment_pending"]},{"code":"payment_pending","httpStatus":402,"description":"Alias of payment_not_validated. Transaction is in flight / not validated yet.","retryable":true,"aliases":["payment_not_validated"]},{"code":"payment_timeout","httpStatus":504,"description":"Timed out waiting for the XRPL RPC while looking up X-Payment-Txid.","retryable":true},{"code":"payment_wallet_unconfigured","httpStatus":503,"description":"GHL_AP_WALLET is not set. Probes without a txid return 503; paid retries return 402.","retryable":true},{"code":"invalid_payment_txid","httpStatus":402,"description":"X-Payment-Txid is not a 64-character hexadecimal XRPL transaction hash.","retryable":false},{"code":"payment_hash_mismatch","httpStatus":402,"description":"Ledger transaction hash does not match X-Payment-Txid.","retryable":false},{"code":"payment_failed_on_ledger","httpStatus":402,"description":"Referenced transaction did not result in tesSUCCESS.","retryable":false},{"code":"not_a_payment","httpStatus":402,"description":"X-Payment-Txid must reference an XRPL Payment transaction.","retryable":false},{"code":"unsupported_asset","httpStatus":402,"description":"Payment must deliver XRP or RLUSD.","retryable":false},{"code":"invalid_payment_signature","httpStatus":402,"description":"PAYMENT-SIGNATURE is missing, not base64 JSON, or is not an x402 PaymentPayload.","retryable":false},{"code":"facilitator_auth_failed","httpStatus":503,"description":"CDP facilitator Authorization is missing or JWT mint failed. Set CDP_API_KEY_ID + CDP_API_KEY_SECRET (Secret API key, ECDSA ES256 PEM from portal.cdp.coinbase.com/access/api) or X402_FACILITATOR_BEARER. Ed25519 keys mint as EdDSA; ES256 PEM is the usual CDP x402 Secret API key.","retryable":true},{"code":"facilitator_verify_failed","httpStatus":402,"description":"CDP/x402 facilitator POST /verify rejected the Base payment payload.","retryable":true},{"code":"facilitator_settle_failed","httpStatus":402,"description":"CDP/x402 facilitator POST /settle failed after verify. Retry only after checking the settlement id.","retryable":true}],"receipt":{"header":"X-Payment-Receipt","jsonField":"receipt","lookup":"/v1/receipts/{txid}","fields":["txid","redeemed","endpoint","payer","pay_to","amount_drops","internal","redeemed_at","status"],"statuses":["settled","unused","unknown"]}},"resources":[{"url":"https://x402.greenhead.io","name":"root","description":"x402 discovery probe. Always returns HTTP 402. Follow Link headers or GET /.well-known/x402 for the free catalog."},{"url":"https://x402.greenhead.io/.well-known/x402","name":"catalog","description":"x402 service catalog: endpoint names, descriptions, XRP/RLUSD prices, and payTo."},{"url":"https://x402.greenhead.io/docs","name":"docs","description":"Human-readable API documentation with JSON-LD for crawlers."},{"url":"https://x402.greenhead.io/docs.md","name":"docs-md","description":"Markdown documentation for agents (llms.txt v2 alternate)."},{"url":"https://x402.greenhead.io/llms.txt","name":"llms","description":"Curated agent index of discovery files and paid endpoints (llmstxt.org v2)."},{"url":"https://x402.greenhead.io/llms-full.txt","name":"llms-full","description":"Full markdown catalog: payment flow, every endpoint, query/body fields, curl examples."},{"url":"https://x402.greenhead.io/agents.txt","name":"agents-txt","description":"Agent capability announcement: Protocols: x402 (agents-txt.com)."},{"url":"https://x402.greenhead.io/agents.json","name":"agents-json","description":"Structured agent catalog: x402 on xrpl:0, default pricing, no wallet addresses."},{"url":"https://x402.greenhead.io/openapi.json","name":"openapi","description":"OpenAPI 3.0 of free discovery routes and paid XRPL/AI endpoints."},{"url":"https://x402.greenhead.io/skills/x402/SKILL.md","name":"skill","description":"Agent skill: how to discover, pay, and call this API."},{"url":"https://x402.greenhead.io/robots.txt","name":"robots","description":"Allows crawlers; lists Sitemap and free agent files."},{"url":"https://x402.greenhead.io/sitemap.xml","name":"sitemap","description":"Sitemap of free discovery URLs."},{"url":"https://x402.greenhead.io/health","name":"health","description":"Liveness JSON for crawlers and uptime checks."},{"url":"https://x402.greenhead.io/status","name":"status","description":"Readiness JSON: network, XRPL RPC reachability, uptime, recent settle ok/fail counters, version."},{"url":"https://x402.greenhead.io/v1/receipts/{txid}","name":"receipt","description":"Public CFO receipt lookup by XRPL Payment hash. No payment required. Thin JSON: txid, redeemed, endpoint, payer, pay_to, amount_drops, internal, redeemed_at, status (settled|unused|unknown)."},{"url":"https://x402.greenhead.io/api/metrics","name":"metrics","description":"Public paid-call meters: paid_calls, revenue (drops/xrp/usd_mark), unique_payers, by_endpoint, receipt_redeem_success_rate."},{"url":"https://x402.greenhead.io/v1/xrpl/settlement","name":"settlement","description":"Paid XRPL Payment attestation by query txid. Distinct from free GET /v1/receipts/:txid. Fail-closed: invalid, missing, unvalidated, or non-Payment hashes return 4xx without redeeming X-Payment-Txid. 75,000 drops (0.075 XRP)."},{"url":"https://x402.greenhead.io/v1/xrpl/token","name":"token","description":"Token info for an XRPL issued currency: issuer details, DEX/AMM price in XRP, holder metrics, and liquidity."},{"url":"https://x402.greenhead.io/v1/xrpl/listings","name":"listings","description":"Recent XRPL token launches from GeckoTerminal / First Ledger, sorted by launch date descending."},{"url":"https://x402.greenhead.io/v1/xrpl/orderbook","name":"orderbook","description":"XRPL DEX order book for a currency pair (bids and asks, plus mid price)."},{"url":"https://x402.greenhead.io/v1/xrpl/portfolio","name":"portfolio","description":"Wallet token holdings on XRPL, including XRP balance and estimated XRP values."},{"url":"https://x402.greenhead.io/v1/ai/chat","name":"ai-chat","description":"Grok chat completions (model grok-3-mini) via https://api.x.ai/v1/chat/completions. Requires GROK_API_KEY."},{"url":"https://x402.greenhead.io/v1/xrpl/amm-score","name":"amm-score","description":"Fetch AMM pool data, then score pool quality 0-100 via Grok (grok-3-mini) for a sniper bot."},{"url":"https://x402.greenhead.io/v1/xrpl/trending","name":"trending","description":"Top 10 XRPL tokens by 24h volume from xrpl.to."},{"url":"https://x402.greenhead.io/v1/ai/trade-advice","name":"trade-advice","description":"XRPL buy/skip/watch advice via Grok chat completions (grok-3-mini)."},{"url":"https://x402.greenhead.io/v1/ai/risk-score","name":"risk-score","description":"Fetch XRPL token data, then score risk 0-100 via Grok (grok-3-mini)."},{"url":"https://x402.greenhead.io/v1/ai/sentiment","name":"sentiment","description":"Sentiment as positive/neutral/negative with a 0-100 confidence score via Grok (grok-3-mini)."},{"url":"https://x402.greenhead.io/v1/ai/grok","name":"grok","description":"Grok text via the xAI Responses API (default model grok-4.6). Requires GROK_API_KEY."},{"url":"https://x402.greenhead.io/v1/ai/image","name":"image","description":"Generate an image with Grok Imagine. Requires GROK_API_KEY."},{"url":"https://x402.greenhead.io/v1/ai/video","name":"video","description":"Start a Grok Imagine video generation. Requires GROK_API_KEY."},{"url":"https://x402.greenhead.io/v1/ai/video","name":"video-status","description":"Poll a Grok Imagine video job by request_id. Requires GROK_API_KEY."},{"url":"https://x402.greenhead.io/v1/ai/tts","name":"tts","description":"Grok text-to-speech. Returns audio. Requires GROK_API_KEY."},{"url":"https://x402.greenhead.io/v1/xrpl/wallet-score","name":"wallet-score","description":"Wallet trust/risk score 0-100 from XRPL age, tx count, trust lines, and balance via Grok. 2000 drops."},{"url":"https://x402.greenhead.io/v1/xrpl/token-risk","name":"token-risk","description":"Rug-pull probability from AMM liquidity, holder concentration, and issuer trust lines via Grok. 2000 drops."},{"url":"https://x402.greenhead.io/v1/grok/market-summary","name":"market-summary","description":"Plain-English XRPL daily market digest from the top 10 GeckoTerminal pools via Grok. 3000 drops. Body optional."},{"url":"https://x402.greenhead.io/v1/base/ping","name":"base-ping","description":"Prove route for Base mainnet USDC x402 (eip155:8453). HTTP 200 after facilitator verify+settle. Priced as the cheapest SKU (0.002 face → 2000 USDC atomic when Base is enabled)."}],"endpoints":[{"name":"root","method":"GET","path":"/","description":"x402 discovery probe. Always returns HTTP 402. Follow Link headers or GET /.well-known/x402 for the free catalog.","priceXrp":"0","paid":false,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD"],"paymentOptions":[{"asset":"XRP","priceXrp":"0","priceDrops":"0"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"10000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}]},{"name":"catalog","method":"GET","path":"/.well-known/x402","description":"x402 service catalog: endpoint names, descriptions, XRP/RLUSD prices, and payTo.","priceXrp":"0","paid":false,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD"]},{"name":"docs","method":"GET","path":"/docs","description":"Human-readable API documentation with JSON-LD for crawlers.","priceXrp":"0","paid":false,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD"]},{"name":"docs-md","method":"GET","path":"/docs.md","description":"Markdown documentation for agents (llms.txt v2 alternate).","priceXrp":"0","paid":false,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD"]},{"name":"llms","method":"GET","path":"/llms.txt","description":"Curated agent index of discovery files and paid endpoints (llmstxt.org v2).","priceXrp":"0","paid":false,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD"]},{"name":"llms-full","method":"GET","path":"/llms-full.txt","description":"Full markdown catalog: payment flow, every endpoint, query/body fields, curl examples.","priceXrp":"0","paid":false,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD"]},{"name":"agents-txt","method":"GET","path":"/agents.txt","description":"Agent capability announcement: Protocols: x402 (agents-txt.com).","priceXrp":"0","paid":false,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD"]},{"name":"agents-json","method":"GET","path":"/agents.json","description":"Structured agent catalog: x402 on xrpl:0, default pricing, no wallet addresses.","priceXrp":"0","paid":false,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD"]},{"name":"openapi","method":"GET","path":"/openapi.json","description":"OpenAPI 3.0 of free discovery routes and paid XRPL/AI endpoints.","priceXrp":"0","paid":false,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD"]},{"name":"skill","method":"GET","path":"/skills/x402/SKILL.md","description":"Agent skill: how to discover, pay, and call this API.","priceXrp":"0","paid":false,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD"]},{"name":"robots","method":"GET","path":"/robots.txt","description":"Allows crawlers; lists Sitemap and free agent files.","priceXrp":"0","paid":false,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD"]},{"name":"sitemap","method":"GET","path":"/sitemap.xml","description":"Sitemap of free discovery URLs.","priceXrp":"0","paid":false,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD"]},{"name":"health","method":"GET","path":"/health","description":"Liveness JSON for crawlers and uptime checks.","priceXrp":"0","paid":false,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD"]},{"name":"status","method":"GET","path":"/status","description":"Readiness JSON: network, XRPL RPC reachability, uptime, recent settle ok/fail counters, version.","priceXrp":"0","paid":false,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD"]},{"name":"receipt","method":"GET","path":"/v1/receipts/{txid}","description":"Public CFO receipt lookup by XRPL Payment hash. No payment required. Thin JSON: txid, redeemed, endpoint, payer, pay_to, amount_drops, internal, redeemed_at, status (settled|unused|unknown).","priceXrp":"0","paid":false,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD"]},{"name":"metrics","method":"GET","path":"/api/metrics","description":"Public paid-call meters: paid_calls, revenue (drops/xrp/usd_mark), unique_payers, by_endpoint, receipt_redeem_success_rate.","priceXrp":"0","paid":false,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD"]},{"name":"settlement","method":"GET","path":"/v1/xrpl/settlement","description":"Paid XRPL Payment attestation by query txid. Distinct from free GET /v1/receipts/:txid. Fail-closed: invalid, missing, unvalidated, or non-Payment hashes return 4xx without redeeming X-Payment-Txid. 75,000 drops (0.075 XRP).","priceXrp":"0.075","priceRlusd":"0.01","price":{"amount":"0.075","asset":"XRP","drops":"75000"},"prices":[{"amount":"0.075","asset":"XRP","drops":"75000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"75000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.075","priceDrops":"75000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"75000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"75000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"query":{"txid":"64-character XRPL transaction hash to attest (required)"}},{"name":"token","method":"GET","path":"/v1/xrpl/token","description":"Token info for an XRPL issued currency: issuer details, DEX/AMM price in XRP, holder metrics, and liquidity.","priceXrp":"0.01","priceRlusd":"0.01","price":{"amount":"0.01","asset":"XRP","drops":"10000"},"prices":[{"amount":"0.01","asset":"XRP","drops":"10000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"10000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.01","priceDrops":"10000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"10000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"query":{"issuer":"XRPL classic address of the token issuer (required)","currency":"Currency code (3-char, hex, or UTF-8 name) (required)"}},{"name":"listings","method":"GET","path":"/v1/xrpl/listings","description":"Recent XRPL token launches from GeckoTerminal / First Ledger, sorted by launch date descending.","priceXrp":"0.002","priceRlusd":"0.01","price":{"amount":"0.002","asset":"XRP","drops":"2000"},"prices":[{"amount":"0.002","asset":"XRP","drops":"2000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"2000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.002","priceDrops":"2000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"2000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"2000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"query":{"limit":"Max listings to return (default 50, max 100)"}},{"name":"orderbook","method":"GET","path":"/v1/xrpl/orderbook","description":"XRPL DEX order book for a currency pair (bids and asks, plus mid price).","priceXrp":"0.01","priceRlusd":"0.01","price":{"amount":"0.01","asset":"XRP","drops":"10000"},"prices":[{"amount":"0.01","asset":"XRP","drops":"10000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"10000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.01","priceDrops":"10000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"10000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"query":{"base":"Base asset: XRP or CODE:issuer / CODE.issuer / CODE+issuer (required)","quote":"Quote asset: XRP or CODE:issuer / CODE.issuer / CODE+issuer (required)"}},{"name":"portfolio","method":"GET","path":"/v1/xrpl/portfolio","description":"Wallet token holdings on XRPL, including XRP balance and estimated XRP values.","priceXrp":"0.02","priceRlusd":"0.01","price":{"amount":"0.02","asset":"XRP","drops":"20000"},"prices":[{"amount":"0.02","asset":"XRP","drops":"20000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"20000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.02","priceDrops":"20000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"20000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"20000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"query":{"address":"XRPL classic address of the wallet (required)"}},{"name":"ai-chat","method":"POST","path":"/v1/ai/chat","description":"Grok chat completions (model grok-3-mini) via https://api.x.ai/v1/chat/completions. Requires GROK_API_KEY.","priceXrp":"0.05","priceRlusd":"0.01","price":{"amount":"0.05","asset":"XRP","drops":"50000"},"prices":[{"amount":"0.05","asset":"XRP","drops":"50000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"50000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.05","priceDrops":"50000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"50000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"50000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"body":{"messages":"Chat messages array (required unless prompt is set)","prompt":"Optional prompt string used as a single user message"}},{"name":"amm-score","method":"POST","path":"/v1/xrpl/amm-score","description":"Fetch AMM pool data, then score pool quality 0-100 via Grok (grok-3-mini) for a sniper bot.","priceXrp":"0.05","priceRlusd":"0.01","price":{"amount":"0.05","asset":"XRP","drops":"50000"},"prices":[{"amount":"0.05","asset":"XRP","drops":"50000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"50000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.05","priceDrops":"50000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"50000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"50000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"body":{"issuer":"XRPL classic address of the token issuer (required)","currency":"Currency code (3-char, hex, or UTF-8 name) (required)","poolXrp":"Claimed XRP in the AMM pool (required)"}},{"name":"trending","method":"GET","path":"/v1/xrpl/trending","description":"Top 10 XRPL tokens by 24h volume from xrpl.to.","priceXrp":"0.05","priceRlusd":"0.01","price":{"amount":"0.05","asset":"XRP","drops":"50000"},"prices":[{"amount":"0.05","asset":"XRP","drops":"50000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"50000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.05","priceDrops":"50000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"50000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"50000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}]},{"name":"trade-advice","method":"POST","path":"/v1/ai/trade-advice","description":"XRPL buy/skip/watch advice via Grok chat completions (grok-3-mini).","priceXrp":"0.05","priceRlusd":"0.01","price":{"amount":"0.05","asset":"XRP","drops":"50000"},"prices":[{"amount":"0.05","asset":"XRP","drops":"50000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"50000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.05","priceDrops":"50000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"50000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"50000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"body":{"messages":"Chat messages array (optional if prompt or token fields are set)","prompt":"Optional prompt string describing the token or trade"}},{"name":"risk-score","method":"POST","path":"/v1/ai/risk-score","description":"Fetch XRPL token data, then score risk 0-100 via Grok (grok-3-mini).","priceXrp":"0.05","priceRlusd":"0.01","price":{"amount":"0.05","asset":"XRP","drops":"50000"},"prices":[{"amount":"0.05","asset":"XRP","drops":"50000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"50000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.05","priceDrops":"50000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"50000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"50000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"body":{"issuer":"XRPL classic address of the token issuer (required)","currency":"Currency code (required)","poolXrp":"XRP in the AMM pool (required)","poolTokens":"Token units in the AMM pool (required)"}},{"name":"sentiment","method":"POST","path":"/v1/ai/sentiment","description":"Sentiment as positive/neutral/negative with a 0-100 confidence score via Grok (grok-3-mini).","priceXrp":"0.05","priceRlusd":"0.01","price":{"amount":"0.05","asset":"XRP","drops":"50000"},"prices":[{"amount":"0.05","asset":"XRP","drops":"50000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"50000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.05","priceDrops":"50000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"50000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"50000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"body":{"text":"Text to analyze (required)"}},{"name":"grok","method":"POST","path":"/v1/ai/grok","description":"Grok text via the xAI Responses API (default model grok-4.6). Requires GROK_API_KEY.","priceXrp":"0.05","priceRlusd":"0.01","price":{"amount":"0.05","asset":"XRP","drops":"50000"},"prices":[{"amount":"0.05","asset":"XRP","drops":"50000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"50000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.05","priceDrops":"50000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"50000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"50000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"body":{"input":"Prompt string or messages array (required unless prompt/messages is set)","prompt":"Alias for input","messages":"Chat messages array forwarded as input","model":"Optional model name (default grok-4.6)"}},{"name":"image","method":"POST","path":"/v1/ai/image","description":"Generate an image with Grok Imagine. Requires GROK_API_KEY.","priceXrp":"0.05","priceRlusd":"0.01","price":{"amount":"0.05","asset":"XRP","drops":"50000"},"prices":[{"amount":"0.05","asset":"XRP","drops":"50000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"50000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.05","priceDrops":"50000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"50000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"50000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"body":{"prompt":"Image prompt (required)","model":"Optional model (default grok-imagine-image-quality)"}},{"name":"video","method":"POST","path":"/v1/ai/video","description":"Start a Grok Imagine video generation. Requires GROK_API_KEY.","priceXrp":"0.05","priceRlusd":"0.01","price":{"amount":"0.05","asset":"XRP","drops":"50000"},"prices":[{"amount":"0.05","asset":"XRP","drops":"50000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"50000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.05","priceDrops":"50000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"50000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"50000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"body":{"prompt":"Video prompt (required)","model":"Optional model (default grok-imagine-video)"}},{"name":"video-status","method":"GET","path":"/v1/ai/video","description":"Poll a Grok Imagine video job by request_id. Requires GROK_API_KEY.","priceXrp":"0.05","priceRlusd":"0.01","price":{"amount":"0.05","asset":"XRP","drops":"50000"},"prices":[{"amount":"0.05","asset":"XRP","drops":"50000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"50000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.05","priceDrops":"50000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"50000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"50000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"query":{"request_id":"xAI video request_id (required unless passed as /v1/ai/video/:requestId)"}},{"name":"tts","method":"POST","path":"/v1/ai/tts","description":"Grok text-to-speech. Returns audio. Requires GROK_API_KEY.","priceXrp":"0.05","priceRlusd":"0.01","price":{"amount":"0.05","asset":"XRP","drops":"50000"},"prices":[{"amount":"0.05","asset":"XRP","drops":"50000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"50000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.05","priceDrops":"50000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"50000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"50000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"body":{"text":"Text to speak (required)","voice_id":"Optional voice (default eve)","language":"Optional language (default en)"}},{"name":"wallet-score","method":"POST","path":"/v1/xrpl/wallet-score","description":"Wallet trust/risk score 0-100 from XRPL age, tx count, trust lines, and balance via Grok. 2000 drops.","priceXrp":"0.002","priceRlusd":"0.01","price":{"amount":"0.002","asset":"XRP","drops":"2000"},"prices":[{"amount":"0.002","asset":"XRP","drops":"2000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"2000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.002","priceDrops":"2000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"2000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"2000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"body":{"address":"XRPL classic address (required)"}},{"name":"token-risk","method":"POST","path":"/v1/xrpl/token-risk","description":"Rug-pull probability from AMM liquidity, holder concentration, and issuer trust lines via Grok. 2000 drops.","priceXrp":"0.002","priceRlusd":"0.01","price":{"amount":"0.002","asset":"XRP","drops":"2000"},"prices":[{"amount":"0.002","asset":"XRP","drops":"2000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"2000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.002","priceDrops":"2000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"2000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"2000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"body":{"currency":"Token currency code (required)","issuer":"XRPL classic address of the token issuer (required)"}},{"name":"market-summary","method":"POST","path":"/v1/grok/market-summary","description":"Plain-English XRPL daily market digest from the top 10 GeckoTerminal pools via Grok. 3000 drops. Body optional.","priceXrp":"0.003","priceRlusd":"0.01","price":{"amount":"0.003","asset":"XRP","drops":"3000"},"prices":[{"amount":"0.003","asset":"XRP","drops":"3000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"3000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.003","priceDrops":"3000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"3000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"3000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}]},{"name":"base-ping","method":"GET","path":"/v1/base/ping","description":"Prove route for Base mainnet USDC x402 (eip155:8453). HTTP 200 after facilitator verify+settle. Priced as the cheapest SKU (0.002 face → 2000 USDC atomic when Base is enabled).","priceXrp":"0.002","priceRlusd":"0.01","price":{"amount":"0.002","asset":"XRP","drops":"2000"},"prices":[{"amount":"0.002","asset":"XRP","drops":"2000"},{"amount":"10000","asset":"RLUSD","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"},{"amount":"2000","asset":"USDC","network":"eip155:8453","contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","decimals":6,"payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","conversion":"catalog priceXrp maps 1:1 to USDC face value (0.002 XRP SKU → 0.002 USDC = 2000 atomic). Not a live XRP/USD FX feed."}],"paid":true,"payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","network":"xrpl:0","assets":["XRP","RLUSD","USDC"],"paymentOptions":[{"asset":"XRP","priceXrp":"0.002","priceDrops":"2000"},{"asset":"RLUSD","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000","issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","price":"0.01","priceDrops":"10000"}],"accepts":[{"scheme":"exact","network":"xrpl:0","amount":"2000","asset":"XRP","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1"},{"scheme":"exact","network":"xrpl:0","amount":"10000","asset":"RLUSD","payTo":"rnPmtGgU7fMKrud7m1oK7E1ogN35qDbKV1","extra":{"issuer":"rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De","currency":"RLUSD","currencyHex":"524C555344000000000000000000000000000000"}},{"scheme":"exact","network":"eip155:8453","amount":"2000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x6bF820a4b8a1722Bf83d6F84d05A2125e2f61d1a","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}]}]}