ost-sdk-ruby 1.1.0 → 2.0.0.beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/config.rb +18 -0
- data/lib/ost-sdk-ruby/saas.rb +12 -17
- data/lib/ost-sdk-ruby/saas/balance.rb +35 -0
- data/lib/ost-sdk-ruby/saas/base.rb +94 -12
- data/lib/ost-sdk-ruby/saas/{v1.1/ledger.rb → chains.rb} +6 -9
- data/lib/ost-sdk-ruby/saas/{v1.1/balances.rb → device_managers.rb} +7 -9
- data/lib/ost-sdk-ruby/saas/devices.rb +55 -0
- data/lib/ost-sdk-ruby/saas/manifest.rb +40 -0
- data/lib/ost-sdk-ruby/saas/price_points.rb +35 -0
- data/lib/ost-sdk-ruby/saas/recovery_owners.rb +35 -0
- data/lib/ost-sdk-ruby/saas/{v1/token.rb → rules.rb} +6 -9
- data/lib/ost-sdk-ruby/saas/services.rb +3 -17
- data/lib/ost-sdk-ruby/saas/sessions.rb +44 -0
- data/lib/ost-sdk-ruby/saas/tokens.rb +35 -0
- data/lib/ost-sdk-ruby/saas/transactions.rb +53 -0
- data/lib/ost-sdk-ruby/saas/users.rb +52 -0
- data/lib/ost-sdk-ruby/test/balance_test.rb +18 -0
- data/lib/ost-sdk-ruby/test/chains_test.rb +18 -0
- data/lib/ost-sdk-ruby/test/device_managers_test.rb +18 -0
- data/lib/ost-sdk-ruby/test/devices_test.rb +41 -0
- data/lib/ost-sdk-ruby/test/price_points_test.rb +18 -0
- data/lib/ost-sdk-ruby/test/recovery_owners_test.rb +21 -0
- data/lib/ost-sdk-ruby/test/rules_test.rb +18 -0
- data/lib/ost-sdk-ruby/test/sessions_test.rb +28 -0
- data/lib/ost-sdk-ruby/test/signature_generation_test.rb +33 -0
- data/lib/ost-sdk-ruby/test/tokens_test.rb +18 -0
- data/lib/ost-sdk-ruby/test/transactions_test.rb +43 -0
- data/lib/ost-sdk-ruby/test/users_test.rb +32 -0
- data/lib/ost-sdk-ruby/util.rb +1 -1
- data/lib/ost-sdk-ruby/util/common_validator.rb +14 -0
- data/lib/ost-sdk-ruby/util/custom_error_response.rb +56 -0
- data/lib/ost-sdk-ruby/util/http_helper.rb +105 -97
- data/lib/ost-sdk-ruby/util/services_helper.rb +3 -75
- data/lib/ost-sdk-ruby/version.rb +1 -1
- metadata +42 -32
- data/Rakefile +0 -8
- data/lib/ost-sdk-ruby/saas/v0/services.rb +0 -32
- data/lib/ost-sdk-ruby/saas/v0/transaction_kind.rb +0 -85
- data/lib/ost-sdk-ruby/saas/v0/users.rb +0 -73
- data/lib/ost-sdk-ruby/saas/v1.1/services.rb +0 -41
- data/lib/ost-sdk-ruby/saas/v1/actions.rb +0 -64
- data/lib/ost-sdk-ruby/saas/v1/airdrops.rb +0 -55
- data/lib/ost-sdk-ruby/saas/v1/services.rb +0 -36
- data/lib/ost-sdk-ruby/saas/v1/transactions.rb +0 -55
- data/lib/ost-sdk-ruby/saas/v1/transfers.rb +0 -55
- data/lib/ost-sdk-ruby/saas/v1/users.rb +0 -64
- data/lib/ost-sdk-ruby/util/result.rb +0 -240
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0e1ebbb4217e10f8fd93f4bfc34a297c3dea6aa5
|
4
|
+
data.tar.gz: c6308f534ae6a646e2b2c81168bcee121b47db30
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d89dbac80afb427bbc7ff38a4d1ac2ae22692a4410fb2475cea04eabd61d95cf4f3c4939b279ab65e05483cf2433a308fd6a3b3c9e44cdbfb86e38a53f45088d
|
7
|
+
data.tar.gz: 3c5ee6e8896e85b7418d0fd05d0065eb70fcf1b9fbe1091be9af427846552567b5a8f23a43dcd3866c82799076d51b276d7b957f48c13cef4ae7503ed80faea4
|
data/lib/config.rb
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
class Config
|
2
|
+
|
3
|
+
API_BASE_URL = ENV['OST_KIT_API_ENDPOINT']
|
4
|
+
API_KEY = ENV['OST_KIT_API_KEY']
|
5
|
+
API_SECRET = ENV['OST_KIT_API_SECRET']
|
6
|
+
OST_SDK = OSTSdk::Saas::Services.new({api_key: API_KEY, api_secret: API_SECRET,
|
7
|
+
api_base_url: API_BASE_URL, config: {timeout: 10}, api_spec: false})
|
8
|
+
|
9
|
+
OST_KIT_COMPANY_USER_ID = ENV['OST_KIT_COMPANY_USER_ID']
|
10
|
+
OST_KIT_AUX_CHAIN_ID = ENV['OST_KIT_AUX_CHAIN_ID']
|
11
|
+
OST_KIT_TRANSACTION_ID = ENV['OST_KIT_TRANSACTION_ID']
|
12
|
+
OST_KIT_USER_ID = ENV['OST_KIT_USER_ID']
|
13
|
+
OST_KIT_USER_DEVICE_ADDRESS = ENV['OST_KIT_USER_DEVICE_ADDRESS']
|
14
|
+
OST_KIT_SESSION_ADDRESS = ENV['OST_KIT_SESSION_ADDRESS']
|
15
|
+
OST_KIT_RULE_ADDRESS = ENV['OST_KIT_RULE_ADDRESS']
|
16
|
+
OST_KIT_USER2_TOKEN_HOLDER_ADDRESS = ENV['OST_KIT_USER2_TOKEN_HOLDER_ADDRESS']
|
17
|
+
OST_KIT_RECOVERY_OWNER_ADDRESS = ENV['OST_KIT_RECOVERY_OWNER_ADDRESS']
|
18
|
+
end
|
data/lib/ost-sdk-ruby/saas.rb
CHANGED
@@ -1,22 +1,17 @@
|
|
1
1
|
require_relative 'saas/services'
|
2
|
-
|
3
2
|
require_relative 'saas/base'
|
4
|
-
|
5
|
-
require_relative 'saas/
|
6
|
-
require_relative 'saas/
|
7
|
-
require_relative 'saas/
|
8
|
-
|
9
|
-
require_relative 'saas/
|
10
|
-
require_relative 'saas/
|
11
|
-
require_relative 'saas/
|
12
|
-
require_relative 'saas/
|
13
|
-
require_relative 'saas/
|
14
|
-
require_relative 'saas/
|
15
|
-
require_relative 'saas/
|
16
|
-
|
17
|
-
require_relative 'saas/v1.1/services'
|
18
|
-
require_relative 'saas/v1.1/balances'
|
19
|
-
require_relative 'saas/v1.1/ledger'
|
3
|
+
require_relative 'saas/balance'
|
4
|
+
require_relative 'saas/chains'
|
5
|
+
require_relative 'saas/device_managers'
|
6
|
+
require_relative 'saas/devices'
|
7
|
+
require_relative 'saas/manifest'
|
8
|
+
require_relative 'saas/price_points'
|
9
|
+
require_relative 'saas/recovery_owners'
|
10
|
+
require_relative 'saas/rules'
|
11
|
+
require_relative 'saas/sessions'
|
12
|
+
require_relative 'saas/tokens'
|
13
|
+
require_relative 'saas/transactions'
|
14
|
+
require_relative 'saas/users'
|
20
15
|
|
21
16
|
module OSTSdk
|
22
17
|
|
@@ -0,0 +1,35 @@
|
|
1
|
+
module OSTSdk
|
2
|
+
|
3
|
+
module Saas
|
4
|
+
|
5
|
+
class Balance < OSTSdk::Saas::Base
|
6
|
+
|
7
|
+
# Initialize
|
8
|
+
#
|
9
|
+
# Arguments:
|
10
|
+
# api_base_url: (String)
|
11
|
+
# api_key: (String)
|
12
|
+
# api_secret: (String)
|
13
|
+
# api_spec: (Boolean)
|
14
|
+
# config: (Hash)
|
15
|
+
#
|
16
|
+
def initialize(params)
|
17
|
+
super
|
18
|
+
@url_prefix = '/users'
|
19
|
+
@url_suffix = '/balance'
|
20
|
+
end
|
21
|
+
|
22
|
+
# Get User's Balance
|
23
|
+
#
|
24
|
+
# Returns:
|
25
|
+
# response: (Hash)
|
26
|
+
#
|
27
|
+
def get(params = {})
|
28
|
+
http_helper.send_get_request("#{@url_prefix}/#{get_user_id!(params)}#{@url_suffix}", params)
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
@@ -36,19 +36,103 @@ module OSTSdk
|
|
36
36
|
# params: (Hash)
|
37
37
|
#
|
38
38
|
# Returns:
|
39
|
-
# id: (
|
39
|
+
# id: (String)
|
40
40
|
#
|
41
41
|
def get_id!(params)
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
42
|
+
get_value_for_key!(params, "id")
|
43
|
+
end
|
44
|
+
|
45
|
+
# Get user_id key from params hash and delete it
|
46
|
+
#
|
47
|
+
# Arguments:
|
48
|
+
# params: (Hash)
|
49
|
+
#
|
50
|
+
# Returns:
|
51
|
+
# user_id: (String)
|
52
|
+
#
|
53
|
+
def get_user_id!(params)
|
54
|
+
get_value_for_key!(params, "user_id")
|
55
|
+
end
|
56
|
+
|
57
|
+
# Get chain_id key from params hash and delete it
|
58
|
+
#
|
59
|
+
# Arguments:
|
60
|
+
# params: (Hash)
|
61
|
+
#
|
62
|
+
# Returns:
|
63
|
+
# chain_id: (String)
|
64
|
+
#
|
65
|
+
def get_chain_id!(params)
|
66
|
+
get_value_for_key!(params, "chain_id")
|
67
|
+
end
|
68
|
+
|
69
|
+
# Get device_address key from params hash and delete it
|
70
|
+
#
|
71
|
+
# Arguments:
|
72
|
+
# params: (Hash)
|
73
|
+
#
|
74
|
+
# Returns:
|
75
|
+
# device_address: (String)
|
76
|
+
#
|
77
|
+
def get_device_address!(params)
|
78
|
+
get_value_for_key!(params, "device_address")
|
79
|
+
end
|
80
|
+
|
81
|
+
# Get session_address key from params hash and delete it
|
82
|
+
#
|
83
|
+
# Arguments:
|
84
|
+
# params: (Hash)
|
85
|
+
#
|
86
|
+
# Returns:
|
87
|
+
# session_address: (String)
|
88
|
+
#
|
89
|
+
def get_session_address!(params)
|
90
|
+
get_value_for_key!(params, "session_address")
|
91
|
+
end
|
92
|
+
|
93
|
+
|
94
|
+
# Get transaction_id key from params hash and delete it
|
95
|
+
#
|
96
|
+
# Arguments:
|
97
|
+
# params: (Hash)
|
98
|
+
#
|
99
|
+
# Returns:
|
100
|
+
# transaction_id: (String)
|
101
|
+
#
|
102
|
+
def get_transaction_id!(params)
|
103
|
+
get_value_for_key!(params, "transaction_id")
|
104
|
+
end
|
105
|
+
|
106
|
+
# Get user_id key from params hash and delete it
|
107
|
+
#
|
108
|
+
# Arguments:
|
109
|
+
# params: (Hash)
|
110
|
+
#
|
111
|
+
# Returns:
|
112
|
+
# user_id: (String)
|
113
|
+
#
|
114
|
+
def get_recovery_owner_address!(params)
|
115
|
+
get_value_for_key!(params, "recovery_owner_address")
|
116
|
+
end
|
117
|
+
|
118
|
+
# Get value for specific key
|
119
|
+
#
|
120
|
+
# Arguments:
|
121
|
+
# params: (Hash)
|
122
|
+
#
|
123
|
+
# Returns:
|
124
|
+
# key: (String)
|
125
|
+
#
|
126
|
+
def get_value_for_key!(params, key)
|
127
|
+
if params.has_key?(key.to_sym)
|
128
|
+
value = params.delete(key.to_sym)
|
129
|
+
elsif params.has_key?(key.to_s)
|
130
|
+
value = params.delete(key.to_s)
|
50
131
|
end
|
51
|
-
|
132
|
+
|
133
|
+
raise "#{key.to_s} missing in request params" if value.nil?
|
134
|
+
raise "#{key.to_s} invalid in request params" if !OSTSdk::Util::CommonValidator.is_valid_uuid_format?(value.to_s)
|
135
|
+
value
|
52
136
|
end
|
53
137
|
|
54
138
|
# Sanitize API Base URL
|
@@ -60,9 +144,7 @@ module OSTSdk
|
|
60
144
|
# api_base_url: (String)
|
61
145
|
#
|
62
146
|
def sanitize_api_base_url(api_base_url)
|
63
|
-
|
64
147
|
api_base_url = api_base_url.gsub(/\/$/, '') # remove trailing slash
|
65
|
-
|
66
148
|
return api_base_url
|
67
149
|
|
68
150
|
end
|
@@ -2,9 +2,7 @@ module OSTSdk
|
|
2
2
|
|
3
3
|
module Saas
|
4
4
|
|
5
|
-
|
6
|
-
|
7
|
-
class Ledger < OSTSdk::Saas::Base
|
5
|
+
class Chains < OSTSdk::Saas::Base
|
8
6
|
|
9
7
|
# Initialize
|
10
8
|
#
|
@@ -13,25 +11,24 @@ module OSTSdk
|
|
13
11
|
# api_key: (String)
|
14
12
|
# api_secret: (String)
|
15
13
|
# api_spec: (Boolean)
|
14
|
+
# config: (Hash)
|
16
15
|
#
|
17
16
|
def initialize(params)
|
18
17
|
super
|
19
|
-
@url_prefix = '/
|
18
|
+
@url_prefix = '/chains'
|
20
19
|
end
|
21
20
|
|
22
|
-
# Get
|
21
|
+
# Get chain details
|
23
22
|
#
|
24
23
|
# Returns:
|
25
|
-
#
|
24
|
+
# response: (Hash)
|
26
25
|
#
|
27
26
|
def get(params = {})
|
28
|
-
http_helper.send_get_request("#{@url_prefix}/#{
|
27
|
+
http_helper.send_get_request("#{@url_prefix}/#{get_chain_id!(params)}", params)
|
29
28
|
end
|
30
29
|
|
31
30
|
end
|
32
31
|
|
33
32
|
end
|
34
33
|
|
35
|
-
end
|
36
|
-
|
37
34
|
end
|
@@ -2,9 +2,7 @@ module OSTSdk
|
|
2
2
|
|
3
3
|
module Saas
|
4
4
|
|
5
|
-
|
6
|
-
|
7
|
-
class Balances < OSTSdk::Saas::Base
|
5
|
+
class DeviceManagers < OSTSdk::Saas::Base
|
8
6
|
|
9
7
|
# Initialize
|
10
8
|
#
|
@@ -13,25 +11,25 @@ module OSTSdk
|
|
13
11
|
# api_key: (String)
|
14
12
|
# api_secret: (String)
|
15
13
|
# api_spec: (Boolean)
|
14
|
+
# config: (Hash)
|
16
15
|
#
|
17
16
|
def initialize(params)
|
18
17
|
super
|
19
|
-
@url_prefix = '/
|
18
|
+
@url_prefix = '/users'
|
19
|
+
@url_suffix = '/device-managers'
|
20
20
|
end
|
21
21
|
|
22
|
-
# Get
|
22
|
+
# Get Device Manager Detail
|
23
23
|
#
|
24
24
|
# Returns:
|
25
|
-
#
|
25
|
+
# response: (Hash)
|
26
26
|
#
|
27
27
|
def get(params = {})
|
28
|
-
http_helper.send_get_request("#{@url_prefix}/#{
|
28
|
+
http_helper.send_get_request("#{@url_prefix}/#{get_user_id!(params)}#{@url_suffix}", params)
|
29
29
|
end
|
30
30
|
|
31
31
|
end
|
32
32
|
|
33
33
|
end
|
34
34
|
|
35
|
-
end
|
36
|
-
|
37
35
|
end
|
@@ -0,0 +1,55 @@
|
|
1
|
+
module OSTSdk
|
2
|
+
|
3
|
+
module Saas
|
4
|
+
|
5
|
+
class Devices < OSTSdk::Saas::Base
|
6
|
+
|
7
|
+
# Initialize
|
8
|
+
#
|
9
|
+
# Arguments:
|
10
|
+
# api_base_url: (String)
|
11
|
+
# api_key: (String)
|
12
|
+
# api_secret: (String)
|
13
|
+
# api_spec: (Boolean)
|
14
|
+
# config: (Hash)
|
15
|
+
#
|
16
|
+
def initialize(params)
|
17
|
+
super
|
18
|
+
@url_prefix = '/users'
|
19
|
+
@url_suffix = '/devices'
|
20
|
+
end
|
21
|
+
|
22
|
+
# Associate a Device with a User
|
23
|
+
#
|
24
|
+
# Returns:
|
25
|
+
# response: (Hash)
|
26
|
+
#
|
27
|
+
def create(params = {})
|
28
|
+
http_helper.send_post_request("#{@url_prefix}/#{get_user_id!(params)}#{@url_suffix}", params)
|
29
|
+
end
|
30
|
+
|
31
|
+
# List devices of a user
|
32
|
+
#
|
33
|
+
# Returns:
|
34
|
+
# response: (Hash)
|
35
|
+
#
|
36
|
+
def get_list(params = {})
|
37
|
+
http_helper.send_get_request("#{@url_prefix}/#{get_user_id!(params)}#{@url_suffix}", params)
|
38
|
+
end
|
39
|
+
|
40
|
+
# Get device of a user
|
41
|
+
#
|
42
|
+
# Returns:
|
43
|
+
# response: (Hash)
|
44
|
+
#
|
45
|
+
def get(params = {})
|
46
|
+
http_helper.send_get_request("#{@url_prefix}/#{get_user_id!(params)}#{@url_suffix}/#{get_device_address!(params)}",
|
47
|
+
params)
|
48
|
+
end
|
49
|
+
|
50
|
+
|
51
|
+
end
|
52
|
+
|
53
|
+
end
|
54
|
+
|
55
|
+
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
module OSTSdk
|
2
|
+
|
3
|
+
module Saas
|
4
|
+
|
5
|
+
class Manifest
|
6
|
+
|
7
|
+
attr_reader :balance, :chains, :device_managers, :devices, :price_points, :recovery_owners, :rules,
|
8
|
+
:sessions, :tokens, :transactions, :users
|
9
|
+
|
10
|
+
# Initialize
|
11
|
+
#
|
12
|
+
# Arguments:
|
13
|
+
# api_base_url: (String)
|
14
|
+
# api_key: (String)
|
15
|
+
# api_secret: (String)
|
16
|
+
# api_spec: (Boolean)
|
17
|
+
# config: (Hash)
|
18
|
+
#
|
19
|
+
def initialize(params)
|
20
|
+
|
21
|
+
@balance = OSTSdk::Saas::Balance.new(params)
|
22
|
+
@chains = OSTSdk::Saas::Chains.new(params)
|
23
|
+
@device_managers = OSTSdk::Saas::DeviceManagers.new(params)
|
24
|
+
@devices = OSTSdk::Saas::Devices.new(params)
|
25
|
+
@price_points = OSTSdk::Saas::PricePoints.new(params)
|
26
|
+
@recovery_owners = OSTSdk::Saas::RecoveryOwners.new(params)
|
27
|
+
|
28
|
+
@rules = OSTSdk::Saas::Rules.new(params)
|
29
|
+
@sessions = OSTSdk::Saas::Sessions.new(params)
|
30
|
+
@tokens = OSTSdk::Saas::Tokens.new(params)
|
31
|
+
@transactions = OSTSdk::Saas::Transactions.new(params)
|
32
|
+
@users = OSTSdk::Saas::Users.new(params)
|
33
|
+
|
34
|
+
end
|
35
|
+
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
|
40
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
module OSTSdk
|
2
|
+
|
3
|
+
module Saas
|
4
|
+
|
5
|
+
class PricePoints < OSTSdk::Saas::Base
|
6
|
+
|
7
|
+
# Initialize
|
8
|
+
#
|
9
|
+
# Arguments:
|
10
|
+
# api_base_url: (String)
|
11
|
+
# api_key: (String)
|
12
|
+
# api_secret: (String)
|
13
|
+
# api_spec: (Boolean)
|
14
|
+
# config: (Hash)
|
15
|
+
#
|
16
|
+
def initialize(params)
|
17
|
+
super
|
18
|
+
@url_prefix = '/chains'
|
19
|
+
@url_suffix = '/price-points'
|
20
|
+
end
|
21
|
+
|
22
|
+
# Get Chain Price Points
|
23
|
+
#
|
24
|
+
# Returns:
|
25
|
+
# response: (Hash)
|
26
|
+
#
|
27
|
+
def get(params = {})
|
28
|
+
http_helper.send_get_request("#{@url_prefix}/#{get_chain_id!(params)}#{@url_suffix}", params)
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
module OSTSdk
|
2
|
+
|
3
|
+
module Saas
|
4
|
+
|
5
|
+
class RecoveryOwners < OSTSdk::Saas::Base
|
6
|
+
|
7
|
+
# Initialize
|
8
|
+
#
|
9
|
+
# Arguments:
|
10
|
+
# api_base_url: (String)
|
11
|
+
# api_key: (String)
|
12
|
+
# api_secret: (String)
|
13
|
+
# api_spec: (Boolean)
|
14
|
+
# config: (Hash)
|
15
|
+
#
|
16
|
+
def initialize(params)
|
17
|
+
super
|
18
|
+
@url_prefix = '/users'
|
19
|
+
@url_suffix = '/recovery-owners'
|
20
|
+
end
|
21
|
+
|
22
|
+
# Get Recovery Owner
|
23
|
+
#
|
24
|
+
# Returns:
|
25
|
+
# response: (Hash)
|
26
|
+
#
|
27
|
+
def get(params = {})
|
28
|
+
http_helper.send_get_request("#{@url_prefix}/#{get_user_id!(params)}#{@url_suffix}/#{get_recovery_owner_address!(params)}", params)
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|