bittrex-enterprise 0.4 → 0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/bittrex-enterprise/addresses.rb +12 -6
- data/lib/bittrex-enterprise/api_helpers.rb +23 -25
- data/lib/bittrex-enterprise/balances.rb +8 -4
- data/lib/bittrex-enterprise/deposits.rb +13 -4
- data/lib/bittrex-enterprise/version.rb +1 -1
- data/lib/bittrex-enterprise/withdrawals.rb +21 -8
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c6f8406456ef73d808ac31d37cba80b1c27f54712aa596438608888db2eafc56
|
4
|
+
data.tar.gz: e77fdc8c06fe316aec6d13673e74fb0e653cbba65c3820fd60ca72604c68412e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f186e187657ecfa2533e2563b6e38ea4ded457d58045054457eaaab91d98b5666cac9e18fd2ef84344936827ea1e3067698d9fdf668f28d229a4b8ef1cc0289d
|
7
|
+
data.tar.gz: 8a4068905e753eb88369e0611231d8dcfc217f3ff5fe47669d297782629321b167f41d1a55f8439043bf96fca9924cf19ab98c4c7bd9cf21049308de95571258
|
data/Gemfile.lock
CHANGED
@@ -8,9 +8,12 @@ module BittrexEnterprise
|
|
8
8
|
|
9
9
|
# -------------------------------------- LIST ------------------------------------------------
|
10
10
|
# List deposit addresses that have been requested or provisioned.
|
11
|
+
#
|
12
|
+
# ------ PARAMS ------
|
13
|
+
# sub_account_id: string - optional - ID of the subaccount to use for this call
|
11
14
|
# --------------------------------------------------------------------------------------------
|
12
|
-
def self.list
|
13
|
-
get_signed 'addresses'
|
15
|
+
def self.list(sub_account_id=nil)
|
16
|
+
get_signed 'addresses', sub_account_id: sub_account_id
|
14
17
|
end
|
15
18
|
|
16
19
|
|
@@ -20,9 +23,11 @@ module BittrexEnterprise
|
|
20
23
|
#
|
21
24
|
# ------ PARAMS ------
|
22
25
|
# currency_symbol - string - required - the currency ID to provision a new address for
|
26
|
+
#
|
27
|
+
# sub_account_id: string - optional - ID of the subaccount to use for this call
|
23
28
|
# --------------------------------------------------------------------------------------------
|
24
|
-
def self.create(currency_symbol)
|
25
|
-
post_signed 'addresses', currencySymbol: currency_symbol
|
29
|
+
def self.create(currency_symbol, sub_account_id=nil)
|
30
|
+
post_signed 'addresses', currencySymbol: currency_symbol, sub_account_id: sub_account_id
|
26
31
|
end
|
27
32
|
|
28
33
|
|
@@ -32,9 +37,10 @@ module BittrexEnterprise
|
|
32
37
|
# ------ PARAMS ------
|
33
38
|
# currency_symbol - string - required - symbol of the currency to retrieve the deposit
|
34
39
|
# address for
|
40
|
+
# sub_account_id: string - optional - ID of the subaccount to use for this call
|
35
41
|
# --------------------------------------------------------------------------------------------
|
36
|
-
def self.status(currency_symbol)
|
37
|
-
get_signed 'addresses/{currencySymbol}', currencySymbol: currency_symbol
|
42
|
+
def self.status(currency_symbol, sub_account_id=nil)
|
43
|
+
get_signed 'addresses/{currencySymbol}', currencySymbol: currency_symbol, sub_account_id: sub_account_id
|
38
44
|
end
|
39
45
|
|
40
46
|
end
|
@@ -11,7 +11,7 @@ module ApiHelpers
|
|
11
11
|
|
12
12
|
def get(api_group, params = {})
|
13
13
|
params.compact!
|
14
|
-
api_group, params = setup_params(api_group, params)
|
14
|
+
api_group, params, sub_account_id = setup_params(api_group, params)
|
15
15
|
|
16
16
|
begin
|
17
17
|
response = HTTParty.get(base_uri + api_group, query: params)
|
@@ -22,12 +22,7 @@ module ApiHelpers
|
|
22
22
|
end
|
23
23
|
|
24
24
|
def get_signed(api_group, params = {})
|
25
|
-
params
|
26
|
-
api_group, params = setup_params(api_group, params)
|
27
|
-
|
28
|
-
url = base_uri + api_group
|
29
|
-
|
30
|
-
headers = setup_headers('GET', url)
|
25
|
+
api_group, params, sub_account_id, headers, url = setup_call(api_group, params, 'GET')
|
31
26
|
|
32
27
|
begin
|
33
28
|
response = HTTParty.get(url, {query: params, headers: headers})
|
@@ -38,13 +33,7 @@ module ApiHelpers
|
|
38
33
|
end
|
39
34
|
|
40
35
|
def post_signed(api_group, params = {})
|
41
|
-
|
42
|
-
params.compact!
|
43
|
-
api_group, params = setup_params(api_group, params)
|
44
|
-
|
45
|
-
url = base_uri + api_group
|
46
|
-
|
47
|
-
headers = setup_headers('POST', url, params.to_json)
|
36
|
+
api_group, params, sub_account_id, headers, url = setup_call(api_group, params, 'POST')
|
48
37
|
|
49
38
|
begin
|
50
39
|
response = HTTParty.post(url, {body: params.to_json, headers: headers})
|
@@ -55,12 +44,7 @@ module ApiHelpers
|
|
55
44
|
end
|
56
45
|
|
57
46
|
def delete_signed(api_group)
|
58
|
-
params
|
59
|
-
api_group, params = setup_params(api_group, params)
|
60
|
-
|
61
|
-
url = base_uri + api_group
|
62
|
-
|
63
|
-
headers = setup_headers('DELETE', url, params)
|
47
|
+
api_group, params, sub_account_id, headers, url = setup_call(api_group, params, 'DELETE')
|
64
48
|
|
65
49
|
begin
|
66
50
|
response = HTTParty.delete(url, {body: params, headers: headers})
|
@@ -70,21 +54,35 @@ module ApiHelpers
|
|
70
54
|
end
|
71
55
|
end
|
72
56
|
|
57
|
+
private
|
58
|
+
|
59
|
+
def setup_call(api_group, params, method)
|
60
|
+
params.compact!
|
61
|
+
api_group, params, sub_account_id = setup_params(api_group, params)
|
62
|
+
|
63
|
+
url = base_uri + api_group
|
64
|
+
|
65
|
+
headers = setup_headers(method, url, params, sub_account_id)
|
66
|
+
|
67
|
+
[api_group, params, sub_account_id, headers, url]
|
68
|
+
end
|
69
|
+
|
73
70
|
def setup_params(api_group, params)
|
71
|
+
sub_account_id = params.delete(:sub_account_id) || ''
|
74
72
|
matchArr = api_group.match(/{(\D*)}/)&.captures
|
75
73
|
if matchArr
|
76
74
|
matchArr.each do |m|
|
77
75
|
api_group.gsub!("{#{m}}", params.delete(m.to_sym))
|
78
76
|
end
|
79
77
|
end
|
80
|
-
[api_group, params]
|
78
|
+
[api_group, params, sub_account_id]
|
81
79
|
end
|
82
80
|
|
83
|
-
def setup_headers(method, uri,
|
81
|
+
def setup_headers(method, uri, params='', api_subaccount_id='')
|
84
82
|
api_key = BittrexEnterprise.configuration.key
|
85
83
|
api_timestamp = DateTime.now.strftime('%Q')
|
86
|
-
|
87
|
-
|
84
|
+
params = params.to_json if method == 'POST'
|
85
|
+
api_content_hash = create_content_sign(params)
|
88
86
|
pre_sign = [api_timestamp, uri, method, api_content_hash, api_subaccount_id].join('')
|
89
87
|
api_signature = create_sign_hmac(pre_sign)
|
90
88
|
|
@@ -96,7 +94,7 @@ module ApiHelpers
|
|
96
94
|
"Api-Signature": api_signature
|
97
95
|
}
|
98
96
|
|
99
|
-
|
97
|
+
headers['Api-Subaccount-Id'] = api_subaccount_id if api_subaccount_id != ''
|
100
98
|
|
101
99
|
headers
|
102
100
|
end
|
@@ -9,9 +9,12 @@ module BittrexEnterprise
|
|
9
9
|
# ---------------------------------------- LIST ----------------------------------------------
|
10
10
|
# List account balances across available currencies. Returns a Balance entry for each
|
11
11
|
# currency for which there is either a balance or an address.
|
12
|
+
#
|
13
|
+
# ------ PARAMS ------
|
14
|
+
# sub_account_id: string - optional - ID of the subaccount to use for this call
|
12
15
|
# --------------------------------------------------------------------------------------------
|
13
|
-
def self.list
|
14
|
-
get_signed 'balances'
|
16
|
+
def self.list(sub_account_id='')
|
17
|
+
get_signed 'balances', sub_account_id: sub_account_id
|
15
18
|
end
|
16
19
|
|
17
20
|
|
@@ -22,9 +25,10 @@ module BittrexEnterprise
|
|
22
25
|
# ------ PARAMS ------
|
23
26
|
# currency_symbol: string - required - unique symbol of the currency to retrieve the
|
24
27
|
# account balance for
|
28
|
+
# sub_account_id: string - optional - ID of the subaccount to use for this call
|
25
29
|
# --------------------------------------------------------------------------------------------
|
26
|
-
def self.info(currency_symbol)
|
27
|
-
get_signed 'balances/{currencySymbol}', currencySymbol: currency_symbol
|
30
|
+
def self.info(currency_symbol, sub_account_id='')
|
31
|
+
get_signed 'balances/{currencySymbol}', currencySymbol: currency_symbol, sub_account_id: sub_account_id
|
28
32
|
end
|
29
33
|
|
30
34
|
end
|
@@ -12,7 +12,10 @@ module BittrexEnterprise
|
|
12
12
|
#
|
13
13
|
# ------ PARAMS ------ PARAMS MUST BE PASSED AS KEY VALUE PAIRS
|
14
14
|
# status - string enum [PENDING] - optional - filter by an open deposit status
|
15
|
+
#
|
15
16
|
# currencySymbol - string - optional - filter by currency
|
17
|
+
#
|
18
|
+
# sub_account_id: string - optional - ID of the subaccount to use for this call
|
16
19
|
# --------------------------------------------------------------------------------------------
|
17
20
|
def self.open(params={})
|
18
21
|
get_signed 'deposits/open', params
|
@@ -47,6 +50,8 @@ module BittrexEnterprise
|
|
47
50
|
# endDate - string(date-time) - Filters out result after this timestamp. Uses the same format
|
48
51
|
# as StartDate. Either, both, or neither of StartDate and EndDate can be set. The only
|
49
52
|
# constraint on the pair is that, if both are set, then EndDate cannot be before StartDate.
|
53
|
+
#
|
54
|
+
# sub_account_id: string - optional - ID of the subaccount to use for this call
|
50
55
|
# --------------------------------------------------------------------------------------------
|
51
56
|
def self.closed(params={})
|
52
57
|
get_signed 'deposits/closed', params
|
@@ -58,9 +63,11 @@ module BittrexEnterprise
|
|
58
63
|
#
|
59
64
|
# ------ PARAMS ------
|
60
65
|
# tx_id - string - required - the transaction id to lookup
|
66
|
+
#
|
67
|
+
# sub_account_id: string - optional - ID of the subaccount to use for this call
|
61
68
|
# --------------------------------------------------------------------------------------------
|
62
|
-
def self.by_tx_id(tx_id)
|
63
|
-
get_signed 'deposits/ByTxId/{tdId}', txId: tx_id
|
69
|
+
def self.by_tx_id(tx_id, sub_account_id='')
|
70
|
+
get_signed 'deposits/ByTxId/{tdId}', txId: tx_id, sub_account_id: sub_account_id
|
64
71
|
end
|
65
72
|
|
66
73
|
|
@@ -69,9 +76,11 @@ module BittrexEnterprise
|
|
69
76
|
#
|
70
77
|
# ------ PARAMS ------
|
71
78
|
# deposit_id - string - required - (guid-formatted string) - ID of the deposit to retrieve
|
79
|
+
#
|
80
|
+
# sub_account_id: string - optional - ID of the subaccount to use for this call
|
72
81
|
# --------------------------------------------------------------------------------------------
|
73
|
-
def self.retrieve(deposit_id)
|
74
|
-
get_signed 'deposits/{depositId}', depositId: deposit_id
|
82
|
+
def self.retrieve(deposit_id, sub_account_id='')
|
83
|
+
get_signed 'deposits/{depositId}', depositId: deposit_id, sub_account_id: sub_account_id
|
75
84
|
end
|
76
85
|
|
77
86
|
end
|
@@ -15,6 +15,8 @@ module BittrexEnterprise
|
|
15
15
|
# filter by an open withdrawal status
|
16
16
|
#
|
17
17
|
# currencySymbol - string - optional - filter by currency
|
18
|
+
#
|
19
|
+
# sub_account_id: string - optional - ID of the subaccount to use for this call
|
18
20
|
# --------------------------------------------------------------------------------------------
|
19
21
|
def self.open(params={})
|
20
22
|
get_signed 'withdrawals/open', params
|
@@ -49,6 +51,8 @@ module BittrexEnterprise
|
|
49
51
|
# endDate - string(date-time) - Filters out result after this timestamp. Uses the same format
|
50
52
|
# as StartDate. Either, both, or neither of StartDate and EndDate can be set. The only
|
51
53
|
# constraint on the pair is that, if both are set, then EndDate cannot be before StartDate.
|
54
|
+
#
|
55
|
+
# sub_account_id: string - optional - ID of the subaccount to use for this call
|
52
56
|
# --------------------------------------------------------------------------------------------
|
53
57
|
def self.closed(params={})
|
54
58
|
get_signed 'withdrawals/closed', params
|
@@ -60,9 +64,11 @@ module BittrexEnterprise
|
|
60
64
|
#
|
61
65
|
# ------ PARAMS ------
|
62
66
|
# tx_id - string - required - the transaction id to lookup
|
67
|
+
#
|
68
|
+
# sub_account_id: string - optional - ID of the subaccount to use for this call
|
63
69
|
# --------------------------------------------------------------------------------------------
|
64
|
-
def self.by_tx_id(tx_id)
|
65
|
-
get_signed 'withdrawals/ByTxId/{txId}', txId: tx_id
|
70
|
+
def self.by_tx_id(tx_id, sub_account_id='')
|
71
|
+
get_signed 'withdrawals/ByTxId/{txId}', txId: tx_id, sub_account_id: sub_account_id
|
66
72
|
end
|
67
73
|
|
68
74
|
|
@@ -71,9 +77,11 @@ module BittrexEnterprise
|
|
71
77
|
#
|
72
78
|
# ------ PARAMS ------
|
73
79
|
# withdrawal_id - string - required - (guid-formatted string) - ID of withdrawal to retrieve
|
80
|
+
#
|
81
|
+
# sub_account_id: string - optional - ID of the subaccount to use for this call
|
74
82
|
# --------------------------------------------------------------------------------------------
|
75
|
-
def self.
|
76
|
-
get_signed 'withdrawals/{withdrawalId}', withdrawalId:
|
83
|
+
def self.retrieve(withdrawal_id, sub_account_id='')
|
84
|
+
get_signed 'withdrawals/{withdrawalId}', withdrawalId: withdrawal_id, sub_account_id: sub_account_id
|
77
85
|
end
|
78
86
|
|
79
87
|
|
@@ -82,9 +90,11 @@ module BittrexEnterprise
|
|
82
90
|
#
|
83
91
|
# ------ PARAMS ------
|
84
92
|
# withdrawal_id - string - required - (guid-formatted string) - ID of withdrawal to cancel
|
93
|
+
#
|
94
|
+
# sub_account_id: string - optional - ID of the subaccount to use for this call
|
85
95
|
# --------------------------------------------------------------------------------------------
|
86
|
-
def self.cancel(withdrawal_id)
|
87
|
-
delete_signed 'withdrawals/{withdrawalId}', withdrawalId: withdrawal_id
|
96
|
+
def self.cancel(withdrawal_id, sub_account_id='')
|
97
|
+
delete_signed 'withdrawals/{withdrawalId}', withdrawalId: withdrawal_id, sub_account_id: sub_account_id
|
88
98
|
end
|
89
99
|
|
90
100
|
|
@@ -97,9 +107,12 @@ module BittrexEnterprise
|
|
97
107
|
# "currencySymbol": "string",
|
98
108
|
# "quantity": "number (double)",
|
99
109
|
# "cryptoAddress": "string",
|
100
|
-
# "cryptoAddressTag": "string"
|
110
|
+
# "cryptoAddressTag": "string",
|
111
|
+
# "sub_account_id": "string"
|
101
112
|
# }
|
102
|
-
# *** REQUIRED -
|
113
|
+
# *** REQUIRED - currencySymbol, quantity, cryptoAddress ***
|
114
|
+
#
|
115
|
+
# sub_account_id: string - optional - ID of the subaccount to use for this call
|
103
116
|
# --------------------------------------------------------------------------------------------
|
104
117
|
def self.create(new_withdrawal={})
|
105
118
|
post_signed 'withdrawals', new_withdrawal
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bittrex-enterprise
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '0.
|
4
|
+
version: '0.5'
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Vertbase
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-07-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: addressable
|
@@ -187,7 +187,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
187
187
|
- !ruby/object:Gem::Version
|
188
188
|
version: '0'
|
189
189
|
requirements: []
|
190
|
-
rubygems_version: 3.0.
|
190
|
+
rubygems_version: 3.0.4
|
191
191
|
signing_key:
|
192
192
|
specification_version: 4
|
193
193
|
summary: Ruby implementation of the Bittrex v3 API
|