{"openapi":"3.0.3","info":{"description":"APIs for Bitcoin, Inscriptions, Runes, BRC20, and Rare Sats.<br/> <h2>Endpoints</h2><ul><li>Mainnet: https://api.secretkeylabs.io</li><li>Signet: https://api-signet.secretkeylabs.io</li><li>Testnet4: https://api-testnet4.secretkeylabs.io</li></ul>","title":"SecretKeyLabs API","version":"1.0.0"},"components":{"securitySchemes":{"apiKey":{"type":"apiKey","name":"x-api-key","in":"header"}},"schemas":{}},"paths":{"/v1/bitcoin/mempool/fee-estimates":{"get":{"tags":["Bitcoin"],"description":"Retrieve estimated fee rates to use for transactions to be confirmed within a specific range of blocks.","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"currentBlockHeight":{"type":"number"},"estimates":{"type":"object","properties":{"nextBlock":{"type":"number"},"in2Blocks":{"type":"number"},"in3Blocks":{"type":"number"}},"required":["nextBlock","in2Blocks","in3Blocks"]}},"required":["currentBlockHeight","estimates"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/bitcoin/mempool/stats":{"get":{"tags":["Bitcoin"],"description":"Retrieve stats for the projected blocks from the transactions in the mempool.","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"currentBlockHeight":{"type":"number"},"projectedBlocks":{"type":"array","items":{"type":"object","properties":{"height":{"type":"number"},"weight":{"type":"number"},"vbytes":{"type":"number"},"txnCount":{"type":"number"},"totalFeesSats":{"type":"number"},"feeRates":{"type":"object","properties":{"min":{"type":"number"},"max":{"type":"number"},"avg":{"type":"number"},"median":{"type":"number"},"p75":{"type":"number"},"p95":{"type":"number"}},"required":["min","max","avg","median","p75","p95"]}},"required":["height","weight","vbytes","txnCount","totalFeesSats","feeRates"]}}},"required":["currentBlockHeight","projectedBlocks"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/bitcoin/tx/{txid}":{"get":{"tags":["Bitcoin"],"description":"Retrieve stats for the transaction. Works for confirmed and unconfirmed transactions.","parameters":[{"schema":{"minimum":0,"multipleOf":25,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"minimum":25,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"format":"regex","pattern":"^[a-fA-F0-9]{64}$","type":"string"},"example":"6c5ffa32f6942bb82bf36239fb8a6d233c4da6f91bde81869accef2ef6be674e","in":"path","name":"txid","required":true,"description":"Transaction id"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"height":{"type":"number"},"confirmations":{"type":"number"},"inputs":{"type":"array","items":{"type":"object","properties":{"vin":{"type":"number"},"prevTxid":{"type":"string"},"prevVout":{"type":"number"},"value":{"type":"number"},"address":{"type":"string"},"script":{"type":"string"},"isCoinbase":{"type":"boolean"}},"required":["vin","value","address"]}},"outputs":{"type":"array","items":{"type":"object","properties":{"vout":{"type":"number"},"value":{"type":"number"},"address":{"type":"string"},"script":{"type":"string"}},"required":["vout","value","address"]}}},"required":["confirmations","inputs","outputs"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/bitcoin/tx/{txid}/hex":{"get":{"tags":["Bitcoin"],"description":"Retrieve transaction hex. Supports confirmed and unconfirmed transactions.","parameters":[{"schema":{"format":"regex","pattern":"^[a-fA-F0-9]{64}$","type":"string"},"example":"6c5ffa32f6942bb82bf36239fb8a6d233c4da6f91bde81869accef2ef6be674e","in":"path","name":"txid","required":true,"description":"Transaction id"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"string"}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/rpc/bitcoin/tx":{"post":{"tags":["Bitcoin RPC"],"description":"Post transaction.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"tx":{"description":"Raw transaction hex to be posted to the Bitcoin network.","type":"string"}},"required":["tx"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"description":"The transaction ID of the posted transaction.","type":"string"}},"required":["result"]}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"code":{"type":"number"}},"required":["message","code"]}},"required":["error"]}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/rpc/bitcoin/rawtx":{"post":{"tags":["Bitcoin RPC"],"description":"Retrieve raw transaction details by txid.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"txid":{"description":"Transaction id","format":"regex","pattern":"^[a-fA-F0-9]{64}$","type":"string","example":"6c5ffa32f6942bb82bf36239fb8a6d233c4da6f91bde81869accef2ef6be674e"}},"required":["txid"]}}},"required":true},"responses":{"200":{"description":"Default Response"}}}},"/v1/rpc/bitcoin/testmempoolaccept":{"post":{"tags":["Bitcoin RPC"],"description":"Forward to RPC using testmempoolaccept method.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"txList":{"type":"array","items":{"description":"Raw transaction hex to be checked with testmempoolaccept method.","type":"string"}},"maxFeeRate":{"default":0.1,"type":"number","example":0.1}},"required":["txList"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"txid":{"type":"string"},"wtxid":{"type":"string"},"allowed":{"type":"boolean"},"vsize":{"type":"number"},"fees":{"type":"object","properties":{"base":{"type":"number"}},"required":["base"]},"rejectReason":{"type":"string"},"packageError":{"type":"string"}},"required":["txid","wtxid"]}}},"required":["result"]}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"message":{"type":"string"},"code":{"type":"number"}},"required":["message","code"]}},"required":["error"]}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/bitcoin/address/{address}/utxo":{"get":{"tags":["Bitcoin"],"description":"Retrieve confirmed UTXOs ignoring mempool completely. This can be useful for applications that\n             need to rely on confirmed UTXOs only, eg constructing RBF txs as well.\n             To query mempool aware endpoint use <code> /v2/bitcoin/address/:address/utxo</code>.\n              <br>\n             Iterate using offset if hasMore is true.","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":60,"minimum":25,"maximum":5000,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true}],"responses":{"200":{"description":"Paginated Utxo list","content":{"application/json":{"schema":{"description":"Paginated Utxo list","type":"object","properties":{"hasMore":{"type":"boolean"},"items":{"type":"array","items":{"type":"object","properties":{"txid":{"type":"string"},"vout":{"type":"number"},"value":{"type":"number"},"status":{"type":"object","properties":{"confirmed":{"type":"boolean"},"blockHeight":{"type":"number"},"blockHash":{"type":"string"},"blockTime":{"type":"number"}},"required":["confirmed","blockHeight","blockHash","blockTime"]}},"required":["txid","vout","value","status"]}}},"required":["hasMore","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/bitcoin/address/{address}/balance":{"get":{"tags":["Bitcoin"],"description":"Get both confirmed and unconfirmed BTC balances. ","parameters":[{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true}],"responses":{"200":{"description":"Bitcoin balance for an address","content":{"application/json":{"schema":{"description":"Bitcoin balance for an address","type":"object","properties":{"address":{"type":"string"},"confirmed":{"type":"object","properties":{"fundedTxoCount":{"type":"number"},"fundedTxoSum":{"type":"number"},"spentTxoCount":{"type":"number"},"spentTxoSum":{"type":"number"},"txCount":{"type":"number"}},"required":["fundedTxoCount","fundedTxoSum","spentTxoCount","spentTxoSum","txCount"]},"unconfirmed":{"type":"object","properties":{"fundedTxoCount":{"type":"number"},"fundedTxoSum":{"type":"number"},"spentTxoCount":{"type":"number"},"spentTxoSum":{"type":"number"},"txCount":{"type":"number"}},"required":["fundedTxoCount","fundedTxoSum","spentTxoCount","spentTxoSum","txCount"]}},"required":["address","confirmed","unconfirmed"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/bitcoin/address/{address}/txs/unconfirmed":{"get":{"tags":["Bitcoin"],"description":"Fetch unconfirmed transactions for a given address. ","parameters":[{"schema":{"default":25,"minimum":1,"maximum":10000,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true}],"responses":{"200":{"description":"List of unconfirmed txs","content":{"application/json":{"schema":{"description":"List of unconfirmed txs","type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"txid":{"type":"string"},"version":{"type":"number"},"locktime":{"type":"number"},"vin":{"type":"array","items":{"type":"object","properties":{"txid":{"type":"string"},"vout":{"type":"number"},"prevout":{"type":"object","properties":{"scriptpubkey":{"type":"string"},"scriptpubkeyAsm":{"type":"string"},"scriptpubkeyType":{"type":"string"},"scriptpubkeyAddress":{"type":"string"},"value":{"type":"number"}},"required":["value"]},"scriptsig":{"type":"string"},"scriptsigAsm":{"type":"string"},"witness":{"type":"array","items":{"type":"string"}},"isCoinbase":{"type":"boolean"},"sequence":{"type":"number"}},"required":["txid","vout","prevout","witness","isCoinbase"]}},"vout":{"type":"array","items":{"type":"object","properties":{"scriptpubkey":{"type":"string"},"scriptpubkeyAsm":{"type":"string"},"scriptpubkeyType":{"type":"string"},"scriptpubkeyAddress":{"type":"string"},"value":{"type":"number"}},"required":["value"]}},"size":{"type":"number"},"weight":{"type":"number"},"sigops":{"type":"number"},"fee":{"type":"number"},"status":{"type":"object","properties":{"confirmed":{"type":"boolean"}},"required":["confirmed"]}},"required":["txid","version","locktime","vin","vout","size","weight","sigops","fee","status"]}}},"required":["items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/bitcoin/price":{"get":{"tags":["Bitcoin"],"description":"Fetch latest bitcoin price.","responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"currency":{"type":"string"},"rate":{"type":"number"}},"required":["currency","rate"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/bitcoin/address/{address}/summary":{"get":{"tags":["Bitcoin"],"description":"Get address summary including paginated transaction IDs and balance information.\n          This endpoint is mempool-aware and includes both confirmed and unconfirmed data.\n          <br><br>\n          <b>Response fields:</b>\n          <ul>\n            <li><code>txids</code> - Paginated list of transaction IDs for this address, ordered by block height\n            descending.\n            When there is mempool activity, unconfirmed transactions appear first.</li>\n            <li><code>confirmedBalance</code> - Current confirmed balance in satoshis, ignoring mempool activity.</li>\n            <li><code>unconfirmedBalance</code> - Net unconfirmed balance change (received - sent) in satoshis.\n            It can be negative as it only considers mempool, eg. when spending more than receiving.</li>\n            <li><code>offset</code> - Current pagination offset.</li>\n            <li><code>limit</code> - Current pagination limit.</li>\n          </ul>\n          <br>\n          ","parameters":[{"schema":{"default":0,"minimum":0,"multipleOf":25,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":25,"minimum":25,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true}],"responses":{"200":{"description":"Address summary with txids and balance","content":{"application/json":{"schema":{"description":"Address summary with txids and balance","type":"object","properties":{"txids":{"type":"array","items":{"type":"string"}},"confirmedBalance":{"type":"string"},"unconfirmedBalance":{"type":"string"},"offset":{"type":"number"},"limit":{"type":"number"}},"required":["txids","confirmedBalance","unconfirmedBalance","offset","limit"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/address/{address}/utxo":{"get":{"tags":["Ordinals"],"description":"Get detailed Ordinals info (inscriptions, rare sats, Runes) for all confirmed UTXOs.","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":60,"minimum":25,"maximum":60,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true}],"responses":{"200":{"description":"Ordinal information for all utxos belonging to the address","content":{"application/json":{"schema":{"description":"Ordinal information for all utxos belonging to the address","type":"object","properties":{"limit":{"type":"number"},"offset":{"type":"number"},"total":{"type":"number"},"rareSatsVersion":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"txid":{"type":"string"},"vout":{"type":"number"},"value":{"type":"number"},"blockHeight":{"type":"number"},"satRanges":{"type":"array","items":{"type":"object","properties":{"range":{"type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start","end"]},"offset":{"type":"number"},"sattributes":{"type":"array","items":{"type":"string"},"example":["ALPHA","BLOCK78","FIRST_TRANSACTION","PIZZA","VINTAGE","BLACK_UNCOMMON","BLACK_RARE","BLACK_EPIC","BLACK_LEGENDARY","BLOCK9","BLOCK9_450","BLOCK286","JPEG","LEGACY","OMEGA","FIBONACCI","HITMAN","NAKAMOTO","SILK_ROAD","PALINDROME","1D_PALINDROME","2D_PALINDROME","3D_PALINDROME","PALIBLOCK_PALINDROME","PALINCEPTION","PURE_PALINCEPTION","PERFECT_PALINCEPTION","SEQUENCE_PALINDROME","NAME_PALINDROME","COMMON","UNCOMMON","RARE","EPIC","LEGENDARY","MYTHIC"]},"yearMined":{"type":"number"},"block":{"type":"number"},"inscriptions":{"type":"array","items":{"type":"object","properties":{"contentType":{"type":"string"},"id":{"type":"string"}},"required":["contentType","id"]}}},"required":["range","offset","sattributes","yearMined","block","inscriptions"]}},"runes":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"runeName":{"type":"string"},"amount":{"type":"string"},"divisibility":{"type":"number"},"symbol":{"type":"string"}},"required":["runeName","amount","divisibility","symbol"]}}},"required":["txid","vout","value","satRanges","runes"]}}},"required":["limit","offset","total","rareSatsVersion","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/address/{address}/runes":{"get":{"tags":["Ordinals","Runes"],"description":"Retrieve confirmed Runes balances held by a specific address.<br/><br/><b>Note:</b> The Api response includes limit & offset for future pagination extension, but\n at the moment query parameters are ignored and the response is always the full list.\nSo, limit equals the total items number, be sure to handle pagination as the limit can change once pagination\nis implemented.","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":60,"minimum":25,"maximum":60,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"type":"string"},"in":"query","name":"runeId","required":false},{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true}],"responses":{"200":{"description":"Rune balances for all utxos belonging to the address","content":{"application/json":{"schema":{"description":"Rune balances for all utxos belonging to the address","type":"object","properties":{"limit":{"type":"number"},"offset":{"type":"number"},"total":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"runeName":{"type":"string"},"amount":{"type":"string"},"divisibility":{"type":"number"},"symbol":{"type":"string"},"inscriptionId":{"type":"string"},"id":{"type":"string"}},"required":["runeName","amount","id"]}},"indexerHeight":{"type":"number"}},"required":["limit","offset","total","items","indexerHeight"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/address/{address}/brc20":{"get":{"tags":["Ordinals"],"description":"Fetch confirmed BRC-20 balances belonging to an address.<br/><br/><b>Note:</b> The Api response includes limit & offset for future pagination extension, but\n at the moment query parameters are ignored and the response is always the full list.\nSo, limit equals the total items number, be sure to handle pagination as the limit can change once pagination\nis implemented.","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":60,"minimum":25,"maximum":60,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"type":"string"},"in":"query","name":"ticker","required":false},{"schema":{"type":"boolean"},"in":"query","name":"includePricing","required":false},{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true}],"responses":{"200":{"description":"BRC20 balances for all utxos belonging to the address","content":{"application/json":{"schema":{"description":"BRC20 balances for all utxos belonging to the address","type":"object","properties":{"limit":{"type":"number"},"offset":{"type":"number"},"total":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"ticker":{"type":"string"},"overallBalance":{"type":"string"},"transferableBalance":{"type":"string"},"availableBalance":{"type":"string"},"prices":{"type":"object","properties":{"floorPrice":{"type":"object","allOf":[{"type":"object","properties":{"marketplace":{"type":"string"},"percentageChange24h":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange24h"]},{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}]},"lastSalePrice":{"type":"object","allOf":[{"type":"object","properties":{"marketplace":{"type":"string"}}},{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}]}},"required":["floorPrice","lastSalePrice"]},"volume24h":{"type":"object","allOf":[{"type":"object","properties":{"percentageChange":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange"]},{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}]}},"required":["ticker","overallBalance","transferableBalance","availableBalance"]}}},"required":["limit","offset","total","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/address/{address}/brc20/unspent-transfers":{"get":{"tags":["Ordinals"],"description":"Retrieve unspent BRC-20 transfer inscriptions for an address.","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":60,"minimum":25,"maximum":60,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true}],"responses":{"200":{"description":"BRC20 unspent transfers for the address","content":{"application/json":{"schema":{"description":"BRC20 unspent transfers for the address","type":"object","properties":{"limit":{"type":"number"},"offset":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"ticker":{"type":"string"},"amount":{"type":"string"},"blockHeight":{"type":"number"},"blockTime":{"type":"string"},"txid":{"type":"string"},"inscriptionId":{"type":"string"},"inscriptionNumber":{"type":"number"},"satpoint":{"type":"string"}},"required":["ticker","amount","blockHeight","blockTime","txid","inscriptionId","inscriptionNumber","satpoint"]}}},"required":["limit","offset","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/address/{address}/brc20/{ticker}":{"get":{"tags":["Ordinals"],"description":"Retrieve transaction history for a specific BRC20 token for a specific address.","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":60,"minimum":25,"maximum":60,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true},{"schema":{"type":"string"},"in":"path","name":"ticker","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"transactions":{"type":"array","items":{"type":"object","properties":{"txid":{"type":"string"},"blockHeight":{"type":"number"},"blockTime":{"type":"number"},"ownActivity":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string"},"sent":{"type":"number"},"received":{"type":"number"},"outgoing":{"type":"number"},"incoming":{"type":"number"}},"required":["address","sent","received","outgoing","incoming"]}},"totalOut":{"type":"number"},"totalIn":{"type":"number"},"addressList":{"type":"object","properties":{"hasMore":{"type":"boolean"},"items":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string"},"type":{"type":"string"},"isInput":{"type":"boolean"},"isOutput":{"type":"boolean"}},"required":["type","isInput","isOutput"]}}},"required":["hasMore","items"]},"runes":{"type":"object","properties":{"ownActivity":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"runeName":{"type":"string"},"divisibility":{"type":"number"},"symbol":{"type":"string"},"address":{"type":"string"},"sent":{"type":"string"},"received":{"type":"string"},"outgoing":{"type":"string"},"incoming":{"type":"string"}},"required":["runeId","runeName","divisibility","symbol","address","sent","received","outgoing","incoming"]}},"hasMore":{"type":"boolean"}},"required":["items","hasMore"]},"allActivity":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"runeName":{"type":"string"},"divisibility":{"type":"number"},"symbol":{"type":"string"},"outgoing":{"type":"string"},"incoming":{"type":"string"},"isMint":{"type":"boolean"},"isEtch":{"type":"boolean"},"isBurn":{"type":"boolean"}},"required":["runeId","runeName","divisibility","symbol","outgoing","incoming","isMint","isEtch","isBurn"]}},"hasMore":{"type":"boolean"}},"required":["items","hasMore"]}},"required":["ownActivity","allActivity"]},"inscriptions":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"inscriptionId":{"type":"string"},"contentType":{"type":"string"},"address":{"type":"string"},"sent":{"type":"boolean"},"received":{"type":"boolean"},"inscribed":{"type":"boolean"},"burned":{"type":"boolean"}},"required":["inscriptionId","address","sent","received","inscribed","burned"]}},"hasMore":{"type":"boolean"}},"required":["items","hasMore"]}},"required":["txid","blockHeight","blockTime","ownActivity","totalOut","totalIn","addressList","runes","inscriptions"]}},"offset":{"type":"number"},"limit":{"type":"number"}},"required":["transactions","offset","limit"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/address/{address}/inscriptions":{"get":{"tags":["Ordinals"],"description":"List all confirmed inscriptions an address owns.<br/><br/><b>Note:</b> The Api response includes limit & offset for future pagination extension, but\n at the moment query parameters are ignored and the response is always the full list.\nSo, limit equals the total items number, be sure to handle pagination as the limit can change once pagination\nis implemented.","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":60,"minimum":25,"maximum":60,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true}],"responses":{"200":{"description":"Inscriptions owned by the address","content":{"application/json":{"schema":{"description":"Inscriptions owned by the address","type":"object","properties":{"limit":{"type":"number"},"offset":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"offset":{"type":"number"},"parentIds":{"type":"array","items":{"type":"string"}},"delegateId":{"type":"string"},"blockHeight":{"type":"number"},"contentType":{"type":"string"},"contentLength":{"type":"number"},"effectiveContentType":{"type":"string"},"number":{"type":"number"},"sat":{"type":"number"},"charms":{"type":"array","items":{"type":"string"}},"currentOutput":{"type":"string"},"currentAddress":{"type":"string"},"lastTransferHeight":{"type":"number"},"lastTransferTimestamp":{"type":"number"},"value":{"type":"number"},"contentUrl":{"type":"string"},"renderUrl":{"type":"string"},"collectionId":{"type":"string"},"collectionName":{"type":"string"},"collectionFloorPrice":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}},"lastInscriptionSalePrice":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}},"name":{"type":"string"},"indexerHeight":{"type":"number"}},"required":["id","parentIds","blockHeight","contentLength","number","charms","currentOutput","currentAddress","lastTransferHeight","lastTransferTimestamp","value","contentUrl","renderUrl","collectionFloorPrice","lastInscriptionSalePrice"]}}},"required":["limit","offset","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/mempool/ordinals/address/{address}/inscriptions":{"get":{"tags":["Ordinals"],"description":"List all unconfirmed inscriptions an address owns.","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":60,"minimum":25,"maximum":60,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true}],"responses":{"200":{"description":"Inscriptions owned by the address","content":{"application/json":{"schema":{"description":"Inscriptions owned by the address","type":"object","properties":{"limit":{"type":"number"},"offset":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"offset":{"type":"number"},"parentIds":{"type":"array","items":{"type":"string"}},"delegateId":{"type":"string"},"contentType":{"type":"string"},"contentLength":{"type":"number"},"effectiveContentType":{"type":"string"},"number":{"type":"number"},"sat":{"type":"number"},"charms":{"type":"array","items":{"type":"string"}},"currentOutput":{"type":"string"},"currentAddress":{"type":"string"},"value":{"type":"number"},"contentUrl":{"type":"string"},"renderUrl":{"type":"string"},"collectionId":{"nullable":true,"type":"string"},"collectionName":{"nullable":true,"type":"string"},"collectionFloorPrice":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}},"lastInscriptionSalePrice":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["id","currentOutput","currentAddress","value","collectionFloorPrice","lastInscriptionSalePrice"]}}},"required":["limit","offset","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/address/{address}/collections":{"get":{"tags":["Ordinals"],"description":"Fetch inscriptions by collection for assets in a specific address.","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":60,"minimum":25,"maximum":60,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true}],"responses":{"200":{"description":"Collection info for inscriptions owned by the address","content":{"application/json":{"schema":{"description":"Collection info for inscriptions owned by the address","type":"object","properties":{"limit":{"type":"number"},"offset":{"type":"number"},"totalCollections":{"type":"number"},"totalInscriptions":{"type":"number"},"items":{"type":"array","items":{"type":"object","allOf":[{"type":"object","properties":{"id":{"type":"string"},"symbol":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"supply":{"type":"string"},"holderCount":{"type":"string"},"floorPrice":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"},"percentageChange24h":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange24h"]},"marketCap":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}},"volume24h":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"},"percentageChange":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange"]},"links":{"type":"object","properties":{"coinMarketCap":{"type":"string"},"telegram":{"type":"string"},"twitter":{"type":"string"},"discord":{"type":"string"},"website":{"type":"string"}}}},"required":["id","symbol","floorPrice","marketCap","links"]},{"type":"object","properties":{"total":{"type":"number"},"inscriptionSubset":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"number":{"type":"number"},"contentType":{"type":"string"}},"required":["id","number"]}}},"required":["total","inscriptionSubset"]}]}}},"required":["limit","offset","totalCollections","totalInscriptions","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/address/{address}/inscriptions/collection/{collectionId}":{"get":{"tags":["Ordinals"],"description":"Get inscriptions owned by an address in a specific collection. It includes current inscription location","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":25,"minimum":25,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true},{"schema":{"type":"string"},"examples":{"wzrds":{"value":"wzrds"},"bitcoin-puppets":{"value":"bitcoin-puppets"}},"in":"path","name":"collectionId","required":true}],"responses":{"200":{"description":"Inscriptions for a specific collection owned by an address","content":{"application/json":{"schema":{"description":"Inscriptions for a specific collection owned by an address","type":"object","properties":{"collectionId":{"type":"string"},"collectionName":{"type":"string"},"total":{"type":"number"},"offset":{"type":"number"},"limit":{"type":"number"},"inscriptions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"number":{"type":"number"},"sat":{"type":"number"},"contentType":{"type":"string"},"blockHeight":{"type":"number"},"charms":{"type":"array","items":{"type":"string"}},"currentLocation":{"type":"string"}},"required":["id","number","blockHeight","charms"]}}},"required":["collectionId","collectionName","total","offset","limit","inscriptions"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/address/{address}/void-protocol-inscriptions/collection/{collectionId}":{"get":{"tags":["Ordinals"],"description":"Get BRC20 & TAP void inscriptions(already spent/used) owned by an address\n           in a specific collection. A void inscription is a BRC-20 or TAP inscription that is no longer protocol\n            valid (transfer inscriptions become invalid after first transfer, other inscriptions like\n            mint become invalid right after inscribe).","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":25,"minimum":25,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true},{"schema":{"type":"string"},"example":"bitminer","in":"path","name":"collectionId","required":true}],"responses":{"200":{"description":"Inscriptions for a specific collection owned by an address","content":{"application/json":{"schema":{"description":"Inscriptions for a specific collection owned by an address","type":"object","properties":{"collectionId":{"type":"string"},"collectionName":{"type":"string"},"total":{"type":"number"},"offset":{"type":"number"},"limit":{"type":"number"},"inscriptions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"number":{"type":"number"},"sat":{"type":"number"},"contentType":{"type":"string"},"blockHeight":{"type":"number"},"charms":{"type":"array","items":{"type":"string"}},"currentLocation":{"type":"string"}},"required":["id","number","blockHeight","charms"]}}},"required":["collectionId","collectionName","total","offset","limit","inscriptions"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/runes/address/{address}/utxo":{"get":{"tags":["Runes"],"description":"Get Rune UTXOs for a specific address with pagination support.","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":60,"minimum":25,"maximum":60,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"type":"string"},"in":"query","name":"runeId","required":false},{"schema":{"default":false,"type":"boolean"},"in":"query","name":"includeUnconfirmed","required":false},{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"limit":{"type":"number"},"offset":{"type":"number"},"total":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"txid":{"type":"string"},"vout":{"type":"number"},"amount":{"type":"number"},"blockHeight":{"nullable":true,"type":"number"},"runes":{"type":"array","items":{"type":"object","properties":{"runeName":{"type":"string"},"runeId":{"type":"string"},"amount":{"type":"string"},"divisibility":{"type":"number"},"symbol":{"type":"string"}},"required":["runeName","runeId","amount","divisibility","symbol"]}}},"required":["txid","vout","amount","blockHeight","runes"]}}},"required":["limit","offset","total","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/global/ordinals/multi-address/activity":{"get":{"tags":["Ordinals","Bitcoin","Runes"],"description":"Retrieve efficient aggregated confirmed history (Bitcoin, Runes, Inscriptions) for multiple\n           addresses. <br>\n            Up to 3 addresses(comma separated) can be queried via <code>addresses</code> query param. ","parameters":[{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch,bc1px3kttdtg479vqfu0s2lhxvyuz2snhl8jct3f84k5heerl750n28scr9qt6","format":"BitcoinAddressList","type":"string"},"in":"query","name":"addresses","required":true},{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":60,"minimum":25,"maximum":60,"type":"number"},"in":"query","name":"limit","required":false}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"transactions":{"type":"array","items":{"type":"object","properties":{"txid":{"type":"string"},"blockHeight":{"type":"number"},"blockTime":{"type":"number"},"ownActivity":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string"},"sent":{"type":"number"},"received":{"type":"number"},"outgoing":{"type":"number"},"incoming":{"type":"number"}},"required":["address","sent","received","outgoing","incoming"]}},"totalOut":{"type":"number"},"totalIn":{"type":"number"},"addressList":{"type":"object","properties":{"hasMore":{"type":"boolean"},"items":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string"},"type":{"type":"string"},"isInput":{"type":"boolean"},"isOutput":{"type":"boolean"}},"required":["type","isInput","isOutput"]}}},"required":["hasMore","items"]},"runes":{"type":"object","properties":{"ownActivity":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"runeName":{"type":"string"},"divisibility":{"type":"number"},"symbol":{"type":"string"},"address":{"type":"string"},"sent":{"type":"string"},"received":{"type":"string"},"outgoing":{"type":"string"},"incoming":{"type":"string"}},"required":["runeId","runeName","divisibility","symbol","address","sent","received","outgoing","incoming"]}},"hasMore":{"type":"boolean"}},"required":["items","hasMore"]},"allActivity":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"runeName":{"type":"string"},"divisibility":{"type":"number"},"symbol":{"type":"string"},"outgoing":{"type":"string"},"incoming":{"type":"string"},"isMint":{"type":"boolean"},"isEtch":{"type":"boolean"},"isBurn":{"type":"boolean"}},"required":["runeId","runeName","divisibility","symbol","outgoing","incoming","isMint","isEtch","isBurn"]}},"hasMore":{"type":"boolean"}},"required":["items","hasMore"]}},"required":["ownActivity","allActivity"]},"inscriptions":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"inscriptionId":{"type":"string"},"contentType":{"type":"string"},"address":{"type":"string"},"sent":{"type":"boolean"},"received":{"type":"boolean"},"inscribed":{"type":"boolean"},"burned":{"type":"boolean"}},"required":["inscriptionId","address","sent","received","inscribed","burned"]}},"hasMore":{"type":"boolean"}},"required":["items","hasMore"]}},"required":["txid","blockHeight","blockTime","ownActivity","totalOut","totalIn","addressList","runes","inscriptions"]}},"offset":{"type":"number"},"limit":{"type":"number"}},"required":["transactions","offset","limit"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/global/ordinals/multi-address/activity/mempool":{"get":{"tags":["Ordinals","Bitcoin","Runes"],"description":"Retrieve efficient aggregated unconfirmed activity (Bitcoin, Runes, Inscriptions) for\n          multiple addresses. <br>\n            Up to 3 addresses(comma separated) can be queried via <code>addresses</code> query param. ","parameters":[{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch,bc1px3kttdtg479vqfu0s2lhxvyuz2snhl8jct3f84k5heerl750n28scr9qt6","format":"BitcoinAddressList","type":"string"},"in":"query","name":"addresses","required":true},{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":60,"minimum":25,"maximum":60,"type":"number"},"in":"query","name":"limit","required":false}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"transactions":{"type":"array","items":{"type":"object","properties":{"txid":{"type":"string"},"ownActivity":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string"},"sent":{"type":"number"},"received":{"type":"number"},"outgoing":{"type":"number"},"incoming":{"type":"number"}},"required":["address","sent","received","outgoing","incoming"]}},"totalOut":{"type":"number"},"totalIn":{"type":"number"},"addressList":{"type":"object","properties":{"hasMore":{"type":"boolean"},"items":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string"},"type":{"type":"string"},"isInput":{"type":"boolean"},"isOutput":{"type":"boolean"}},"required":["type","isInput","isOutput"]}}},"required":["hasMore","items"]},"runes":{"type":"object","properties":{"ownActivity":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"runeName":{"type":"string"},"divisibility":{"type":"number"},"symbol":{"type":"string"},"address":{"type":"string"},"sent":{"type":"string"},"received":{"type":"string"},"outgoing":{"type":"string"},"incoming":{"type":"string"}},"required":["runeId","runeName","divisibility","symbol","address","sent","received","outgoing","incoming"]}},"hasMore":{"type":"boolean"}},"required":["items","hasMore"]},"allActivity":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"runeName":{"type":"string"},"divisibility":{"type":"number"},"symbol":{"type":"string"},"outgoing":{"type":"string"},"incoming":{"type":"string"},"isMint":{"type":"boolean"},"isEtch":{"type":"boolean"},"isBurn":{"type":"boolean"}},"required":["runeId","runeName","divisibility","symbol","outgoing","incoming","isMint","isEtch","isBurn"]}},"hasMore":{"type":"boolean"}},"required":["items","hasMore"]}},"required":["ownActivity","allActivity"]},"inscriptions":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"inscriptionId":{"type":"string"},"contentType":{"type":"string"},"address":{"type":"string"},"sent":{"type":"boolean"},"received":{"type":"boolean"},"inscribed":{"type":"boolean"},"burned":{"type":"boolean"}},"required":["inscriptionId","address","sent","received","inscribed","burned"]}},"hasMore":{"type":"boolean"}},"required":["items","hasMore"]}},"required":["txid","ownActivity","totalOut","totalIn","addressList","runes","inscriptions"]}},"offset":{"type":"number"},"limit":{"type":"number"}},"required":["transactions","offset","limit"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/block/current":{"get":{"tags":["Bitcoin"],"description":"Get information about the current block","responses":{"200":{"description":"Block information","content":{"application/json":{"schema":{"description":"Block information","type":"object","properties":{"block":{"type":"object","properties":{"height":{"type":"number"},"hash":{"type":"string"},"previousHash":{"type":"string"},"timestamp":{"type":"string"}},"required":["height","hash"]}},"required":["block"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/block/height/{height}":{"get":{"tags":["Bitcoin"],"description":"Get information about a specific block by height","parameters":[{"schema":{"minimum":0,"type":"number"},"in":"path","name":"height","required":true}],"responses":{"200":{"description":"Block information","content":{"application/json":{"schema":{"description":"Block information","type":"object","properties":{"block":{"type":"object","properties":{"height":{"type":"number"},"hash":{"type":"string"},"previousHash":{"type":"string"},"timestamp":{"type":"string"}},"required":["height","hash"]}},"required":["block"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/block/runes/trades":{"get":{"tags":["Runes"],"description":"Get rune trade events from marketplace data.\n\n**Filtering Options:**\n- Filter by time range using `fromTimestamp`/`toTimestamp` (ISO 8601 format)\n- OR filter by block range using `fromBlockHeight`/`toBlockHeight`\n- Cannot use both timestamp and block height filters simultaneously\n\n**Pagination:**\n- Uses cursor-based pagination, returns full blocks of data with variable number of blocks per page depending how\nmany trades occurred in that period\n- Pass the `nextCursor` from the response as `cursor` to fetch the next page. Stop on items empty\nor when `nextCursor` is null.\n- Returns complete time periods (no partial results within a timestamp)\n\n**Examples:**\n- Time range: `/block/runes/trades?marketplace=magiceden&fromTimestamp=2024-12-01T00:00:00Z`\n- Block range: `/block/runes/trades?marketplace=magiceden&fromBlockHeight=870000&toBlockHeight=875000`\n- Filter by rune: `/block/runes/trades?marketplace=magiceden&runeId=840000:1`\n","parameters":[{"schema":{"type":"string"},"example":"magiceden","in":"query","name":"marketplace","required":false,"description":"Marketplace to query (defaults to magiceden)"},{"schema":{"type":"string"},"example":"840000:1","in":"query","name":"runeId","required":false,"description":"Filter trades by specific rune ID"},{"schema":{"type":"string"},"example":"2024-12-01T00:00:00Z","in":"query","name":"fromTimestamp","required":false,"description":"Start of time range (ISO 8601). Cannot be used with fromBlockHeight/toBlockHeight."},{"schema":{"type":"string"},"example":"2024-12-20T00:00:00Z","in":"query","name":"toTimestamp","required":false,"description":"End of time range (ISO 8601). Cannot be used with fromBlockHeight/toBlockHeight."},{"schema":{"type":"number"},"example":870000,"in":"query","name":"fromBlockHeight","required":false,"description":"Start of block range. Cannot be used with fromTimestamp/toTimestamp."},{"schema":{"type":"number"},"example":875000,"in":"query","name":"toBlockHeight","required":false,"description":"End of block range. Cannot be used with fromTimestamp/toTimestamp."},{"schema":{"type":"string"},"in":"query","name":"cursor","required":false,"description":"Pagination cursor from previous response"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"nextCursor":{"description":"Cursor for fetching the next page of results","nullable":true,"type":"string"},"marketplace":{"description":"Marketplace filter applied","type":"string","enum":["magiceden"]},"items":{"description":"Array of trade events","type":"array","items":{"type":"object","properties":{"timestamp":{"description":"ISO 8601 timestamp of the trade","type":"string","example":"2024-12-20T15:30:00.000Z"},"blockHeight":{"description":"Block height where the trade was confirmed","type":"number","example":875000},"source":{"description":"Marketplace source of the trade","anyOf":[{"type":"string","enum":["magiceden"]},{"type":"string","enum":["binance"]},{"type":"string","enum":["unisat"]}]},"sourceEntityIdentifier":{"description":"Marketplace-specific identifier for the trade","type":"string"},"assetIdentifier":{"description":"Rune ID being traded","type":"string","example":"840000:1"},"assetType":{"description":"Asset type (always 'runes' for this endpoint)","type":"string","enum":["runes"]},"amountTraded":{"description":"Amount of runes traded (as string for precision)","type":"string","example":"1000000"},"amountPaidSats":{"description":"Amount paid in satoshis","type":"string","example":"50000"},"sellerAddress":{"description":"Bitcoin address of the seller","type":"string"},"buyerAddress":{"description":"Bitcoin address of the buyer","type":"string"},"txid":{"description":"Transaction ID of the trade","type":"string"},"tradeType":{"description":"Type of trade executed","anyOf":[{"type":"string","enum":["protectedSweep"]},{"type":"string","enum":["unprotectedSweep"]},{"type":"string","enum":["sale"]},{"type":"string","enum":["acceptedOffer"]}]}},"required":["timestamp","blockHeight","source","sourceEntityIdentifier","assetIdentifier","assetType","amountTraded","amountPaidSats","sellerAddress","buyerAddress","txid","tradeType"]}}},"required":["nextCursor","marketplace","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/block/runes/transfers":{"get":{"tags":["Runes"],"description":"Get rune transfer events (inputs and outputs) from the blockchain.\n\n**Filtering Options:**\n- Filter by block range using `fromBlockHeight`/`toBlockHeight`\n- Filter by specific rune using `runeId`\n\n**Pagination:**\n- Uses cursor-based pagination that returns full blocks of data with variable number of blocks per page depending how\nmany transfers occurred in that period.\n- Pass the `nextCursor` from the response as `cursor` to fetch the next page. Stop on items empty\nor when `nextCursor` is null.\n- Returns complete blocks (no partial results within a block)\n\n**Response Structure:**\n- Each item represents a transaction with rune transfers\n- `inputs`: Rune amounts consumed by the transaction\n- `outputs`: Rune amounts created by the transaction\n\n**Examples:**\n- Filter by rune: `/block/runes/transfers?runeId=840000:1`\n- Block range: `/block/runes/transfers?fromBlockHeight=870000&toBlockHeight=875000`","parameters":[{"schema":{"type":"string"},"example":"840000:1","in":"query","name":"runeId","required":false,"description":"Filter transfers by specific rune ID"},{"schema":{"type":"number"},"example":870000,"in":"query","name":"fromBlockHeight","required":false,"description":"Start of block range (defaults to rune activation height)"},{"schema":{"type":"number"},"example":875000,"in":"query","name":"toBlockHeight","required":false,"description":"End of block range"},{"schema":{"type":"string"},"in":"query","name":"cursor","required":false,"description":"Pagination cursor from previous response"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"nextCursor":{"description":"Cursor for fetching the next page of results","nullable":true,"type":"string"},"items":{"description":"Array of transfer transactions","type":"array","items":{"type":"object","properties":{"blockHeight":{"description":"Block height of the transfer","type":"number","example":875000},"blockTime":{"description":"ISO 8601 timestamp of the block","type":"string","example":"2024-12-20T15:30:00.000Z"},"txid":{"description":"Transaction ID","type":"string"},"inputs":{"description":"Rune inputs consumed by this transaction","type":"array","items":{"type":"object","properties":{"runeId":{"description":"Rune ID","type":"string","example":"840000:1"},"address":{"description":"Bitcoin address (undefined for OP_RETURN or burns)","type":"string"},"amount":{"description":"Amount transferred (as string for precision)","type":"string","example":"1000000"},"index":{"description":"Input/output index in the transaction","type":"number","example":0}},"required":["runeId","amount","index"]}},"outputs":{"description":"Rune outputs created by this transaction","type":"array","items":{"type":"object","properties":{"runeId":{"description":"Rune ID","type":"string","example":"840000:1"},"address":{"description":"Bitcoin address (undefined for OP_RETURN or burns)","type":"string"},"amount":{"description":"Amount transferred (as string for precision)","type":"string","example":"1000000"},"index":{"description":"Input/output index in the transaction","type":"number","example":0}},"required":["runeId","amount","index"]}}},"required":["blockHeight","blockTime","txid","inputs","outputs"]}}},"required":["nextCursor","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/outputs":{"post":{"tags":["Ordinals"],"description":"Retrieve Ordinal details for a specific list of outputs (txid:vout).","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"outputs":{"minItems":1,"maxItems":20,"type":"array","items":{"format":"regex","pattern":"^[0-9a-fA-F]{64}:[0-9]*$","type":"string"},"example":["e79134080a83fe3e0e06ed6990c5a9b63b362313341745707a2bff7d788a1375:0"]}},"required":["outputs"]}}},"required":true},"responses":{"200":{"description":"List of ordinal detail outputs","content":{"application/json":{"schema":{"description":"List of ordinal detail outputs","type":"object","properties":{"total":{"type":"number"},"limit":{"type":"number"},"offset":{"type":"number"},"xVersion":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"txid":{"type":"string"},"address":{"type":"string"},"isSpent":{"type":"boolean"},"vout":{"type":"number"},"result":{"type":"object","properties":{"blockHeight":{"type":"number"},"value":{"type":"number"},"satRanges":{"type":"array","items":{"type":"object","properties":{"range":{"type":"object","properties":{"start":{"type":"string"},"end":{"type":"string"}},"required":["start","end"]},"offset":{"type":"number"},"sattributes":{"type":"array","items":{"type":"string"},"example":["ALPHA","BLOCK78","FIRST_TRANSACTION","PIZZA","VINTAGE","BLACK_UNCOMMON","BLACK_RARE","BLACK_EPIC","BLACK_LEGENDARY","BLOCK9","BLOCK9_450","BLOCK286","JPEG","LEGACY","OMEGA","FIBONACCI","HITMAN","NAKAMOTO","SILK_ROAD","PALINDROME","1D_PALINDROME","2D_PALINDROME","3D_PALINDROME","PALIBLOCK_PALINDROME","PALINCEPTION","PURE_PALINCEPTION","PERFECT_PALINCEPTION","SEQUENCE_PALINDROME","NAME_PALINDROME","COMMON","UNCOMMON","RARE","EPIC","LEGENDARY","MYTHIC"]},"yearMined":{"type":"number"},"block":{"type":"number"},"inscriptions":{"type":"array","items":{"type":"object","properties":{"contentType":{"type":"string"},"id":{"type":"string"}},"required":["contentType","id"]}}},"required":["range","offset","sattributes","yearMined","block","inscriptions"]}},"runes":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"runeName":{"type":"string"},"amount":{"type":"string"},"divisibility":{"type":"number"},"symbol":{"type":"string"}},"required":["runeName","amount","divisibility","symbol"]}}},"required":["satRanges","runes"]}},"required":["txid","isSpent","vout"]}}},"required":["total","limit","offset","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/runes/batch-info":{"get":{"tags":["Ordinals","Runes"],"description":"Get price info for a list of runes. The `runeIds`\n          query parameter should be a comma-separated list of Rune IDs.","parameters":[{"schema":{"minLength":1,"type":"string"},"example":"UNCOMMONGOODS,840000:3","in":"query","name":"runeIds","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"chain":{"type":"string"},"runeName":{"type":"string"},"symbol":{"type":"string"},"runeId":{"type":"string"},"spacedRuneName":{"type":"string"},"amount":{"type":"string"},"cap":{"type":"string"},"divisibility":{"nullable":true,"type":"string"},"premine":{"type":"string"},"turbo":{"type":"boolean"},"genesisBlock":{"type":"number"},"mint":{"type":"object","properties":{"offset":{"type":"object","properties":{"low":{"nullable":true,"type":"string"},"high":{"nullable":true,"type":"string"}}},"height":{"type":"object","properties":{"low":{"nullable":true,"type":"string"},"high":{"nullable":true,"type":"string"}}}},"required":["offset","height"]},"holders":{"type":"string"},"supply":{"type":"string"},"marketCap":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}},"prices":{"type":"object","properties":{"floorPrice":{"type":"object","properties":{"marketplace":{"type":"string"},"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"},"percentageChange24h":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange24h"]},"lastSalePrice":{"type":"object","properties":{"marketplace":{"type":"string"},"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["floorPrice","lastSalePrice"]},"volume24h":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"},"percentageChange":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange"]},"inscriptionId":{"type":"string"},"inscriptionRenderUrl":{"type":"string"}},"required":["chain","runeName","runeId","spacedRuneName","divisibility","turbo","genesisBlock","mint","marketCap","prices","volume24h"]}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/runes/{identifier}":{"get":{"tags":["Ordinals","Runes"],"description":"Get price info for a specific Rune by ID.","parameters":[{"schema":{"type":"string"},"in":"path","name":"identifier","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"chain":{"type":"string"},"runeName":{"type":"string"},"symbol":{"type":"string"},"runeId":{"type":"string"},"spacedRuneName":{"type":"string"},"amount":{"type":"string"},"cap":{"type":"string"},"divisibility":{"nullable":true,"type":"string"},"premine":{"type":"string"},"turbo":{"type":"boolean"},"genesisBlock":{"type":"number"},"mint":{"type":"object","properties":{"offset":{"type":"object","properties":{"low":{"nullable":true,"type":"string"},"high":{"nullable":true,"type":"string"}}},"height":{"type":"object","properties":{"low":{"nullable":true,"type":"string"},"high":{"nullable":true,"type":"string"}}}},"required":["offset","height"]},"holders":{"type":"string"},"supply":{"type":"string"},"marketCap":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}},"prices":{"type":"object","properties":{"floorPrice":{"type":"object","properties":{"marketplace":{"type":"string"},"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"},"percentageChange24h":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange24h"]},"lastSalePrice":{"type":"object","properties":{"marketplace":{"type":"string"},"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["floorPrice","lastSalePrice"]},"volume24h":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"},"percentageChange":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange"]},"inscriptionId":{"type":"string"},"inscriptionRenderUrl":{"type":"string"}},"required":["chain","runeName","runeId","spacedRuneName","divisibility","turbo","genesisBlock","mint","marketCap","prices","volume24h"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/inscriptions/batch":{"get":{"tags":["Ordinals"],"description":"Get inscription info with collection & pricing for a batch of Inscriptions by IDs. Collection and price fields will be undefined if not available. The `inscriptionIds` query parameter should be a comma-separated list of Inscription IDs.","parameters":[{"schema":{"minLength":1,"type":"string"},"example":"5f3dafcdd142358b332e0939d37174b76472735df8df29325901d2c7d18a152ci2","in":"query","name":"inscriptionIds","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"offset":{"type":"number"},"parentIds":{"type":"array","items":{"type":"string"}},"delegateId":{"type":"string"},"blockHeight":{"type":"number"},"contentType":{"type":"string"},"contentLength":{"type":"number"},"effectiveContentType":{"type":"string"},"number":{"type":"number"},"sat":{"type":"number"},"charms":{"type":"array","items":{"type":"string"}},"currentOutput":{"type":"string"},"currentAddress":{"type":"string"},"lastTransferHeight":{"type":"number"},"lastTransferTimestamp":{"type":"number"},"value":{"type":"number"},"contentUrl":{"type":"string"},"renderUrl":{"type":"string"},"collectionId":{"type":"string"},"collectionSymbol":{"type":"string"},"collectionName":{"type":"string"},"collectionFloorPrice":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}},"lastInscriptionSalePrice":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}},"name":{"type":"string"},"indexerHeight":{"type":"number"}},"required":["id","parentIds","blockHeight","contentLength","number","charms","currentOutput","currentAddress","lastTransferHeight","lastTransferTimestamp","value","contentUrl","renderUrl","collectionFloorPrice","lastInscriptionSalePrice"]}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/inscriptions/{inscriptionId}":{"get":{"tags":["Ordinals"],"description":"Get inscription info with collection & pricing. Collection and price fields will be undefined if not available.","parameters":[{"schema":{"type":"string"},"example":"5f3dafcdd142358b332e0939d37174b76472735df8df29325901d2c7d18a152ci2","in":"path","name":"inscriptionId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"offset":{"type":"number"},"parentIds":{"type":"array","items":{"type":"string"}},"delegateId":{"type":"string"},"blockHeight":{"type":"number"},"contentType":{"type":"string"},"contentLength":{"type":"number"},"effectiveContentType":{"type":"string"},"number":{"type":"number"},"sat":{"type":"number"},"charms":{"type":"array","items":{"type":"string"}},"currentOutput":{"type":"string"},"currentAddress":{"type":"string"},"lastTransferHeight":{"type":"number"},"lastTransferTimestamp":{"type":"number"},"value":{"type":"number"},"contentUrl":{"type":"string"},"renderUrl":{"type":"string"},"collectionId":{"type":"string"},"collectionSymbol":{"type":"string"},"collectionName":{"type":"string"},"collectionFloorPrice":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}},"lastInscriptionSalePrice":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}},"name":{"type":"string"},"indexerHeight":{"type":"number"}},"required":["id","parentIds","blockHeight","contentLength","number","charms","currentOutput","currentAddress","lastTransferHeight","lastTransferTimestamp","value","contentUrl","renderUrl","collectionFloorPrice","lastInscriptionSalePrice"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/inscriptions/{inscriptionId}/thumbnail":{"get":{"tags":["Ordinals"],"description":"Get inscription rendered thumbnail.","parameters":[{"schema":{"type":"string"},"example":"5f3dafcdd142358b332e0939d37174b76472735df8df29325901d2c7d18a152ci2","in":"path","name":"inscriptionId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"url":{"type":"string"}},"required":["url"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/inscriptions/{inscriptionId}/activity":{"get":{"tags":["Ordinals"],"description":"Get activity information for an inscription.","parameters":[{"schema":{"minimum":0,"multipleOf":25,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"minimum":25,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"type":"string"},"example":"5f3dafcdd142358b332e0939d37174b76472735df8df29325901d2c7d18a152ci2","in":"path","name":"inscriptionId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"offset":{"type":"number"},"limit":{"type":"number"},"total":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"blockHeight":{"type":"number"},"blockTime":{"type":"string"},"inscriptionId":{"type":"string"},"toAddress":{"type":"string"},"txid":{"type":"string"},"vout":{"type":"number"}},"required":["blockHeight","blockTime","inscriptionId","toAddress","txid","vout"]}}},"required":["offset","limit","total","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/brc20/ticker/{ticker}":{"get":{"tags":["Ordinals"],"description":"Get data and price info for a specific BRC20 by ticker.","parameters":[{"schema":{"minLength":1,"type":"string"},"example":["ordi","sats"],"in":"path","name":"ticker","required":true,"description":"Ticker of the BRC20 token (e.g. ordi, sats, etc.)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"ticker":{"type":"string"},"maxSupply":{"type":"string"},"mintLimit":{"type":"string"},"decimals":{"type":"number"},"txid":{"type":"string"},"inscriptionId":{"type":"string"},"blockHeight":{"type":"string"},"isSelfMint":{"type":"boolean"},"prices":{"type":"object","properties":{"floorPrice":{"type":"object","properties":{"marketplace":{"type":"string"},"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"},"percentageChange24h":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange24h"]},"lastSalePrice":{"type":"object","properties":{"marketplace":{"type":"string"},"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["floorPrice","lastSalePrice"]},"volume24h":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"},"percentageChange":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange"]}},"required":["ticker","maxSupply","decimals","txid","inscriptionId","blockHeight","isSelfMint","prices","volume24h"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/brc20/address/{address}/ticker/{ticker}/activity":{"get":{"tags":["Ordinals"],"description":"Get the transfer history for a and address and a specific BRC20 ticker.","parameters":[{"schema":{"minimum":0,"multipleOf":25,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"minimum":25,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"minLength":10,"format":"BitcoinAddress","type":"string"},"example":"bc1p59dqkq5we23urjnmn4sspy4da79hwql8tgaawu6adjk09jrle98q963cww","in":"path","name":"address","required":true},{"schema":{"minLength":1,"type":"string"},"examples":{"ordi":{"value":"ordi"},"sats":{"value":"sats"}},"in":"path","name":"ticker","required":true,"description":"Ticker of the BRC20 token (e.g. ordi, sats, etc.)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"limit":{"type":"number"},"offset":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"fromAddress":{"type":"string"},"toAddress":{"type":"string"},"txid":{"type":"string"},"amount":{"type":"string"},"blockHeight":{"type":"number"},"blockTime":{"type":"string"},"inscriptionId":{"type":"string"},"inscriptionNumber":{"type":"number"},"satpoint":{"type":"string"}},"required":["fromAddress","toAddress","txid","amount","blockHeight","blockTime","inscriptionId","inscriptionNumber","satpoint"]}}},"required":["limit","offset","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/tx/runes/decode":{"post":{"tags":["Ordinals","Runes"],"description":"Decode a runestone from transaction hex.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"tx":{"description":"Transaction hex string to decode","minLength":1,"type":"string"}},"required":["tx"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"Runestone":{"type":"object","properties":{"edicts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"amount":{"type":"number"},"output":{"type":"number"}},"required":["id","amount","output"]}},"etching":{"type":"object","properties":{"divisibility":{"type":"number"},"premine":{"type":"number"},"rune":{"type":"string"},"spacers":{"type":"number"},"symbol":{"type":"string"},"terms":{"type":"object","properties":{"amount":{"type":"number"},"cap":{"type":"number"},"height":{},"offset":{}}},"turbo":{"type":"boolean"}},"required":["spacers","turbo"]},"mint":{},"pointer":{}},"required":["edicts"]},"Cenotaph":{"type":"object","properties":{"etching":{"type":"number"},"flaws":{"type":"number"},"mint":{"type":"string"}},"required":["flaws"]}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/runes/{identifier}/holders":{"get":{"tags":["Ordinals","Runes"],"description":"Get holders for a specific Rune by identifier.","parameters":[{"schema":{"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"minimum":1,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"lastModifiedBlockGte","required":false},{"schema":{"type":"string"},"in":"path","name":"identifier","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"offset":{"type":"number"},"limit":{"type":"number"},"total":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string"},"amount":{"type":"string"},"lastUpdatedBlockHeight":{"type":"number"}},"required":["address","amount","lastUpdatedBlockHeight"]}}},"required":["offset","limit","total","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/runes/{runeId}/historical-floor-prices":{"get":{"tags":["Ordinals","Runes"],"description":"Get historical floor prices for Runes.","parameters":[{"schema":{"type":"string"},"in":"query","name":"fromTimestamp","required":true,"description":"ISO timestamp - no older than 1 year ago (e.g. 2024-08-29T03:09:35.236Z)"},{"schema":{"type":"string"},"in":"query","name":"toTimestamp","required":false,"description":"ISO timestamp - up until now / not in the future"},{"schema":{"type":"string"},"examples":{"UNCOMMONGOODS":{"value":"UNCOMMONGOODS"},"840000:3":{"value":"840000:3"}},"in":"path","name":"runeId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"timestamp":{"type":"string"},"floorPrice":{"type":"object","properties":{"valueInSats":{"type":"number"},"valueInUsd":{"type":"string"}}}},"required":["timestamp","floorPrice"]}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/runes/{identifier}/activity":{"get":{"tags":["Ordinals","Runes"],"description":"Get activity for a specific rune","parameters":[{"schema":{"default":0,"minimum":0,"multipleOf":25,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":25,"minimum":25,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"type":"string"},"examples":{"UNCOMMONGOODS":{"value":"UNCOMMONGOODS"},"840000:3":{"value":"840000:3"}},"in":"path","name":"identifier","required":true}],"responses":{"200":{"description":"Rune activity for a specific rune or address","content":{"application/json":{"schema":{"description":"Rune activity for a specific rune or address","type":"object","properties":{"offset":{"type":"number"},"limit":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"blockHeight":{"type":"number"},"blockTime":{"type":"string"},"txid":{"type":"string"},"index":{"nullable":true,"type":"number"},"type":{"type":"string"},"amount":{"type":"string"},"address":{"nullable":true,"type":"string"}},"required":["blockHeight","blockTime","txid","index","type","amount","address"]}}},"required":["offset","limit","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/address/{address}/runes/{identifier}/activity":{"get":{"tags":["Ordinals","Runes"],"description":"Get rune activity for a specific address and rune","parameters":[{"schema":{"default":0,"minimum":0,"multipleOf":25,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":25,"minimum":25,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"minimum":0,"type":"number"},"in":"query","name":"fromBlockHeight","required":false},{"schema":{"minimum":0,"type":"number"},"in":"query","name":"toBlockHeight","required":false},{"schema":{"type":"string"},"example":"bc1px3kttdtg479vqfu0s2lhxvyuz2snhl8jct3f84k5heerl750n28scr9qt6","in":"path","name":"address","required":true},{"schema":{"type":"string"},"examples":{"UNCOMMONGOODS":{"value":"UNCOMMONGOODS"},"840000:3":{"value":"840000:3"}},"in":"path","name":"identifier","required":true}],"responses":{"200":{"description":"Rune activity for a specific rune or address","content":{"application/json":{"schema":{"description":"Rune activity for a specific rune or address","type":"object","properties":{"offset":{"type":"number"},"limit":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"blockHeight":{"type":"number"},"blockTime":{"type":"string"},"txid":{"type":"string"},"index":{"nullable":true,"type":"number"},"type":{"type":"string"},"amount":{"type":"string"},"address":{"nullable":true,"type":"string"}},"required":["blockHeight","blockTime","txid","index","type","amount","address"]}}},"required":["offset","limit","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/runes":{"get":{"tags":["Ordinals","Runes"],"description":"Search for runes by name.","parameters":[{"schema":{"minLength":1,"type":"string"},"example":"UNCOMMON","in":"query","name":"startingWith","required":true,"description":"Search for runes starting with this string"},{"schema":{"enum":["runeName","etch"],"default":"runeName","type":"string"},"in":"query","name":"sortBy","required":false,"description":"* `runeName` - sort by rune name ascending\n* `etch` - sort by etching order block_height, rune_etch_index ascending"},{"schema":{"minimum":0,"default":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":5,"minimum":1,"maximum":10,"type":"number"},"in":"query","name":"limit","required":false}],"responses":{"200":{"description":"Search results for runes","content":{"application/json":{"schema":{"description":"Search results for runes","type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"runeName":{"type":"string"},"symbol":{"type":"string"},"divisibility":{"type":"number"}},"required":["runeId","runeName","symbol"]}},"offset":{"type":"number"},"limit":{"type":"number"}},"required":["items","offset","limit"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/brc20/batch/inscriptions":{"post":{"tags":["BRC20"],"description":"Check validity of BRC-20 transfer inscriptions in batch. Returns only valid unspent transfer\n          inscriptions (max 100 inscriptions per request).","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"inscriptionIds":{"minItems":1,"maxItems":100,"description":"Array of inscription IDs to check (max 100)","type":"array","items":{"type":"string"},"example":["5f3dafcdd142358b332e0939d37174b76472735df8df29325901d2c7d18a152ci2"]}},"required":["inscriptionIds"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"inscriptionId":{"type":"string"},"ticker":{"type":"string"},"amount":{"type":"string"}},"required":["inscriptionId","ticker","amount"]}}},"required":["items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/brc20/batch/tickers":{"post":{"tags":["BRC20"],"description":"Get information for multiple BRC-20 tokens in batch (max 100 tickers per request).","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"tickers":{"minItems":1,"maxItems":100,"description":"Array of ticker symbols to fetch (max 100)","type":"array","items":{"type":"string"},"example":["ordi","sats"]}},"required":["tickers"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"ticker":{"type":"string"},"maxSupply":{"type":"string"},"mintLimit":{"type":"string"},"decimals":{"type":"number"},"txid":{"type":"string"},"inscriptionId":{"type":"string"},"blockHeight":{"type":"string"},"isSelfMint":{"type":"boolean"},"prices":{"type":"object","properties":{"floorPrice":{"type":"object","properties":{"marketplace":{"type":"string"},"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"},"percentageChange24h":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange24h"]},"lastSalePrice":{"type":"object","properties":{"marketplace":{"type":"string"},"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["floorPrice","lastSalePrice"]},"volume24h":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"},"percentageChange":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange"]}},"required":["ticker","maxSupply","decimals","txid","inscriptionId","blockHeight","isSelfMint","prices","volume24h"]}}},"required":["items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/tx/{txid}/outputs":{"get":{"tags":["Ordinals"],"description":"Retrieve historic ordinal output info for a specific tx. It is mempool aware. <code>isOrdinalsIndexed</code> determines if ordinals data is available","parameters":[{"schema":{"minimum":0,"multipleOf":25,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"minimum":25,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"format":"regex","pattern":"^[a-fA-F0-9]{64}$","type":"string"},"example":"6c5ffa32f6942bb82bf36239fb8a6d233c4da6f91bde81869accef2ef6be674e","in":"path","name":"txid","required":true,"description":"Transaction id"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"total":{"type":"number"},"offset":{"type":"number"},"limit":{"type":"number"},"confirmations":{"type":"number"},"blockHeight":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"vout":{"type":"number"},"value":{"type":"number"},"address":{"type":"string"},"script":{"type":"string"},"runes":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"runeName":{"type":"string"},"amount":{"type":"string"},"divisibility":{"type":"number"}},"required":["runeId","runeName","amount","divisibility"]}},"inscriptions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"contentType":{"type":"string"},"offset":{"type":"number"}},"required":["id","contentType","offset"]}}},"required":["vout","value","script","runes","inscriptions"]}},"isOrdinalsIndexed":{"type":"boolean"}},"required":["total","offset","limit","confirmations","items","isOrdinalsIndexed"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/tx/{txid}/inputs":{"get":{"tags":["Ordinals"],"description":"Retrieve historic input output info for a specific tx. It is mempool aware. <code>isOrdinalsIndexed</code> determines if ordinals data is available","parameters":[{"schema":{"minimum":0,"multipleOf":25,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"minimum":25,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"format":"regex","pattern":"^[a-fA-F0-9]{64}$","type":"string"},"example":"6c5ffa32f6942bb82bf36239fb8a6d233c4da6f91bde81869accef2ef6be674e","in":"path","name":"txid","required":true,"description":"Transaction id"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"total":{"type":"number"},"offset":{"type":"number"},"limit":{"type":"number"},"confirmations":{"type":"number"},"blockHeight":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"vin":{"type":"number"},"prevTxid":{"type":"string"},"prevVout":{"type":"number"},"value":{"type":"number"},"address":{"type":"string"},"isCoinbase":{"type":"boolean"},"runes":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"amount":{"type":"string"},"divisibility":{"type":"number"}},"required":["runeId","amount","divisibility"]}},"inscriptions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"contentType":{"type":"string"},"offset":{"type":"number"}},"required":["id","contentType","offset"]}}},"required":["vin","value","runes","inscriptions"]}},"isOrdinalsIndexed":{"type":"boolean"}},"required":["total","offset","limit","confirmations","items","isOrdinalsIndexed"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/tx/{txid}":{"get":{"tags":["Ordinals"],"description":"Retrieve historic ordinal info (inputs and outputs) for a specific tx. It is mempool aware. <code>isOrdinalsIndexed</code> determines if ordinals data is available","parameters":[{"schema":{"format":"regex","pattern":"^[a-fA-F0-9]{64}$","type":"string"},"example":"6c5ffa32f6942bb82bf36239fb8a6d233c4da6f91bde81869accef2ef6be674e","in":"path","name":"txid","required":true,"description":"Transaction id"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"confirmations":{"type":"number"},"blockHeight":{"type":"number"},"isOrdinalsIndexed":{"type":"boolean"},"inputs":{"type":"array","items":{"type":"object","properties":{"vin":{"type":"number"},"prevTxid":{"type":"string"},"prevVout":{"type":"number"},"value":{"type":"number"},"address":{"type":"string"},"isCoinbase":{"type":"boolean"},"runes":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"amount":{"type":"string"},"divisibility":{"type":"number"}},"required":["runeId","amount","divisibility"]}},"inscriptions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"contentType":{"type":"string"},"offset":{"type":"number"}},"required":["id","contentType","offset"]}}},"required":["vin","value","runes","inscriptions"]}},"outputs":{"type":"array","items":{"type":"object","properties":{"vout":{"type":"number"},"value":{"type":"number"},"address":{"type":"string"},"script":{"type":"string"},"runes":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"runeName":{"type":"string"},"amount":{"type":"string"},"divisibility":{"type":"number"}},"required":["runeId","runeName","amount","divisibility"]}},"inscriptions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"contentType":{"type":"string"},"offset":{"type":"number"}},"required":["id","contentType","offset"]}}},"required":["vout","value","script","runes","inscriptions"]}},"runeEvents":{"type":"object","properties":{"etch":{"type":"object","properties":{"runeId":{"type":"string"},"runeName":{"type":"string"},"divisibility":{"type":"number"},"symbol":{"type":"string"},"premine":{"type":"string"},"turbo":{"type":"boolean"},"terms":{"type":"object","properties":{"amount":{"type":"string"},"cap":{"type":"string"},"heightLow":{"type":"string"},"heightHigh":{"type":"string"},"offsetLow":{"type":"string"},"offsetHigh":{"type":"string"}},"required":["amount","cap"]},"inscriptionId":{"type":"string"}},"required":["runeName","divisibility","symbol","premine","turbo"]},"mint":{"type":"object","properties":{"runeId":{"type":"string"},"runeName":{"type":"string"},"amount":{"type":"string"}},"required":["runeName","amount"]}}}},"required":["confirmations","isOrdinalsIndexed","inputs","outputs"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/collections":{"get":{"tags":["Ordinals"],"description":"Get list of ordinals collections.","parameters":[{"schema":{"default":0,"minimum":0,"multipleOf":25,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":25,"minimum":25,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"limit":{"type":"number"},"offset":{"type":"number"},"total":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"links":{"type":"object","properties":{"coinMarketCap":{"type":"string"},"telegram":{"type":"string"},"twitter":{"type":"string"},"discord":{"type":"string"},"website":{"type":"string"}}}},"required":["id","links"]}}},"required":["limit","offset","total","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/collections/{collectionId}":{"get":{"tags":["Ordinals"],"description":"Get metadata and market info for an Ordinals collection.","parameters":[{"schema":{"type":"string"},"examples":{"wzrds":{"value":"wzrds"},"bitcoin-puppets":{"value":"bitcoin-puppets"}},"in":"path","name":"collectionId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"symbol":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"supply":{"type":"string"},"holderCount":{"type":"string"},"floorPrice":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"},"percentageChange24h":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange24h"]},"marketCap":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}},"volume24h":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"},"percentageChange":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange"]},"links":{"type":"object","properties":{"coinMarketCap":{"type":"string"},"telegram":{"type":"string"},"twitter":{"type":"string"},"discord":{"type":"string"},"website":{"type":"string"}}}},"required":["id","symbol","floorPrice","marketCap","links"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/collections/{collectionId}/holders":{"get":{"tags":["Ordinals"],"description":"Get unique holders of an Ordinals collection.","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":10,"minimum":0,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"type":"string"},"examples":{"wzrds":{"value":"wzrds"},"bitcoin-puppets":{"value":"bitcoin-puppets"}},"in":"path","name":"collectionId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"total":{"type":"number"},"offset":{"type":"number"},"limit":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"inscriptionCount":{"type":"number"},"address":{"type":"string"}},"required":["inscriptionCount","address"]}}},"required":["total","offset","limit","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/collections/{collectionId}/historical-floor-prices":{"get":{"tags":["Ordinals"],"description":"Get historical floor prices for an Ordinals collection.","parameters":[{"schema":{"type":"string"},"in":"query","name":"fromTimestamp","required":true,"description":"ISO timestamp - no older than 1 year ago (e.g. 2024-08-29T03:09:35.236Z)"},{"schema":{"type":"string"},"in":"query","name":"toTimestamp","required":false,"description":"ISO timestamp - up until now / not in the future"},{"schema":{"type":"string"},"examples":{"wzrds":{"value":"wzrds"},"bitcoin-puppets":{"value":"bitcoin-puppets"}},"in":"path","name":"collectionId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"timestamp":{"type":"string"},"floorPrice":{"type":"object","properties":{"valueInSats":{"type":"number"},"valueInUsd":{"type":"string"}}}},"required":["timestamp","floorPrice"]}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/collections/{collectionId}/inscriptions":{"get":{"tags":["Ordinals"],"description":"Get inscriptions for an Ordinals collection.","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":10,"minimum":0,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"type":"string"},"examples":{"wzrds":{"value":"wzrds"},"bitcoin-puppets":{"value":"bitcoin-puppets"}},"in":"path","name":"collectionId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"collectionId":{"type":"string"},"collectionName":{"type":"string"},"total":{"type":"number"},"offset":{"type":"number"},"limit":{"type":"number"},"inscriptions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"number":{"type":"number"},"sat":{"type":"number"},"contentType":{"type":"string"},"blockHeight":{"type":"number"},"charms":{"type":"array","items":{"type":"string"}}},"required":["id","number","blockHeight","charms"]}}},"required":["collectionId","collectionName","total","offset","limit","inscriptions"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/ordinals/stats/collections/top-by-volume":{"get":{"tags":["Ordinals"],"description":"Get top collections by volume.","parameters":[{"schema":{"enum":["24h","trailing7d","trailing30d","1d","7d","30d"],"default":"24h","type":"string"},"in":"query","name":"timePeriod","required":false,"description":"* `24h` - trailing 24 hours' volume, ending at the start of the prior hour (default)\n* `trailing7d` - trailing 7 days' volume, ending at the start of the prior hour\n* `trailing30d` - trailing 30 days' volume, ending at the start of the prior hour\n* `1d` - prior day's volume, ending at midnight GMT\n* `7d` - prior seven days' volume, ending at midnight GMT\n* `30d` - prior 30 days' volume, ending at midnight GMT"},{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":10,"minimum":0,"maximum":100,"type":"number"},"in":"query","name":"limit","required":false}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"total":{"type":"number"},"offset":{"type":"number"},"limit":{"type":"number"},"timePeriod":{"type":"string"},"collections":{"type":"array","items":{"type":"object","properties":{"collectionId":{"type":"string"},"tradingVolumeSats":{"type":"string"},"name":{"type":"string"},"logo":{"type":"string"},"floorPrice":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"},"percentageChange24h":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange24h"]}},"required":["collectionId","tradingVolumeSats","name","floorPrice"]}}},"required":["total","offset","limit","timePeriod","collections"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/runes/stats/top-by-volume":{"get":{"tags":["Ordinals"],"description":"Get top runes by volume.","parameters":[{"schema":{"enum":["24h","trailing7d","trailing30d","1d","7d","30d"],"default":"24h","type":"string"},"in":"query","name":"timePeriod","required":false,"description":"* `24h` - trailing 24 hours' volume, ending at the start of the prior hour (default)\n* `trailing7d` - trailing 7 days' volume, ending at the start of the prior hour\n* `trailing30d` - trailing 30 days' volume, ending at the start of the prior hour\n* `1d` - prior day's volume, ending at midnight GMT\n* `7d` - prior seven days' volume, ending at midnight GMT\n* `30d` - prior 30 days' volume, ending at midnight GMT"},{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":10,"minimum":0,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"total":{"type":"number"},"offset":{"type":"number"},"limit":{"type":"number"},"timePeriod":{"type":"string"},"runes":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"tradingVolumeSats":{"type":"string"},"name":{"type":"string"},"symbol":{"type":"string"},"inscriptionRenderUrl":{"type":"string"},"floorPrice":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"},"percentageChange24h":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange24h"]},"marketCap":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["runeId","tradingVolumeSats","name","floorPrice","marketCap"]}}},"required":["total","offset","limit","timePeriod","runes"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/runes/stats/top-gainers-losers":{"get":{"tags":["Ordinals"],"description":"Get top gainers & losers by percentage price change for a specific time frame.","parameters":[{"schema":{"enum":["24h","trailing7d","trailing30d","1d","7d","30d"],"default":"24h","type":"string"},"in":"query","name":"timePeriod","required":false,"description":"* `24h` - trailing 24 hours' volume, ending at the start of the prior hour (default)\n* `trailing7d` - trailing 7 days' volume, ending at the start of the prior hour\n* `trailing30d` - trailing 30 days' volume, ending at the start of the prior hour\n* `1d` - prior day's volume, ending at midnight GMT\n* `7d` - prior seven days' volume, ending at midnight GMT\n* `30d` - prior 30 days' volume, ending at midnight GMT"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"topGainers":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"absPriceIncrease":{"type":"number"},"pctPriceIncrease":{"type":"number"},"currentPrice":{"type":"object","properties":{"valueInSats":{"type":"string"}}},"previousPrice":{"type":"object","properties":{"valueInSats":{"type":"string"}}}},"required":["runeId","absPriceIncrease","currentPrice","previousPrice"]}},"topLosers":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"absPriceIncrease":{"type":"number"},"pctPriceIncrease":{"type":"number"},"currentPrice":{"type":"object","properties":{"valueInSats":{"type":"string"}}},"previousPrice":{"type":"object","properties":{"valueInSats":{"type":"string"}}}},"required":["runeId","absPriceIncrease","currentPrice","previousPrice"]}}},"required":["topGainers","topLosers"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/spark/btkn/{identifier}/info":{"get":{"tags":["Spark"],"description":"Get token info and pool metadata for a specific Spark BTKN token by ID.","parameters":[{"schema":{"type":"string"},"example":"691c8f8a06274c6d17956e2e4115935d501d85ee569319d20b50e1fe4195b33d","in":"path","name":"identifier","required":true,"description":"BTKN token identifier"}],"responses":{"200":{"description":"Spark BTKN token info","content":{"application/json":{"schema":{"description":"Spark BTKN token info","type":"object","properties":{"tokenIdentifier":{"type":"string"},"tokenAddress":{"type":"string"},"name":{"type":"string"},"ticker":{"type":"string"},"decimals":{"type":"number"},"issuerPublicKey":{"type":"string"},"iconUrl":{"type":"string"},"holderCount":{"type":"number"},"priceUsd":{"type":"number"},"maxSupply":{"type":"number"},"isFreezable":{"type":"boolean"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"price":{"type":"number"},"poolInfo":{"type":"array","items":{"type":"object","properties":{"lpPublicKey":{"type":"string"},"hostName":{"type":"string"},"hostFeeBps":{"type":"number"},"lpFeeBps":{"type":"number"},"assetAAddress":{"type":"string"},"assetBAddress":{"type":"string"},"assetAReserve":{"type":"string"},"assetBReserve":{"type":"string"},"currentPriceAInB":{"type":"string"},"tvlAssetB":{"type":"string"},"volume24hAssetB":{"type":"string"},"priceChangePercent24h":{"type":"string"},"curveType":{"type":"string"},"initialReserveA":{"type":"string"},"bondingProgressPercent":{"type":"string"},"createdAt":{"type":"string"}}}}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/spark/tokens/{identifier}/holders":{"get":{"tags":["Spark"],"description":"Get holders for a specific Spark BTKN token.","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":10,"minimum":0,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"type":"string"},"example":"691c8f8a06274c6d17956e2e4115935d501d85ee569319d20b50e1fe4195b33d","in":"path","name":"identifier","required":true,"description":"BTKN token identifier"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"offset":{"type":"number"},"limit":{"type":"number"},"total":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string"},"balance":{"type":"string"},"pubkey":{"type":"string"},"valueUsd":{"type":"number"},"percentage":{"type":"number"}}}}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/spark/address/{address}/transactions":{"get":{"tags":["Spark"],"description":"Get transactions history for a specific Spark address.","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":10,"minimum":0,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"type":"string"},"in":"path","name":"address","required":true,"description":"Spark address e.g. `sp...`"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"offset":{"type":"number"},"limit":{"type":"number"},"total":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string"},"direction":{"type":"string"},"counterparty":{"type":"object","properties":{"type":{"type":"string"},"identifier":{"type":"string"}}},"amountSats":{"type":"number"},"tokenAmount":{"type":"number"},"valueUsd":{"type":"number"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"status":{"type":"string"},"txid":{"type":"string"},"tokenMetadata":{"type":"object","properties":{"tokenIdentifier":{"type":"string"},"tokenAddress":{"type":"string"},"name":{"type":"string"},"ticker":{"type":"string"},"decimals":{"type":"number"},"issuerPublicKey":{"type":"string"},"maxSupply":{"type":"number"},"isFreezable":{"type":"boolean"},"iconUrl":{"type":"string"}}},"multiIoDetails":{"type":"object","properties":{"inputs":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string"},"pubkey":{"type":"string"},"amount":{"type":"number"}}}},"outputs":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string"},"pubkey":{"type":"string"},"amount":{"type":"number"}}}},"totalInputAmount":{"type":"number"},"totalOutputAmount":{"type":"number"}}}}}}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/spark/address/{address}/btkn":{"get":{"tags":["Spark"],"description":"Get token balances for a specific Spark address.","parameters":[{"schema":{"type":"string"},"in":"path","name":"address","required":true,"description":"Spark address e.g. `sp...`"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"sparkAddress":{"type":"string"},"publicKey":{"type":"string"},"balance":{"type":"object","properties":{"btcSoftBalanceSats":{"type":"number"},"btcHardBalanceSats":{"type":"number"},"btcValueUsdHard":{"type":"number"},"btcValueUsdSoft":{"type":"number"},"totalTokenValueUsd":{"type":"number"}}},"totalValueUsd":{"type":"number"},"transactionCount":{"type":"number"},"tokenCount":{"type":"number"},"tokens":{"type":"array","items":{"type":"object","properties":{"tokenIdentifier":{"type":"string"},"tokenAddress":{"type":"string"},"name":{"type":"string"},"ticker":{"type":"string"},"decimals":{"type":"number"},"issuerPublicKey":{"type":"string"},"maxSupply":{"type":"number"},"isFreezable":{"type":"boolean"},"iconUrl":{"type":"string"}}}}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/spark/tokens/metadata/batch":{"post":{"tags":["Spark"],"description":"Retrieve metadata for up to 100 tokens at once.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"tokenAddresses":{"description":"List of 66-character hex token addresses.","maxItems":100,"type":"array","items":{"type":"string"},"example":["691c8f8a06274c6d17956e2e4115935d501d85ee569319d20b50e1fe4195b33d","32a317bf216b8485d9560ea61c8e852ae184cb2851cf19fcb5ff0e33da2a1990"]}},"required":["tokenAddresses"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"metadata":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"holderCount":{"type":"number"},"priceUsd":{"type":"number"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}}},{"type":"object","properties":{"tokenIdentifier":{"type":"string"},"tokenAddress":{"type":"string"},"name":{"type":"string"},"ticker":{"type":"string"},"decimals":{"type":"number"},"issuerPublicKey":{"type":"string"},"maxSupply":{"type":"number"},"isFreezable":{"type":"boolean"},"iconUrl":{"type":"string"}}}]}},"totalCount":{"type":"number"}},"required":["metadata"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/spark/tx/latest":{"get":{"tags":["Spark"],"description":"Get Latest Transactions","parameters":[{"schema":{"default":10,"minimum":1,"maximum":500,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"default":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"type":"string"},"in":"query","name":"fromTimestamp","required":false},{"schema":{"type":"string"},"in":"query","name":"toTimestamp","required":false},{"schema":{"enum":["createdAt","updatedAt"],"type":"string"},"in":"query","name":"sort","required":false},{"schema":{"enum":["asc","desc"],"default":"asc","type":"string"},"in":"query","name":"order","required":false}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string"},"status":{"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"amountSats":{"type":"number"},"tokenAmount":{"type":"number"},"tokenMetadata":{"type":"object","properties":{"tokenIdentifier":{"type":"string"},"tokenAddress":{"type":"string"},"name":{"type":"string"},"ticker":{"type":"string"},"decimals":{"type":"number"},"issuerPublicKey":{"type":"string"},"maxSupply":{"type":"number"},"isFreezable":{"type":"boolean"},"iconUrl":{"type":"string"}}},"multiIoDetails":{"type":"object","properties":{"inputs":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string"},"pubkey":{"type":"string"},"amount":{"type":"number"}}}},"outputs":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string"},"pubkey":{"type":"string"},"amount":{"type":"number"}}}},"totalInputAmount":{"type":"number"},"totalOutputAmount":{"type":"number"}},"required":["inputs","outputs"]},"from":{"type":"object","properties":{"type":{"type":"string"},"identifier":{"type":"string"},"pubkey":{"type":"string"}}},"to":{"type":"object","properties":{"type":{"type":"string"},"identifier":{"type":"string"},"pubkey":{"type":"string"}}},"bitcoinTxid":{"type":"string"},"valueUsd":{"type":"number"}}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/spark/address/{address}":{"get":{"tags":["Spark"],"description":"Get address summary","parameters":[{"schema":{"type":"string"},"example":"spark1pgssxxkz8lp9zpcjwz5pfm062ncle9mumvkuaq9d39t2cgm4lacq2agtdmv2tl","in":"path","name":"address","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"sparkAddress":{"type":"string"},"publicKey":{"type":"string"},"balance":{"type":"object","properties":{"btcSoftBalanceSats":{"type":"number"},"btcHardBalanceSats":{"type":"number"},"btcValueUsdHard":{"type":"number"},"btcValueUsdSoft":{"type":"number"},"totalTokenValueUsd":{"type":"number"}}},"totalValueUsd":{"type":"number"},"transactionCount":{"type":"number"},"tokenCount":{"type":"number"},"tokens":{"type":"array","items":{"type":"object","properties":{"tokenIdentifier":{"type":"string"},"tokenAddress":{"type":"string"},"name":{"type":"string"},"ticker":{"type":"string"},"decimals":{"type":"number"},"issuerPublicKey":{"type":"string"},"maxSupply":{"type":"number"},"isFreezable":{"type":"boolean"},"iconUrl":{"type":"string"}}}}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/spark/tx/{txid}":{"get":{"tags":["Spark"],"description":"Retrieves detailed information about a specific transaction (Spark, Bitcoin, Lightning, or Token) by its ID or hash","parameters":[{"schema":{"type":"string"},"example":"f2ef24168014984fcfcd36843184e2b1ec3d481b30d94f6cd7af9e3c57d5a25c","in":"path","name":"txid","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string"},"status":{"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"from":{"type":"object","properties":{"type":{"type":"string"},"identifier":{"type":"string"},"pubkey":{"type":"string"}}},"to":{"type":"object","properties":{"type":{"type":"string"},"identifier":{"type":"string"},"pubkey":{"type":"string"}}},"amountSats":{"type":"number"},"amount":{"type":"number"},"valueUsd":{"type":"number"},"timeTakenSeconds":{"type":"number"},"tokenMetadata":{"type":"object","properties":{"tokenIdentifier":{"type":"string"},"tokenAddress":{"type":"string"},"name":{"type":"string"},"ticker":{"type":"string"},"decimals":{"type":"number"},"issuerPublicKey":{"type":"string"},"maxSupply":{"type":"number"},"isFreezable":{"type":"boolean"},"iconUrl":{"type":"string"}}},"multiIoDetails":{"type":"object","properties":{"inputs":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string"},"pubkey":{"type":"string"},"amount":{"type":"number"}}}},"outputs":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string"},"pubkey":{"type":"string"},"amount":{"type":"number"}}}},"totalInputAmount":{"type":"number"},"totalOutputAmount":{"type":"number"}},"required":["inputs","outputs"]},"txid":{"type":"string"},"bitcoinTxData":{"type":"object","properties":{"txid":{"type":"string"},"vin":{"type":"array","items":{"type":"object","properties":{"prevout":{"type":"string"},"witness":{"type":"string"},"value":{"type":"number"}}}},"vout":{"type":"array","items":{"type":"object","properties":{"scriptpubkeyAddress":{"type":"string"},"value":{"type":"number"}}}},"status":{"type":"object","properties":{"confirmed":{"type":"boolean"},"blockHeight":{"type":"number"},"blockTime":{"type":"number"}}},"fee":{"type":"number"}}}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/spark/tokens/{identifier}":{"get":{"tags":["Spark"],"description":"Get token details or search for tokens","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":25,"minimum":1,"maximum":100,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"type":"string"},"examples":{"691c8f8a06274c6d17956e2e4115935d501d85ee569319d20b50e1fe4195b33d":{"value":"691c8f8a06274c6d17956e2e4115935d501d85ee569319d20b50e1fe4195b33d"},"XSPK":{"value":"XSPK"}},"in":"path","name":"identifier","required":true,"description":"If the value is a 64-character hex token identifier or a Bech32 token address, returns its details. Otherwise the segment is treated as a search query over token name, ticker or address."}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"metadata":{"anyOf":[{"type":"object","properties":{"tokenIdentifier":{"type":"string"},"tokenAddress":{"type":"string"},"name":{"type":"string"},"ticker":{"type":"string"},"decimals":{"type":"number"},"issuerPublicKey":{"type":"string"},"maxSupply":{"type":"number"},"isFreezable":{"type":"boolean"},"iconUrl":{"type":"string"}}},{"type":"object","properties":{"holderCount":{"type":"number"},"priceUsd":{"type":"number"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}}}]},"totalSupply":{"type":"number"},"marketCapUsd":{"type":"number"},"volume24hUsd":{"type":"number"}}},{"type":"array","items":{"anyOf":[{"type":"object","properties":{"tokenIdentifier":{"type":"string"},"tokenAddress":{"type":"string"},"name":{"type":"string"},"ticker":{"type":"string"},"decimals":{"type":"number"},"issuerPublicKey":{"type":"string"},"maxSupply":{"type":"number"},"isFreezable":{"type":"boolean"},"iconUrl":{"type":"string"}}},{"type":"object","properties":{"holderCount":{"type":"number"},"priceUsd":{"type":"number"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"}}}]}}]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/spark/tokens/{identifier}/transactions":{"get":{"tags":["Spark"],"description":"Get transactions for token","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":25,"minimum":1,"maximum":100,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"type":"string"},"example":"691c8f8a06274c6d17956e2e4115935d501d85ee569319d20b50e1fe4195b33d","in":"path","name":"identifier","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"meta":{"type":"object","properties":{"totalItems":{"type":"number"},"limit":{"type":"number"},"offset":{"type":"number"}}},"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"type":{"type":"string"},"status":{"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"from":{"type":"object","properties":{"type":{"type":"string"},"identifier":{"type":"string"},"pubkey":{"type":"string"}}},"to":{"type":"object","properties":{"type":{"type":"string"},"identifier":{"type":"string"},"pubkey":{"type":"string"}}},"amount":{"type":"number"},"valueUsd":{"type":"number"}}}}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/spark/btkn/stats/rankings":{"get":{"tags":["Spark"],"description":"Retrieve the top BTKN tokens sorted by volume/TVL, including token metadata and market data.\n          Default sort is `VOLUME24H_DESC`.","parameters":[{"schema":{"default":10,"minimum":0,"maximum":100,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"enum":["VOLUME24H_DESC","VOLUME24H_ASC","TVL_DESC","TVL_ASC"],"default":"VOLUME24H_DESC","type":"string"},"in":"query","name":"sort","required":false}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"tokenIdentifier":{"type":"string"},"tokenAddress":{"type":"string"},"name":{"type":"string"},"ticker":{"type":"string"},"decimals":{"type":"number"},"issuerPublicKey":{"type":"string"},"iconUrl":{"type":"string"},"holderCount":{"type":"number"},"priceUsd":{"type":"number"},"maxSupply":{"type":"number"},"isFreezable":{"type":"boolean"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"price":{"type":"number"},"pools":{"type":"array","items":{"type":"object","properties":{"lpPublicKey":{"type":"string"},"hostName":{"type":"string"},"hostFeeBps":{"type":"number"},"lpFeeBps":{"type":"number"},"assetAAddress":{"type":"string"},"assetBAddress":{"type":"string"},"assetAReserve":{"type":"string"},"assetBReserve":{"type":"string"},"currentPriceAInB":{"type":"string"},"tvlAssetB":{"type":"string"},"volume24hAssetB":{"type":"string"},"priceChangePercent24h":{"type":"string"},"curveType":{"type":"string"},"initialReserveA":{"type":"string"},"bondingProgressPercent":{"type":"string"},"createdAt":{"type":"string"},"priceUsd":{"type":"string"},"TVLUsd":{"type":"string"}}}},"marketCapUsd":{"type":"string"},"aggPriceSats":{"type":"string"},"aggPriceUsd":{"type":"string"},"aggPriceChange24h":{"type":"string"},"aggTVLUsd":{"type":"string"},"aggUpdatedAt":{"type":"string"},"aggVolume24hUsd":{"type":"string"}}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/swaps/get-destination-tokens":{"post":{"tags":["Swaps"],"description":"Lookup destination tokens available for swaps. It can be filtered by specific tokens user\n           owns or by searching by keywords","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"protocol":{"anyOf":[{"type":"string","enum":["runes"]},{"type":"string","enum":["btc"]}]},"from":{"type":"object","properties":{"ticker":{"type":"string"},"protocol":{"anyOf":[{"type":"string","enum":["runes"]},{"type":"string","enum":["btc"]}]}},"required":["ticker","protocol"]},"userTokens":{"type":"array","items":{"anyOf":[{"type":"object","allOf":[{"type":"object","properties":{"ticker":{"type":"string"},"protocol":{"anyOf":[{"type":"string","enum":["runes"]},{"type":"string","enum":["btc"]}]}},"required":["ticker","protocol"]},{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"divisibility":{"type":"number"},"logo":{"type":"string"},"contract":{"type":"string"}},"required":["divisibility"]}]},{"type":"object","properties":{"ticker":{"type":"string"},"protocol":{"anyOf":[{"type":"string","enum":["runes"]},{"type":"string","enum":["btc"]}]}},"required":["ticker","protocol"]}]}},"search":{"type":"string"}},"required":["userTokens"]},"example":{"protocol":"runes","search":"","userTokens":[{"ticker":"840000:795","protocol":"runes","divisibility":1,"symbol":"🐒","name":"BITCOIN•MONKEY","logo":"🐒"}]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","allOf":[{"type":"object","properties":{"ticker":{"type":"string"},"protocol":{"anyOf":[{"type":"string","enum":["runes"]},{"type":"string","enum":["btc"]}]}},"required":["ticker","protocol"]},{"type":"object","properties":{"name":{"type":"string"},"symbol":{"type":"string"},"divisibility":{"type":"number"},"logo":{"type":"string"},"contract":{"type":"string"}},"required":["divisibility"]}]}}},"required":["items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/swaps/get-quotes":{"post":{"tags":["Swaps"],"description":"Get multiple quotes for swapping between two assets","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"from":{"type":"object","properties":{"ticker":{"type":"string"},"protocol":{"anyOf":[{"type":"string","enum":["runes"]},{"type":"string","enum":["btc"]}]}},"required":["ticker","protocol"]},"to":{"type":"object","properties":{"ticker":{"type":"string"},"protocol":{"anyOf":[{"type":"string","enum":["runes"]},{"type":"string","enum":["btc"]}]}},"required":["ticker","protocol"]},"amount":{"type":"string"},"amountRaw":{"type":"string"}},"required":["from","to","amount"]},"example":{"from":{"ticker":"840000:2","protocol":"runes"},"to":{"ticker":"840000:3","protocol":"runes"},"amount":"10"}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"amm":{"type":"array","items":{"type":"object","properties":{"provider":{"type":"object","properties":{"code":{"type":"string"},"name":{"type":"string"},"url":{"type":"string"},"logo":{"type":"string"}},"required":["code","name","url","logo"]},"from":{"type":"object","properties":{"ticker":{"type":"string"},"protocol":{"anyOf":[{"type":"string","enum":["runes"]},{"type":"string","enum":["btc"]}]}},"required":["ticker","protocol"]},"to":{"type":"object","properties":{"ticker":{"type":"string"},"protocol":{"anyOf":[{"type":"string","enum":["runes"]},{"type":"string","enum":["btc"]}]}},"required":["ticker","protocol"]},"receiveAmount":{"type":"string"},"slippageSupported":{"type":"boolean"},"slippageThreshold":{"type":"number"},"slippageDecimals":{"type":"number"},"feePercentage":{"type":"string"},"providerFeePercentage":{"type":"string"},"xverseFeePercentage":{"type":"string"},"bestMarketplaceProvider":{"type":"object","properties":{"code":{"type":"string"},"name":{"type":"string"},"url":{"type":"string"},"logo":{"type":"string"}},"required":["code","name","url","logo"]},"identifier":{},"rate":{"type":"string"}},"required":["provider","from","to","receiveAmount","slippageSupported"]}}},"required":["amm"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/swaps/amm/place-order":{"post":{"tags":["Swaps"],"description":"Place a swap order with an AMM (DotSwap, RunesDex) to receive an unsigned PSBT to sign.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"providerCode":{"type":"string"},"from":{"type":"object","properties":{"ticker":{"type":"string"},"protocol":{"anyOf":[{"type":"string","enum":["runes"]},{"type":"string","enum":["btc"]}]}},"required":["ticker","protocol"]},"to":{"type":"object","properties":{"ticker":{"type":"string"},"protocol":{"anyOf":[{"type":"string","enum":["runes"]},{"type":"string","enum":["btc"]}]}},"required":["ticker","protocol"]},"sendAmount":{"type":"string"},"receiveAmount":{"type":"string"},"slippage":{"type":"number"},"feeRate":{"type":"number"},"btcAddress":{"type":"string"},"btcPubKey":{"type":"string"},"ordAddress":{"type":"string"},"ordPubKey":{"type":"string"},"identifier":{}},"required":["providerCode","from","to","sendAmount","receiveAmount","slippage","feeRate","btcAddress","btcPubKey","ordAddress","ordPubKey"]},"example":{"providerCode":"<provider code from get quotes>","from":{"ticker":"840000:2","protocol":"runes"},"to":{"ticker":"840000:3","protocol":"runes"},"sendAmount":"10","receiveAmount":"0.15","slippage":0.05,"feeRate":1,"btcAddress":"bc1q7w...","btcPubKey":"03b43bed...","ordAddress":"bc1ph....","ordPubKey":"2b0647e...","identifier":"<identifier from get quotes>"}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"orderId":{"type":"string"},"identifier":{"type":"string"},"expiresInMilliseconds":{"nullable":true,"type":"number"},"psbt":{"type":"string"}},"required":["expiresInMilliseconds","psbt"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/swaps/amm/execute-order":{"post":{"tags":["Swaps"],"description":"Execute publishes a signed PSBT for an AMM swap.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"providerCode":{"type":"string"},"orderId":{"type":"string"},"psbt":{"type":"string"},"btcAddress":{"type":"string"},"btcPubKey":{"type":"string"},"ordAddress":{"type":"string"},"ordPubKey":{"type":"string"},"identifier":{"type":"string"}},"required":["providerCode","psbt","btcAddress","btcPubKey","ordAddress","ordPubKey"]},"example":{"providerCode":"<provider code from place order>","orderId":"<order id from place order>","psbt":"....","btcAddress":"bc1q7...","btcPubKey":"03b43bed...","ordAddress":"bc1phr...","ordPubKey":"2b0647e..."}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"txid":{"type":"string"}},"required":["txid"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/swaps/utxo/get-utxos":{"post":{"tags":["Swaps"],"description":"<h2>Coming soon...</h2><br/>Retrieve marketplace UTXO data (Magic Eden, Unisat, OKX).","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{"providerCode":"magiceden_utxo","from":{"ticker":"BTC","protocol":"btc"},"to":{"ticker":"840000:3","protocol":"runes"},"amount":"20000"}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{"items":[{"identifier":"...","token":{"ticker":"840000:3","protocol":"runes"},"amount":"80000","price":"198344"},{"identifier":"...","token":{"ticker":"840000:3","protocol":"runes"},"amount":"100000","price":"247930"}]}}}}}}},"/v1/swaps/utxo/place-order":{"post":{"tags":["Swaps"],"description":"<h2>Coming soon...</h2><br/>Place a UTXO-based marketplace order and get back an unsigned PSBT. ","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{"providerCode":"magiceden_utxo","btcPubKey":"...","to":{"protocol":"runes","ticker":"840000:28"},"ordPubKey":"...","btcAddress":"...","orders":[{"price":"100","amount":"0100","identifier":"<uuid>"}],"ordAddress":"...","feeRate":7,"from":{"ticker":"BTC","protocol":"btc"}}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{"orderId":"...","psbt":"...","orders":[{"identifier":"...","amount":"...","price":"..."}],"serviceFee":".."}}}}}}},"/v1/swaps/utxo/execute-order":{"post":{"tags":["Swaps"],"description":"<h2>Coming soon...</h2><br/>Execute a signed PSBT on a UTXO-based marketplace.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{"psbt":"...","orders":[{"amount":"100000","identifier":"uuid","price":"300"},{"price":"200","identifier":"uuid","amount":"40000"}],"providerCode":"magiceden_utxo","btcAddress":"...","ordAddress":"...","btcPubKey":"...","ordPubKey":"..."}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{"txid":"1234"}}}}}}},"/v1/swaps/stx/place-order":{"post":{"tags":["Swaps"],"description":"<h2>Coming soon...</h2><br/>Handle STX-based swaps (Velar, Bitflow, Alex).","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{"receiveAmount":"6","providerCode":"bitflow","stxAddress":"...","from":{"protocol":"sip10","ticker":"token"},"slippage":0.04,"stxPublicKey":"...","sendAmount":"4","to":{"ticker":"STX","protocol":"stx"}}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{"orderId":"","unsignedTransaction":"..."}}}}}}},"/v1/swaps/stx/execute-order":{"post":{"tags":["Swaps"],"description":"<h2>Coming soon...</h2><br/>Execute order for STX swaps.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{"signedTransaction":"...","providerCode":"bitflow"}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{"orderId":"","unsignedTransaction":"..."}}}}}}},"/v1/swaps/crosschain/place-order":{"post":{"tags":["Swaps"],"description":"<h2>Coming soon...</h2><br/>Place cross-chain swap orders (via Changelly).","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{"from":{"protocol":"btc","ticker":"btc"},"receiveAddress":"...","sendAmount":"0.0004","to":{"protocol":"stx","symbol":"STX","logo":"https://cdn.changelly.com/icons-colored/stx.png","ticker":"stx","name":"STX"},"providerCode":"changelly","fromAddress":"..."}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{"orderId":"...","payinAddress":"...","status":"new"}}}}}}},"/v1/runes-managed/mint/estimate":{"post":{"tags":["Runes mint"],"description":"Estimate total cost for a batch mint order.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"runeName":{"type":"string"},"repeats":{"minimum":1,"type":"number"},"destinationAddress":{"type":"string"},"refundAddress":{"type":"string"},"feeRate":{"minimum":1,"type":"number"},"appServiceFee":{"minimum":0,"type":"number"},"appServiceFeeAddress":{"type":"string"}},"required":["runeName","repeats","destinationAddress","feeRate"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"totalSize":{"type":"number"},"totalCost":{"type":"number"},"costBreakdown":{"type":"object","properties":{"postage":{"type":"number"},"networkFee":{"type":"number"},"serviceFee":{"type":"number"},"appServiceFee":{"type":"number"}},"required":["postage","networkFee","serviceFee"]}},"required":["totalSize","totalCost","costBreakdown"]}}}}}}},"/v1/runes-managed/mint/orders":{"post":{"tags":["Runes mint"],"description":"Create a batch mint order.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"runeName":{"type":"string"},"repeats":{"minimum":1,"type":"number"},"destinationAddress":{"type":"string"},"refundAddress":{"type":"string"},"feeRate":{"minimum":1,"type":"number"},"appServiceFee":{"minimum":0,"type":"number"},"appServiceFeeAddress":{"type":"string"}},"required":["runeName","repeats","destinationAddress","feeRate"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"orderId":{"type":"string"},"fundAddress":{"type":"string"},"fundAmount":{"type":"number"}},"required":["orderId","fundAddress","fundAmount"]}}}}}}},"/v1/runes-managed/mint/orders/{orderId}/execute":{"post":{"tags":["Runes mint"],"description":"Finalize minting after sending funds.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"fundTransactionId":{"minLength":64,"maxLength":64,"type":"string"}},"required":["fundTransactionId"]}}},"required":true},"parameters":[{"schema":{"type":"string","format":"uuid"},"in":"path","name":"orderId","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/runes-managed/mint/orders/{orderId}":{"get":{"tags":["Runes mint"],"description":"Check the status of a mint order.","parameters":[{"schema":{"type":"string","format":"uuid"},"in":"path","name":"orderId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/v1/runes-managed/etch/estimate":{"post":{"tags":["Runes etch"],"description":"Estimate the total cost for an etching order.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"runeName":{"type":"string"},"divisibility":{"minimum":0,"maximum":38,"type":"number"},"symbol":{"minLength":0,"maxLength":1,"type":"string"},"premine":{"type":"string"},"isMintable":{"type":"boolean"},"terms":{"type":"object","properties":{"amount":{"type":"string"},"cap":{"type":"string"},"heightStart":{"type":"string"},"heightEnd":{"type":"string"},"offsetStart":{"type":"string"},"offsetEnd":{"type":"string"}}},"inscriptionDetails":{"type":"object","properties":{"contentType":{"type":"string"},"contentBase64":{"type":"string"}},"required":["contentType","contentBase64"]},"delegateInscriptionId":{"type":"string"},"destinationAddress":{"type":"string"},"refundAddress":{"type":"string"},"feeRate":{"minimum":1,"type":"number"},"appServiceFee":{"minimum":0,"type":"number"},"appServiceFeeAddress":{"type":"string"},"turbo":{"type":"boolean"}},"required":["runeName","isMintable","destinationAddress","feeRate"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"totalSize":{"type":"number"},"totalCost":{"type":"number"},"costBreakdown":{"type":"object","properties":{"postage":{"type":"number"},"networkFee":{"type":"number"},"serviceFee":{"type":"number"},"appServiceFee":{"type":"number"}},"required":["postage","networkFee","serviceFee"]}},"required":["totalSize","totalCost","costBreakdown"]}}}}}}},"/v1/runes-managed/etch/orders":{"post":{"tags":["Runes etch"],"description":"Create a new Runes etch order.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"runeName":{"type":"string"},"divisibility":{"minimum":0,"maximum":38,"type":"number"},"symbol":{"minLength":0,"maxLength":1,"type":"string"},"premine":{"type":"string"},"isMintable":{"type":"boolean"},"terms":{"type":"object","properties":{"amount":{"type":"string"},"cap":{"type":"string"},"heightStart":{"type":"string"},"heightEnd":{"type":"string"},"offsetStart":{"type":"string"},"offsetEnd":{"type":"string"}}},"inscriptionDetails":{"type":"object","properties":{"contentType":{"type":"string"},"contentBase64":{"type":"string"}},"required":["contentType","contentBase64"]},"delegateInscriptionId":{"type":"string"},"destinationAddress":{"type":"string"},"refundAddress":{"type":"string"},"feeRate":{"minimum":1,"type":"number"},"appServiceFee":{"minimum":0,"type":"number"},"appServiceFeeAddress":{"type":"string"},"turbo":{"type":"boolean"}},"required":["runeName","isMintable","destinationAddress","feeRate"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"orderId":{"type":"string"},"fundAddress":{"type":"string"},"fundAmount":{"type":"number"}},"required":["orderId","fundAddress","fundAmount"]}}}}}}},"/v1/runes-managed/etch/orders/{orderId}/execute":{"post":{"tags":["Runes etch"],"description":"Execute an etching order once funded.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"fundTransactionId":{"minLength":64,"maxLength":64,"type":"string"}},"required":["fundTransactionId"]}}},"required":true},"parameters":[{"schema":{"type":"string","format":"uuid"},"in":"path","name":"orderId","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v1/runes-managed/etch/orders/{orderId}":{"get":{"tags":["Runes etch"],"description":"Check the status of an etch order.","parameters":[{"schema":{"type":"string","format":"uuid"},"in":"path","name":"orderId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/v1/runes-managed/etch/validate-name":{"get":{"tags":["Runes etch"],"description":"Validate if a rune name is available for etching. When not valid it can include below reasons:\n* `minLength` - rune does not match minimum length for current blockheight\n* `alreadyExists` - rune name already exists\n* `format` - rune name format is invalid\n* `outOfRange` - rune name is out of range of acceptable names","parameters":[{"schema":{"minLength":1,"type":"string"},"example":"UNCOMMON•GOODS","in":"query","name":"runeName","required":true,"description":"The rune name to validate"}],"responses":{"200":{"description":"Validation result for a rune name","content":{"application/json":{"schema":{"description":"Validation result for a rune name","type":"object","properties":{"isValid":{"type":"boolean"},"reason":{"type":"string","example":"minLength"},"currentHeight":{"type":"number"},"availableHeight":{"type":"number"},"runeId":{"type":"string"}},"required":["isValid","currentHeight"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/runes-managed/orders":{"get":{"tags":["Runes mint","Runes etch"],"description":"Get orders summary by destination address.","parameters":[{"schema":{"type":"string"},"in":"query","name":"destinationAddress","required":true,"description":"Bitcoin address to filter orders"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"orderType":{"type":"string"},"state":{"type":"string"},"reason":{"type":"string"},"createdAt":{"type":"string"}},"required":["id","orderType","state","reason","createdAt"]}}},"required":["items"]}}}}}}},"/v1/runes-managed/orders/{orderId}":{"get":{"tags":["Runes mint","Runes etch"],"description":"Get order details by ID.","parameters":[{"schema":{"format":"uuid","type":"string"},"in":"path","name":"orderId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string"},"orderType":{"type":"string"},"state":{"type":"string"},"reason":{"type":"string"},"createdAt":{"type":"string"},"fundingAddress":{"type":"string"},"orderDetails":{"type":"object","properties":{}},"transactions":{"type":"array","items":{"type":"object","properties":{"txid":{"type":"string"},"state":{"type":"string"},"transactionType":{"type":"string"},"broadcastSequence":{"type":"number"},"batchNumber":{"type":"number"}},"required":["txid","state","transactionType","broadcastSequence","batchNumber"]}}},"required":["id","orderType","state","reason","createdAt","transactions"]}}}}}}},"/v1/brc20/mint/estimate":{"post":{"tags":["BRC20 mint"],"description":"<h2>Coming soon...</h2><br/>Estimate the total cost for a BRC-20 batch mint order.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{}}}}}}},"/v1/brc20/mint/order":{"post":{"tags":["BRC20 mint"],"description":"<h2>Coming soon...</h2><br/>Create a BRC-20 batch mint order.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}}}}}}}},"/v1/brc20/mint/order/{orderId}/execute":{"post":{"tags":["BRC20 mint"],"description":"<h2>Coming soon...</h2><br/>Execute the mint order after funding.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"parameters":[{"schema":{"type":"string"},"in":"path","name":"orderId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}}}}}}}},"/v1/brc20/mint/order/{orderId}":{"get":{"tags":["BRC20 mint"],"description":"<h2>Coming soon...</h2><br/>Check the status of a mint order.","parameters":[{"schema":{"type":"string"},"in":"path","name":"orderId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}}}}}}}},"/v1/brc20/deploy/estimate":{"post":{"tags":["BRC20 deploy"],"description":"<h2>Coming soon...</h2><br/>Estimate the total cost for deploying a new BRC-20 token.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{}}}}}}},"/v1/brc20/deploy/order":{"post":{"tags":["BRC20 deploy"],"description":"<h2>Coming soon...</h2><br/>Create a BRC-20 deployment order.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}}}}}}}},"/v1/brc20/deploy/order/{orderId}/execute":{"post":{"tags":["BRC20 deploy"],"description":"<h2>Coming soon...</h2><br/>Execute the deployment order after funding.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"parameters":[{"schema":{"type":"string"},"in":"path","name":"orderId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}}}}}}}},"/v1/brc20/deploy/order/{orderId}":{"get":{"tags":["BRC20 deploy"],"description":"<h2>Coming soon...</h2><br/>Check the status of a deploy order.","parameters":[{"schema":{"type":"string"},"in":"path","name":"orderId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}}}}}}}},"/v1/inscriptions/estimate":{"post":{"tags":["Inscriptions"],"description":"<h2>Coming soon...</h2><br/>Estimate total cost for a new inscription order.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}},"example":{}}}}}}},"/v1/inscriptions/order":{"post":{"tags":["Inscriptions"],"description":"<h2>Coming soon...</h2><br/>Create an inscription order (returns a funding address to pay).","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}}}}}}}},"/v1/inscriptions/order/{orderId}/execute":{"post":{"tags":["Inscriptions"],"description":"<h2>Coming soon...</h2><br/>Once funded, finalize (execute) the inscription order.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"parameters":[{"schema":{"type":"string"},"in":"path","name":"orderId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}}}}}}}},"/v1/inscriptions/order/{orderId}":{"get":{"tags":["Inscriptions"],"description":"<h2>Coming soon...</h2><br/>Retrieve status for a given inscription order.","parameters":[{"schema":{"type":"string"},"in":"path","name":"orderId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{}}}}}}}},"/v1/portfolio/register":{"post":{"tags":["Portfolio"],"description":"Register an address to the portfolio for balance tracking.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"assetType":{"type":"string"},"addresses":{"type":"array","items":{"type":"string"}}},"required":["assetType","addresses"]}}},"required":true},"responses":{"200":{"description":"Default Response"}}}},"/v1/portfolio":{"get":{"tags":["Portfolio"],"description":"Get list of addresses from a portfolio.","parameters":[{"schema":{"type":"string"},"in":"query","name":"assetType","required":true},{"schema":{"default":0,"minimum":0,"multipleOf":25,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":25,"minimum":25,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"limit":{"type":"number"},"offset":{"type":"number"},"total":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"assetType":{"enum":["bitcoin"],"type":"string"},"address":{"type":"string"}},"required":["assetType","address"]}}},"required":["limit","offset","total","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/portfolio/history":{"get":{"tags":["Portfolio"],"description":"Get the daily balance history for an address from the portfolio.","parameters":[{"schema":{"type":"string"},"in":"query","name":"address","required":true},{"schema":{"default":0,"minimum":0,"multipleOf":25,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":25,"minimum":25,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"type":"string"},"in":"query","name":"startDate","required":true,"description":"from date, inclusive - (e.g. 2024-08-29)"},{"schema":{"type":"string"},"in":"query","name":"endDate","required":true,"description":"to date, exclusive - (e.g. 2024-09-01)"},{"schema":{"enum":["bitcoin"],"type":"string"},"in":"query","name":"assetType","required":false}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"limit":{"type":"number"},"offset":{"type":"number"},"lastBlockHeight":{"nullable":true,"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"assetType":{"type":"string"},"assetId":{"type":"string"},"address":{"type":"string"},"balance":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}},"date":{"type":"string"}},"required":["assetType","assetId","address","balance","date"]}}},"required":["limit","offset","lastBlockHeight","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/subscription":{"post":{"tags":["Subscription"],"description":"Register a subscription for events.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"webhookEndpoint":{"type":"object","properties":{"url":{"type":"string"}},"required":["url"]},"subscriptionAddressPredicate":{"type":"object","properties":{"addresses":{"type":"array","items":{"type":"string"}}},"required":["addresses"]}},"required":["webhookEndpoint","subscriptionAddressPredicate"]}}},"required":true},"responses":{"200":{"description":"Default Response"}}},"get":{"tags":["Subscription"],"description":"Get registered subscriptions.","parameters":[{"schema":{"default":0,"minimum":0,"multipleOf":25,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":25,"minimum":25,"maximum":25,"type":"number"},"in":"query","name":"limit","required":false}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"limit":{"type":"number"},"offset":{"type":"number"},"total":{"type":"number"},"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"number"},"webhookEndpoint":{"type":"object","properties":{"url":{"type":"string"},"updatedAt":{"type":"string"}},"required":["url","updatedAt"]},"subscriptionAddressPredicate":{"type":"object","properties":{"addresses":{"type":"array","items":{"type":"string"}},"updatedAt":{"type":"string"}},"required":["addresses","updatedAt"]}},"required":["id","webhookEndpoint","subscriptionAddressPredicate"]}}},"required":["limit","offset","total","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v1/subscription/{subscriptionId}":{"delete":{"tags":["Subscription"],"description":"Delete subscriptions.","parameters":[{"schema":{"type":"number"},"in":"path","name":"subscriptionId","required":true}],"responses":{"200":{"description":"Default Response"}}}},"/v2/rpc/bitcoin":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"enum":["getbestblockhash","getblock","getblockchaininfo","getblockcount","getblockfilter","getblockhash","getblockheader","getblockstats","getchaintips","getchaintxstats","getdifficulty","getmempoolancestors","getmempooldescendants","getmempoolentry","getmempoolinfo","getrawmempool","gettxout","gettxoutproof","createrawtransaction","decoderawtransaction","decodescript","getrawtransaction","sendrawtransaction","testmempoolaccept","createmultisig","estimatesmartfee","validateaddress","verifymessage"],"type":"string","example":"getrawtransaction"},"params":{"type":"array","items":{},"example":["6c5ffa32f6942bb82bf36239fb8a6d233c4da6f91bde81869accef2ef6be674e",true]}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getbestblockhash":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getbestblockhash","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getbestblockhash"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getblock":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getblock","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getblock"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getblockchaininfo":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getblockchaininfo","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getblockchaininfo"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getblockcount":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getblockcount","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getblockcount"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getblockfilter":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getblockfilter","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getblockfilter"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getblockhash":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getblockhash","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getblockhash"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getblockheader":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getblockheader","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getblockheader"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getblockstats":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getblockstats","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getblockstats"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getchaintips":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getchaintips","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getchaintips"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getchaintxstats":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getchaintxstats","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getchaintxstats"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getdifficulty":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getdifficulty","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getdifficulty"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getmempoolancestors":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getmempoolancestors","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getmempoolancestors"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getmempooldescendants":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getmempooldescendants","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getmempooldescendants"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getmempoolentry":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getmempoolentry","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getmempoolentry"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getmempoolinfo":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getmempoolinfo","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getmempoolinfo"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getrawmempool":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getrawmempool","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getrawmempool"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/gettxout":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - gettxout","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["gettxout"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/gettxoutproof":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - gettxoutproof","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["gettxoutproof"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/createrawtransaction":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - createrawtransaction","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["createrawtransaction"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/decoderawtransaction":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - decoderawtransaction","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["decoderawtransaction"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/decodescript":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - decodescript","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["decodescript"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/getrawtransaction":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - getrawtransaction","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["getrawtransaction"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/sendrawtransaction":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - sendrawtransaction","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["sendrawtransaction"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/testmempoolaccept":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - testmempoolaccept","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["testmempoolaccept"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/createmultisig":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - createmultisig","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["createmultisig"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/estimatesmartfee":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - estimatesmartfee","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["estimatesmartfee"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/validateaddress":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - validateaddress","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["validateaddress"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/rpc/bitcoin/verifymessage":{"post":{"tags":["Bitcoin RPC"],"description":"JSON RPC - verifymessage","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["verifymessage"]},"params":{"type":"array","items":{}}},"required":["method"]}}},"required":true},"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"result":{},"error":{},"id":{}}}}}}}}},"/v2/runes/address/{address}/balance":{"get":{"tags":["Runes"],"description":"Get confirmed and unconfirmed runes balance.\n        <code>balance</code> fields explained:\n        <ul>\n        <li> <code>confirmedBalance</code> is the rune balance ignoring unconfirmed transactions in mempool.</li>\n          <li> <code>availableBalance</code> is the confirmed balance minus amounts used by any\n          outgoing unconfirmed transaction in mempool.</li>\n          <li> <code>projectedBalance</code> is the final balance if all unconfirmed mempool\n           transactions are confirmed.</li>\n          <li> <code>pendingBalance</code> is a breakdown of the unconfirmed transactions amounts.\n          They represent aggregate amounts for the whole mempool activity, so as more\n          transactions are chained together the amounts will increase.\n            <ul>\n              <li> <code>incomingAmount</code> is the sum of all incoming unconfirmed amounts.</li>\n              <li> <code>outgoingAmount</code> is the sum of all outgoing unconfirmed amounts.</li>\n              <li> <code>netAmount</code> is <code>incoming</code> - <code>outgoing</code>.\n              The <code>netAmount</code> can be negative,\n              when sending more than receiving. It should always match what is expected to be added to\n              the confirmed balance when all unconfirmed transactions are confirmed, which is computed\n              as <code>projectedBalance</code> for convenience.</li>\n            </ul>\n          </li>\n          </ul>\n          ","parameters":[{"schema":{"type":"string"},"in":"query","name":"runeId","required":false},{"schema":{"type":"boolean"},"in":"query","name":"includePricing","required":false},{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","properties":{"balances":{"type":"array","items":{"type":"object","properties":{"runeId":{"type":"string"},"divisibility":{"type":"number"},"symbol":{"type":"string"},"runeName":{"type":"string"},"confirmedBalance":{"description":"Confirmed balance, ignoring mempool","type":"string"},"availableBalance":{"description":"Confirmed balance minus spent in mempool amounts","type":"string"},"projectedBalance":{"description":"Confirmed balance plus unconfirmed amounts. Final balance if all get confirmed.","type":"string"},"pendingBalance":{"description":"Breakdown of unconfirmed/mempool amounts","type":"object","properties":{"incomingAmount":{"description":"Sum of all incoming unconfirmed amounts","type":"string"},"outgoingAmount":{"description":"Sum of all outgoing unconfirmed amounts","type":"string"},"netAmount":{"description":"Incoming - Outgoing","type":"string"}},"required":["incomingAmount","outgoingAmount","netAmount"]},"prices":{"type":"object","properties":{"floorPrice":{"type":"object","allOf":[{"type":"object","properties":{"marketplace":{"type":"string"},"percentageChange24h":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange24h"]},{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}]},"lastSalePrice":{"type":"object","allOf":[{"type":"object","properties":{"marketplace":{"type":"string"}}},{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}]}},"required":["floorPrice","lastSalePrice"]},"volume24h":{"type":"object","allOf":[{"type":"object","properties":{"percentageChange":{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}},"required":["percentageChange"]},{"type":"object","properties":{"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}}}]}},"required":["runeId","confirmedBalance","availableBalance","projectedBalance","pendingBalance"]}},"indexerHeight":{"description":"Last height indexed by the runes indexer","type":"number"}},"required":["balances","indexerHeight"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v2/runes/{identifier}/historical-floor-prices":{"get":{"tags":["Runes"],"description":"Get historical floor prices for a rune (V2).\n        Returns per-timestamp entries with marketplace breakdown (e.g. magiceden, dotswap).\n        <code>timestamp</code> is the timestamp of the floor price.\n        <code>floorPrices</code> fields explained:\n        <ul>\n        <li> <code>marketplace</code> is the marketplace where the floor price was observed.</li>\n        <li> <code>valueInSats</code> is the floor price in sats.</li>\n        <li> <code>valueInUsd</code> is the floor price in USD.</li>\n        </ul>\n        ","parameters":[{"schema":{"type":"string"},"in":"query","name":"fromTimestamp","required":true,"description":"ISO timestamp - start of range (e.g. 2024-08-29T03:09:35.236Z)"},{"schema":{"type":"string"},"in":"query","name":"toTimestamp","required":false,"description":"ISO timestamp - end of range (defaults to now)"},{"schema":{"type":"string"},"in":"path","name":"identifier","required":true,"description":"Rune identifier (rune id or rune name)"}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"timestamp":{"type":"string"},"floorPrices":{"type":"array","items":{"type":"object","properties":{"marketplace":{"type":"string"},"valueInSats":{"type":"string"},"valueInUsd":{"type":"string"}},"required":["marketplace","valueInSats"]}}},"required":["timestamp","floorPrices"]}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v2/ordinals/collections/{collectionId}/historical-floor-prices":{"get":{"tags":["Ordinals"],"description":"Get historical floor prices for an Ordinals collection.","parameters":[{"schema":{"type":"string"},"in":"query","name":"fromTimestamp","required":true,"description":"ISO timestamp - no older than 1 year ago (e.g. 2024-08-29T03:09:35.236Z)"},{"schema":{"type":"string"},"in":"query","name":"toTimestamp","required":false,"description":"ISO timestamp - up until now / not in the future"},{"schema":{"type":"string"},"examples":{"wzrds":{"value":"wzrds"},"bitcoin-puppets":{"value":"bitcoin-puppets"}},"in":"path","name":"collectionId","required":true}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"timestamp":{"type":"string"},"floorPrices":{"type":"array","items":{"type":"object","properties":{"marketplace":{"type":"string"},"valueInSats":{"type":"number"},"valueInUsd":{"type":"string"}}}}},"required":["timestamp","floorPrices"]}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}},"/v2/bitcoin/address/{address}/utxo":{"get":{"tags":["Bitcoin"],"description":"Mempool-aware: Retrieve UTXOs. This endpoint considers both confirmed and unconfirmed\n         utxos. When a confirmed UTXO is spent in the mempool, it will not be returned here as its no longer a utxo.\n          To query confirmed-only endpoint use <code> /v1/bitcoin/address/:address/utxo</code>.\n           <br>\n          Iterate using offset if hasMore is true.\n           <br><br>\n          <b>UTXO filtering:</b><br>\n          <code>excludeNonVoidProtocolInscriptionUtxos</code> - When true, excludes UTXOs that hold valuable\n          inscriptions, but can include void protocol inscriptions (e.g. BRC-20, TAP spent inscriptions).<br>\n          <code>excludeAllInscriptionUtxos</code> - When true, excludes all inscription-bearing UTXOs,\n           including both valuable inscriptions(non-void protocol inscriptions) and void protocol inscriptions.\n            Implies <code>excludeNonVoidProtocolInscriptionUtxos=true</code>.","parameters":[{"schema":{"default":0,"minimum":0,"type":"number"},"in":"query","name":"offset","required":false},{"schema":{"default":60,"minimum":25,"maximum":5000,"type":"number"},"in":"query","name":"limit","required":false},{"schema":{"default":false,"type":"boolean"},"in":"query","name":"excludeNonVoidProtocolInscriptionUtxos","required":false},{"schema":{"default":false,"type":"boolean"},"in":"query","name":"excludeAllInscriptionUtxos","required":false},{"schema":{"minLength":10,"default":"bc1q0egjvlcfq77cxd9kvpgppyuxckzvws46e3sxch","format":"BitcoinAddress","type":"string"},"in":"path","name":"address","required":true}],"responses":{"200":{"description":"Paginated Utxo list","content":{"application/json":{"schema":{"description":"Paginated Utxo list","type":"object","properties":{"hasMore":{"type":"boolean"},"items":{"type":"array","items":{"type":"object","properties":{"txid":{"type":"string"},"vout":{"type":"number"},"value":{"type":"number"},"status":{"type":"object","properties":{"confirmed":{"type":"boolean"},"blockHeight":{"type":"number"},"blockHash":{"type":"string"},"blockTime":{"type":"number"}},"required":["confirmed"]}},"required":["txid","vout","value","status"]}}},"required":["hasMore","items"]}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"description":"Invalid input","type":"string"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"description":"Unauthorized","type":"string"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"description":"Not found","type":"string"}}}},"429":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"description":"Rate limit exceeded","type":"string"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"description":"Internal server error","type":"string"}}}}}}}},"servers":[{"url":"https://api.secretkeylabs.io"}],"security":[{"apiKey":[]}],"tags":[{"name":"Bitcoin"},{"name":"Ordinals"}]}