API crypto exchanges

Appeal to the API occurs at: http://api.btcindex.io/crex/?method={method}, where {method} — method API.


method=tickers (default)


  • type - type (see list in method ticker_types, поле name)
  • count - number of entries (default 1000, max 1000)
  • tickers - list of tickers, separated by commas, max 30
  • tm - timestamp in seconds, from which to start data output, by default - the count of the last records
  • api_key - access key

The tickers parameter is formed as follows: exchange:symbol

Exchange: exchange name (see list in the method exchanges)

Symbol: name of a pair of tokens (see the products method for a list of tokens), for example ethbtc, first a base token (which we sell / buy), then quote-token (in which we specify the price).

Example: binance:ethbtc - course eth to btc on the binance exchange

As the name of the stock exchange, you can specify “all” - means “aggregated rate from all exchanges ”.

If you specify the tokens in a dash, the cross-rate through btc will be calculated, for example binance:eth-usdt means “cross eth rate to usdt via btc on binance”. You can also specify a cross-token by adding it between base and quote, for example: binance: ltc-eth-usdt means “cross course ltc to usdt via eth on binance”.



    "type": "1h", // requested ticker type
    "tm": 1534298400, // requested tm
    "dt": "2018-08-15 02:00:00", // requested tm in UTC
    "count": 10, // count rows
    "tickers": {
        1534298400: { // start time of the period
            "dt": "2018-08-15 02:00:00", // start time of period in UTC
            "binance:ethbtc": { // first ticker
                 "average": 0.04590245, // weighted average price of trades
                 "buy_volume": 6179.74199828, // volume of purchases
                 "sell_volume": 6030.61199786, // volume of sales
                 "open": 0.045414, // price at the beginning of the period (first transaction)
                 "high": 0.046369, // maximum price for the period
                 "low": 0.045403, // minimum price for the period
                 "close": 0.045713 // end of period price (last transaction)
             "bitfinex:ethbtc": { // second ticker


List of types of tickers. For example: 1s - one second, 15m - 15 minutes, etc. Suffix “a” (1da) means “moving average” - those. “last 24 hours”, instead of 1d (for the current day by UTC). 1w - weekly tickers begin on Monday. 1M - monthly tickers begin on the first day. 1Ma - moving average for 30 days.



    "types": {
        "1s": {
            "id": 1,
            "name": "1s", // name
            "update_period": 1 // recurrence frequency, in seconds
        "15s": {
            "id": 2,
            "name": "15s",
            "update_period": 3


List of exchanges.




List of tokens.



API through Websocket

Appeal to the API occurs at: wss://btcindex.io/ws

To receive real-time tickers, we send json:

    "method": "subscribe", // subscription for updates
    "type": "1s", // type, see ticker_types above)
    "ticker": "binance:ethbtc" // exchange+pair

For a description of the ticker format, see above.

To subscribe to several tickers, send several subscriptions.

In response we get:

    "method":"subscribed", // signed

Further at each recalculation of the ticker we receive the message:

    "method":"data", // method name
    "type":"1s", // type ticker
    "ticker":"binance:ethbtc", // name ticker
    "timestamp":1534329887, // start time of the period
    "datetime":"2018-08-15 10:44:47", // time of the beginning of the period in UTC
    // see the description of fields above

For each timestamp, the server sends several messages (every time the data is recalculated).