77 KiB
brk-client / BrkClient
Class: BrkClient
Defined in: Developer/brk/modules/brk-client/index.js:7504
Main BRK client with series tree and API methods
Extends
BrkClientBase
Constructors
Constructor
new BrkClient(
options):BrkClient
Defined in: Developer/brk/modules/brk-client/index.js:8684
Parameters
options
string | BrkClientOptions
Returns
BrkClient
Overrides
BrkClientBase.constructor
Properties
_browserCache
_browserCache:
Cache|null
Defined in: Developer/brk/modules/brk-client/index.js:1777
Inherited from
BrkClientBase._browserCache
_browserCachePromise
_browserCachePromise:
Promise<Cache|null>
Defined in: Developer/brk/modules/brk-client/index.js:1775
Inherited from
BrkClientBase._browserCachePromise
_memCache
_memCache:
Map<string,_MemEntry<unknown>>
Defined in: Developer/brk/modules/brk-client/index.js:1784
Inherited from
BrkClientBase._memCache
series
series:
SeriesTree
Defined in: Developer/brk/modules/brk-client/index.js:8687
Methods
_fetchSeriesData()
_fetchSeriesData<
T>(path,onValue?):Promise<DateSeriesData<T>>
Defined in: Developer/brk/modules/brk-client/index.js:2013
Fetch series data and wrap with helper methods (internal)
Type Parameters
T
T
Parameters
path
string
onValue?
(value) => void
Returns
Promise<DateSeriesData<T>>
Inherited from
BrkClientBase._fetchSeriesData
_getCached()
_getCached<
T>(path,parse,options?):Promise<T>
Defined in: Developer/brk/modules/brk-client/index.js:1848
Make a GET request with layered caching.
Contract:
- The returned Promise resolves with the freshest value (post-revalidation).
onValuefires once with the freshest value, or twice if a stale snapshot could be shown first (stale-while-revalidate). On a 304 there is no second fire.
Layers:
- L1 (memCache): in-memory parsed values keyed by URL+ETag. Lets 304s skip the parse entirely.
- L2 (browserCache): Cache API, survives reload and feeds onValue fast on cold start.
Type Parameters
T
T
Parameters
path
string
parse
(res) => Promise<T>
Response body reader
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<T>
Inherited from
BrkClientBase._getCached
_memGet()
_memGet<
T>(key):_MemEntry<T> |undefined
Defined in: Developer/brk/modules/brk-client/index.js:1792
Type Parameters
T
T
Parameters
key
string
Returns
_MemEntry<T> | undefined
Inherited from
BrkClientBase._memGet
_memSet()
_memSet(
key,etag,value):void
Defined in: Developer/brk/modules/brk-client/index.js:1806
Parameters
key
string
etag
string | null
value
unknown
Returns
void
Inherited from
BrkClientBase._memSet
dateToIndex()
dateToIndex(
index,d):number
Defined in: Developer/brk/modules/brk-client/index.js:8676
Convert a Date to an index value for date-based indexes.
Parameters
index
The index type
d
Date
The date to convert
Returns
number
get()
get(
path,options?):Promise<Response>
Defined in: Developer/brk/modules/brk-client/index.js:1821
Parameters
path
string
options?
signal?
AbortSignal
Returns
Promise<Response>
Inherited from
BrkClientBase.get
getAddress()
getAddress(
address,options?):Promise<AddrStats>
Defined in: Developer/brk/modules/brk-client/index.js:10910
Address information
Retrieve address information including balance and transaction counts. Supports all standard Bitcoin address types (P2PKH, P2SH, P2WPKH, P2WSH, P2TR).
Endpoint: GET /api/address/{address}
Parameters
address
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<AddrStats>
getAddressConfirmedTxs()
getAddressConfirmedTxs(
address,options?):Promise<Transaction[]>
Defined in: Developer/brk/modules/brk-client/index.js:10946
Address confirmed transactions
Get the first 25 confirmed transactions for an address. For pagination, use the path-style form /txs/chain/{last_seen_txid}.
Endpoint: GET /api/address/{address}/txs/chain
Parameters
address
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<Transaction[]>
getAddressConfirmedTxsAfter()
getAddressConfirmedTxsAfter(
address,after_txid,options?):Promise<Transaction[]>
Defined in: Developer/brk/modules/brk-client/index.js:10965
Address confirmed transactions (paginated)
Get the next 25 confirmed transactions strictly older than after_txid (Esplora-canonical pagination form, matches mempool.space).
Endpoint: GET /api/address/{address}/txs/chain/{after_txid}
Parameters
address
string
after_txid
string
Last txid from the previous page (return transactions strictly older than this)
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<Transaction[]>
getAddressMempoolTxs()
getAddressMempoolTxs(
address,options?):Promise<Transaction[]>
Defined in: Developer/brk/modules/brk-client/index.js:10983
Address mempool transactions
Get unconfirmed transactions for an address from the mempool, newest first (up to 50).
Endpoint: GET /api/address/{address}/txs/mempool
Parameters
address
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<Transaction[]>
getAddressTxs()
getAddressTxs(
address,options?):Promise<Transaction[]>
Defined in: Developer/brk/modules/brk-client/index.js:10928
Address transactions
Get transaction history for an address, sorted with newest first. Returns up to 50 entries: mempool transactions first, then confirmed transactions filling the remainder. To paginate further confirmed transactions, use /address/{address}/txs/chain/{last_seen_txid}.
Endpoint: GET /api/address/{address}/txs
Parameters
address
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<Transaction[]>
getAddressUtxos()
getAddressUtxos(
address,options?):Promise<Utxo[]>
Defined in: Developer/brk/modules/brk-client/index.js:11001
Address UTXOs
Get unspent transaction outputs (UTXOs) for an address. Returns txid, vout, value, and confirmation status for each UTXO.
Endpoint: GET /api/address/{address}/utxo
Parameters
address
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<Utxo[]>
getApi()
getApi(
options?):Promise<any>
Defined in: Developer/brk/modules/brk-client/index.js:12038
Compact OpenAPI specification
Compact OpenAPI specification optimized for LLM consumption. Removes redundant fields while preserving essential API information. Full spec available at /openapi.json.
Endpoint: GET /api.json
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<any>
getBlock()
getBlock(
hash,options?):Promise<BlockInfo>
Defined in: Developer/brk/modules/brk-client/index.js:11037
Block information
Retrieve block information by block hash. Returns block metadata including height, timestamp, difficulty, size, weight, and transaction count.
Endpoint: GET /api/block/{hash}
Parameters
hash
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<BlockInfo>
getBlockByHeight()
getBlockByHeight(
height,options?):Promise<string>
Defined in: Developer/brk/modules/brk-client/index.js:11091
Block hash by height
Retrieve the block hash at a given height. Returns the hash as plain text.
Endpoint: GET /api/block-height/{height}
Parameters
height
number
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<string>
getBlockByTimestamp()
getBlockByTimestamp(
timestamp,options?):Promise<BlockTimestamp>
Defined in: Developer/brk/modules/brk-client/index.js:11109
Block by timestamp
Find the block closest to a given UNIX timestamp.
Endpoint: GET /api/v1/mining/blocks/timestamp/{timestamp}
Parameters
timestamp
number
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<BlockTimestamp>
getBlockFeeRates()
getBlockFeeRates(
time_period,options?):Promise<BlockFeeRatesEntry[]>
Defined in: Developer/brk/modules/brk-client/index.js:11600
Block fee rates
Get block fee rate percentiles (min, 10th, 25th, median, 75th, 90th, max) for a time period. Valid periods: 24h, 3d, 1w, 1m, 3m, 6m, 1y, 2y, 3y.
Endpoint: GET /api/v1/mining/blocks/fee-rates/{time_period}
Parameters
time_period
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<BlockFeeRatesEntry[]>
getBlockFees()
getBlockFees(
time_period,options?):Promise<BlockFeesEntry[]>
Defined in: Developer/brk/modules/brk-client/index.js:11564
Block fees
Get average total fees per block for a time period. Valid periods: 24h, 3d, 1w, 1m, 3m, 6m, 1y, 2y, 3y.
Endpoint: GET /api/v1/mining/blocks/fees/{time_period}
Parameters
time_period
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<BlockFeesEntry[]>
getBlockHeader()
getBlockHeader(
hash,options?):Promise<string>
Defined in: Developer/brk/modules/brk-client/index.js:11073
Block header
Returns the hex-encoded 80-byte block header.
Endpoint: GET /api/block/{hash}/header
Parameters
hash
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<string>
getBlockRaw()
getBlockRaw(
hash,options?):Promise<Uint8Array<ArrayBufferLike>>
Defined in: Developer/brk/modules/brk-client/index.js:11127
Raw block
Returns the raw block data in binary format.
Endpoint: GET /api/block/{hash}/raw
Parameters
hash
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<Uint8Array<ArrayBufferLike>>
getBlockRewards()
getBlockRewards(
time_period,options?):Promise<BlockRewardsEntry[]>
Defined in: Developer/brk/modules/brk-client/index.js:11582
Block rewards
Get average coinbase reward (subsidy + fees) per block for a time period. Valid periods: 24h, 3d, 1w, 1m, 3m, 6m, 1y, 2y, 3y.
Endpoint: GET /api/v1/mining/blocks/rewards/{time_period}
Parameters
time_period
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<BlockRewardsEntry[]>
getBlocks()
getBlocks(
options?):Promise<BlockInfo[]>
Defined in: Developer/brk/modules/brk-client/index.js:11267
Recent blocks
Retrieve the last 10 blocks. Returns block metadata for each block.
Endpoint: GET /api/blocks
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<BlockInfo[]>
getBlocksFromHeight()
getBlocksFromHeight(
height,options?):Promise<BlockInfo[]>
Defined in: Developer/brk/modules/brk-client/index.js:11285
Blocks from height
Retrieve up to 10 blocks going backwards from the given height. For example, height=100 returns blocks 100, 99, 98, ..., 91. Height=0 returns only block 0.
Endpoint: GET /api/blocks/{height}
Parameters
height
number
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<BlockInfo[]>
getBlockSizesWeights()
getBlockSizesWeights(
time_period,options?):Promise<BlockSizesWeights>
Defined in: Developer/brk/modules/brk-client/index.js:11618
Block sizes and weights
Get average block sizes and weights for a time period. Valid periods: 24h, 3d, 1w, 1m, 3m, 6m, 1y, 2y, 3y.
Endpoint: GET /api/v1/mining/blocks/sizes-weights/{time_period}
Parameters
time_period
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<BlockSizesWeights>
getBlockStatus()
getBlockStatus(
hash,options?):Promise<BlockStatus>
Defined in: Developer/brk/modules/brk-client/index.js:11145
Block status
Retrieve the status of a block. Returns whether the block is in the best chain and, if so, its height and the hash of the next block.
Endpoint: GET /api/block/{hash}/status
Parameters
hash
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<BlockStatus>
getBlocksV1()
getBlocksV1(
options?):Promise<BlockInfoV1[]>
Defined in: Developer/brk/modules/brk-client/index.js:11301
Recent blocks with extras
Retrieve the last 15 blocks with extended data including pool identification and fee statistics.
Endpoint: GET /api/v1/blocks
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<BlockInfoV1[]>
getBlocksV1FromHeight()
getBlocksV1FromHeight(
height,options?):Promise<BlockInfoV1[]>
Defined in: Developer/brk/modules/brk-client/index.js:11319
Blocks from height with extras
Retrieve up to 15 blocks with extended data going backwards from the given height.
Endpoint: GET /api/v1/blocks/{height}
Parameters
height
number
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<BlockInfoV1[]>
getBlockTipHash()
getBlockTipHash(
options?):Promise<string>
Defined in: Developer/brk/modules/brk-client/index.js:11177
Block tip hash
Returns the hash of the last block.
Endpoint: GET /api/blocks/tip/hash
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<string>
getBlockTipHeight()
getBlockTipHeight(
options?):Promise<number>
Defined in: Developer/brk/modules/brk-client/index.js:11161
Block tip height
Returns the height of the last block.
Endpoint: GET /api/blocks/tip/height
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<number>
getBlockTxid()
getBlockTxid(
hash,index,options?):Promise<string>
Defined in: Developer/brk/modules/brk-client/index.js:11196
Transaction ID at index
Retrieve a single transaction ID at a specific index within a block. Returns plain text txid.
Endpoint: GET /api/block/{hash}/txid/{index}
Parameters
hash
string
Bitcoin block hash
index
number
Transaction index within the block (0-based)
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<string>
getBlockTxids()
getBlockTxids(
hash,options?):Promise<string[]>
Defined in: Developer/brk/modules/brk-client/index.js:11214
Block transaction IDs
Retrieve all transaction IDs in a block. Returns an array of txids in block order.
Endpoint: GET /api/block/{hash}/txids
Parameters
hash
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<string[]>
getBlockTxs()
getBlockTxs(
hash,options?):Promise<Transaction[]>
Defined in: Developer/brk/modules/brk-client/index.js:11232
Block transactions
Retrieve transactions in a block by block hash. Returns up to 25 transactions starting from index 0.
Endpoint: GET /api/block/{hash}/txs
Parameters
hash
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<Transaction[]>
getBlockTxsFromIndex()
getBlockTxsFromIndex(
hash,start_index,options?):Promise<Transaction[]>
Defined in: Developer/brk/modules/brk-client/index.js:11251
Block transactions (paginated)
Retrieve transactions in a block by block hash, starting from the specified index. Returns up to 25 transactions at a time.
Endpoint: GET /api/block/{hash}/txs/{start_index}
Parameters
hash
string
Bitcoin block hash
start_index
number
Starting transaction index within the block (0-based)
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<Transaction[]>
getBlockV1()
getBlockV1(
hash,options?):Promise<BlockInfoV1>
Defined in: Developer/brk/modules/brk-client/index.js:11055
Block (v1)
Returns block details with extras by hash.
Endpoint: GET /api/v1/block/{hash}
Parameters
hash
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<BlockInfoV1>
getBytes()
getBytes(
path,options?):Promise<Uint8Array<ArrayBufferLike>>
Defined in: Developer/brk/modules/brk-client/index.js:1941
Make a GET request expecting binary data (application/octet-stream).
Cached and supports onValue, same as getJson.
Parameters
path
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<Uint8Array<ArrayBufferLike>>
Inherited from
BrkClientBase.getBytes
getCpfp()
getCpfp(
txid,options?):Promise<CpfpInfo>
Defined in: Developer/brk/modules/brk-client/index.js:11808
CPFP info
Returns ancestors and descendants for a CPFP (Child Pays For Parent) transaction, including the effective fee rate of the package.
Endpoint: GET /api/v1/cpfp/{txid}
Parameters
txid
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<CpfpInfo>
getDifficultyAdjustment()
getDifficultyAdjustment(
options?):Promise<DifficultyAdjustment>
Defined in: Developer/brk/modules/brk-client/index.js:10855
Difficulty adjustment
Get current difficulty adjustment progress and estimates.
Endpoint: GET /api/v1/difficulty-adjustment
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<DifficultyAdjustment>
getDifficultyAdjustments()
getDifficultyAdjustments(
options?):Promise<DifficultyAdjustmentEntry[]>
Defined in: Developer/brk/modules/brk-client/index.js:11510
Difficulty adjustments (all time)
Get historical difficulty adjustments including timestamp, block height, difficulty value, and percentage change.
Endpoint: GET /api/v1/mining/difficulty-adjustments
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<DifficultyAdjustmentEntry[]>
getDifficultyAdjustmentsByPeriod()
getDifficultyAdjustmentsByPeriod(
time_period,options?):Promise<DifficultyAdjustmentEntry[]>
Defined in: Developer/brk/modules/brk-client/index.js:11528
Difficulty adjustments
Get historical difficulty adjustments for a time period. Valid periods: 24h, 3d, 1w, 1m, 3m, 6m, 1y, 2y, 3y.
Endpoint: GET /api/v1/mining/difficulty-adjustments/{time_period}
Parameters
time_period
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<DifficultyAdjustmentEntry[]>
getDiskUsage()
getDiskUsage(
options?):Promise<DiskUsage>
Defined in: Developer/brk/modules/brk-client/index.js:10527
Disk usage
Returns the disk space used by BRK and Bitcoin data.
Endpoint: GET /api/server/disk
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<DiskUsage>
getFullrbfReplacements()
getFullrbfReplacements(
options?):Promise<ReplacementNode[]>
Defined in: Developer/brk/modules/brk-client/index.js:11760
Recent full-RBF replacements
Like /api/v1/replacements, but limited to trees where at least one predecessor was non-signaling (full-RBF).
Endpoint: GET /api/v1/fullrbf/replacements
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<ReplacementNode[]>
getHashrate()
getHashrate(
options?):Promise<HashrateSummary>
Defined in: Developer/brk/modules/brk-client/index.js:11476
Network hashrate (all time)
Get network hashrate and difficulty data for all time.
Endpoint: GET /api/v1/mining/hashrate
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<HashrateSummary>
getHashrateByPeriod()
getHashrateByPeriod(
time_period,options?):Promise<HashrateSummary>
Defined in: Developer/brk/modules/brk-client/index.js:11494
Network hashrate
Get network hashrate and difficulty data for a time period. Valid periods: 24h, 3d, 1w, 1m, 3m, 6m, 1y, 2y, 3y.
Endpoint: GET /api/v1/mining/hashrate/{time_period}
Parameters
time_period
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<HashrateSummary>
getHealth()
getHealth(
options?):Promise<Health>
Defined in: Developer/brk/modules/brk-client/index.js:10485
Health check
Returns the health status of the API server, including uptime information.
Endpoint: GET /health
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<Health>
getHistoricalPrice()
getHistoricalPrice(
timestamp?,options?):Promise<HistoricalPrice>
Defined in: Developer/brk/modules/brk-client/index.js:10889
Historical price
Get historical BTC/USD price. Optionally specify a UNIX timestamp to get the price at that time.
Endpoint: GET /api/v1/historical-price
Parameters
timestamp?
number
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<HistoricalPrice>
getIndexes()
getIndexes(
options?):Promise<IndexInfo[]>
Defined in: Developer/brk/modules/brk-client/index.js:10569
List available indexes
Returns all available indexes with their accepted query aliases. Use any alias when querying series.
Endpoint: GET /api/series/indexes
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<IndexInfo[]>
getJson()
getJson<
T>(path,options?):Promise<T>
Defined in: Developer/brk/modules/brk-client/index.js:1919
Make a GET request expecting a JSON response. Cached and supports onValue.
Type Parameters
T
T
Parameters
path
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<T>
Inherited from
BrkClientBase.getJson
getLivePrice()
getLivePrice(
options?):Promise<number>
Defined in: Developer/brk/modules/brk-client/index.js:11774
Live BTC/USD price
Returns the current BTC/USD price in dollars, derived from on-chain round-dollar output patterns in the last 12 blocks plus mempool.
Endpoint: GET /api/mempool/price
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<number>
getMempool()
getMempool(
options?):Promise<MempoolInfo>
Defined in: Developer/brk/modules/brk-client/index.js:11682
Mempool statistics
Get current mempool statistics including transaction count, total vsize, total fees, and fee histogram.
Endpoint: GET /api/mempool
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<MempoolInfo>
getMempoolBlocks()
getMempoolBlocks(
options?):Promise<MempoolBlock[]>
Defined in: Developer/brk/modules/brk-client/index.js:11634
Projected mempool blocks
Get projected blocks from the mempool for fee estimation.
Endpoint: GET /api/v1/fees/mempool-blocks
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<MempoolBlock[]>
getMempoolHash()
getMempoolHash(
options?):Promise<number>
Defined in: Developer/brk/modules/brk-client/index.js:11696
Mempool content hash
Returns an opaque u64 that changes whenever the projected next block changes. Same value as the mempool ETag. Useful as a freshness/liveness signal: if it stays constant for tens of seconds on a live network, the mempool sync loop has stalled.
Endpoint: GET /api/mempool/hash
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<number>
getMempoolRecent()
getMempoolRecent(
options?):Promise<MempoolRecentTx[]>
Defined in: Developer/brk/modules/brk-client/index.js:11728
Recent mempool transactions
Get the last 10 transactions to enter the mempool.
Endpoint: GET /api/mempool/recent
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<MempoolRecentTx[]>
getMempoolTxids()
getMempoolTxids(
options?):Promise<string[]>
Defined in: Developer/brk/modules/brk-client/index.js:11712
Mempool transaction IDs
Get all transaction IDs currently in the mempool.
Endpoint: GET /api/mempool/txids
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<string[]>
getOpenapi()
getOpenapi(
options?):Promise<any>
Defined in: Developer/brk/modules/brk-client/index.js:12024
OpenAPI specification
Full OpenAPI 3.1 specification for this API.
Endpoint: GET /openapi.json
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<any>
getPool()
getPool(
slug,options?):Promise<PoolDetail>
Defined in: Developer/brk/modules/brk-client/index.js:11371
Mining pool details
Get detailed information about a specific mining pool including block counts and shares for different time periods.
Endpoint: GET /api/v1/mining/pool/{slug}
Parameters
slug
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<PoolDetail>
getPoolBlocks()
getPoolBlocks(
slug,options?):Promise<BlockInfoV1[]>
Defined in: Developer/brk/modules/brk-client/index.js:11441
Mining pool blocks
Get the 10 most recent blocks mined by a specific pool.
Endpoint: GET /api/v1/mining/pool/{slug}/blocks
Parameters
slug
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<BlockInfoV1[]>
getPoolBlocksFrom()
getPoolBlocksFrom(
slug,height,options?):Promise<BlockInfoV1[]>
Defined in: Developer/brk/modules/brk-client/index.js:11460
Mining pool blocks from height
Get 10 blocks mined by a specific pool before (and including) the given height.
Endpoint: GET /api/v1/mining/pool/{slug}/blocks/{height}
Parameters
slug
height
number
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<BlockInfoV1[]>
getPoolHashrate()
getPoolHashrate(
slug,options?):Promise<PoolHashrateEntry[]>
Defined in: Developer/brk/modules/brk-client/index.js:11423
Mining pool hashrate
Get hashrate history for a specific mining pool.
Endpoint: GET /api/v1/mining/pool/{slug}/hashrate
Parameters
slug
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<PoolHashrateEntry[]>
getPools()
getPools(
options?):Promise<PoolInfo[]>
Defined in: Developer/brk/modules/brk-client/index.js:11335
List all mining pools
Get list of all known mining pools with their identifiers.
Endpoint: GET /api/v1/mining/pools
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<PoolInfo[]>
getPoolsHashrate()
getPoolsHashrate(
options?):Promise<PoolHashrateEntry[]>
Defined in: Developer/brk/modules/brk-client/index.js:11387
All pools hashrate (all time)
Get hashrate data for all mining pools.
Endpoint: GET /api/v1/mining/hashrate/pools
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<PoolHashrateEntry[]>
getPoolsHashrateByPeriod()
getPoolsHashrateByPeriod(
time_period,options?):Promise<PoolHashrateEntry[]>
Defined in: Developer/brk/modules/brk-client/index.js:11405
All pools hashrate
Get hashrate data for all mining pools for a time period. Valid periods: 1m, 3m, 6m, 1y, 2y, 3y.
Endpoint: GET /api/v1/mining/hashrate/pools/{time_period}
Parameters
time_period
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<PoolHashrateEntry[]>
getPoolStats()
getPoolStats(
time_period,options?):Promise<PoolsSummary>
Defined in: Developer/brk/modules/brk-client/index.js:11353
Mining pool statistics
Get mining pool statistics for a time period. Valid periods: 24h, 3d, 1w, 1m, 3m, 6m, 1y, 2y, 3y.
Endpoint: GET /api/v1/mining/pools/{time_period}
Parameters
time_period
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<PoolsSummary>
getPreciseFees()
getPreciseFees(
options?):Promise<RecommendedFees>
Defined in: Developer/brk/modules/brk-client/index.js:11666
Precise recommended fees
Get recommended fee rates with up to 3 decimal places.
Endpoint: GET /api/v1/fees/precise
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<RecommendedFees>
getPrices()
getPrices(
options?):Promise<Prices>
Defined in: Developer/brk/modules/brk-client/index.js:10871
Current BTC price
Returns bitcoin latest price (on-chain derived, USD only).
Endpoint: GET /api/v1/prices
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<Prices>
getRecommendedFees()
getRecommendedFees(
options?):Promise<RecommendedFees>
Defined in: Developer/brk/modules/brk-client/index.js:11650
Recommended fees
Get recommended fee rates for different confirmation targets.
Endpoint: GET /api/v1/fees/recommended
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<RecommendedFees>
getReplacements()
getReplacements(
options?):Promise<ReplacementNode[]>
Defined in: Developer/brk/modules/brk-client/index.js:11744
Recent RBF replacements
Returns up to 25 most-recent RBF replacement trees across the whole mempool. Each entry has the same shape as tx_rbf().replacements.
Endpoint: GET /api/v1/replacements
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<ReplacementNode[]>
getRewardStats()
getRewardStats(
block_count,options?):Promise<RewardStats>
Defined in: Developer/brk/modules/brk-client/index.js:11546
Mining reward statistics
Get mining reward statistics for the last N blocks including total rewards, fees, and transaction count.
Endpoint: GET /api/v1/mining/reward-stats/{block_count}
Parameters
block_count
number
Number of recent blocks to include
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<RewardStats>
getSeries()
getSeries(
series,index,start?,end?,limit?,format?,options?):Promise<string|AnySeriesData>
Defined in: Developer/brk/modules/brk-client/index.js:10648
Get series data
Fetch data for a specific series at the given index. Use query parameters to filter by date range and format (json/csv).
Endpoint: GET /api/series/{series}/{index}
Parameters
series
string
Series name
index
Aggregation index
start?
number
Inclusive start: integer index, date (YYYY-MM-DD), or timestamp (ISO 8601). Negative integers count from end. Aliases: from, f, s
end?
number
Exclusive end: integer index, date (YYYY-MM-DD), or timestamp (ISO 8601). Negative integers count from end. Aliases: to, t, e
limit?
number
Maximum number of values to return (ignored if end is set). Aliases: count, c, l
format?
Format of the output
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<string | AnySeriesData>
getSeriesBulk()
getSeriesBulk(
series,index,start?,end?,limit?,format?,options?):Promise<string|AnySeriesData[]>
Defined in: Developer/brk/modules/brk-client/index.js:10755
Bulk series data
Fetch multiple series in a single request. Supports filtering by index and date range. Returns an array of SeriesData objects. For a single series, use get_series instead.
Endpoint: GET /api/series/bulk
Parameters
series
string
Requested series
index
Index to query
start?
number
Inclusive start: integer index, date (YYYY-MM-DD), or timestamp (ISO 8601). Negative integers count from end. Aliases: from, f, s
end?
number
Exclusive end: integer index, date (YYYY-MM-DD), or timestamp (ISO 8601). Negative integers count from end. Aliases: to, t, e
limit?
number
Maximum number of values to return (ignored if end is set). Aliases: count, c, l
format?
Format of the output
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<string | AnySeriesData[]>
getSeriesCount()
getSeriesCount(
options?):Promise<SeriesCount[]>
Defined in: Developer/brk/modules/brk-client/index.js:10555
Series count
Returns the number of series available per index type.
Endpoint: GET /api/series/count
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<SeriesCount[]>
getSeriesData()
getSeriesData(
series,index,start?,end?,limit?,format?,options?):Promise<string|boolean[]>
Defined in: Developer/brk/modules/brk-client/index.js:10676
Get raw series data
Returns just the data array without the SeriesData wrapper. Supports the same range and format parameters as the standard endpoint.
Endpoint: GET /api/series/{series}/{index}/data
Parameters
series
string
Series name
index
Aggregation index
start?
number
Inclusive start: integer index, date (YYYY-MM-DD), or timestamp (ISO 8601). Negative integers count from end. Aliases: from, f, s
end?
number
Exclusive end: integer index, date (YYYY-MM-DD), or timestamp (ISO 8601). Negative integers count from end. Aliases: to, t, e
limit?
number
Maximum number of values to return (ignored if end is set). Aliases: count, c, l
format?
Format of the output
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<string | boolean[]>
getSeriesInfo()
getSeriesInfo(
series,options?):Promise<SeriesInfo>
Defined in: Developer/brk/modules/brk-client/index.js:10627
Get series info
Returns the supported indexes and value type for the specified series.
Endpoint: GET /api/series/{series}
Parameters
series
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<SeriesInfo>
getSeriesLatest()
getSeriesLatest(
series,index,options?):Promise<any>
Defined in: Developer/brk/modules/brk-client/index.js:10700
Get latest series value
Returns the single most recent value for a series, unwrapped (not inside a SeriesData object).
Endpoint: GET /api/series/{series}/{index}/latest
Parameters
series
string
Series name
index
Aggregation index
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<any>
getSeriesLen()
getSeriesLen(
series,index,options?):Promise<number>
Defined in: Developer/brk/modules/brk-client/index.js:10717
Get series data length
Returns the total number of data points for a series at the given index.
Endpoint: GET /api/series/{series}/{index}/len
Parameters
series
string
Series name
index
Aggregation index
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<number>
getSeriesTree()
getSeriesTree(
options?):Promise<TreeNode>
Defined in: Developer/brk/modules/brk-client/index.js:10541
Series catalog
Returns the complete hierarchical catalog of available series organized as a tree structure. Series are grouped by categories and subcategories.
Endpoint: GET /api/series
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<TreeNode>
getSeriesVersion()
getSeriesVersion(
series,index,options?):Promise<number>
Defined in: Developer/brk/modules/brk-client/index.js:10734
Get series version
Returns the current version of a series. Changes when the series data is updated.
Endpoint: GET /api/series/{series}/{index}/version
Parameters
series
string
Series name
index
Aggregation index
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<number>
getSyncStatus()
getSyncStatus(
options?):Promise<SyncStatus>
Defined in: Developer/brk/modules/brk-client/index.js:10513
Sync status
Returns the sync status of the indexer, including indexed height, tip height, blocks behind, and last indexed timestamp.
Endpoint: GET /api/server/sync
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<SyncStatus>
getText()
getText(
path,options?):Promise<string>
Defined in: Developer/brk/modules/brk-client/index.js:1930
Make a GET request expecting a text response (text/plain, text/csv, ...).
Cached and supports onValue, same as getJson.
Parameters
path
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<string>
Inherited from
BrkClientBase.getText
getTransactionTimes()
getTransactionTimes(
txId,options?):Promise<number[]>
Defined in: Developer/brk/modules/brk-client/index.js:11989
Transaction first-seen times
Returns timestamps when transactions were first seen in the mempool. Returns 0 for mined or unknown transactions.
Endpoint: GET /api/v1/transaction-times
Parameters
txId
string[]
Transaction IDs to look up (max 250 per request).
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<number[]>
getTx()
getTx(
txid,options?):Promise<Transaction>
Defined in: Developer/brk/modules/brk-client/index.js:11844
Transaction information
Retrieve complete transaction data by transaction ID (txid). Returns inputs, outputs, fee, size, and confirmation status.
Endpoint: GET /api/tx/{txid}
Parameters
txid
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<Transaction>
getTxByIndex()
getTxByIndex(
index,options?):Promise<string>
Defined in: Developer/brk/modules/brk-client/index.js:11790
Txid by index
Retrieve the transaction ID (txid) at a given global transaction index. Returns the txid as plain text.
Endpoint: GET /api/tx-index/{index}
Parameters
index
number
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<string>
getTxHex()
getTxHex(
txid,options?):Promise<string>
Defined in: Developer/brk/modules/brk-client/index.js:11862
Transaction hex
Retrieve the raw transaction as a hex-encoded string. Returns the serialized transaction in hexadecimal format.
Endpoint: GET /api/tx/{txid}/hex
Parameters
txid
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<string>
getTxMerkleblockProof()
getTxMerkleblockProof(
txid,options?):Promise<string>
Defined in: Developer/brk/modules/brk-client/index.js:11880
Transaction merkleblock proof
Get the merkleblock proof for a transaction (BIP37 format, hex encoded).
Endpoint: GET /api/tx/{txid}/merkleblock-proof
Parameters
txid
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<string>
getTxMerkleProof()
getTxMerkleProof(
txid,options?):Promise<MerkleProof>
Defined in: Developer/brk/modules/brk-client/index.js:11898
Transaction merkle proof
Get the merkle inclusion proof for a transaction.
Endpoint: GET /api/tx/{txid}/merkle-proof
Parameters
txid
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<MerkleProof>
getTxOutspend()
getTxOutspend(
txid,vout,options?):Promise<TxOutspend>
Defined in: Developer/brk/modules/brk-client/index.js:11917
Output spend status
Get the spending status of a transaction output. Returns whether the output has been spent and, if so, the spending transaction details.
Endpoint: GET /api/tx/{txid}/outspend/{vout}
Parameters
txid
string
Transaction ID
vout
number
Output index
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<TxOutspend>
getTxOutspends()
getTxOutspends(
txid,options?):Promise<TxOutspend[]>
Defined in: Developer/brk/modules/brk-client/index.js:11935
All output spend statuses
Get the spending status of all outputs in a transaction. Returns an array with the spend status for each output.
Endpoint: GET /api/tx/{txid}/outspends
Parameters
txid
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<TxOutspend[]>
getTxRaw()
getTxRaw(
txid,options?):Promise<Uint8Array<ArrayBufferLike>>
Defined in: Developer/brk/modules/brk-client/index.js:11953
Transaction raw
Returns a transaction as binary data.
Endpoint: GET /api/tx/{txid}/raw
Parameters
txid
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<Uint8Array<ArrayBufferLike>>
getTxRbf()
getTxRbf(
txid,options?):Promise<RbfResponse>
Defined in: Developer/brk/modules/brk-client/index.js:11826
RBF replacement history
Returns the RBF replacement tree for a transaction, if any. Both replacements and replaces are null when the tx has no known RBF history within the mempool monitor's retention window.
Endpoint: GET /api/v1/tx/{txid}/rbf
Parameters
txid
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<RbfResponse>
getTxStatus()
getTxStatus(
txid,options?):Promise<TxStatus>
Defined in: Developer/brk/modules/brk-client/index.js:11971
Transaction status
Retrieve the confirmation status of a transaction. Returns whether the transaction is confirmed and, if so, the block height, hash, and timestamp.
Endpoint: GET /api/tx/{txid}/status
Parameters
txid
string
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<TxStatus>
getUrpd()
getUrpd(
cohort,agg?,options?):Promise<Urpd>
Defined in: Developer/brk/modules/brk-client/index.js:10813
Latest URPD
URPD for the most recent available date in the cohort. The response's date field echoes which date was served.
See the URPD tag description for the response shape and agg options.
Endpoint: GET /api/urpd/{cohort}
Parameters
cohort
agg?
Aggregation strategy. Default: raw (no aggregation). Accepts bucket as alias.
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<Urpd>
getUrpdAt()
getUrpdAt(
cohort,date,agg?,options?):Promise<Urpd>
Defined in: Developer/brk/modules/brk-client/index.js:10836
URPD at date
URPD for a (cohort, date) pair. Returns { cohort, date, aggregation, close, total_supply, buckets } where each bucket is { price_floor, supply, realized_cap, unrealized_pnl }.
See the URPD tag description for unit conventions and agg options.
Endpoint: GET /api/urpd/{cohort}/{date}
Parameters
cohort
date
string
agg?
Aggregation strategy. Default: raw (no aggregation). Accepts bucket as alias.
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<Urpd>
getVersion()
getVersion(
options?):Promise<string>
Defined in: Developer/brk/modules/brk-client/index.js:10499
API version
Returns the current version of the API server
Endpoint: GET /version
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<string>
indexToDate()
indexToDate(
index,i):Date
Defined in: Developer/brk/modules/brk-client/index.js:8666
Convert an index value to a Date for date-based indexes.
Parameters
index
The index type
i
number
The index value
Returns
Date
listSeries()
listSeries(
page?,per_page?,options?):Promise<PaginatedSeries>
Defined in: Developer/brk/modules/brk-client/index.js:10586
Series list
Paginated flat list of all available series names. Use page query param for pagination.
Endpoint: GET /api/series/list
Parameters
page?
number
Pagination index
per_page?
number
Results per page (default: 1000, max: 1000)
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<PaginatedSeries>
listUrpdCohorts()
listUrpdCohorts(
options?):Promise<Cohort[]>
Defined in: Developer/brk/modules/brk-client/index.js:10778
Available URPD cohorts
Cohorts for which URPD data is available. Returns names like all, sth, lth, utxos_under_1h_old.
Endpoint: GET /api/urpd
Parameters
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<Cohort[]>
listUrpdDates()
listUrpdDates(
cohort,options?):Promise<number[]>
Defined in: Developer/brk/modules/brk-client/index.js:10794
Available URPD dates
Dates for which a URPD snapshot is available for the cohort. One entry per UTC day, sorted ascending.
Endpoint: GET /api/urpd/{cohort}/dates
Parameters
cohort
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<number[]>
post()
post(
path,body,options?):Promise<Response>
Defined in: Developer/brk/modules/brk-client/index.js:1956
Make a POST request with a string body.
POST responses are uncached and never invoke onValue — every call hits
the network with the same body and returns the upstream response.
Parameters
path
string
body
string
options?
signal?
AbortSignal
Returns
Promise<Response>
Inherited from
BrkClientBase.post
postBytes()
postBytes(
path,body,options?):Promise<Uint8Array<ArrayBufferLike>>
Defined in: Developer/brk/modules/brk-client/index.js:2001
Make a POST request expecting binary data (application/octet-stream).
Parameters
path
string
body
string
options?
signal?
AbortSignal
Returns
Promise<Uint8Array<ArrayBufferLike>>
Inherited from
BrkClientBase.postBytes
postJson()
postJson<
T>(path,body,options?):Promise<T>
Defined in: Developer/brk/modules/brk-client/index.js:1977
Make a POST request expecting a JSON response.
Type Parameters
T
T
Parameters
path
string
body
string
options?
signal?
AbortSignal
Returns
Promise<T>
Inherited from
BrkClientBase.postJson
postText()
postText(
path,body,options?):Promise<string>
Defined in: Developer/brk/modules/brk-client/index.js:1989
Make a POST request expecting a text response.
Parameters
path
string
body
string
options?
signal?
AbortSignal
Returns
Promise<string>
Inherited from
BrkClientBase.postText
postTx()
postTx(
body,options?):Promise<string>
Defined in: Developer/brk/modules/brk-client/index.js:12010
Broadcast transaction
Broadcast a raw transaction to the network. The transaction should be provided as hex in the request body. The txid will be returned on success.
Endpoint: POST /api/tx
Parameters
body
string
Request body
options?
signal?
AbortSignal
Returns
Promise<string>
searchSeries()
searchSeries(
q,limit?,options?):Promise<string[]>
Defined in: Developer/brk/modules/brk-client/index.js:10607
Search series
Fuzzy search for series by name. Supports partial matches and typos.
Endpoint: GET /api/series/search
Parameters
q
string
Search query string
limit?
number
Maximum number of results
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<string[]>
seriesEndpoint()
seriesEndpoint(
series,index):SeriesEndpoint<unknown>
Defined in: Developer/brk/modules/brk-client/index.js:10472
Create a dynamic series endpoint builder for any series/index combination.
Use this for programmatic access when the series name is determined at runtime.
For type-safe access, use the series tree instead.
Parameters
series
string
The series name
index
The index name
Returns
SeriesEndpoint<unknown>
validateAddress()
validateAddress(
address,options?):Promise<AddrValidation>
Defined in: Developer/brk/modules/brk-client/index.js:11019
Validate address
Validate a Bitcoin address and get information about its type and scriptPubKey. Returns isvalid: false with an error message for invalid addresses.
Endpoint: GET /api/v1/validate-address/{address}
Parameters
address
string
Bitcoin address to validate (can be any string)
options?
onValue?
(value) => void
signal?
AbortSignal
Returns
Promise<AddrValidation>