Bitkub Python
A Python library for bitkub.com API
Releases
-
2020-04-02
version1.0.3
add generate-address method
Table of Contents
- Installation
-
Usage
- Creating a Bitkub
- Set API key & API secret
- Viewing status
- Viewing servertime
- Viewing symbols
- Viewing ticker
- Viewing trades
- Viewing bids
- Viewing asks
- Viewing books
- Viewing depth
- Viewing wallet
- Viewing balances
- Create buy order
- Create sell order
- Create sell order by fiat
- Cancel order
- My open orders
- My order history
- Order info
- Crypto addresses
- Crypto withdraw
- Crypto deposit history
- Crypto withdraw history
- Crypto generate address
- Fiat accounts
- Fiat withdraw
- Fiat deposit history
- Fiat withdraw history
- Market wstoken
- User limits
- User trading credits
Installation
pip install bitkub
Usage
from bitkub import Bitkub
Creating a Bitkub Object
API_KEY = 'YOUR API KEY'
API_SECRET = 'YOUR API SECRET'
# initial obj only non-secure
bitkub = Bitkub()
# initial obj non-secure and secure
bitkub = Bitkub(api_key=API_KEY, api_secret=API_SECRET)
You can find API KEY and API SECRET from here.
Set API key and API secret
If you initial obj with only non-secure. You can set up API key and API secret on below.
API_KEY = 'YOUR API KEY'
API_SECRET = 'YOUR API SECRET'
bitkub = Bitkub()
bitkub.set_api_key(API_KEY)
bitkub.set_api_secret(API_SECRET)
Viewing status
Get endpoint status.
Function:
bitkub.status()
Response:
[
{
'name': 'Non-secure endpoints',
'status': 'ok',
'message': ''
},
{
'name': 'Secure endpoints',
'status': 'ok',
'message': ''
}
]
Viewing servertime
Get server timestamp.
Function:
bitkub.servertime()
Response:
1583051817
Viewing symbols
List all available symbols.
Function:
bitkub.symbols()
Response:
{
'error': 0,
'result': [
{
'id': 1,
'info': 'Thai Baht to Bitcoin',
'symbol': 'THB_BTC'
},
{
'id': 2,
'info': 'Thai Baht to Ethereum',
'symbol': 'THB_ETH'
}
]
}
Viewing ticker
Get ticker information.
Function:
bitkub.ticker(sym='THB_BTC')
Parameter:
-
sym
string The symbol (optional)default
""
Response:
{
'THB_BTC': {
'id': 1,
'last': 278000,
'lowestAsk': 278869.41,
'highestBid': 278000,
'percentChange': -1.44,
'baseVolume': 206.01549914,
'quoteVolume': 57883319.04,
'isFrozen': 0,
'high24hr': 284000,
'low24hr': 277579.62,
'change': -4075.81,
'prevClose': 281800,
'prevOpen': 281800
}
}
Viewing trades
List recent trades.
Function:
bitkub.trades(sym="THB_BTC", lmt=2)
Parameter:
-
sym
string The symbol -
lmt
int No. of limit to Parameter recent tradesdefault
1
Response:
{
'error': 0,
'result': [
[
1583246192, // timestamp
278798.34, // rate
0.00375672, // amount
'BUY' // side
],
[
1583246159,
278000,
0.0001042,
'SELL'
]
]
}
Viewing bids
List open buy orders.
Function:
bitkub.bids(sym="THB_BTC", lmt=2)
Parameter:
-
sym
string The symbol -
lmt
int No. of limit to Parameter open buy ordersdefault
1
Response:
{
'error': 0,
'result': [
[
4632978, // order id
1583245687, // timestamp
73110.59, // volume
278000, // rate
0.26298773 // amount
],
[
4632732,
1583245871,
1312.68,
278000,
0.00472187
]
]
}
Viewing asks
List open sell orders.
Function:
bitkub.asks(sym="THB_BTC", lmt=2)
Parameter:
-
sym
string The symbol -
lmt
int No. of limit to Parameter open sell ordersdefault
1
Response:
{
'error': 0,
'result': [
[
4761288, // order id
1583246870, // timestamp
163813.12, // volume
278499.03, // rate
0.5882 // amount
],
[
4761287,
1583246870,
379232.12,
278499.03,
1.3617
]
]
}
Viewing books
List all open orders.
Function:
bitkub.books(sym="THB_BTC", lmt=1)
Parameter:
-
sym
string The symbol -
lmt
int No. of imit to Parameter open ordersdefault
1
Response:
{
'error': 0,
'result': {
'asks': [
[
4761425, // order id
1583247105, // timestamp
360885.74, // volume
278300.17, // rate
1.29675 // amount
]
],
'bids': [
[
4633099, // order id
1583247090, // timestamp
622146.15, // volume
277946.2, // rate
2.23836897 // amount
]
]
}
}
Viewing depth
Get depth information.
Function:
bitkub.depth(sym='THB_BTC', lmt=1)
Parameter:
-
sym
string The symbol -
lmt
int Depth sizedefault
1
Response:
{
'asks': [
[
277946.16,
1.29675
]
],
'bids': [
[
277936.27,
0.94071896
]
]
}
Viewing wallet
Get user available balances. Required initial secure obj
Function:
bitkub.wallet()
Response:
{
'error': 0,
'result': {
'THB': 0,
'BTC': 0,
'ETH': 0
}
}
Viewing balances
Get balances info: this includes both available and reserved balances. Required initial secure obj
Function:
bitkub.balances()
Response:
{
'error': 0,
'result': {
'THB': {
'available': 0,
'reserved': 0
},
'BTC': {
'available': 0,
'reserved': 0
}
}
}
Create buy order
Create a buy order. Required initial secure obj
Function:
bitkub.place_bid(sym='THB_BTC', amt=1, rat=1, typ='limit')
Parameter:
-
sym
string The symbol -
amt
float Amount you want to spend with no trailing zero (e.g 1000.00 is invalid, 1000 is ok)default
1 -
rat
float Rate you want for the order with no trailing zero (e.g 1000.00 is invalid, 1000 is ok)default
1 -
typ
string Order type: limit or marketdefault
limit
Response:
{
'error': 0,
'result': {
'id': 1,
'hash': 'fwQ6dnQWQPs4cbatF5Am2xCDP1J',
'typ': 'limit',
'amt': 1,
'rat': 1,
'fee': 2.5,
'cre': 2.5,
'rec': 0.06666666,
'ts': 1533834547
}
}
Create sell order
Create a sell order. Required initial secure obj
Function:
bitkub.place_ask(sym='THB_BTC', amt=1, rat=1, typ='limit')
Parameter:
-
sym
string The symbol -
amt
float Amount you want to spend with no trailing zero (e.g 1000.00 is invalid, 1000 is ok)default
1 -
rat
float Rate you want for the order with no trailing zero (e.g 1000.00 is invalid, 1000 is ok)default
1 -
typ
string Order type: limit or marketdefault
limit
Response:
{
'error': 0,
'result': {
'id': 1,
'hash': 'fwQ6dnQWQPs4cbatF5Am2xCDP1J',
'typ': 'limit',
'amt': 1,
'rat': 1,
'fee': 2.5,
'cre': 2.5,
'rec': 0.06666666,
'ts': 1533834547
}
}
Create sell order by fiat
Create a sell order by specifying the fiat amount you want to receive (selling amount of cryptocurrency is automatically calculated). Required initial secure obj
Function:
bitkub.place_bid(sym='THB_BTC', amt=1, rat=1, typ='limit')
Parameter:
-
sym
string The symbol -
amt
float Amount you want to spend with no trailing zero (e.g 1000.00 is invalid, 1000 is ok)default
1 -
rat
float Rate you want for the order with no trailing zero (e.g 1000.00 is invalid, 1000 is ok)default
1 -
typ
string Order type: limit or marketdefault
limit
Response:
{
'error': 0,
'result': {
'id': 1,
'hash': 'fwQ6dnQWQPs4cbatF5Am2xCDP1J',
'typ': 'limit',
'amt': 1,
'rat': 1,
'fee': 2.5,
'cre': 2.5,
'rec': 0.06666666,
'ts': 1533834547
}
}
Cancel orrder
Cancel an open order. Required initial secure obj
Function:
bitkub.cancel_order(sym='THB_BTC', id=1, sd=1, hash='XXXXXX')
Parameter:
-
sym
string The symbol -
id
int Order id you wish to cancel -
sd
string Order side: buy or selldefault
buy -
hash
string Cancel an order with order hash (optional). You don't need to specify sym, id, and sd when you specify order hash.
Response:
{
'error': 0
}
My open orders
List all open orders of the given symbol. Required initial secure obj
Function:
bitkub.my_open_orders(sym='THB_BTC')
Parameter:
-
sym
string The symbol
Response:
{
'error': 0,
'result': [
{
'id': 2,
'hash': 'fwQ6dnQWQPs4cbatFSJpMCcKTFR',
'side': 'SELL',
'type': 'limit',
'rate': 15000,
'fee': 35.01,
'credit': 35.01,
'amount': 0.93333334,
'receive': 14000,
'parent_id': 1,
'super_id': 1,
'ts': 1533834844
}
]
}
My order history
List all orders that have already matched. Required initial secure obj
Function:
bitkub.my_open_history(sym='THB_BTC', p=1, lmt=10)
Parameter:
-
sym
string The symbol -
p
string Page (optional) -
lmt
string Limit (optional) -
start
string Start timestamp (optional) -
end
string End timestamp (optional)
Response:
{
'error': 0,
'result': [
{
'txn_id': 'ETHBUY0000000197',
'order_id': 240,
'hash': 'fwQ6dnQWQPs4cbaujNyejinS43a',
'parent_order_id': 0,
'super_order_id': 0,
'taken_by_me': true,
'side': 'buy',
'type': 'limit',
'rate': 13335.57,
'fee': 0.34,
'credit': 0.34,
'amount': 0.00999987,
'ts': 1531513395
}
{
'error': 0,
'result': {
'id': 289,
],
'pagination': {
'page': 2,
'last': 3,
'next': 3,
'prev': 1
}
}
Order info
Get information regarding the specified order. Required initial secure obj
Function:
bitkub.order_info(sym='THB_BTC', id=1, sd='buy', hash='XXXXXX')
Parameter:
-
sym
string The symbol -
id
int Order id -
sd
string Order side: buy or selldefault
buy -
hash
string Lookup an order with order hash (optional). You don't need to specify sym, id, and sd when you specify order hash.
Response:
{
'error': 0,
'result': {
'id': 289,
'first': 289,
'parent': 0,
'last': 316,
'amount': 4000,
'rate': 291000,
'fee': 10,
'credit': 10,
'filled': 3999.97,
'total': 4000,
'status': 'filled',
'history': [
{
'amount': 98.14848,
'credit': 0.25,
'fee': 0.25,
'id': 289,
'rate': 291000,
'timestamp': 1525944169
}
]
}
}
Crypto addresses
List all crypto addresses. Required initial secure obj
Function:
bitkub.crypto_address(p=1, lmt=1)
Parameter:
-
p
int Page (optional)default
1 -
lmt
int Limit (optional)default
10
Response:
{
'error': 0,
'result': [
{
'currency': 'BTC',
'address': '3BtxdKw6XSbneNvmJTLVHS9XfNYM7VAe8k',
'tag': 0,
'time': 1570893867
}
],
'pagination': {
'page': 1,
'last": 1
}
}
Crypto withdraw
Make a withdrawal to a trusted address. Required initial secure obj
Function:
bitkub.crypto_withdraw(cur='BTC', amt=0.1, adr='4asyjKw6XScneNvhJTLVHS9XfNYM7VBf8x', mem='')
Parameter:
-
cur
string Currency for withdrawal (e.g. BTC, ETH) -
amt
float Amount you want to withdraw -
adr
string Address to which you want to withdraw -
mem
string (Optional) Memo or destination tag to which you want to withdraw
Response:
{
'error': 0,
'result': {
'txn': 'BTCWD0000012345',
'adr': '4asyjKw6XScneNvhJTLVHS9XfNYM7VBf8x'
'mem': '',
'cur': 'BTC',
'amt': 0.1,
'fee': 0.0002,
'ts': 1569999999
}
}
Crypto deposit history
List crypto deposit history. Required initial secure obj
Function:
bitkub.crypto_deposit_history(p=1, lmt=1)
Parameter:
-
p
int Page (optional)default
1 -
lmt
int Limit (optional)default
10
Response:
{
'error': 0,
'result': [
{
'hash': 'XRPWD0000100276',
'currency': 'XRP',
'amount': 5.75111474,
'address': null,
'confirmations': 1,
'status': 'complete',
'time': 1570893867
}
],
'pagination': {
'page': 1,
'last': 1
}
}
Crypto withdraw history
:
List crypto withdrawal history. Required initial secure obj
Function:
bitkub.crypto_withdraw_history(p=1, lmt=1)
Parameter:
-
p
int Page (optional)default
1 -
lmt
int Limit (optional)default
10
Response:
{
'error': 0,
'result': [
{
'txn_id': 'XRPWD0000100276',
'hash': 'send_internal',
'currency': 'XRP',
'amount': '5.75111474',
'fee': 0.01,
'address': 'rpXTzCuXtjiPDFysxq8uNmtZBe9Xo97JbW',
'status': 'complete',
'time': 1570893493
}
],
'pagination': {
'page': 1,
'last': 1
}
}
Crypto generate address
Generate a new crypto address (will replace existing address; previous address can still be used to received funds)
List all approved bank accounts. Required initial secure obj
Function:
bitkub.crypto_generate_address(sym='THB_BTC')
Parameter:
-
sym
string The symbol
Response:
{
'error': 0,
'result': [
{
'currency': 'BTC',
'address': '0x520165471daa570ab632dd504c6af257bd36edfb',
'memo': ''
}
]
}
Fiat accounts
List all approved bank accounts. Required initial secure obj
Function:
bitkub.fiat_accounts(p=1, lmt=1)
Parameter:
-
p
int Page (optional)default
1 -
lmt
int Limit (optional)default
10
Response:
{
'error': 0,
'result': [
{
'id': '7262109099',
'bank': 'Kasikorn Bank',
'name': 'Somsak',
'time': 1570893867
}
],
'pagination': {
'page': 1,
'last': 1
}
}
Fiat withdraw
Make a withdrawal to an approved bank account. Required initial secure obj
Function:
bitkub.fiat_withdraw(id=1, amt=1)
Parameter:
-
id
string Bank account id -
amt
float Amount you want to withdraw
Response:
{
'error': 0,
'result': {
'txn': 'THBWD0000012345',
'acc': '7262109099',
'cur': 'THB',
'amt': 21,
'fee': 20,
'rec': 1,
'ts': 1569999999
}
}
Fiat deposit history
List fiat deposit history. Required initial secure obj
Function:
bitkub.fiat_deposit_history(p=1, lmt=1)
Parameter:
-
p
int Page (optional)default
1 -
lmt
int Limit (optional)default
10
Response:
{
'error':0,
'result':[
{
'txn_id': 'THBDP0000012345',
'currency': 'THB',
'amount': 5000.55,
'status': 'complete',
'time': 1570893867
}
],
'pagination':{
'page': 1,
'last': 1
}
}
Fiat withdraw history
List fiat withdrawal history. Required initial secure obj
Function:
bitkub.fiat_withdraw_history(p=1, lmt=1)
Parameter:
-
p
int Page (optional)default
1 -
lmt
int Limit (optional)default
10
Response:
{
'error': 0,
'result': [
{
'txn_id': 'THBDP0000012345',
'currency': 'THB',
'amount': 5000.55,
'fee': 20,
'status': 'complete',
'time': 1570893867
}
],
'pagination':{
'page': 1,
'last': 1
}
}
Market wstoken
Get the token for websocket authentication. Required initial secure obj
Function:
bitkub.market_wstoken()
Response:
{
'error': 0,
'result': 'sdCBCTwaS2Z1IBB6uTCefIbVN6dQVz9dkDeU96IoFJp14GGhlw9hoUDNe1KSYC23dXBPIqyX2QjVEOFHITxgPMvo8kdVaTkiZBA8KgvVTSMsq6JjjlyERDVZn3tt4PEp'
}
User limits
Check deposit/withdraw limitations and usage. Required initial secure obj
Function:
bitkub.user_limits()
Response:
{
'error': 0,
'result': {
'limits': {
'crypto': {
'deposit': 0,
'withdraw': 0
},
'fiat': {
'deposit': 0,
'withdraw': 0
}
},
'usage': {
'crypto': {
'deposit': 0,
'withdraw': 0,
'deposit_percentage': 0,
'withdraw_percentage': 0,
'deposit_thb_equivalent': 0,
'withdraw_thb_equivalent': 0
},
'fiat': {
'deposit': 0,
'withdraw': 0,
'deposit_percentage': 0,
'withdraw_percentage': 0
}
},
'rate': 177100.32
}
}
User trading-credit
Check trading credit balance. Required initial secure obj
Function:
bitkub.user_trading_credits()
Response:
{
'error': 0,
'result': 0
}