Index API

This is an API to access an indexed version of the blockchain and more goodies.
You can easily search data with very specific parameters and create custom awesome statistics.

We provide a rate limiting free access for the data at this endpoint.

You can also clone the repo and index the blockchain yourself if you want more controls or higher throughput of the information.
https://github.com/xelis-project/xelis-index (opens in a new tab)

How to use

The API consist of a list of exclusive views that you can request and add parameters on top of it.

For example, if you want the last 5 transactions of an account, the query would look like this:
https://index.xelis.io/views/transactions?count=true&pretty=true&limit=5&order=nonce::desc&where=source::eq::xel:fjqn40v9q8ghystrnpzfczzuuylj9wdcs6gegqe76x970g3xy4kqq6gk3d4 (opens in a new tab)


accounts/views/accounts (opens in a new tab)
blocks/views/blocks (opens in a new tab)
contracts/views/contracts (opens in a new tab)
market_history/views/market_history (opens in a new tab)
transaction_transfers/views/transaction_transfers (opens in a new tab)
transactions/views/transactions (opens in a new tab)
blockchain_size/views/blockchain_size (opens in a new tab)
market_tickers/views/market_tickers (opens in a new tab)
get_accounts_active_time(*)/views/get_accounts_active_time(*)?param=86400 (opens in a new tab)
get_accounts_count_time(*)/views/get_accounts_count_time(*)?param=86400 (opens in a new tab)
get_accounts_txs_time(*)/views/get_accounts_txs_time(*)?param=86400 (opens in a new tab)
get_blocks_time(*)/views/get_blocks_time(*)?param=86400 (opens in a new tab)
get_blocks_topo(*)/views/get_blocks_topo() (opens in a new tab)
get_market_assets()/views/get_market_assets() (opens in a new tab)
get_market_exchanges()/views/get_market_exchanges() (opens in a new tab)
get_market_history_exchange_time(*)/views/get_market_history_exchange_time(*)?param=86400 (opens in a new tab)
get_market_history_time(*)/views/get_market_history_time(*)?param=86400 (opens in a new tab)
get_miners_blocks_time(*)/views/get_miners_blocks_time(*?param=86400) (opens in a new tab)
get_miners_blocks()/views/get_miners_blocks() (opens in a new tab)
get_miners_count_time(*)/views/get_miners_count_time(*)?param=86400 (opens in a new tab)
get_stats()/views/get_stats() (opens in a new tab)
get_txs_time(*)/views/get_txs_time(*)?param=86400 (opens in a new tab)
get_txs()/views/get_txs() (opens in a new tab)
get_market_tickers_exchange_time(*)/views/get_market_tickers_exchange_time(*)?param=86400 (opens in a new tab)
get_market_tickers_time(*)/views/get_market_tickers_time(*)?param=86400 (opens in a new tab)

The asterisk means that there is a mandatory parameter needed for the view.


ParameterDefaultTypeFormatQuery FormatDescription
offset0int&offset=10Start query at this offset.
limit100int&limit=50Maximum of rows returned.
wherestringcolumn::op::value&where=height::eq::0Filter the data with column and operator.
orderstringcolumn::sort&order=time::descSort with the column either desc or asc.
paramany&param=10000Set the param value of the asterisk.
countfalseboolean&count=trueReturn the total number of rows in the query.
prettyfalseboolean&pretty=trueIndent the data to inhance readability.

Operators (where)

eqEqual =
neqNot equal != or <>
gtGreater than >
gteGreater or equel >=
ltLower than <
lteLower or equal <=