DataAPI Commands
The dataapi namespace provides high-level queries for Alkanes tokens, AMM pools, balances, and market data via the SUBFROST Data API.
Try It Live
$ alkanes-cli -p mainnet dataapi get-bitcoin-price$ alkanes-cli -p mainnet dataapi get-pools$ alkanes-cli -p mainnet dataapi get-holder-count 2:0Commands Overview
Alkanes Queries:
get-alkanes- Get all alkanes tokensget-alkanes-by-address- Get alkanes for an addressget-alkane-details- Get details for a specific alkane
Pool & AMM:
get-pools- Get all liquidity poolsget-pool-by-id- Get pool details by IDget-pool-history- Get historical pool dataget-swap-history- Get swap history
Balances:
get-address-balances- Get alkane balances for an address (with UTXO tracking)get-outpoint-balances- Get alkane balances for a specific outpointget-holders- Get holders of an alkane tokenget-holder-count- Get holder count for an alkane
Market Data:
get-bitcoin-price- Get current Bitcoin priceget-market-chart- Get Bitcoin market chart
Indexer Status:
get-block-height- Get latest processed block heightget-block-hash- Get latest processed block hashget-indexer-position- Get indexer position (height + hash)health- Health check
Configuration
The Data API uses a separate endpoint from JSON-RPC:
# Using the data API endpoint
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-alkanes
Or with your API key for higher rate limits:
--data-api https://mainnet.subfrost.io/v4/YOUR_API_KEY
dataapi get-alkanes
Get all alkanes tokens indexed by the system.
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-alkanes
Example Output:
Alkanes Tokens
═══════════════════════════════════
1. 2:0
2. 32:0
3. 4:65522
...
Total: 25
dataapi get-alkanes-by-address
Get alkanes tokens held by a specific address.
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-alkanes-by-address bc1p...
Arguments:
<ADDRESS>- Bitcoin address to query
dataapi get-alkane-details
Get detailed information about a specific alkane token.
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-alkane-details 2:0
Arguments:
<ALKANE_ID>- Alkane ID (format:block:tx)
dataapi get-pools
Get all liquidity pools from the AMM factory.
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-pools
Uses factory 4:65522 by default.
Example Output:
Liquidity Pools
═══════════════════════════════════
1. DIESEL / frBTC LP
Pool ID: 2:3
Pair: 2:0 → 32:0
Reserves: 300000000 × 50000
LP Supply: 3872983
Creator: bc1p...
Total: 1 pools
dataapi get-pool-by-id
Get details for a specific liquidity pool.
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-pool-by-id 2:3
Arguments:
<POOL_ID>- Pool ID (format:block:tx)
dataapi get-pool-history
Get historical data for a liquidity pool.
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-pool-history 2:3
Arguments:
<POOL_ID>- Pool ID
dataapi get-swap-history
Get swap history for the AMM.
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-swap-history
dataapi get-address-balances
Get alkane balances for an address with UTXO tracking.
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-address-balances bc1p...
Arguments:
<ADDRESS>- Bitcoin address to query
Returns balances broken down by UTXO for accurate tracking.
dataapi get-outpoint-balances
Get alkane balances for a specific transaction output.
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-outpoint-balances <TXID>:<VOUT>
Arguments:
<OUTPOINT>- Transaction outpoint (format:txid:vout)
dataapi get-holders
Get all holders of a specific alkane token.
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-holders 2:0
Arguments:
<ALKANE_ID>- Alkane ID
dataapi get-holder-count
Get the number of unique holders for an alkane token.
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-holder-count 2:0
Arguments:
<ALKANE_ID>- Alkane ID
dataapi get-bitcoin-price
Get the current Bitcoin price.
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-bitcoin-price
dataapi get-market-chart
Get Bitcoin market chart data.
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-market-chart
dataapi get-block-height
Get the latest block height processed by the indexer.
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-block-height
Example Output:
{
"height": 850123
}
dataapi get-block-hash
Get the latest block hash processed by the indexer.
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-block-hash
dataapi get-indexer-position
Get the current indexer position (height and hash).
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi get-indexer-position
dataapi health
Check if the Data API is healthy.
alkanes-cli -p mainnet \
--data-api https://mainnet.subfrost.io/v4/api \
dataapi health
Output:
OK
REST API Equivalent
These DataAPI commands correspond to REST endpoints:
get-alkanes→GET /alkanesget-pools→GET /poolsget-address-balances→GET /address/{address}/balancesget-block-height→GET /indexer/heighthealth→GET /health
See the REST API documentation for the full endpoint reference.
Next Steps
- Alkanes Commands - Protocol operations
- REST API Overview - Full REST endpoint reference
- Pools & AMM - AMM REST endpoints