[{"data":1,"prerenderedAt":543},["ShallowReactive",2],{"navigation_docs":3,"-providers-xrpscan":158,"-providers-xrpscan-surround":540},[4,56],{"title":5,"path":6,"stem":7,"children":8,"icon":55},"Guide","\u002Fguide","1.guide\u002F01.index",[9,11,15,19,23,27,31,35,39,43,47,51],{"title":10,"path":6,"stem":7},"Getting Started",{"title":12,"path":13,"stem":14},"CLI","\u002Fguide\u002Fcli","1.guide\u002F02.cli",{"title":16,"path":17,"stem":18},"Provider selection","\u002Fguide\u002Fselection","1.guide\u002F03.selection",{"title":20,"path":21,"stem":22},"Balances","\u002Fguide\u002Fbalances","1.guide\u002F04.balances",{"title":24,"path":25,"stem":26},"Transactions","\u002Fguide\u002Ftransactions","1.guide\u002F05.transactions",{"title":28,"path":29,"stem":30},"Tokens","\u002Fguide\u002Ftokens","1.guide\u002F06.tokens",{"title":32,"path":33,"stem":34},"Contracts","\u002Fguide\u002Fcontracts","1.guide\u002F07.contracts",{"title":36,"path":37,"stem":38},"Gas and blocks","\u002Fguide\u002Fgas-and-blocks","1.guide\u002F08.gas-and-blocks",{"title":40,"path":41,"stem":42},"Errors","\u002Fguide\u002Ferrors","1.guide\u002F09.errors",{"title":44,"path":45,"stem":46},"Agents","\u002Fguide\u002Fagents","1.guide\u002F10.agents",{"title":48,"path":49,"stem":50},"Custom providers","\u002Fguide\u002Fcustom","1.guide\u002F11.custom",{"title":52,"path":53,"stem":54},"Explorer","\u002Fguide\u002Fexplorer","1.guide\u002F12.explorer","i-lucide-book-open",{"title":57,"icon":58,"path":59,"stem":60,"children":61},"Providers","i-lucide-library","\u002Fproviders","2.providers",[62,65,70,74,78,82,86,90,94,98,102,106,110,114,118,122,126,130,134,138,142,146,150,154],{"title":63,"path":59,"stem":64},"Overview","2.providers\u002F0.index",{"title":66,"path":67,"stem":68,"lead":69},"Chains","\u002Fproviders\u002Fchains","2.providers\u002F0.chains","Matrix",{"title":71,"path":72,"stem":73},"Etherscan","\u002Fproviders\u002Fetherscan","2.providers\u002F01.etherscan",{"title":75,"path":76,"stem":77},"Blockscout","\u002Fproviders\u002Fblockscout","2.providers\u002F02.blockscout",{"title":79,"path":80,"stem":81},"Blockchair","\u002Fproviders\u002Fblockchair","2.providers\u002F03.blockchair",{"title":83,"path":84,"stem":85},"Mempool","\u002Fproviders\u002Fmempool","2.providers\u002F04.mempool",{"title":87,"path":88,"stem":89},"Blockstream","\u002Fproviders\u002Fblockstream","2.providers\u002F05.blockstream",{"title":91,"path":92,"stem":93},"Solscan","\u002Fproviders\u002Fsolscan","2.providers\u002F06.solscan",{"title":95,"path":96,"stem":97},"Helius","\u002Fproviders\u002Fhelius","2.providers\u002F07.helius",{"title":99,"path":100,"stem":101},"TONAPI","\u002Fproviders\u002Fton","2.providers\u002F08.ton",{"title":103,"path":104,"stem":105},"TRONSCAN","\u002Fproviders\u002Ftronscan","2.providers\u002F09.tronscan",{"title":107,"path":108,"stem":109},"Aptos Explorer","\u002Fproviders\u002Faptos","2.providers\u002F10.aptos",{"title":111,"path":112,"stem":113},"Blockberry","\u002Fproviders\u002Fblockberry","2.providers\u002F11.blockberry",{"title":115,"path":116,"stem":117},"Koios","\u002Fproviders\u002Fkoios","2.providers\u002F12.koios",{"title":119,"path":120,"stem":121},"arweave.net","\u002Fproviders\u002Farweave","2.providers\u002F13.arweave",{"title":123,"path":124,"stem":125},"Turbo","\u002Fproviders\u002Fturbo","2.providers\u002F14.turbo",{"title":127,"path":128,"stem":129},"ar.io","\u002Fproviders\u002Fario","2.providers\u002F15.ario",{"title":131,"path":132,"stem":133},"dcrdata","\u002Fproviders\u002Fdcrdata","2.providers\u002F16.dcrdata",{"title":135,"path":136,"stem":137},"Horizon","\u002Fproviders\u002Fhorizon","2.providers\u002F17.horizon",{"title":139,"path":140,"stem":141},"WhatsOnChain","\u002Fproviders\u002Fwhatsonchain","2.providers\u002F18.whatsonchain",{"title":143,"path":144,"stem":145},"Blockbook","\u002Fproviders\u002Fblockbook","2.providers\u002F19.blockbook",{"title":147,"path":148,"stem":149},"Haskoin","\u002Fproviders\u002Fhaskoin","2.providers\u002F20.haskoin",{"title":151,"path":152,"stem":153},"eCash Explorer","\u002Fproviders\u002Fecash","2.providers\u002F21.ecash",{"title":155,"path":156,"stem":157},"XRPSCAN","\u002Fproviders\u002Fxrpscan","2.providers\u002F22.xrpscan",{"id":159,"title":155,"body":160,"description":533,"extension":534,"links":535,"meta":536,"navigation":210,"path":156,"seo":538,"stem":157,"__hash__":539},"docs\u002F2.providers\u002F22.xrpscan.md",{"type":161,"value":162,"toc":527},"minimark",[163,167,172,286,298,325,329,399,402,406,514,518,523],[164,165],"provider-facts",{"provider":166},"xrpscan",[168,169,171],"h2",{"id":170},"address-it","Address it",[173,174,179],"pre",{"className":175,"code":176,"language":177,"meta":178,"style":178},"language-ts shiki shiki-themes explorers explorers explorers","import { XRPScan } from \"@agntn\u002Fexplorers\u002Fproviders\u002Fxrpscan\";\n\nconst xrp = new XRPScan(); \u002F\u002F or create(\"xrpscan\")\nawait xrp.getBalance(\"rDsbeomae4FXwgQTJp9Rs64Qg9vDiTCdBv\", \"xrpl\");\nawait xrp.getTxDetail(\"B01A7E11B84A2539A3DCCF65C95514F4C3A87E61BAF7DBDED9F1CDEE06D5A39C\", \"xrpl\");\n","ts","",[180,181,182,205,212,238,265],"code",{"__ignoreMap":178},[183,184,187,191,195,198,202],"span",{"class":185,"line":186},"line",1,[183,188,190],{"class":189},"skH_V","import",[183,192,194],{"class":193},"s38Sx"," { XRPScan } ",[183,196,197],{"class":189},"from",[183,199,201],{"class":200},"shU9J"," \"@agntn\u002Fexplorers\u002Fproviders\u002Fxrpscan\"",[183,203,204],{"class":193},";\n",[183,206,208],{"class":185,"line":207},2,[183,209,211],{"emptyLinePlaceholder":210},true,"\n",[183,213,215,218,221,224,227,231,234],{"class":185,"line":214},3,[183,216,217],{"class":189},"const",[183,219,220],{"class":193}," xrp ",[183,222,223],{"class":189},"=",[183,225,226],{"class":189}," new",[183,228,230],{"class":229},"sK71F"," XRPScan",[183,232,233],{"class":193},"(); ",[183,235,237],{"class":236},"scIB-","\u002F\u002F or create(\"xrpscan\")\n",[183,239,241,244,247,250,253,256,259,262],{"class":185,"line":240},4,[183,242,243],{"class":189},"await",[183,245,246],{"class":193}," xrp.",[183,248,249],{"class":229},"getBalance",[183,251,252],{"class":193},"(",[183,254,255],{"class":200},"\"rDsbeomae4FXwgQTJp9Rs64Qg9vDiTCdBv\"",[183,257,258],{"class":193},", ",[183,260,261],{"class":200},"\"xrpl\"",[183,263,264],{"class":193},");\n",[183,266,268,270,272,275,277,280,282,284],{"class":185,"line":267},5,[183,269,243],{"class":189},[183,271,246],{"class":193},[183,273,274],{"class":229},"getTxDetail",[183,276,252],{"class":193},[183,278,279],{"class":200},"\"B01A7E11B84A2539A3DCCF65C95514F4C3A87E61BAF7DBDED9F1CDEE06D5A39C\"",[183,281,258],{"class":193},[183,283,261],{"class":200},[183,285,264],{"class":193},[287,288,289,290,293,294,297],"p",{},"One chain, no key. ",[180,291,292],{},"baseUrl"," is the API root, ",[180,295,296],{},"https:\u002F\u002Fapi.xrpscan.com\u002Fapi\u002Fv1"," by default. The free tier allows 10,000 requests a day, plenty for checking whether a prize is still sitting there.",[287,299,300,301,304,305,308,309,312,313,316,317,320,321,324],{},"The chain key is ",[180,302,303],{},"xrpl",", and ",[180,306,307],{},"xrp"," or ",[180,310,311],{},"ripple"," get you there too. An ",[180,314,315],{},"r..."," address with nothing else says XRP Ledger on its own, so ",[180,318,319],{},"explorers rDsbeomae4FXwgQTJp9Rs64Qg9vDiTCdBv"," just works. Any other chain is an ",[180,322,323],{},"UnsupportedChainError",".",[168,326,328],{"id":327},"what-it-reads","What it reads",[330,331,332,345],"table",{},[333,334,335],"thead",{},[336,337,338,342],"tr",{},[339,340,341],"th",{},"Operation",[339,343,344],{},"Route",[346,347,348,359,369,379,389],"tbody",{},[336,349,350,354],{},[351,352,353],"td",{},"balance",[351,355,356],{},[180,357,358],{},"\u002Faccount\u002F{address}",[336,360,361,364],{},[351,362,363],{},"token holdings",[351,365,366],{},[180,367,368],{},"\u002Faccount\u002F{address}\u002Fassets",[336,370,371,374],{},[351,372,373],{},"history",[351,375,376],{},[180,377,378],{},"\u002Faccount\u002F{address}\u002Ftransactions?marker=",[336,380,381,384],{},[351,382,383],{},"one transaction",[351,385,386],{},[180,387,388],{},"\u002Ftx\u002F{hash}",[336,390,391,394],{},[351,392,393],{},"block",[351,395,396],{},[180,397,398],{},"\u002Fledger\u002F{index}",[287,400,401],{},"No token transfers and no gas. XRPSCAN has no fee endpoint, and its history has no filter by token. Scanning pages to fake one? Not today.",[168,403,405],{"id":404},"gotchas","Gotchas",[407,408,409,413,424,442,456,467,470,481,496,503],"ul",{},[410,411,412],"li",{},"Drops, six decimals. One XRP is a million of them.",[410,414,415,416,419,420,423],{},"A partial payment counts what arrived, not what it asked for. Spam payments ask for 10^17 drops and deliver a few thousand. The row takes ",[180,417,418],{},"delivered_amount",", so a dusting doesn't look like a fortune. A partial payment from before 2014 has no such field and reads as zero. Its ",[180,421,422],{},"Amount"," was only ever a ceiling.",[410,425,426,427,430,431,434,435,438,439,324],{},"Only a Payment carries ",[180,428,429],{},"value",". Offers, trust lines and everything else are rows with ",[180,432,433],{},"value: \"0\""," and ",[180,436,437],{},"to: null"," when there's no ",[180,440,441],{},"Destination",[410,443,444,445,448,449,452,453,324],{},"An issued token is ",[180,446,447],{},"CURRENCY.ISSUER",", the way XRPSCAN spells its token pages. A 40-hex code reads as text when it is text, so ",[180,450,451],{},"524C5553…"," shows up as ",[180,454,455],{},"RLUSD",[410,457,458,459,462,463,466],{},"Issued amounts are decimal floats on the ledger, not integers. Each one gets the decimals its own value needs. ",[180,460,461],{},"0.01"," USD is ",[180,464,465],{},"1"," with 2 decimals, a 16-digit RLUSD balance gets 16.",[410,468,469],{},"A single transaction prints issued values as JSON numbers, while history prints text. XRPSCAN already did that conversion on its side, so the 16th digit is whatever its JavaScript kept.",[410,471,472,473,476,477,480],{},"A rejected transaction (",[180,474,475],{},"tec…",") still sits in a ledger and still pays its fee. It reads as ",[180,478,479],{},"failed"," with no token transfers.",[410,482,483,484,487,488,491,492,495],{},"History is newest first, 25 rows a page, and XRPSCAN ignores any page size you ask for. ",[180,485,486],{},"limit"," up to 100, and ",[180,489,490],{},"page * limit"," up to 250, which is ten markers deep. ",[180,493,494],{},"sort: \"asc\""," and ledger bounds throw.",[410,497,498,499,502],{},"An account the ledger never funded doesn't exist there. That's a ",[180,500,501],{},"NotFoundError",", not a zero.",[410,504,505,506,509,510,513],{},"A ledger is a block with an empty ",[180,507,508],{},"miner"," and gas fields of ",[180,511,512],{},"\"0\"",". A ledger past the tip comes back as a 500 from XRPSCAN, sadly not a 404.",[168,515,517],{"id":516},"where-it-lives","Where it lives",[287,519,520,324],{},[180,521,522],{},"src\u002Fproviders\u002Fxrpscan.ts",[524,525,526],"style",{},"html pre.shiki code .skH_V, html code.shiki .skH_V{--shiki-light:var(--shiki-token-keyword);--shiki-default:var(--shiki-token-keyword);--shiki-dark:var(--shiki-token-keyword)}html pre.shiki code .s38Sx, html code.shiki .s38Sx{--shiki-light:var(--ui-text-highlighted);--shiki-default:var(--ui-text-highlighted);--shiki-dark:var(--ui-text-highlighted)}html pre.shiki code .shU9J, html code.shiki .shU9J{--shiki-light:var(--shiki-token-string);--shiki-default:var(--shiki-token-string);--shiki-dark:var(--shiki-token-string)}html pre.shiki code .sK71F, html code.shiki .sK71F{--shiki-light:var(--shiki-token-function);--shiki-default:var(--shiki-token-function);--shiki-dark:var(--shiki-token-function)}html pre.shiki code .scIB-, html code.shiki .scIB-{--shiki-light:var(--shiki-token-comment);--shiki-default:var(--shiki-token-comment);--shiki-dark:var(--shiki-token-comment)}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":178,"searchDepth":207,"depth":207,"links":528},[529,530,531,532],{"id":170,"depth":207,"text":171},{"id":327,"depth":207,"text":328},{"id":404,"depth":207,"text":405},{"id":516,"depth":207,"text":517},"The XRP Ledger through XRPSCAN. Balances in drops, history, trust line tokens and ledgers as blocks. No key, ten thousand requests a day.","md",null,{"icon":537},"i-lucide-waves",{"title":155,"description":533},"iSnIShlJ9A7nfDc2JeXMWgKfZw7k0fNr0hzEeJiP4f8",[541,535],{"title":151,"path":152,"stem":153,"description":542,"children":-1},"eCash history and blocks from explorer.e.cash, the Bitcoin ABC explorer. One request a page, no key, and Blockchair gets to rest.",1792860729169]