bitopro-api-node
SDK for the BitoPro API.
Installation
npm install bitopro-api-node
Getting started
Create BitoPro client. Pass api keys only if you are going to do authenticated calls. You can create an api key here.
const BitoPro = const bitopro = 'your_api_key' 'your_api_secret' 'your_email'
Limitations
Rate Limit
There is rate limits applied to each API, please check API documentation for more detail.
Precisions
Both price and amount are subject to decimal restrictions, please check official settings for more detail.
Minimum order amount
Checkout the official settings of minimum amount.
Public REST Endpoints
getOrderBook
let getOrderBook = async { try let book = await bitopro console catch e console }
Output
"bids": "price": "180500" "amount": "0.12817687" "count": 1 "total": "0.12817687" "price": "180010" "amount": "0.32292" "count": 2 "total": "0.45109687" "price": "180000" "amount": "0.24236" "count": 3 "total": "0.69345687" "asks": "price": "180599" "amount": "0.00326056" "count": 1 "total": "0.00326056" "price": "180600" "amount": "0.04202575" "count": 1 "total": "0.04528631"
getTickers
let getTickers = async { try // all tickers let tickers = await bitopro console // single ticker let ticker = await bitopro console catch e console }
Output
// all tickers "data": "pair": "xem_btc" "lastPrice": "0.00000098" "isBuyer": false "priceChange24hr": "0" "volume24hr": "0.00000000" "high24hr": "0.00000098" "low24hr": "0.00000098" "pair": "bch_eth" "lastPrice": "0.60010000" "isBuyer": false "priceChange24hr": "0" "volume24hr": "0.00000000" "high24hr": "0.60010000" "low24hr": "0.60010000" "pair": "eth_usdt" "lastPrice": "179.22000000" "isBuyer": true "priceChange24hr": "10.85" "volume24hr": "925.14654180" "high24hr": "182.30000000" "low24hr": "159.94000000" // single ticker "data": "pair": "xem_eth" "lastPrice": "0.00010800" "isBuyer": false "priceChange24hr": "0" "volume24hr": "0.00000000" "high24hr": "0.00010800" "low24hr": "0.00010800"
getTrades
let getTrades = async { try let trades = await bitopro console catch e console }
Output
"data": "timestamp": 1557203407 "price": "180500.00000000" "amount": "0.07717687" "isBuyer": false "timestamp": 1557203187 "price": "180500.00000000" "amount": "0.05100000" "isBuyer": false "timestamp": 1557203053 "price": "180500.00000000" "amount": "0.01860000" "isBuyer": false "timestamp": 1557202804 "price": "180500.00000000" "amount": "0.04781533" "isBuyer": false "timestamp": 1557202804 "price": "180500.00000000" "amount": "0.06000000" "isBuyer": false
Authenticated REST Endpoints
getAccountBalances
let getAccountBalances = async { try let balances = await bitopro console catch e console }
Output
"data": "amount": "10001" "available": "1.0" "currency": "bito" "stake": "10000" "amount": "0.0" "available": "1.0" "currency": "btc" "stake": "0" "amount": "3.0" "available": "0.01" "currency": "eth" "stake": "0" "amount": "30000" "available": "2500" "currency": "twd" "stake": "0"
getOrderHistory
let getOrderHistory = async { try let history = await bitopro console catch e console }
Output
"data": "action": "buy" "avgExecutionPrice": "100000.00000000" "bitoFee": "0.00000000" "executedAmount": "1.00000000" "fee": "0.00100000" "feeSymbol": "BTC" "id": "123" "originalAmount": "1.00000000" "pair": "btc_twd" "price": "100000.00000000" "remainingAmount": "0.00000000" "status": 2 "timestamp": 1508753757000 "type": "limit" "action": "buy" "avgExecutionPrice": "100000.00000000" "bitoFee": "0.00000000" "executedAmount": "1.00000000" "fee": "0.00200000" "feeSymbol": "BTC" "id": "456" "originalAmount": "1.00000000" "pair": "btc_twd" "price": "100000.00000000" "remainingAmount": "0.00000000" "status": 2 "timestamp": 1508753787000 "type": "limit"
getOrders
let getOrders = async { try // only fetch active orders let orders = await bitopro console // include history orders orders = await bitopro console // with page parameter orders = await bitopro console catch e console }
Output
"data": "action": "buy" "avgExecutionPrice": "100000.00000000" "bitoFee": "0.00000000" "executedAmount": "1.00000000" "fee": "0.00100000" "feeSymbol": "BTC" "id": "123" "originalAmount": "1.00000000" "pair": "btc_twd" "price": "100000.00000000" "remainingAmount": "0.00000000" "status": 2 "timestamp": 1508753757000 "type": "limit" "action": "buy" "avgExecutionPrice": "100000.00000000" "bitoFee": "0.00000000" "executedAmount": "1.00000000" "fee": "0.00200000" "feeSymbol": "BTC" "id": "456" "originalAmount": "1.00000000" "pair": "btc_twd" "price": "100000.00000000" "remainingAmount": "0.00000000" "status": 2 "timestamp": 1508753787000 "type": "limit" "page": 1 "totalPages": 10
createOrder
let createOrder = async { try let order = pair: 'btc_twd' action: 'buy' amount: '250' price: '0.000075' // no need for market orders timestamp: Date type: 'limit' // 'market' for market orders let result = await bitopro console catch e console }
Output
"action": "buy" "amount": "0.235" "orderId": "11233456" "price": "1.0" "timestamp": 1504262258000
cancelOrder
let cancelOrder = async { try let orderID = 123456 let result = await bitopro console catch e console }
Output
"action": "buy" "amount": 23 "orderId": "12234566" "price": 12 "timestamp": 1504262258000
getOrder
let getOrder = async { try let orderID = 123 let result = await bitopro console catch e console }
Output
"action": "sell" "avgExecutionPrice": "112000.00000000" "bitoFee": "103.70370360" "executedAmount": "1.00000000" "fee": "0.00000000" "feeSymbol": "TWD" "id": "123" "originalAmount": "1.00000000" "pair": "btc_twd" "price": "112000.00000000" "remainingAmount": "0.00000000" "status": 2 "timestamp": 1508753757000 "type": "limit"
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/bitoex/bitopro-api-node and this project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
). - Commit your changes (
git commit -am 'Added some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request
License
The SDK is available as open source under the terms of the MIT License.