trophy_api_client 1.7.0 → 1.8.0
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/gemconfig.rb +1 -1
- data/lib/trophy_api_client/admin/points/boosts/client.rb +258 -39
- data/lib/trophy_api_client/admin/points/client.rb +21 -0
- data/lib/trophy_api_client/admin/points/levels/client.rb +402 -0
- data/lib/trophy_api_client/admin/points/systems/client.rb +374 -0
- data/lib/trophy_api_client/admin/points/triggers/client.rb +402 -0
- data/lib/trophy_api_client/types/{created_points_boost.rb → admin_points_boost.rb} +39 -23
- data/lib/trophy_api_client/types/{created_points_boost_rounding.rb → admin_points_boost_rounding.rb} +1 -1
- data/lib/trophy_api_client/types/{created_points_boost_status.rb → admin_points_boost_status.rb} +1 -1
- data/lib/trophy_api_client/types/admin_points_boost_user_attributes_item.rb +65 -0
- data/lib/trophy_api_client/types/admin_points_level.rb +109 -0
- data/lib/trophy_api_client/types/admin_points_level_badge.rb +55 -0
- data/lib/trophy_api_client/types/admin_points_system.rb +118 -0
- data/lib/trophy_api_client/types/admin_points_system_badge.rb +55 -0
- data/lib/trophy_api_client/types/admin_points_system_status.rb +9 -0
- data/lib/trophy_api_client/types/admin_points_trigger.rb +175 -0
- data/lib/trophy_api_client/types/admin_points_trigger_event_attributes_item.rb +66 -0
- data/lib/trophy_api_client/types/admin_points_trigger_status.rb +9 -0
- data/lib/trophy_api_client/types/admin_points_trigger_time_unit.rb +9 -0
- data/lib/trophy_api_client/types/admin_points_trigger_type.rb +12 -0
- data/lib/trophy_api_client/types/admin_points_trigger_user_attributes_item.rb +65 -0
- data/lib/trophy_api_client/types/create_points_boost_request_item.rb +125 -0
- data/lib/trophy_api_client/types/create_points_boost_request_item_rounding.rb +10 -0
- data/lib/trophy_api_client/types/create_points_boost_request_item_user_attributes_item.rb +67 -0
- data/lib/trophy_api_client/types/create_points_boosts_request.rb +7 -0
- data/lib/trophy_api_client/types/create_points_boosts_response.rb +4 -4
- data/lib/trophy_api_client/types/create_points_level_request_item.rb +103 -0
- data/lib/trophy_api_client/types/create_points_level_request_item_badge.rb +56 -0
- data/lib/trophy_api_client/types/create_points_levels_request.rb +7 -0
- data/lib/trophy_api_client/types/create_points_levels_response.rb +74 -0
- data/lib/trophy_api_client/types/create_points_system_request_item.rb +140 -0
- data/lib/trophy_api_client/types/create_points_system_request_item_badge.rb +55 -0
- data/lib/trophy_api_client/types/create_points_systems_request.rb +7 -0
- data/lib/trophy_api_client/types/create_points_systems_response.rb +74 -0
- data/lib/trophy_api_client/types/create_points_trigger_request_item.rb +167 -0
- data/lib/trophy_api_client/types/create_points_trigger_request_item_event_attributes_item.rb +67 -0
- data/lib/trophy_api_client/types/create_points_trigger_request_item_status.rb +9 -0
- data/lib/trophy_api_client/types/create_points_trigger_request_item_time_unit.rb +9 -0
- data/lib/trophy_api_client/types/create_points_trigger_request_item_type.rb +12 -0
- data/lib/trophy_api_client/types/create_points_trigger_request_item_user_attributes_item.rb +67 -0
- data/lib/trophy_api_client/types/create_points_triggers_request.rb +7 -0
- data/lib/trophy_api_client/types/create_points_triggers_response.rb +74 -0
- data/lib/trophy_api_client/types/created_admin_points_system.rb +163 -0
- data/lib/trophy_api_client/types/delete_points_levels_response.rb +74 -0
- data/lib/trophy_api_client/types/delete_points_systems_response.rb +74 -0
- data/lib/trophy_api_client/types/delete_points_triggers_response.rb +75 -0
- data/lib/trophy_api_client/types/list_points_boosts_response.rb +7 -0
- data/lib/trophy_api_client/types/list_points_levels_response.rb +7 -0
- data/lib/trophy_api_client/types/list_points_systems_response.rb +7 -0
- data/lib/trophy_api_client/types/list_points_triggers_response.rb +7 -0
- data/lib/trophy_api_client/types/patch_points_boosts_request.rb +7 -0
- data/lib/trophy_api_client/types/patch_points_boosts_request_item.rb +118 -0
- data/lib/trophy_api_client/types/patch_points_boosts_request_item_rounding.rb +10 -0
- data/lib/trophy_api_client/types/patch_points_boosts_request_item_user_attributes_item.rb +67 -0
- data/lib/trophy_api_client/types/patch_points_boosts_response.rb +74 -0
- data/lib/trophy_api_client/types/patch_points_levels_request.rb +7 -0
- data/lib/trophy_api_client/types/patch_points_levels_request_item.rb +100 -0
- data/lib/trophy_api_client/types/patch_points_levels_request_item_badge.rb +55 -0
- data/lib/trophy_api_client/types/patch_points_levels_response.rb +74 -0
- data/lib/trophy_api_client/types/patch_points_triggers_request.rb +7 -0
- data/lib/trophy_api_client/types/patch_points_triggers_request_item.rb +174 -0
- data/lib/trophy_api_client/types/patch_points_triggers_request_item_event_attributes_item.rb +67 -0
- data/lib/trophy_api_client/types/patch_points_triggers_request_item_status.rb +9 -0
- data/lib/trophy_api_client/types/patch_points_triggers_request_item_time_unit.rb +9 -0
- data/lib/trophy_api_client/types/patch_points_triggers_request_item_type.rb +13 -0
- data/lib/trophy_api_client/types/patch_points_triggers_request_item_user_attributes_item.rb +67 -0
- data/lib/trophy_api_client/types/patch_points_triggers_response.rb +74 -0
- data/lib/trophy_api_client/types/update_points_system_request_item.rb +102 -0
- data/lib/trophy_api_client/types/update_points_system_request_item_badge.rb +55 -0
- data/lib/trophy_api_client/types/update_points_systems_request.rb +7 -0
- data/lib/trophy_api_client/types/update_points_systems_response.rb +74 -0
- data/lib/trophy_api_client/version.rb +1 -1
- data/lib/types_export.rb +64 -5
- metadata +68 -6
- data/lib/trophy_api_client/admin/points/boosts/types/create_points_boosts_request_boosts_item.rb +0 -111
- data/lib/trophy_api_client/admin/points/boosts/types/create_points_boosts_request_boosts_item_rounding.rb +0 -16
|
@@ -0,0 +1,402 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative "../../../../requests"
|
|
4
|
+
require_relative "../../../types/list_points_levels_response"
|
|
5
|
+
require "json"
|
|
6
|
+
require_relative "../../../types/create_points_levels_request"
|
|
7
|
+
require_relative "../../../types/create_points_levels_response"
|
|
8
|
+
require_relative "../../../types/delete_points_levels_response"
|
|
9
|
+
require_relative "../../../types/patch_points_levels_request"
|
|
10
|
+
require_relative "../../../types/patch_points_levels_response"
|
|
11
|
+
require_relative "../../../types/admin_points_level"
|
|
12
|
+
require "async"
|
|
13
|
+
|
|
14
|
+
module TrophyApiClient
|
|
15
|
+
module Admin
|
|
16
|
+
module Points
|
|
17
|
+
class LevelsClient
|
|
18
|
+
# @return [TrophyApiClient::RequestClient]
|
|
19
|
+
attr_reader :request_client
|
|
20
|
+
|
|
21
|
+
# @param request_client [TrophyApiClient::RequestClient]
|
|
22
|
+
# @return [TrophyApiClient::Admin::Points::LevelsClient]
|
|
23
|
+
def initialize(request_client:)
|
|
24
|
+
@request_client = request_client
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# List points levels for a system.
|
|
28
|
+
#
|
|
29
|
+
# @param system_id [String] The UUID of the points system.
|
|
30
|
+
# @param limit [Integer] Number of records to return.
|
|
31
|
+
# @param skip [Integer] Number of records to skip from the start of the list.
|
|
32
|
+
# @param request_options [TrophyApiClient::RequestOptions]
|
|
33
|
+
# @return [TrophyApiClient::LIST_POINTS_LEVELS_RESPONSE]
|
|
34
|
+
# @example
|
|
35
|
+
# api = TrophyApiClient::Client.new(
|
|
36
|
+
# base_url: "https://api.example.com",
|
|
37
|
+
# environment: TrophyApiClient::Environment::PRODUCTION,
|
|
38
|
+
# api_key: "YOUR_API_KEY"
|
|
39
|
+
# )
|
|
40
|
+
# api.admin.points.levels.list(
|
|
41
|
+
# system_id: "550e8400-e29b-41d4-a716-446655440000",
|
|
42
|
+
# limit: 1,
|
|
43
|
+
# skip: 1
|
|
44
|
+
# )
|
|
45
|
+
def list(system_id:, limit: nil, skip: nil, request_options: nil)
|
|
46
|
+
response = @request_client.conn.get do |req|
|
|
47
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
48
|
+
req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
|
|
49
|
+
req.headers = {
|
|
50
|
+
**(req.headers || {}),
|
|
51
|
+
**@request_client.get_headers,
|
|
52
|
+
**(request_options&.additional_headers || {})
|
|
53
|
+
}.compact
|
|
54
|
+
req.params = {
|
|
55
|
+
**(request_options&.additional_query_parameters || {}),
|
|
56
|
+
"limit": limit,
|
|
57
|
+
"skip": skip
|
|
58
|
+
}.compact
|
|
59
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
|
60
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
|
61
|
+
end
|
|
62
|
+
req.url "#{@request_client.get_url(environment: admin,
|
|
63
|
+
request_options: request_options)}/points/#{system_id}/levels"
|
|
64
|
+
end
|
|
65
|
+
parsed_json = JSON.parse(response.body)
|
|
66
|
+
parsed_json&.map do |item|
|
|
67
|
+
item = item.to_json
|
|
68
|
+
TrophyApiClient::AdminPointsLevel.from_json(json_object: item)
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
# Create points levels. Maximum 100 levels per request.
|
|
73
|
+
#
|
|
74
|
+
# @param system_id [String] The UUID of the points system.
|
|
75
|
+
# @param request [TrophyApiClient::CREATE_POINTS_LEVELS_REQUEST]
|
|
76
|
+
# @param request_options [TrophyApiClient::RequestOptions]
|
|
77
|
+
# @return [TrophyApiClient::CreatePointsLevelsResponse]
|
|
78
|
+
# @example
|
|
79
|
+
# api = TrophyApiClient::Client.new(
|
|
80
|
+
# base_url: "https://api.example.com",
|
|
81
|
+
# environment: TrophyApiClient::Environment::PRODUCTION,
|
|
82
|
+
# api_key: "YOUR_API_KEY"
|
|
83
|
+
# )
|
|
84
|
+
# api.admin.points.levels.create(system_id: "550e8400-e29b-41d4-a716-446655440000", request: [{ name: "Bronze", key: "bronze", points: 100 }])
|
|
85
|
+
def create(system_id:, request:, request_options: nil)
|
|
86
|
+
response = @request_client.conn.post do |req|
|
|
87
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
88
|
+
req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
|
|
89
|
+
req.headers = {
|
|
90
|
+
**(req.headers || {}),
|
|
91
|
+
**@request_client.get_headers,
|
|
92
|
+
**(request_options&.additional_headers || {})
|
|
93
|
+
}.compact
|
|
94
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
|
95
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
|
96
|
+
end
|
|
97
|
+
req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
|
|
98
|
+
req.url "#{@request_client.get_url(environment: admin,
|
|
99
|
+
request_options: request_options)}/points/#{system_id}/levels"
|
|
100
|
+
end
|
|
101
|
+
TrophyApiClient::CreatePointsLevelsResponse.from_json(json_object: response.body)
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
# Delete multiple points levels by ID.
|
|
105
|
+
#
|
|
106
|
+
# @param system_id [String] The UUID of the points system.
|
|
107
|
+
# @param ids [String] Comma-separated list of level UUIDs to delete.
|
|
108
|
+
# @param request_options [TrophyApiClient::RequestOptions]
|
|
109
|
+
# @return [TrophyApiClient::DeletePointsLevelsResponse]
|
|
110
|
+
# @example
|
|
111
|
+
# api = TrophyApiClient::Client.new(
|
|
112
|
+
# base_url: "https://api.example.com",
|
|
113
|
+
# environment: TrophyApiClient::Environment::PRODUCTION,
|
|
114
|
+
# api_key: "YOUR_API_KEY"
|
|
115
|
+
# )
|
|
116
|
+
# api.admin.points.levels.delete
|
|
117
|
+
def delete(system_id:, ids: nil, request_options: nil)
|
|
118
|
+
response = @request_client.conn.delete do |req|
|
|
119
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
120
|
+
req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
|
|
121
|
+
req.headers = {
|
|
122
|
+
**(req.headers || {}),
|
|
123
|
+
**@request_client.get_headers,
|
|
124
|
+
**(request_options&.additional_headers || {})
|
|
125
|
+
}.compact
|
|
126
|
+
req.params = { **(request_options&.additional_query_parameters || {}), "ids": ids }.compact
|
|
127
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
|
128
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
|
129
|
+
end
|
|
130
|
+
req.url "#{@request_client.get_url(environment: admin,
|
|
131
|
+
request_options: request_options)}/points/#{system_id}/levels"
|
|
132
|
+
end
|
|
133
|
+
TrophyApiClient::DeletePointsLevelsResponse.from_json(json_object: response.body)
|
|
134
|
+
end
|
|
135
|
+
|
|
136
|
+
# Update multiple points levels. Each item must include an ID. `key` cannot be
|
|
137
|
+
# changed.
|
|
138
|
+
#
|
|
139
|
+
# @param system_id [String] The UUID of the points system.
|
|
140
|
+
# @param request [TrophyApiClient::PATCH_POINTS_LEVELS_REQUEST]
|
|
141
|
+
# @param request_options [TrophyApiClient::RequestOptions]
|
|
142
|
+
# @return [TrophyApiClient::PatchPointsLevelsResponse]
|
|
143
|
+
# @example
|
|
144
|
+
# api = TrophyApiClient::Client.new(
|
|
145
|
+
# base_url: "https://api.example.com",
|
|
146
|
+
# environment: TrophyApiClient::Environment::PRODUCTION,
|
|
147
|
+
# api_key: "YOUR_API_KEY"
|
|
148
|
+
# )
|
|
149
|
+
# api.admin.points.levels.update(system_id: "550e8400-e29b-41d4-a716-446655440000", request: [{ id: "550e8400-e29b-41d4-a716-446655440000" }])
|
|
150
|
+
def update(system_id:, request:, request_options: nil)
|
|
151
|
+
response = @request_client.conn.patch do |req|
|
|
152
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
153
|
+
req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
|
|
154
|
+
req.headers = {
|
|
155
|
+
**(req.headers || {}),
|
|
156
|
+
**@request_client.get_headers,
|
|
157
|
+
**(request_options&.additional_headers || {})
|
|
158
|
+
}.compact
|
|
159
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
|
160
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
|
161
|
+
end
|
|
162
|
+
req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
|
|
163
|
+
req.url "#{@request_client.get_url(environment: admin,
|
|
164
|
+
request_options: request_options)}/points/#{system_id}/levels"
|
|
165
|
+
end
|
|
166
|
+
TrophyApiClient::PatchPointsLevelsResponse.from_json(json_object: response.body)
|
|
167
|
+
end
|
|
168
|
+
|
|
169
|
+
# Get a single points level by ID.
|
|
170
|
+
#
|
|
171
|
+
# @param system_id [String] The UUID of the points system.
|
|
172
|
+
# @param id [String] The UUID of the points level.
|
|
173
|
+
# @param request_options [TrophyApiClient::RequestOptions]
|
|
174
|
+
# @return [TrophyApiClient::AdminPointsLevel]
|
|
175
|
+
# @example
|
|
176
|
+
# api = TrophyApiClient::Client.new(
|
|
177
|
+
# base_url: "https://api.example.com",
|
|
178
|
+
# environment: TrophyApiClient::Environment::PRODUCTION,
|
|
179
|
+
# api_key: "YOUR_API_KEY"
|
|
180
|
+
# )
|
|
181
|
+
# api.admin.points.levels.get(system_id: "550e8400-e29b-41d4-a716-446655440000", id: "660f9500-f30c-42e5-b827-557766550001")
|
|
182
|
+
def get(system_id:, id:, request_options: nil)
|
|
183
|
+
response = @request_client.conn.get do |req|
|
|
184
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
185
|
+
req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
|
|
186
|
+
req.headers = {
|
|
187
|
+
**(req.headers || {}),
|
|
188
|
+
**@request_client.get_headers,
|
|
189
|
+
**(request_options&.additional_headers || {})
|
|
190
|
+
}.compact
|
|
191
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
|
192
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
|
193
|
+
end
|
|
194
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
|
195
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
|
196
|
+
end
|
|
197
|
+
req.url "#{@request_client.get_url(environment: admin,
|
|
198
|
+
request_options: request_options)}/points/#{system_id}/levels/#{id}"
|
|
199
|
+
end
|
|
200
|
+
TrophyApiClient::AdminPointsLevel.from_json(json_object: response.body)
|
|
201
|
+
end
|
|
202
|
+
end
|
|
203
|
+
|
|
204
|
+
class AsyncLevelsClient
|
|
205
|
+
# @return [TrophyApiClient::AsyncRequestClient]
|
|
206
|
+
attr_reader :request_client
|
|
207
|
+
|
|
208
|
+
# @param request_client [TrophyApiClient::AsyncRequestClient]
|
|
209
|
+
# @return [TrophyApiClient::Admin::Points::AsyncLevelsClient]
|
|
210
|
+
def initialize(request_client:)
|
|
211
|
+
@request_client = request_client
|
|
212
|
+
end
|
|
213
|
+
|
|
214
|
+
# List points levels for a system.
|
|
215
|
+
#
|
|
216
|
+
# @param system_id [String] The UUID of the points system.
|
|
217
|
+
# @param limit [Integer] Number of records to return.
|
|
218
|
+
# @param skip [Integer] Number of records to skip from the start of the list.
|
|
219
|
+
# @param request_options [TrophyApiClient::RequestOptions]
|
|
220
|
+
# @return [TrophyApiClient::LIST_POINTS_LEVELS_RESPONSE]
|
|
221
|
+
# @example
|
|
222
|
+
# api = TrophyApiClient::Client.new(
|
|
223
|
+
# base_url: "https://api.example.com",
|
|
224
|
+
# environment: TrophyApiClient::Environment::PRODUCTION,
|
|
225
|
+
# api_key: "YOUR_API_KEY"
|
|
226
|
+
# )
|
|
227
|
+
# api.admin.points.levels.list(
|
|
228
|
+
# system_id: "550e8400-e29b-41d4-a716-446655440000",
|
|
229
|
+
# limit: 1,
|
|
230
|
+
# skip: 1
|
|
231
|
+
# )
|
|
232
|
+
def list(system_id:, limit: nil, skip: nil, request_options: nil)
|
|
233
|
+
Async do
|
|
234
|
+
response = @request_client.conn.get do |req|
|
|
235
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
236
|
+
req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
|
|
237
|
+
req.headers = {
|
|
238
|
+
**(req.headers || {}),
|
|
239
|
+
**@request_client.get_headers,
|
|
240
|
+
**(request_options&.additional_headers || {})
|
|
241
|
+
}.compact
|
|
242
|
+
req.params = {
|
|
243
|
+
**(request_options&.additional_query_parameters || {}),
|
|
244
|
+
"limit": limit,
|
|
245
|
+
"skip": skip
|
|
246
|
+
}.compact
|
|
247
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
|
248
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
|
249
|
+
end
|
|
250
|
+
req.url "#{@request_client.get_url(environment: admin,
|
|
251
|
+
request_options: request_options)}/points/#{system_id}/levels"
|
|
252
|
+
end
|
|
253
|
+
parsed_json = JSON.parse(response.body)
|
|
254
|
+
parsed_json&.map do |item|
|
|
255
|
+
item = item.to_json
|
|
256
|
+
TrophyApiClient::AdminPointsLevel.from_json(json_object: item)
|
|
257
|
+
end
|
|
258
|
+
end
|
|
259
|
+
end
|
|
260
|
+
|
|
261
|
+
# Create points levels. Maximum 100 levels per request.
|
|
262
|
+
#
|
|
263
|
+
# @param system_id [String] The UUID of the points system.
|
|
264
|
+
# @param request [TrophyApiClient::CREATE_POINTS_LEVELS_REQUEST]
|
|
265
|
+
# @param request_options [TrophyApiClient::RequestOptions]
|
|
266
|
+
# @return [TrophyApiClient::CreatePointsLevelsResponse]
|
|
267
|
+
# @example
|
|
268
|
+
# api = TrophyApiClient::Client.new(
|
|
269
|
+
# base_url: "https://api.example.com",
|
|
270
|
+
# environment: TrophyApiClient::Environment::PRODUCTION,
|
|
271
|
+
# api_key: "YOUR_API_KEY"
|
|
272
|
+
# )
|
|
273
|
+
# api.admin.points.levels.create(system_id: "550e8400-e29b-41d4-a716-446655440000", request: [{ name: "Bronze", key: "bronze", points: 100 }])
|
|
274
|
+
def create(system_id:, request:, request_options: nil)
|
|
275
|
+
Async do
|
|
276
|
+
response = @request_client.conn.post do |req|
|
|
277
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
278
|
+
req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
|
|
279
|
+
req.headers = {
|
|
280
|
+
**(req.headers || {}),
|
|
281
|
+
**@request_client.get_headers,
|
|
282
|
+
**(request_options&.additional_headers || {})
|
|
283
|
+
}.compact
|
|
284
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
|
285
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
|
286
|
+
end
|
|
287
|
+
req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
|
|
288
|
+
req.url "#{@request_client.get_url(environment: admin,
|
|
289
|
+
request_options: request_options)}/points/#{system_id}/levels"
|
|
290
|
+
end
|
|
291
|
+
TrophyApiClient::CreatePointsLevelsResponse.from_json(json_object: response.body)
|
|
292
|
+
end
|
|
293
|
+
end
|
|
294
|
+
|
|
295
|
+
# Delete multiple points levels by ID.
|
|
296
|
+
#
|
|
297
|
+
# @param system_id [String] The UUID of the points system.
|
|
298
|
+
# @param ids [String] Comma-separated list of level UUIDs to delete.
|
|
299
|
+
# @param request_options [TrophyApiClient::RequestOptions]
|
|
300
|
+
# @return [TrophyApiClient::DeletePointsLevelsResponse]
|
|
301
|
+
# @example
|
|
302
|
+
# api = TrophyApiClient::Client.new(
|
|
303
|
+
# base_url: "https://api.example.com",
|
|
304
|
+
# environment: TrophyApiClient::Environment::PRODUCTION,
|
|
305
|
+
# api_key: "YOUR_API_KEY"
|
|
306
|
+
# )
|
|
307
|
+
# api.admin.points.levels.delete
|
|
308
|
+
def delete(system_id:, ids: nil, request_options: nil)
|
|
309
|
+
Async do
|
|
310
|
+
response = @request_client.conn.delete do |req|
|
|
311
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
312
|
+
req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
|
|
313
|
+
req.headers = {
|
|
314
|
+
**(req.headers || {}),
|
|
315
|
+
**@request_client.get_headers,
|
|
316
|
+
**(request_options&.additional_headers || {})
|
|
317
|
+
}.compact
|
|
318
|
+
req.params = { **(request_options&.additional_query_parameters || {}), "ids": ids }.compact
|
|
319
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
|
320
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
|
321
|
+
end
|
|
322
|
+
req.url "#{@request_client.get_url(environment: admin,
|
|
323
|
+
request_options: request_options)}/points/#{system_id}/levels"
|
|
324
|
+
end
|
|
325
|
+
TrophyApiClient::DeletePointsLevelsResponse.from_json(json_object: response.body)
|
|
326
|
+
end
|
|
327
|
+
end
|
|
328
|
+
|
|
329
|
+
# Update multiple points levels. Each item must include an ID. `key` cannot be
|
|
330
|
+
# changed.
|
|
331
|
+
#
|
|
332
|
+
# @param system_id [String] The UUID of the points system.
|
|
333
|
+
# @param request [TrophyApiClient::PATCH_POINTS_LEVELS_REQUEST]
|
|
334
|
+
# @param request_options [TrophyApiClient::RequestOptions]
|
|
335
|
+
# @return [TrophyApiClient::PatchPointsLevelsResponse]
|
|
336
|
+
# @example
|
|
337
|
+
# api = TrophyApiClient::Client.new(
|
|
338
|
+
# base_url: "https://api.example.com",
|
|
339
|
+
# environment: TrophyApiClient::Environment::PRODUCTION,
|
|
340
|
+
# api_key: "YOUR_API_KEY"
|
|
341
|
+
# )
|
|
342
|
+
# api.admin.points.levels.update(system_id: "550e8400-e29b-41d4-a716-446655440000", request: [{ id: "550e8400-e29b-41d4-a716-446655440000" }])
|
|
343
|
+
def update(system_id:, request:, request_options: nil)
|
|
344
|
+
Async do
|
|
345
|
+
response = @request_client.conn.patch do |req|
|
|
346
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
347
|
+
req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
|
|
348
|
+
req.headers = {
|
|
349
|
+
**(req.headers || {}),
|
|
350
|
+
**@request_client.get_headers,
|
|
351
|
+
**(request_options&.additional_headers || {})
|
|
352
|
+
}.compact
|
|
353
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
|
354
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
|
355
|
+
end
|
|
356
|
+
req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
|
|
357
|
+
req.url "#{@request_client.get_url(environment: admin,
|
|
358
|
+
request_options: request_options)}/points/#{system_id}/levels"
|
|
359
|
+
end
|
|
360
|
+
TrophyApiClient::PatchPointsLevelsResponse.from_json(json_object: response.body)
|
|
361
|
+
end
|
|
362
|
+
end
|
|
363
|
+
|
|
364
|
+
# Get a single points level by ID.
|
|
365
|
+
#
|
|
366
|
+
# @param system_id [String] The UUID of the points system.
|
|
367
|
+
# @param id [String] The UUID of the points level.
|
|
368
|
+
# @param request_options [TrophyApiClient::RequestOptions]
|
|
369
|
+
# @return [TrophyApiClient::AdminPointsLevel]
|
|
370
|
+
# @example
|
|
371
|
+
# api = TrophyApiClient::Client.new(
|
|
372
|
+
# base_url: "https://api.example.com",
|
|
373
|
+
# environment: TrophyApiClient::Environment::PRODUCTION,
|
|
374
|
+
# api_key: "YOUR_API_KEY"
|
|
375
|
+
# )
|
|
376
|
+
# api.admin.points.levels.get(system_id: "550e8400-e29b-41d4-a716-446655440000", id: "660f9500-f30c-42e5-b827-557766550001")
|
|
377
|
+
def get(system_id:, id:, request_options: nil)
|
|
378
|
+
Async do
|
|
379
|
+
response = @request_client.conn.get do |req|
|
|
380
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
|
381
|
+
req.headers["X-API-KEY"] = request_options.api_key unless request_options&.api_key.nil?
|
|
382
|
+
req.headers = {
|
|
383
|
+
**(req.headers || {}),
|
|
384
|
+
**@request_client.get_headers,
|
|
385
|
+
**(request_options&.additional_headers || {})
|
|
386
|
+
}.compact
|
|
387
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
|
388
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
|
389
|
+
end
|
|
390
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
|
391
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
|
392
|
+
end
|
|
393
|
+
req.url "#{@request_client.get_url(environment: admin,
|
|
394
|
+
request_options: request_options)}/points/#{system_id}/levels/#{id}"
|
|
395
|
+
end
|
|
396
|
+
TrophyApiClient::AdminPointsLevel.from_json(json_object: response.body)
|
|
397
|
+
end
|
|
398
|
+
end
|
|
399
|
+
end
|
|
400
|
+
end
|
|
401
|
+
end
|
|
402
|
+
end
|