test_sdk 0.0.4
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 +7 -0
- data/lib/core/file_utilities.rb +26 -0
- data/lib/environment.rb +7 -0
- data/lib/gemconfig.rb +14 -0
- data/lib/requests.rb +166 -0
- data/lib/test_sdk/benchmark/client.rb +1031 -0
- data/lib/test_sdk/company/client.rb +474 -0
- data/lib/test_sdk/deal/client.rb +584 -0
- data/lib/test_sdk/file/client.rb +692 -0
- data/lib/test_sdk/financials/client.rb +97 -0
- data/lib/test_sdk/group/client.rb +737 -0
- data/lib/test_sdk/macro/client.rb +422 -0
- data/lib/test_sdk/metadata/client.rb +95 -0
- data/lib/test_sdk/product/client.rb +419 -0
- data/lib/test_sdk/talent/client.rb +266 -0
- data/lib/test_sdk/types/account_manager_response.rb +74 -0
- data/lib/test_sdk/types/all_data_metadata_response.rb +68 -0
- data/lib/test_sdk/types/area.rb +74 -0
- data/lib/test_sdk/types/authenticate_api_key_response.rb +55 -0
- data/lib/test_sdk/types/available_categories_response.rb +5 -0
- data/lib/test_sdk/types/available_models_response.rb +69 -0
- data/lib/test_sdk/types/band_response.rb +83 -0
- data/lib/test_sdk/types/benchmark_quantile.rb +465 -0
- data/lib/test_sdk/types/categories_metadata_response.rb +72 -0
- data/lib/test_sdk/types/category_growth_rates.rb +143 -0
- data/lib/test_sdk/types/category_metadata.rb +79 -0
- data/lib/test_sdk/types/category_metadata_default_user_type.rb +8 -0
- data/lib/test_sdk/types/cohorts_response.rb +132 -0
- data/lib/test_sdk/types/column_metadata.rb +110 -0
- data/lib/test_sdk/types/column_mini_metadata.rb +83 -0
- data/lib/test_sdk/types/columns_metadata_response.rb +72 -0
- data/lib/test_sdk/types/company_response.rb +120 -0
- data/lib/test_sdk/types/concentration_endpoint_cdf_detail.rb +96 -0
- data/lib/test_sdk/types/concentration_endpoint_top_users_detail.rb +72 -0
- data/lib/test_sdk/types/concentration_response.rb +103 -0
- data/lib/test_sdk/types/concentration_timeseries_detail.rb +159 -0
- data/lib/test_sdk/types/contribution_response.rb +135 -0
- data/lib/test_sdk/types/create_api_key_response.rb +55 -0
- data/lib/test_sdk/types/create_file_for_signed_url_response.rb +127 -0
- data/lib/test_sdk/types/create_file_response.rb +113 -0
- data/lib/test_sdk/types/deal_combined_metrics_response.rb +477 -0
- data/lib/test_sdk/types/deal_data_availablity_response.rb +109 -0
- data/lib/test_sdk/types/deal_with_files_response.rb +194 -0
- data/lib/test_sdk/types/endpoint_seniority_count.rb +66 -0
- data/lib/test_sdk/types/executive_profile.rb +91 -0
- data/lib/test_sdk/types/executive_profile_position.rb +97 -0
- data/lib/test_sdk/types/file_response.rb +113 -0
- data/lib/test_sdk/types/file_type.rb +14 -0
- data/lib/test_sdk/types/financial_metrics.rb +113 -0
- data/lib/test_sdk/types/financials_response.rb +102 -0
- data/lib/test_sdk/types/frequency.rb +9 -0
- data/lib/test_sdk/types/function_level_growth_accounting.rb +111 -0
- data/lib/test_sdk/types/gcs_signed_url_response.rb +81 -0
- data/lib/test_sdk/types/group_response.rb +158 -0
- data/lib/test_sdk/types/group_user.rb +124 -0
- data/lib/test_sdk/types/group_with_users_response.rb +170 -0
- data/lib/test_sdk/types/growth_accounting_response.rb +226 -0
- data/lib/test_sdk/types/healthz_response.rb +55 -0
- data/lib/test_sdk/types/http_validation_error.rb +61 -0
- data/lib/test_sdk/types/income_statement_entry.rb +81 -0
- data/lib/test_sdk/types/model_metadata.rb +76 -0
- data/lib/test_sdk/types/models_metadata_response.rb +76 -0
- data/lib/test_sdk/types/paginated_response_company_response.rb +83 -0
- data/lib/test_sdk/types/paginated_response_deal_with_files_response.rb +84 -0
- data/lib/test_sdk/types/paginated_response_file_response.rb +83 -0
- data/lib/test_sdk/types/paginated_response_group_user.rb +83 -0
- data/lib/test_sdk/types/permission_model.rb +65 -0
- data/lib/test_sdk/types/priority.rb +10 -0
- data/lib/test_sdk/types/product_info_response.rb +65 -0
- data/lib/test_sdk/types/role_response.rb +95 -0
- data/lib/test_sdk/types/scale.rb +72 -0
- data/lib/test_sdk/types/scale_model.rb +80 -0
- data/lib/test_sdk/types/scale_models_response.rb +5 -0
- data/lib/test_sdk/types/scaling.rb +10 -0
- data/lib/test_sdk/types/status.rb +12 -0
- data/lib/test_sdk/types/tradeoff_model.rb +95 -0
- data/lib/test_sdk/types/tradeoff_models_response.rb +5 -0
- data/lib/test_sdk/types/unit.rb +12 -0
- data/lib/test_sdk/types/unit_economics_info_response.rb +55 -0
- data/lib/test_sdk/types/user_accounting_response.rb +168 -0
- data/lib/test_sdk/types/user_role_response.rb +77 -0
- data/lib/test_sdk/types/user_type.rb +12 -0
- data/lib/test_sdk/types/user_with_groups_response.rb +140 -0
- data/lib/test_sdk/types/user_with_permissions_response.rb +153 -0
- data/lib/test_sdk/types/validation_error.rb +76 -0
- data/lib/test_sdk/types/validation_error_loc_item.rb +52 -0
- data/lib/test_sdk/types/weather_components.rb +123 -0
- data/lib/test_sdk/types/weather_gauge.rb +76 -0
- data/lib/test_sdk/types/weather_market_context.rb +109 -0
- data/lib/test_sdk/types/weather_metadata.rb +113 -0
- data/lib/test_sdk/unit_economics/client.rb +124 -0
- data/lib/test_sdk/user/client.rb +363 -0
- data/lib/test_sdk.rb +190 -0
- data/lib/types_export.rb +77 -0
- metadata +251 -0
@@ -0,0 +1,474 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "../../requests"
|
4
|
+
require_relative "../types/company_response"
|
5
|
+
require_relative "../types/paginated_response_company_response"
|
6
|
+
require "json"
|
7
|
+
require "async"
|
8
|
+
|
9
|
+
module NewDemoApiClient
|
10
|
+
class CompanyClient
|
11
|
+
# @return [NewDemoApiClient::RequestClient]
|
12
|
+
attr_reader :request_client
|
13
|
+
|
14
|
+
# @param request_client [NewDemoApiClient::RequestClient]
|
15
|
+
# @return [NewDemoApiClient::CompanyClient]
|
16
|
+
def initialize(request_client:)
|
17
|
+
@request_client = request_client
|
18
|
+
end
|
19
|
+
|
20
|
+
# Lookup a company by domain.
|
21
|
+
#
|
22
|
+
# @param group_id [Integer]
|
23
|
+
# @param domain [String]
|
24
|
+
# @param request_options [NewDemoApiClient::RequestOptions]
|
25
|
+
# @return [NewDemoApiClient::CompanyResponse]
|
26
|
+
# @example
|
27
|
+
# api = NewDemoApiClient::Client.new(
|
28
|
+
# base_url: "https://api.example.com",
|
29
|
+
# environment: NewDemoApiClient::Environment::DEFAULT,
|
30
|
+
# token: "YOUR_AUTH_TOKEN"
|
31
|
+
# )
|
32
|
+
# api.company.get_by_domain(group_id: 1, domain: "domain")
|
33
|
+
def get_by_domain(group_id:, domain:, request_options: nil)
|
34
|
+
response = @request_client.conn.get do |req|
|
35
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
36
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
37
|
+
req.headers = {
|
38
|
+
**(req.headers || {}),
|
39
|
+
**@request_client.get_headers,
|
40
|
+
**(request_options&.additional_headers || {})
|
41
|
+
}.compact
|
42
|
+
req.params = { **(request_options&.additional_query_parameters || {}), "domain": domain }.compact
|
43
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
44
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
45
|
+
end
|
46
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/api/v1/group/#{group_id}/company"
|
47
|
+
end
|
48
|
+
NewDemoApiClient::CompanyResponse.from_json(json_object: response.body)
|
49
|
+
end
|
50
|
+
|
51
|
+
# Create a new company. If a non-canonical domain is provided, it will be
|
52
|
+
# normalized to a canonical form.
|
53
|
+
#
|
54
|
+
# @param group_id [Integer]
|
55
|
+
# @param name [String]
|
56
|
+
# @param domain [String] The domain of the company. Must be a valid domain or URL. The domain will be
|
57
|
+
# normalized to a canonical form.
|
58
|
+
# @param thumbnail [String] The thumbnail URL of the company
|
59
|
+
# @param request_options [NewDemoApiClient::RequestOptions]
|
60
|
+
# @return [NewDemoApiClient::CompanyResponse]
|
61
|
+
# @example
|
62
|
+
# api = NewDemoApiClient::Client.new(
|
63
|
+
# base_url: "https://api.example.com",
|
64
|
+
# environment: NewDemoApiClient::Environment::DEFAULT,
|
65
|
+
# token: "YOUR_AUTH_TOKEN"
|
66
|
+
# )
|
67
|
+
# api.company.create_company(group_id: 1, domain: "domain")
|
68
|
+
def create_company(group_id:, domain:, name: nil, thumbnail: nil, request_options: nil)
|
69
|
+
response = @request_client.conn.post do |req|
|
70
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
71
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
72
|
+
req.headers = {
|
73
|
+
**(req.headers || {}),
|
74
|
+
**@request_client.get_headers,
|
75
|
+
**(request_options&.additional_headers || {})
|
76
|
+
}.compact
|
77
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
78
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
79
|
+
end
|
80
|
+
req.body = {
|
81
|
+
**(request_options&.additional_body_parameters || {}),
|
82
|
+
name: name,
|
83
|
+
domain: domain,
|
84
|
+
thumbnail: thumbnail
|
85
|
+
}.compact
|
86
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/api/v1/group/#{group_id}/company"
|
87
|
+
end
|
88
|
+
NewDemoApiClient::CompanyResponse.from_json(json_object: response.body)
|
89
|
+
end
|
90
|
+
|
91
|
+
# Get all companies for a group.
|
92
|
+
#
|
93
|
+
# @param group_id [Integer]
|
94
|
+
# @param sort_by [String]
|
95
|
+
# @param sort_order [String]
|
96
|
+
# @param page [Integer]
|
97
|
+
# @param page_size [Integer]
|
98
|
+
# @param request_options [NewDemoApiClient::RequestOptions]
|
99
|
+
# @return [NewDemoApiClient::PaginatedResponseCompanyResponse]
|
100
|
+
# @example
|
101
|
+
# api = NewDemoApiClient::Client.new(
|
102
|
+
# base_url: "https://api.example.com",
|
103
|
+
# environment: NewDemoApiClient::Environment::DEFAULT,
|
104
|
+
# token: "YOUR_AUTH_TOKEN"
|
105
|
+
# )
|
106
|
+
# api.company.list(group_id: 1)
|
107
|
+
def list(group_id:, sort_by: nil, sort_order: nil, page: nil, page_size: nil, request_options: nil)
|
108
|
+
response = @request_client.conn.get do |req|
|
109
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
110
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
111
|
+
req.headers = {
|
112
|
+
**(req.headers || {}),
|
113
|
+
**@request_client.get_headers,
|
114
|
+
**(request_options&.additional_headers || {})
|
115
|
+
}.compact
|
116
|
+
req.params = {
|
117
|
+
**(request_options&.additional_query_parameters || {}),
|
118
|
+
"sort_by": sort_by,
|
119
|
+
"sort_order": sort_order,
|
120
|
+
"page": page,
|
121
|
+
"page_size": page_size
|
122
|
+
}.compact
|
123
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
124
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
125
|
+
end
|
126
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/api/v1/group/#{group_id}/company/all"
|
127
|
+
end
|
128
|
+
NewDemoApiClient::PaginatedResponseCompanyResponse.from_json(json_object: response.body)
|
129
|
+
end
|
130
|
+
|
131
|
+
# Get a company by ID.
|
132
|
+
#
|
133
|
+
# @param group_id [Integer]
|
134
|
+
# @param company_id [Integer]
|
135
|
+
# @param request_options [NewDemoApiClient::RequestOptions]
|
136
|
+
# @return [NewDemoApiClient::CompanyResponse]
|
137
|
+
# @example
|
138
|
+
# api = NewDemoApiClient::Client.new(
|
139
|
+
# base_url: "https://api.example.com",
|
140
|
+
# environment: NewDemoApiClient::Environment::DEFAULT,
|
141
|
+
# token: "YOUR_AUTH_TOKEN"
|
142
|
+
# )
|
143
|
+
# api.company.get(group_id: 1, company_id: 1)
|
144
|
+
def get(group_id:, company_id:, request_options: nil)
|
145
|
+
response = @request_client.conn.get do |req|
|
146
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
147
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
148
|
+
req.headers = {
|
149
|
+
**(req.headers || {}),
|
150
|
+
**@request_client.get_headers,
|
151
|
+
**(request_options&.additional_headers || {})
|
152
|
+
}.compact
|
153
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
154
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
155
|
+
end
|
156
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
157
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
158
|
+
end
|
159
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/api/v1/group/#{group_id}/company/#{company_id}"
|
160
|
+
end
|
161
|
+
NewDemoApiClient::CompanyResponse.from_json(json_object: response.body)
|
162
|
+
end
|
163
|
+
|
164
|
+
# Update a company.
|
165
|
+
#
|
166
|
+
# @param group_id [Integer]
|
167
|
+
# @param company_id [Integer]
|
168
|
+
# @param name [String]
|
169
|
+
# @param domain [String]
|
170
|
+
# @param thumbnail [String] The thumbnail URL of the company
|
171
|
+
# @param request_options [NewDemoApiClient::RequestOptions]
|
172
|
+
# @return [NewDemoApiClient::CompanyResponse]
|
173
|
+
# @example
|
174
|
+
# api = NewDemoApiClient::Client.new(
|
175
|
+
# base_url: "https://api.example.com",
|
176
|
+
# environment: NewDemoApiClient::Environment::DEFAULT,
|
177
|
+
# token: "YOUR_AUTH_TOKEN"
|
178
|
+
# )
|
179
|
+
# api.company.update(group_id: 1, company_id: 1)
|
180
|
+
def update(group_id:, company_id:, name: nil, domain: nil, thumbnail: nil, request_options: nil)
|
181
|
+
response = @request_client.conn.put do |req|
|
182
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
183
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
184
|
+
req.headers = {
|
185
|
+
**(req.headers || {}),
|
186
|
+
**@request_client.get_headers,
|
187
|
+
**(request_options&.additional_headers || {})
|
188
|
+
}.compact
|
189
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
190
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
191
|
+
end
|
192
|
+
req.body = {
|
193
|
+
**(request_options&.additional_body_parameters || {}),
|
194
|
+
name: name,
|
195
|
+
domain: domain,
|
196
|
+
thumbnail: thumbnail
|
197
|
+
}.compact
|
198
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/api/v1/group/#{group_id}/company/#{company_id}"
|
199
|
+
end
|
200
|
+
NewDemoApiClient::CompanyResponse.from_json(json_object: response.body)
|
201
|
+
end
|
202
|
+
|
203
|
+
# Delete a company.
|
204
|
+
#
|
205
|
+
# @param company_id [Integer]
|
206
|
+
# @param group_id [Integer]
|
207
|
+
# @param archive [Boolean]
|
208
|
+
# @param request_options [NewDemoApiClient::RequestOptions]
|
209
|
+
# @return [Object]
|
210
|
+
# @example
|
211
|
+
# api = NewDemoApiClient::Client.new(
|
212
|
+
# base_url: "https://api.example.com",
|
213
|
+
# environment: NewDemoApiClient::Environment::DEFAULT,
|
214
|
+
# token: "YOUR_AUTH_TOKEN"
|
215
|
+
# )
|
216
|
+
# api.company.delete(company_id: 1, group_id: 1)
|
217
|
+
def delete(company_id:, group_id:, archive: nil, request_options: nil)
|
218
|
+
response = @request_client.conn.delete do |req|
|
219
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
220
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
221
|
+
req.headers = {
|
222
|
+
**(req.headers || {}),
|
223
|
+
**@request_client.get_headers,
|
224
|
+
**(request_options&.additional_headers || {})
|
225
|
+
}.compact
|
226
|
+
req.params = { **(request_options&.additional_query_parameters || {}), "archive": archive }.compact
|
227
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
228
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
229
|
+
end
|
230
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/api/v1/group/#{company_id}/company/#{group_id}"
|
231
|
+
end
|
232
|
+
JSON.parse(response.body)
|
233
|
+
end
|
234
|
+
end
|
235
|
+
|
236
|
+
class AsyncCompanyClient
|
237
|
+
# @return [NewDemoApiClient::AsyncRequestClient]
|
238
|
+
attr_reader :request_client
|
239
|
+
|
240
|
+
# @param request_client [NewDemoApiClient::AsyncRequestClient]
|
241
|
+
# @return [NewDemoApiClient::AsyncCompanyClient]
|
242
|
+
def initialize(request_client:)
|
243
|
+
@request_client = request_client
|
244
|
+
end
|
245
|
+
|
246
|
+
# Lookup a company by domain.
|
247
|
+
#
|
248
|
+
# @param group_id [Integer]
|
249
|
+
# @param domain [String]
|
250
|
+
# @param request_options [NewDemoApiClient::RequestOptions]
|
251
|
+
# @return [NewDemoApiClient::CompanyResponse]
|
252
|
+
# @example
|
253
|
+
# api = NewDemoApiClient::Client.new(
|
254
|
+
# base_url: "https://api.example.com",
|
255
|
+
# environment: NewDemoApiClient::Environment::DEFAULT,
|
256
|
+
# token: "YOUR_AUTH_TOKEN"
|
257
|
+
# )
|
258
|
+
# api.company.get_by_domain(group_id: 1, domain: "domain")
|
259
|
+
def get_by_domain(group_id:, domain:, request_options: nil)
|
260
|
+
Async do
|
261
|
+
response = @request_client.conn.get do |req|
|
262
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
263
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
264
|
+
req.headers = {
|
265
|
+
**(req.headers || {}),
|
266
|
+
**@request_client.get_headers,
|
267
|
+
**(request_options&.additional_headers || {})
|
268
|
+
}.compact
|
269
|
+
req.params = { **(request_options&.additional_query_parameters || {}), "domain": domain }.compact
|
270
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
271
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
272
|
+
end
|
273
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/api/v1/group/#{group_id}/company"
|
274
|
+
end
|
275
|
+
NewDemoApiClient::CompanyResponse.from_json(json_object: response.body)
|
276
|
+
end
|
277
|
+
end
|
278
|
+
|
279
|
+
# Create a new company. If a non-canonical domain is provided, it will be
|
280
|
+
# normalized to a canonical form.
|
281
|
+
#
|
282
|
+
# @param group_id [Integer]
|
283
|
+
# @param name [String]
|
284
|
+
# @param domain [String] The domain of the company. Must be a valid domain or URL. The domain will be
|
285
|
+
# normalized to a canonical form.
|
286
|
+
# @param thumbnail [String] The thumbnail URL of the company
|
287
|
+
# @param request_options [NewDemoApiClient::RequestOptions]
|
288
|
+
# @return [NewDemoApiClient::CompanyResponse]
|
289
|
+
# @example
|
290
|
+
# api = NewDemoApiClient::Client.new(
|
291
|
+
# base_url: "https://api.example.com",
|
292
|
+
# environment: NewDemoApiClient::Environment::DEFAULT,
|
293
|
+
# token: "YOUR_AUTH_TOKEN"
|
294
|
+
# )
|
295
|
+
# api.company.create_company(group_id: 1, domain: "domain")
|
296
|
+
def create_company(group_id:, domain:, name: nil, thumbnail: nil, request_options: nil)
|
297
|
+
Async do
|
298
|
+
response = @request_client.conn.post do |req|
|
299
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
300
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
301
|
+
req.headers = {
|
302
|
+
**(req.headers || {}),
|
303
|
+
**@request_client.get_headers,
|
304
|
+
**(request_options&.additional_headers || {})
|
305
|
+
}.compact
|
306
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
307
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
308
|
+
end
|
309
|
+
req.body = {
|
310
|
+
**(request_options&.additional_body_parameters || {}),
|
311
|
+
name: name,
|
312
|
+
domain: domain,
|
313
|
+
thumbnail: thumbnail
|
314
|
+
}.compact
|
315
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/api/v1/group/#{group_id}/company"
|
316
|
+
end
|
317
|
+
NewDemoApiClient::CompanyResponse.from_json(json_object: response.body)
|
318
|
+
end
|
319
|
+
end
|
320
|
+
|
321
|
+
# Get all companies for a group.
|
322
|
+
#
|
323
|
+
# @param group_id [Integer]
|
324
|
+
# @param sort_by [String]
|
325
|
+
# @param sort_order [String]
|
326
|
+
# @param page [Integer]
|
327
|
+
# @param page_size [Integer]
|
328
|
+
# @param request_options [NewDemoApiClient::RequestOptions]
|
329
|
+
# @return [NewDemoApiClient::PaginatedResponseCompanyResponse]
|
330
|
+
# @example
|
331
|
+
# api = NewDemoApiClient::Client.new(
|
332
|
+
# base_url: "https://api.example.com",
|
333
|
+
# environment: NewDemoApiClient::Environment::DEFAULT,
|
334
|
+
# token: "YOUR_AUTH_TOKEN"
|
335
|
+
# )
|
336
|
+
# api.company.list(group_id: 1)
|
337
|
+
def list(group_id:, sort_by: nil, sort_order: nil, page: nil, page_size: nil, request_options: nil)
|
338
|
+
Async do
|
339
|
+
response = @request_client.conn.get do |req|
|
340
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
341
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
342
|
+
req.headers = {
|
343
|
+
**(req.headers || {}),
|
344
|
+
**@request_client.get_headers,
|
345
|
+
**(request_options&.additional_headers || {})
|
346
|
+
}.compact
|
347
|
+
req.params = {
|
348
|
+
**(request_options&.additional_query_parameters || {}),
|
349
|
+
"sort_by": sort_by,
|
350
|
+
"sort_order": sort_order,
|
351
|
+
"page": page,
|
352
|
+
"page_size": page_size
|
353
|
+
}.compact
|
354
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
355
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
356
|
+
end
|
357
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/api/v1/group/#{group_id}/company/all"
|
358
|
+
end
|
359
|
+
NewDemoApiClient::PaginatedResponseCompanyResponse.from_json(json_object: response.body)
|
360
|
+
end
|
361
|
+
end
|
362
|
+
|
363
|
+
# Get a company by ID.
|
364
|
+
#
|
365
|
+
# @param group_id [Integer]
|
366
|
+
# @param company_id [Integer]
|
367
|
+
# @param request_options [NewDemoApiClient::RequestOptions]
|
368
|
+
# @return [NewDemoApiClient::CompanyResponse]
|
369
|
+
# @example
|
370
|
+
# api = NewDemoApiClient::Client.new(
|
371
|
+
# base_url: "https://api.example.com",
|
372
|
+
# environment: NewDemoApiClient::Environment::DEFAULT,
|
373
|
+
# token: "YOUR_AUTH_TOKEN"
|
374
|
+
# )
|
375
|
+
# api.company.get(group_id: 1, company_id: 1)
|
376
|
+
def get(group_id:, company_id:, request_options: nil)
|
377
|
+
Async do
|
378
|
+
response = @request_client.conn.get do |req|
|
379
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
380
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
381
|
+
req.headers = {
|
382
|
+
**(req.headers || {}),
|
383
|
+
**@request_client.get_headers,
|
384
|
+
**(request_options&.additional_headers || {})
|
385
|
+
}.compact
|
386
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
387
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
388
|
+
end
|
389
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
390
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
391
|
+
end
|
392
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/api/v1/group/#{group_id}/company/#{company_id}"
|
393
|
+
end
|
394
|
+
NewDemoApiClient::CompanyResponse.from_json(json_object: response.body)
|
395
|
+
end
|
396
|
+
end
|
397
|
+
|
398
|
+
# Update a company.
|
399
|
+
#
|
400
|
+
# @param group_id [Integer]
|
401
|
+
# @param company_id [Integer]
|
402
|
+
# @param name [String]
|
403
|
+
# @param domain [String]
|
404
|
+
# @param thumbnail [String] The thumbnail URL of the company
|
405
|
+
# @param request_options [NewDemoApiClient::RequestOptions]
|
406
|
+
# @return [NewDemoApiClient::CompanyResponse]
|
407
|
+
# @example
|
408
|
+
# api = NewDemoApiClient::Client.new(
|
409
|
+
# base_url: "https://api.example.com",
|
410
|
+
# environment: NewDemoApiClient::Environment::DEFAULT,
|
411
|
+
# token: "YOUR_AUTH_TOKEN"
|
412
|
+
# )
|
413
|
+
# api.company.update(group_id: 1, company_id: 1)
|
414
|
+
def update(group_id:, company_id:, name: nil, domain: nil, thumbnail: nil, request_options: nil)
|
415
|
+
Async do
|
416
|
+
response = @request_client.conn.put do |req|
|
417
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
418
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
419
|
+
req.headers = {
|
420
|
+
**(req.headers || {}),
|
421
|
+
**@request_client.get_headers,
|
422
|
+
**(request_options&.additional_headers || {})
|
423
|
+
}.compact
|
424
|
+
unless request_options.nil? || request_options&.additional_query_parameters.nil?
|
425
|
+
req.params = { **(request_options&.additional_query_parameters || {}) }.compact
|
426
|
+
end
|
427
|
+
req.body = {
|
428
|
+
**(request_options&.additional_body_parameters || {}),
|
429
|
+
name: name,
|
430
|
+
domain: domain,
|
431
|
+
thumbnail: thumbnail
|
432
|
+
}.compact
|
433
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/api/v1/group/#{group_id}/company/#{company_id}"
|
434
|
+
end
|
435
|
+
NewDemoApiClient::CompanyResponse.from_json(json_object: response.body)
|
436
|
+
end
|
437
|
+
end
|
438
|
+
|
439
|
+
# Delete a company.
|
440
|
+
#
|
441
|
+
# @param company_id [Integer]
|
442
|
+
# @param group_id [Integer]
|
443
|
+
# @param archive [Boolean]
|
444
|
+
# @param request_options [NewDemoApiClient::RequestOptions]
|
445
|
+
# @return [Object]
|
446
|
+
# @example
|
447
|
+
# api = NewDemoApiClient::Client.new(
|
448
|
+
# base_url: "https://api.example.com",
|
449
|
+
# environment: NewDemoApiClient::Environment::DEFAULT,
|
450
|
+
# token: "YOUR_AUTH_TOKEN"
|
451
|
+
# )
|
452
|
+
# api.company.delete(company_id: 1, group_id: 1)
|
453
|
+
def delete(company_id:, group_id:, archive: nil, request_options: nil)
|
454
|
+
Async do
|
455
|
+
response = @request_client.conn.delete do |req|
|
456
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
457
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
458
|
+
req.headers = {
|
459
|
+
**(req.headers || {}),
|
460
|
+
**@request_client.get_headers,
|
461
|
+
**(request_options&.additional_headers || {})
|
462
|
+
}.compact
|
463
|
+
req.params = { **(request_options&.additional_query_parameters || {}), "archive": archive }.compact
|
464
|
+
unless request_options.nil? || request_options&.additional_body_parameters.nil?
|
465
|
+
req.body = { **(request_options&.additional_body_parameters || {}) }.compact
|
466
|
+
end
|
467
|
+
req.url "#{@request_client.get_url(request_options: request_options)}/api/v1/group/#{company_id}/company/#{group_id}"
|
468
|
+
end
|
469
|
+
parsed_json = JSON.parse(response.body)
|
470
|
+
parsed_json
|
471
|
+
end
|
472
|
+
end
|
473
|
+
end
|
474
|
+
end
|