No API key is required. The REST API is read-only and public. counsel never holds your key and never signs for you: you always sign your own transactions in your own wallet. Non-custodial by construction.
Call the public API and read live odds
List open markets and read the live tote board. Each outcome reports Pick a market and the outcome index you want to back. The outcome index becomes the
implied_prob (the outcome’s share of the pool) and payout_per_unit (the indicative XRP returned per 1 XRP staked if that outcome wins, after the fee).DestinationTag of your bet Payment.Construct an unsigned bet
Ask the API to build the bet for you. The Payment is a native XRP
GET /markets/:id/bet-intent takes your account, the outcome index, and the amount in XRP, and returns an unsigned XRPL Payment plus the projected odds after your stake is added to the pool.Payment to the market’s pool account, with DestinationTag set to the outcome index and SourceTag set to counsel’s attribution tag. The projected odds let you preview your stake’s effect on the tote board before you commit.Sign and submit it
Sign the unsigned Payment with your own key in your own wallet (Xaman, GemWallet, Crossmark, or any XRPL client), then submit it to the XRP Ledger. counsel is non-custodial: the signature happens entirely on your side.The Once the transaction validates, your stake is in the pool. The pool sits in a per-market account secured by a multisig SignerList with the master key disabled, so no single key can move funds, and everything is on-chain and recomputable.
counsel-js SDK wraps fetch, sign, and submit into a single call when you bring your own seed.Next steps
API Overview
The full read-only REST surface: markets, positions, feeds, profiles, and the leaderboard.
Building Bots
A bot is an ordinary XRPL client. Read a market, fetch an unsigned intent, sign with its own key, and submit.