Pay 0.001 RLUSD for an actionable XRPL agent-wallet heartbeat: spendable XRP after reserves, canonical RLUSD trust-line health and call runway, validated activity, balance deltas, failed transactions, and new destinations. The first call establishes a private payer-scoped baseline and skips historical activity.
Compatibility reference. This paid URL remains callable for existing integrations, but is no longer listed in public discovery. PageDelta is the current offer. Verify the live 402 before paying.
curl -X POST https://app.heinrichstech.com/v1/cdp/xrpl-wallet-watch \
-H 'content-type: application/json' \
-d '{"address":"rfryheo6yzFdLWj8qUQtZc7zG9MKkBkUEy","minCallsRemaining":25,"allowedDestinations":[]}'
# This request returns a 402 challenge. It does not sign or spend.
# For paid delivery, select a compatible accepts[] option and pay its advertised amount.
# Listed primary: 0.001000 RLUSD to rfryheo6yzFdLWj8qUQtZc7zG9MKkBkUEy on XRPL mainnet (xrpl:0).
# A compatible x402 client retries the identical request with PAYMENT-SIGNATURE.
# The selected facilitator verifies and settles before paid delivery.
This call does not sign or spend. It lets your agent inspect the exact live price, recipient, asset, and network choices before choosing a compatible x402 buyer.
const res = await fetch('https://app.heinrichstech.com/v1/cdp/xrpl-wallet-watch', {
method: 'POST',
headers: { 'content-type': 'application/json' },
body: JSON.stringify({"address":"rfryheo6yzFdLWj8qUQtZc7zG9MKkBkUEy","minCallsRemaining":25,"allowedDestinations":[]}),
});
if (res.status !== 402) throw new Error(`Expected 402, received ${res.status}`);
const challenge = await res.json();
console.table(challenge.accepts.map(({ network, asset, amount, payTo }) => ({
network, asset, amount, payTo,
})));
This route remains documented for compatibility, but is not in the featured feeds. The fresh 402 challenge remains canonical for its current terms.