spartera_api_sdk 1.0.58

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.
Files changed (87) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +11 -0
  3. data/Gemfile.lock +69 -0
  4. data/LICENSE +21 -0
  5. data/README.md +360 -0
  6. data/Rakefile +10 -0
  7. data/config.json +10 -0
  8. data/docs/APIKeysApi.md +353 -0
  9. data/docs/Alert.md +36 -0
  10. data/docs/AlertsApi.md +511 -0
  11. data/docs/Apikey.md +36 -0
  12. data/docs/Asset.md +110 -0
  13. data/docs/AssetPriceHistoryApi.md +573 -0
  14. data/docs/Assetpricehistory.md +38 -0
  15. data/docs/AssetsApi.md +1131 -0
  16. data/docs/CloudProvidersApi.md +341 -0
  17. data/docs/Cloudprovider.md +30 -0
  18. data/docs/CompaniesApi.md +619 -0
  19. data/docs/Company.md +44 -0
  20. data/docs/Connection.md +54 -0
  21. data/docs/ConnectionsApi.md +497 -0
  22. data/docs/Error.md +24 -0
  23. data/docs/Favorite.md +36 -0
  24. data/docs/FavoritesApi.md +581 -0
  25. data/docs/InlineObject.md +22 -0
  26. data/docs/InlineObject1.md +20 -0
  27. data/docs/InlineObject2.md +20 -0
  28. data/docs/InlineObject3.md +20 -0
  29. data/docs/User.md +34 -0
  30. data/docs/UsersApi.md +357 -0
  31. data/example.rb +51 -0
  32. data/git_push.sh +57 -0
  33. data/lib/spartera_api_sdk/api/alerts_api.rb +543 -0
  34. data/lib/spartera_api_sdk/api/api_keys_api.rb +345 -0
  35. data/lib/spartera_api_sdk/api/asset_price_history_api.rb +576 -0
  36. data/lib/spartera_api_sdk/api/assets_api.rb +1106 -0
  37. data/lib/spartera_api_sdk/api/cloud_providers_api.rb +315 -0
  38. data/lib/spartera_api_sdk/api/companies_api.rb +571 -0
  39. data/lib/spartera_api_sdk/api/connections_api.rb +501 -0
  40. data/lib/spartera_api_sdk/api/favorites_api.rb +610 -0
  41. data/lib/spartera_api_sdk/api/users_api.rb +367 -0
  42. data/lib/spartera_api_sdk/api_client.rb +393 -0
  43. data/lib/spartera_api_sdk/api_error.rb +58 -0
  44. data/lib/spartera_api_sdk/configuration.rb +320 -0
  45. data/lib/spartera_api_sdk/models/alert.rb +353 -0
  46. data/lib/spartera_api_sdk/models/apikey.rb +370 -0
  47. data/lib/spartera_api_sdk/models/asset.rb +686 -0
  48. data/lib/spartera_api_sdk/models/assetpricehistory.rb +345 -0
  49. data/lib/spartera_api_sdk/models/cloudprovider.rb +292 -0
  50. data/lib/spartera_api_sdk/models/company.rb +389 -0
  51. data/lib/spartera_api_sdk/models/connection.rb +434 -0
  52. data/lib/spartera_api_sdk/models/error.rb +285 -0
  53. data/lib/spartera_api_sdk/models/favorite.rb +353 -0
  54. data/lib/spartera_api_sdk/models/inline_object.rb +240 -0
  55. data/lib/spartera_api_sdk/models/inline_object1.rb +229 -0
  56. data/lib/spartera_api_sdk/models/inline_object2.rb +229 -0
  57. data/lib/spartera_api_sdk/models/inline_object3.rb +229 -0
  58. data/lib/spartera_api_sdk/models/user.rb +327 -0
  59. data/lib/spartera_api_sdk/version.rb +15 -0
  60. data/lib/spartera_api_sdk.rb +62 -0
  61. data/spartera_api_sdk.gemspec +28 -0
  62. data/spec/api/alerts_api_spec.rb +126 -0
  63. data/spec/api/api_keys_api_spec.rb +93 -0
  64. data/spec/api/asset_price_history_api_spec.rb +134 -0
  65. data/spec/api/assets_api_spec.rb +228 -0
  66. data/spec/api/cloud_providers_api_spec.rb +88 -0
  67. data/spec/api/companies_api_spec.rb +134 -0
  68. data/spec/api/connections_api_spec.rb +119 -0
  69. data/spec/api/favorites_api_spec.rb +138 -0
  70. data/spec/api/users_api_spec.rb +95 -0
  71. data/spec/models/alert_spec.rb +90 -0
  72. data/spec/models/apikey_spec.rb +90 -0
  73. data/spec/models/asset_spec.rb +312 -0
  74. data/spec/models/assetpricehistory_spec.rb +96 -0
  75. data/spec/models/cloudprovider_spec.rb +72 -0
  76. data/spec/models/company_spec.rb +114 -0
  77. data/spec/models/connection_spec.rb +144 -0
  78. data/spec/models/error_spec.rb +54 -0
  79. data/spec/models/favorite_spec.rb +90 -0
  80. data/spec/models/inline_object1_spec.rb +42 -0
  81. data/spec/models/inline_object2_spec.rb +42 -0
  82. data/spec/models/inline_object3_spec.rb +42 -0
  83. data/spec/models/inline_object_spec.rb +48 -0
  84. data/spec/models/user_spec.rb +84 -0
  85. data/spec/spec_helper.rb +111 -0
  86. data/test.sh +42 -0
  87. metadata +204 -0
@@ -0,0 +1,1106 @@
1
+ =begin
2
+ #Spartera API Documentation
3
+
4
+ #Auto-generated API documentation for REST services of the Spartera platform
5
+
6
+ The version of the OpenAPI document: 0.0.0
7
+ Contact: support@spartera.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.13.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module SparteraApiSdk
16
+ class AssetsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Process assets route that handles both owned and purchased assets. Minimal route function that passes all logic to crudder.process_asset Args: asset_path: The path after /analyze/ containing asset information company_handle: The subdomain from Flask's routing (if available)
23
+ # @param company_handle [String]
24
+ # @param asset_slug [String]
25
+ # @param [Hash] opts the optional parameters
26
+ # @return [Object]
27
+ def analyze_company_handle_assets_asset_slug_get(company_handle, asset_slug, opts = {})
28
+ data, _status_code, _headers = analyze_company_handle_assets_asset_slug_get_with_http_info(company_handle, asset_slug, opts)
29
+ data
30
+ end
31
+
32
+ # Process assets route that handles both owned and purchased assets. Minimal route function that passes all logic to crudder.process_asset Args: asset_path: The path after /analyze/ containing asset information company_handle: The subdomain from Flask's routing (if available)
33
+ # @param company_handle [String]
34
+ # @param asset_slug [String]
35
+ # @param [Hash] opts the optional parameters
36
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
37
+ def analyze_company_handle_assets_asset_slug_get_with_http_info(company_handle, asset_slug, opts = {})
38
+ if @api_client.config.debugging
39
+ @api_client.config.logger.debug 'Calling API: AssetsApi.analyze_company_handle_assets_asset_slug_get ...'
40
+ end
41
+ # verify the required parameter 'company_handle' is set
42
+ if @api_client.config.client_side_validation && company_handle.nil?
43
+ fail ArgumentError, "Missing the required parameter 'company_handle' when calling AssetsApi.analyze_company_handle_assets_asset_slug_get"
44
+ end
45
+ # verify the required parameter 'asset_slug' is set
46
+ if @api_client.config.client_side_validation && asset_slug.nil?
47
+ fail ArgumentError, "Missing the required parameter 'asset_slug' when calling AssetsApi.analyze_company_handle_assets_asset_slug_get"
48
+ end
49
+ # resource path
50
+ local_var_path = '/analyze/{company_handle}/assets/{asset_slug}'.sub('{' + 'company_handle' + '}', CGI.escape(company_handle.to_s)).sub('{' + 'asset_slug' + '}', CGI.escape(asset_slug.to_s))
51
+
52
+ # query parameters
53
+ query_params = opts[:query_params] || {}
54
+
55
+ # header parameters
56
+ header_params = opts[:header_params] || {}
57
+ # HTTP header 'Accept' (if needed)
58
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
59
+
60
+ # form parameters
61
+ form_params = opts[:form_params] || {}
62
+
63
+ # http body (model)
64
+ post_body = opts[:debug_body]
65
+
66
+ # return_type
67
+ return_type = opts[:debug_return_type] || 'Object'
68
+
69
+ # auth_names
70
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
71
+
72
+ new_options = opts.merge(
73
+ :operation => :"AssetsApi.analyze_company_handle_assets_asset_slug_get",
74
+ :header_params => header_params,
75
+ :query_params => query_params,
76
+ :form_params => form_params,
77
+ :body => post_body,
78
+ :auth_names => auth_names,
79
+ :return_type => return_type
80
+ )
81
+
82
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
83
+ if @api_client.config.debugging
84
+ @api_client.config.logger.debug "API called: AssetsApi#analyze_company_handle_assets_asset_slug_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
85
+ end
86
+ return data, status_code, headers
87
+ end
88
+
89
+ # Delete single asset by ID
90
+ # @param company_id [String]
91
+ # @param asset_id [String]
92
+ # @param [Hash] opts the optional parameters
93
+ # @return [Object]
94
+ def companies_company_id_assets_asset_id_delete(company_id, asset_id, opts = {})
95
+ data, _status_code, _headers = companies_company_id_assets_asset_id_delete_with_http_info(company_id, asset_id, opts)
96
+ data
97
+ end
98
+
99
+ # Delete single asset by ID
100
+ # @param company_id [String]
101
+ # @param asset_id [String]
102
+ # @param [Hash] opts the optional parameters
103
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
104
+ def companies_company_id_assets_asset_id_delete_with_http_info(company_id, asset_id, opts = {})
105
+ if @api_client.config.debugging
106
+ @api_client.config.logger.debug 'Calling API: AssetsApi.companies_company_id_assets_asset_id_delete ...'
107
+ end
108
+ # verify the required parameter 'company_id' is set
109
+ if @api_client.config.client_side_validation && company_id.nil?
110
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling AssetsApi.companies_company_id_assets_asset_id_delete"
111
+ end
112
+ # verify the required parameter 'asset_id' is set
113
+ if @api_client.config.client_side_validation && asset_id.nil?
114
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.companies_company_id_assets_asset_id_delete"
115
+ end
116
+ # resource path
117
+ local_var_path = '/companies/{company_id}/assets/{asset_id}'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s)).sub('{' + 'asset_id' + '}', CGI.escape(asset_id.to_s))
118
+
119
+ # query parameters
120
+ query_params = opts[:query_params] || {}
121
+
122
+ # header parameters
123
+ header_params = opts[:header_params] || {}
124
+ # HTTP header 'Accept' (if needed)
125
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
126
+
127
+ # form parameters
128
+ form_params = opts[:form_params] || {}
129
+
130
+ # http body (model)
131
+ post_body = opts[:debug_body]
132
+
133
+ # return_type
134
+ return_type = opts[:debug_return_type] || 'Object'
135
+
136
+ # auth_names
137
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
138
+
139
+ new_options = opts.merge(
140
+ :operation => :"AssetsApi.companies_company_id_assets_asset_id_delete",
141
+ :header_params => header_params,
142
+ :query_params => query_params,
143
+ :form_params => form_params,
144
+ :body => post_body,
145
+ :auth_names => auth_names,
146
+ :return_type => return_type
147
+ )
148
+
149
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
150
+ if @api_client.config.debugging
151
+ @api_client.config.logger.debug "API called: AssetsApi#companies_company_id_assets_asset_id_delete\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
152
+ end
153
+ return data, status_code, headers
154
+ end
155
+
156
+ # Get single asset by ID
157
+ # @param company_id [String]
158
+ # @param asset_id [String]
159
+ # @param [Hash] opts the optional parameters
160
+ # @return [Object]
161
+ def companies_company_id_assets_asset_id_get(company_id, asset_id, opts = {})
162
+ data, _status_code, _headers = companies_company_id_assets_asset_id_get_with_http_info(company_id, asset_id, opts)
163
+ data
164
+ end
165
+
166
+ # Get single asset by ID
167
+ # @param company_id [String]
168
+ # @param asset_id [String]
169
+ # @param [Hash] opts the optional parameters
170
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
171
+ def companies_company_id_assets_asset_id_get_with_http_info(company_id, asset_id, opts = {})
172
+ if @api_client.config.debugging
173
+ @api_client.config.logger.debug 'Calling API: AssetsApi.companies_company_id_assets_asset_id_get ...'
174
+ end
175
+ # verify the required parameter 'company_id' is set
176
+ if @api_client.config.client_side_validation && company_id.nil?
177
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling AssetsApi.companies_company_id_assets_asset_id_get"
178
+ end
179
+ # verify the required parameter 'asset_id' is set
180
+ if @api_client.config.client_side_validation && asset_id.nil?
181
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.companies_company_id_assets_asset_id_get"
182
+ end
183
+ # resource path
184
+ local_var_path = '/companies/{company_id}/assets/{asset_id}'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s)).sub('{' + 'asset_id' + '}', CGI.escape(asset_id.to_s))
185
+
186
+ # query parameters
187
+ query_params = opts[:query_params] || {}
188
+
189
+ # header parameters
190
+ header_params = opts[:header_params] || {}
191
+ # HTTP header 'Accept' (if needed)
192
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
193
+
194
+ # form parameters
195
+ form_params = opts[:form_params] || {}
196
+
197
+ # http body (model)
198
+ post_body = opts[:debug_body]
199
+
200
+ # return_type
201
+ return_type = opts[:debug_return_type] || 'Object'
202
+
203
+ # auth_names
204
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
205
+
206
+ new_options = opts.merge(
207
+ :operation => :"AssetsApi.companies_company_id_assets_asset_id_get",
208
+ :header_params => header_params,
209
+ :query_params => query_params,
210
+ :form_params => form_params,
211
+ :body => post_body,
212
+ :auth_names => auth_names,
213
+ :return_type => return_type
214
+ )
215
+
216
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
217
+ if @api_client.config.debugging
218
+ @api_client.config.logger.debug "API called: AssetsApi#companies_company_id_assets_asset_id_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
219
+ end
220
+ return data, status_code, headers
221
+ end
222
+
223
+ # Get the information schema for a specific asset's table
224
+ # @param company_id [String]
225
+ # @param asset_id [String]
226
+ # @param [Hash] opts the optional parameters
227
+ # @return [Object]
228
+ def companies_company_id_assets_asset_id_infoschema_get(company_id, asset_id, opts = {})
229
+ data, _status_code, _headers = companies_company_id_assets_asset_id_infoschema_get_with_http_info(company_id, asset_id, opts)
230
+ data
231
+ end
232
+
233
+ # Get the information schema for a specific asset&#39;s table
234
+ # @param company_id [String]
235
+ # @param asset_id [String]
236
+ # @param [Hash] opts the optional parameters
237
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
238
+ def companies_company_id_assets_asset_id_infoschema_get_with_http_info(company_id, asset_id, opts = {})
239
+ if @api_client.config.debugging
240
+ @api_client.config.logger.debug 'Calling API: AssetsApi.companies_company_id_assets_asset_id_infoschema_get ...'
241
+ end
242
+ # verify the required parameter 'company_id' is set
243
+ if @api_client.config.client_side_validation && company_id.nil?
244
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling AssetsApi.companies_company_id_assets_asset_id_infoschema_get"
245
+ end
246
+ # verify the required parameter 'asset_id' is set
247
+ if @api_client.config.client_side_validation && asset_id.nil?
248
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.companies_company_id_assets_asset_id_infoschema_get"
249
+ end
250
+ # resource path
251
+ local_var_path = '/companies/{company_id}/assets/{asset_id}/infoschema'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s)).sub('{' + 'asset_id' + '}', CGI.escape(asset_id.to_s))
252
+
253
+ # query parameters
254
+ query_params = opts[:query_params] || {}
255
+
256
+ # header parameters
257
+ header_params = opts[:header_params] || {}
258
+ # HTTP header 'Accept' (if needed)
259
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
260
+
261
+ # form parameters
262
+ form_params = opts[:form_params] || {}
263
+
264
+ # http body (model)
265
+ post_body = opts[:debug_body]
266
+
267
+ # return_type
268
+ return_type = opts[:debug_return_type] || 'Object'
269
+
270
+ # auth_names
271
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
272
+
273
+ new_options = opts.merge(
274
+ :operation => :"AssetsApi.companies_company_id_assets_asset_id_infoschema_get",
275
+ :header_params => header_params,
276
+ :query_params => query_params,
277
+ :form_params => form_params,
278
+ :body => post_body,
279
+ :auth_names => auth_names,
280
+ :return_type => return_type
281
+ )
282
+
283
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
284
+ if @api_client.config.debugging
285
+ @api_client.config.logger.debug "API called: AssetsApi#companies_company_id_assets_asset_id_infoschema_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
286
+ end
287
+ return data, status_code, headers
288
+ end
289
+
290
+ # Get the information schema for a specific asset and save it to the asset's asset_schema field
291
+ # @param company_id [String]
292
+ # @param asset_id [String]
293
+ # @param [Hash] opts the optional parameters
294
+ # @return [Object]
295
+ def companies_company_id_assets_asset_id_infoschema_save_get(company_id, asset_id, opts = {})
296
+ data, _status_code, _headers = companies_company_id_assets_asset_id_infoschema_save_get_with_http_info(company_id, asset_id, opts)
297
+ data
298
+ end
299
+
300
+ # Get the information schema for a specific asset and save it to the asset&#39;s asset_schema field
301
+ # @param company_id [String]
302
+ # @param asset_id [String]
303
+ # @param [Hash] opts the optional parameters
304
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
305
+ def companies_company_id_assets_asset_id_infoschema_save_get_with_http_info(company_id, asset_id, opts = {})
306
+ if @api_client.config.debugging
307
+ @api_client.config.logger.debug 'Calling API: AssetsApi.companies_company_id_assets_asset_id_infoschema_save_get ...'
308
+ end
309
+ # verify the required parameter 'company_id' is set
310
+ if @api_client.config.client_side_validation && company_id.nil?
311
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling AssetsApi.companies_company_id_assets_asset_id_infoschema_save_get"
312
+ end
313
+ # verify the required parameter 'asset_id' is set
314
+ if @api_client.config.client_side_validation && asset_id.nil?
315
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.companies_company_id_assets_asset_id_infoschema_save_get"
316
+ end
317
+ # resource path
318
+ local_var_path = '/companies/{company_id}/assets/{asset_id}/infoschema/save'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s)).sub('{' + 'asset_id' + '}', CGI.escape(asset_id.to_s))
319
+
320
+ # query parameters
321
+ query_params = opts[:query_params] || {}
322
+
323
+ # header parameters
324
+ header_params = opts[:header_params] || {}
325
+ # HTTP header 'Accept' (if needed)
326
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
327
+
328
+ # form parameters
329
+ form_params = opts[:form_params] || {}
330
+
331
+ # http body (model)
332
+ post_body = opts[:debug_body]
333
+
334
+ # return_type
335
+ return_type = opts[:debug_return_type] || 'Object'
336
+
337
+ # auth_names
338
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
339
+
340
+ new_options = opts.merge(
341
+ :operation => :"AssetsApi.companies_company_id_assets_asset_id_infoschema_save_get",
342
+ :header_params => header_params,
343
+ :query_params => query_params,
344
+ :form_params => form_params,
345
+ :body => post_body,
346
+ :auth_names => auth_names,
347
+ :return_type => return_type
348
+ )
349
+
350
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
351
+ if @api_client.config.debugging
352
+ @api_client.config.logger.debug "API called: AssetsApi#companies_company_id_assets_asset_id_infoschema_save_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
353
+ end
354
+ return data, status_code, headers
355
+ end
356
+
357
+ # Update an existing asset by ID
358
+ # @param company_id [String]
359
+ # @param asset_id [String]
360
+ # @param asset [Asset]
361
+ # @param [Hash] opts the optional parameters
362
+ # @return [Object]
363
+ def companies_company_id_assets_asset_id_patch(company_id, asset_id, asset, opts = {})
364
+ data, _status_code, _headers = companies_company_id_assets_asset_id_patch_with_http_info(company_id, asset_id, asset, opts)
365
+ data
366
+ end
367
+
368
+ # Update an existing asset by ID
369
+ # @param company_id [String]
370
+ # @param asset_id [String]
371
+ # @param asset [Asset]
372
+ # @param [Hash] opts the optional parameters
373
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
374
+ def companies_company_id_assets_asset_id_patch_with_http_info(company_id, asset_id, asset, opts = {})
375
+ if @api_client.config.debugging
376
+ @api_client.config.logger.debug 'Calling API: AssetsApi.companies_company_id_assets_asset_id_patch ...'
377
+ end
378
+ # verify the required parameter 'company_id' is set
379
+ if @api_client.config.client_side_validation && company_id.nil?
380
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling AssetsApi.companies_company_id_assets_asset_id_patch"
381
+ end
382
+ # verify the required parameter 'asset_id' is set
383
+ if @api_client.config.client_side_validation && asset_id.nil?
384
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.companies_company_id_assets_asset_id_patch"
385
+ end
386
+ # verify the required parameter 'asset' is set
387
+ if @api_client.config.client_side_validation && asset.nil?
388
+ fail ArgumentError, "Missing the required parameter 'asset' when calling AssetsApi.companies_company_id_assets_asset_id_patch"
389
+ end
390
+ # resource path
391
+ local_var_path = '/companies/{company_id}/assets/{asset_id}'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s)).sub('{' + 'asset_id' + '}', CGI.escape(asset_id.to_s))
392
+
393
+ # query parameters
394
+ query_params = opts[:query_params] || {}
395
+
396
+ # header parameters
397
+ header_params = opts[:header_params] || {}
398
+ # HTTP header 'Accept' (if needed)
399
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
400
+ # HTTP header 'Content-Type'
401
+ content_type = @api_client.select_header_content_type(['application/json'])
402
+ if !content_type.nil?
403
+ header_params['Content-Type'] = content_type
404
+ end
405
+
406
+ # form parameters
407
+ form_params = opts[:form_params] || {}
408
+
409
+ # http body (model)
410
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(asset)
411
+
412
+ # return_type
413
+ return_type = opts[:debug_return_type] || 'Object'
414
+
415
+ # auth_names
416
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
417
+
418
+ new_options = opts.merge(
419
+ :operation => :"AssetsApi.companies_company_id_assets_asset_id_patch",
420
+ :header_params => header_params,
421
+ :query_params => query_params,
422
+ :form_params => form_params,
423
+ :body => post_body,
424
+ :auth_names => auth_names,
425
+ :return_type => return_type
426
+ )
427
+
428
+ data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options)
429
+ if @api_client.config.debugging
430
+ @api_client.config.logger.debug "API called: AssetsApi#companies_company_id_assets_asset_id_patch\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
431
+ end
432
+ return data, status_code, headers
433
+ end
434
+
435
+ # Get AI-predicted pricing for a specific asset
436
+ # @param company_id [String]
437
+ # @param asset_id [String]
438
+ # @param [Hash] opts the optional parameters
439
+ # @return [Object]
440
+ def companies_company_id_assets_asset_id_predicted_price_get(company_id, asset_id, opts = {})
441
+ data, _status_code, _headers = companies_company_id_assets_asset_id_predicted_price_get_with_http_info(company_id, asset_id, opts)
442
+ data
443
+ end
444
+
445
+ # Get AI-predicted pricing for a specific asset
446
+ # @param company_id [String]
447
+ # @param asset_id [String]
448
+ # @param [Hash] opts the optional parameters
449
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
450
+ def companies_company_id_assets_asset_id_predicted_price_get_with_http_info(company_id, asset_id, opts = {})
451
+ if @api_client.config.debugging
452
+ @api_client.config.logger.debug 'Calling API: AssetsApi.companies_company_id_assets_asset_id_predicted_price_get ...'
453
+ end
454
+ # verify the required parameter 'company_id' is set
455
+ if @api_client.config.client_side_validation && company_id.nil?
456
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling AssetsApi.companies_company_id_assets_asset_id_predicted_price_get"
457
+ end
458
+ # verify the required parameter 'asset_id' is set
459
+ if @api_client.config.client_side_validation && asset_id.nil?
460
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.companies_company_id_assets_asset_id_predicted_price_get"
461
+ end
462
+ # resource path
463
+ local_var_path = '/companies/{company_id}/assets/{asset_id}/predicted_price'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s)).sub('{' + 'asset_id' + '}', CGI.escape(asset_id.to_s))
464
+
465
+ # query parameters
466
+ query_params = opts[:query_params] || {}
467
+
468
+ # header parameters
469
+ header_params = opts[:header_params] || {}
470
+ # HTTP header 'Accept' (if needed)
471
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
472
+
473
+ # form parameters
474
+ form_params = opts[:form_params] || {}
475
+
476
+ # http body (model)
477
+ post_body = opts[:debug_body]
478
+
479
+ # return_type
480
+ return_type = opts[:debug_return_type] || 'Object'
481
+
482
+ # auth_names
483
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
484
+
485
+ new_options = opts.merge(
486
+ :operation => :"AssetsApi.companies_company_id_assets_asset_id_predicted_price_get",
487
+ :header_params => header_params,
488
+ :query_params => query_params,
489
+ :form_params => form_params,
490
+ :body => post_body,
491
+ :auth_names => auth_names,
492
+ :return_type => return_type
493
+ )
494
+
495
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
496
+ if @api_client.config.debugging
497
+ @api_client.config.logger.debug "API called: AssetsApi#companies_company_id_assets_asset_id_predicted_price_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
498
+ end
499
+ return data, status_code, headers
500
+ end
501
+
502
+ # Get detailed explanation of how asset recommendations are calculated for debugging purposes.
503
+ # @param company_id [String]
504
+ # @param asset_id [String]
505
+ # @param [Hash] opts the optional parameters
506
+ # @return [Object]
507
+ def companies_company_id_assets_asset_id_recommendations_explain_get(company_id, asset_id, opts = {})
508
+ data, _status_code, _headers = companies_company_id_assets_asset_id_recommendations_explain_get_with_http_info(company_id, asset_id, opts)
509
+ data
510
+ end
511
+
512
+ # Get detailed explanation of how asset recommendations are calculated for debugging purposes.
513
+ # @param company_id [String]
514
+ # @param asset_id [String]
515
+ # @param [Hash] opts the optional parameters
516
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
517
+ def companies_company_id_assets_asset_id_recommendations_explain_get_with_http_info(company_id, asset_id, opts = {})
518
+ if @api_client.config.debugging
519
+ @api_client.config.logger.debug 'Calling API: AssetsApi.companies_company_id_assets_asset_id_recommendations_explain_get ...'
520
+ end
521
+ # verify the required parameter 'company_id' is set
522
+ if @api_client.config.client_side_validation && company_id.nil?
523
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling AssetsApi.companies_company_id_assets_asset_id_recommendations_explain_get"
524
+ end
525
+ # verify the required parameter 'asset_id' is set
526
+ if @api_client.config.client_side_validation && asset_id.nil?
527
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.companies_company_id_assets_asset_id_recommendations_explain_get"
528
+ end
529
+ # resource path
530
+ local_var_path = '/companies/{company_id}/assets/{asset_id}/recommendations/explain'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s)).sub('{' + 'asset_id' + '}', CGI.escape(asset_id.to_s))
531
+
532
+ # query parameters
533
+ query_params = opts[:query_params] || {}
534
+
535
+ # header parameters
536
+ header_params = opts[:header_params] || {}
537
+ # HTTP header 'Accept' (if needed)
538
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
539
+
540
+ # form parameters
541
+ form_params = opts[:form_params] || {}
542
+
543
+ # http body (model)
544
+ post_body = opts[:debug_body]
545
+
546
+ # return_type
547
+ return_type = opts[:debug_return_type] || 'Object'
548
+
549
+ # auth_names
550
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
551
+
552
+ new_options = opts.merge(
553
+ :operation => :"AssetsApi.companies_company_id_assets_asset_id_recommendations_explain_get",
554
+ :header_params => header_params,
555
+ :query_params => query_params,
556
+ :form_params => form_params,
557
+ :body => post_body,
558
+ :auth_names => auth_names,
559
+ :return_type => return_type
560
+ )
561
+
562
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
563
+ if @api_client.config.debugging
564
+ @api_client.config.logger.debug "API called: AssetsApi#companies_company_id_assets_asset_id_recommendations_explain_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
565
+ end
566
+ return data, status_code, headers
567
+ end
568
+
569
+ # Get asset recommendations for a specific asset using heuristic waterfall matching Returns list of similar assets based on industry, company, connection, tags, etc. Query Parameters: - limit: Number of recommendations to return (default: 12, max: 50) - min_score: Minimum similarity score threshold (default: 0.1) - include_details: Include component similarity scores (default: false)
570
+ # @param company_id [String]
571
+ # @param asset_id [String]
572
+ # @param [Hash] opts the optional parameters
573
+ # @option opts [String] :limit
574
+ # @option opts [String] :min_score
575
+ # @option opts [String] :include_details
576
+ # @return [Object]
577
+ def companies_company_id_assets_asset_id_recommendations_get(company_id, asset_id, opts = {})
578
+ data, _status_code, _headers = companies_company_id_assets_asset_id_recommendations_get_with_http_info(company_id, asset_id, opts)
579
+ data
580
+ end
581
+
582
+ # Get asset recommendations for a specific asset using heuristic waterfall matching Returns list of similar assets based on industry, company, connection, tags, etc. Query Parameters: - limit: Number of recommendations to return (default: 12, max: 50) - min_score: Minimum similarity score threshold (default: 0.1) - include_details: Include component similarity scores (default: false)
583
+ # @param company_id [String]
584
+ # @param asset_id [String]
585
+ # @param [Hash] opts the optional parameters
586
+ # @option opts [String] :limit
587
+ # @option opts [String] :min_score
588
+ # @option opts [String] :include_details
589
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
590
+ def companies_company_id_assets_asset_id_recommendations_get_with_http_info(company_id, asset_id, opts = {})
591
+ if @api_client.config.debugging
592
+ @api_client.config.logger.debug 'Calling API: AssetsApi.companies_company_id_assets_asset_id_recommendations_get ...'
593
+ end
594
+ # verify the required parameter 'company_id' is set
595
+ if @api_client.config.client_side_validation && company_id.nil?
596
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling AssetsApi.companies_company_id_assets_asset_id_recommendations_get"
597
+ end
598
+ # verify the required parameter 'asset_id' is set
599
+ if @api_client.config.client_side_validation && asset_id.nil?
600
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.companies_company_id_assets_asset_id_recommendations_get"
601
+ end
602
+ # resource path
603
+ local_var_path = '/companies/{company_id}/assets/{asset_id}/recommendations'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s)).sub('{' + 'asset_id' + '}', CGI.escape(asset_id.to_s))
604
+
605
+ # query parameters
606
+ query_params = opts[:query_params] || {}
607
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
608
+ query_params[:'min_score'] = opts[:'min_score'] if !opts[:'min_score'].nil?
609
+ query_params[:'include_details'] = opts[:'include_details'] if !opts[:'include_details'].nil?
610
+
611
+ # header parameters
612
+ header_params = opts[:header_params] || {}
613
+ # HTTP header 'Accept' (if needed)
614
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
615
+
616
+ # form parameters
617
+ form_params = opts[:form_params] || {}
618
+
619
+ # http body (model)
620
+ post_body = opts[:debug_body]
621
+
622
+ # return_type
623
+ return_type = opts[:debug_return_type] || 'Object'
624
+
625
+ # auth_names
626
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
627
+
628
+ new_options = opts.merge(
629
+ :operation => :"AssetsApi.companies_company_id_assets_asset_id_recommendations_get",
630
+ :header_params => header_params,
631
+ :query_params => query_params,
632
+ :form_params => form_params,
633
+ :body => post_body,
634
+ :auth_names => auth_names,
635
+ :return_type => return_type
636
+ )
637
+
638
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
639
+ if @api_client.config.debugging
640
+ @api_client.config.logger.debug "API called: AssetsApi#companies_company_id_assets_asset_id_recommendations_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
641
+ end
642
+ return data, status_code, headers
643
+ end
644
+
645
+ # Get statistics for a specific asset (public endpoint)
646
+ # @param company_id [String]
647
+ # @param asset_id [String]
648
+ # @param [Hash] opts the optional parameters
649
+ # @return [Object]
650
+ def companies_company_id_assets_asset_id_statistics_get(company_id, asset_id, opts = {})
651
+ data, _status_code, _headers = companies_company_id_assets_asset_id_statistics_get_with_http_info(company_id, asset_id, opts)
652
+ data
653
+ end
654
+
655
+ # Get statistics for a specific asset (public endpoint)
656
+ # @param company_id [String]
657
+ # @param asset_id [String]
658
+ # @param [Hash] opts the optional parameters
659
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
660
+ def companies_company_id_assets_asset_id_statistics_get_with_http_info(company_id, asset_id, opts = {})
661
+ if @api_client.config.debugging
662
+ @api_client.config.logger.debug 'Calling API: AssetsApi.companies_company_id_assets_asset_id_statistics_get ...'
663
+ end
664
+ # verify the required parameter 'company_id' is set
665
+ if @api_client.config.client_side_validation && company_id.nil?
666
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling AssetsApi.companies_company_id_assets_asset_id_statistics_get"
667
+ end
668
+ # verify the required parameter 'asset_id' is set
669
+ if @api_client.config.client_side_validation && asset_id.nil?
670
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.companies_company_id_assets_asset_id_statistics_get"
671
+ end
672
+ # resource path
673
+ local_var_path = '/companies/{company_id}/assets/{asset_id}/statistics'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s)).sub('{' + 'asset_id' + '}', CGI.escape(asset_id.to_s))
674
+
675
+ # query parameters
676
+ query_params = opts[:query_params] || {}
677
+
678
+ # header parameters
679
+ header_params = opts[:header_params] || {}
680
+ # HTTP header 'Accept' (if needed)
681
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
682
+
683
+ # form parameters
684
+ form_params = opts[:form_params] || {}
685
+
686
+ # http body (model)
687
+ post_body = opts[:debug_body]
688
+
689
+ # return_type
690
+ return_type = opts[:debug_return_type] || 'Object'
691
+
692
+ # auth_names
693
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
694
+
695
+ new_options = opts.merge(
696
+ :operation => :"AssetsApi.companies_company_id_assets_asset_id_statistics_get",
697
+ :header_params => header_params,
698
+ :query_params => query_params,
699
+ :form_params => form_params,
700
+ :body => post_body,
701
+ :auth_names => auth_names,
702
+ :return_type => return_type
703
+ )
704
+
705
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
706
+ if @api_client.config.debugging
707
+ @api_client.config.logger.debug "API called: AssetsApi#companies_company_id_assets_asset_id_statistics_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
708
+ end
709
+ return data, status_code, headers
710
+ end
711
+
712
+ # Test out an Asset (on a subset of data)
713
+ # @param company_id [String]
714
+ # @param asset_id [String]
715
+ # @param [Hash] opts the optional parameters
716
+ # @return [Object]
717
+ def companies_company_id_assets_asset_id_test_get(company_id, asset_id, opts = {})
718
+ data, _status_code, _headers = companies_company_id_assets_asset_id_test_get_with_http_info(company_id, asset_id, opts)
719
+ data
720
+ end
721
+
722
+ # Test out an Asset (on a subset of data)
723
+ # @param company_id [String]
724
+ # @param asset_id [String]
725
+ # @param [Hash] opts the optional parameters
726
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
727
+ def companies_company_id_assets_asset_id_test_get_with_http_info(company_id, asset_id, opts = {})
728
+ if @api_client.config.debugging
729
+ @api_client.config.logger.debug 'Calling API: AssetsApi.companies_company_id_assets_asset_id_test_get ...'
730
+ end
731
+ # verify the required parameter 'company_id' is set
732
+ if @api_client.config.client_side_validation && company_id.nil?
733
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling AssetsApi.companies_company_id_assets_asset_id_test_get"
734
+ end
735
+ # verify the required parameter 'asset_id' is set
736
+ if @api_client.config.client_side_validation && asset_id.nil?
737
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.companies_company_id_assets_asset_id_test_get"
738
+ end
739
+ # resource path
740
+ local_var_path = '/companies/{company_id}/assets/{asset_id}/test'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s)).sub('{' + 'asset_id' + '}', CGI.escape(asset_id.to_s))
741
+
742
+ # query parameters
743
+ query_params = opts[:query_params] || {}
744
+
745
+ # header parameters
746
+ header_params = opts[:header_params] || {}
747
+ # HTTP header 'Accept' (if needed)
748
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
749
+
750
+ # form parameters
751
+ form_params = opts[:form_params] || {}
752
+
753
+ # http body (model)
754
+ post_body = opts[:debug_body]
755
+
756
+ # return_type
757
+ return_type = opts[:debug_return_type] || 'Object'
758
+
759
+ # auth_names
760
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
761
+
762
+ new_options = opts.merge(
763
+ :operation => :"AssetsApi.companies_company_id_assets_asset_id_test_get",
764
+ :header_params => header_params,
765
+ :query_params => query_params,
766
+ :form_params => form_params,
767
+ :body => post_body,
768
+ :auth_names => auth_names,
769
+ :return_type => return_type
770
+ )
771
+
772
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
773
+ if @api_client.config.debugging
774
+ @api_client.config.logger.debug "API called: AssetsApi#companies_company_id_assets_asset_id_test_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
775
+ end
776
+ return data, status_code, headers
777
+ end
778
+
779
+ # Get all assets for a specific company
780
+ # @param company_id [String]
781
+ # @param [Hash] opts the optional parameters
782
+ # @return [Object]
783
+ def companies_company_id_assets_get(company_id, opts = {})
784
+ data, _status_code, _headers = companies_company_id_assets_get_with_http_info(company_id, opts)
785
+ data
786
+ end
787
+
788
+ # Get all assets for a specific company
789
+ # @param company_id [String]
790
+ # @param [Hash] opts the optional parameters
791
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
792
+ def companies_company_id_assets_get_with_http_info(company_id, opts = {})
793
+ if @api_client.config.debugging
794
+ @api_client.config.logger.debug 'Calling API: AssetsApi.companies_company_id_assets_get ...'
795
+ end
796
+ # verify the required parameter 'company_id' is set
797
+ if @api_client.config.client_side_validation && company_id.nil?
798
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling AssetsApi.companies_company_id_assets_get"
799
+ end
800
+ # resource path
801
+ local_var_path = '/companies/{company_id}/assets'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s))
802
+
803
+ # query parameters
804
+ query_params = opts[:query_params] || {}
805
+
806
+ # header parameters
807
+ header_params = opts[:header_params] || {}
808
+ # HTTP header 'Accept' (if needed)
809
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
810
+
811
+ # form parameters
812
+ form_params = opts[:form_params] || {}
813
+
814
+ # http body (model)
815
+ post_body = opts[:debug_body]
816
+
817
+ # return_type
818
+ return_type = opts[:debug_return_type] || 'Object'
819
+
820
+ # auth_names
821
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
822
+
823
+ new_options = opts.merge(
824
+ :operation => :"AssetsApi.companies_company_id_assets_get",
825
+ :header_params => header_params,
826
+ :query_params => query_params,
827
+ :form_params => form_params,
828
+ :body => post_body,
829
+ :auth_names => auth_names,
830
+ :return_type => return_type
831
+ )
832
+
833
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
834
+ if @api_client.config.debugging
835
+ @api_client.config.logger.debug "API called: AssetsApi#companies_company_id_assets_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
836
+ end
837
+ return data, status_code, headers
838
+ end
839
+
840
+ # Create a new asset
841
+ # @param company_id [String]
842
+ # @param asset [Asset]
843
+ # @param [Hash] opts the optional parameters
844
+ # @return [Object]
845
+ def companies_company_id_assets_post(company_id, asset, opts = {})
846
+ data, _status_code, _headers = companies_company_id_assets_post_with_http_info(company_id, asset, opts)
847
+ data
848
+ end
849
+
850
+ # Create a new asset
851
+ # @param company_id [String]
852
+ # @param asset [Asset]
853
+ # @param [Hash] opts the optional parameters
854
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
855
+ def companies_company_id_assets_post_with_http_info(company_id, asset, opts = {})
856
+ if @api_client.config.debugging
857
+ @api_client.config.logger.debug 'Calling API: AssetsApi.companies_company_id_assets_post ...'
858
+ end
859
+ # verify the required parameter 'company_id' is set
860
+ if @api_client.config.client_side_validation && company_id.nil?
861
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling AssetsApi.companies_company_id_assets_post"
862
+ end
863
+ # verify the required parameter 'asset' is set
864
+ if @api_client.config.client_side_validation && asset.nil?
865
+ fail ArgumentError, "Missing the required parameter 'asset' when calling AssetsApi.companies_company_id_assets_post"
866
+ end
867
+ # resource path
868
+ local_var_path = '/companies/{company_id}/assets'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s))
869
+
870
+ # query parameters
871
+ query_params = opts[:query_params] || {}
872
+
873
+ # header parameters
874
+ header_params = opts[:header_params] || {}
875
+ # HTTP header 'Accept' (if needed)
876
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
877
+ # HTTP header 'Content-Type'
878
+ content_type = @api_client.select_header_content_type(['application/json'])
879
+ if !content_type.nil?
880
+ header_params['Content-Type'] = content_type
881
+ end
882
+
883
+ # form parameters
884
+ form_params = opts[:form_params] || {}
885
+
886
+ # http body (model)
887
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(asset)
888
+
889
+ # return_type
890
+ return_type = opts[:debug_return_type] || 'Object'
891
+
892
+ # auth_names
893
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
894
+
895
+ new_options = opts.merge(
896
+ :operation => :"AssetsApi.companies_company_id_assets_post",
897
+ :header_params => header_params,
898
+ :query_params => query_params,
899
+ :form_params => form_params,
900
+ :body => post_body,
901
+ :auth_names => auth_names,
902
+ :return_type => return_type
903
+ )
904
+
905
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
906
+ if @api_client.config.debugging
907
+ @api_client.config.logger.debug "API called: AssetsApi#companies_company_id_assets_post\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
908
+ end
909
+ return data, status_code, headers
910
+ end
911
+
912
+ # Get recommendations for multiple assets in a single request. Useful for pre-loading recommendations.
913
+ # @param company_id [String]
914
+ # @param asset [Asset]
915
+ # @param [Hash] opts the optional parameters
916
+ # @return [Object]
917
+ def companies_company_id_assets_recommendations_bulk_post(company_id, asset, opts = {})
918
+ data, _status_code, _headers = companies_company_id_assets_recommendations_bulk_post_with_http_info(company_id, asset, opts)
919
+ data
920
+ end
921
+
922
+ # Get recommendations for multiple assets in a single request. Useful for pre-loading recommendations.
923
+ # @param company_id [String]
924
+ # @param asset [Asset]
925
+ # @param [Hash] opts the optional parameters
926
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
927
+ def companies_company_id_assets_recommendations_bulk_post_with_http_info(company_id, asset, opts = {})
928
+ if @api_client.config.debugging
929
+ @api_client.config.logger.debug 'Calling API: AssetsApi.companies_company_id_assets_recommendations_bulk_post ...'
930
+ end
931
+ # verify the required parameter 'company_id' is set
932
+ if @api_client.config.client_side_validation && company_id.nil?
933
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling AssetsApi.companies_company_id_assets_recommendations_bulk_post"
934
+ end
935
+ # verify the required parameter 'asset' is set
936
+ if @api_client.config.client_side_validation && asset.nil?
937
+ fail ArgumentError, "Missing the required parameter 'asset' when calling AssetsApi.companies_company_id_assets_recommendations_bulk_post"
938
+ end
939
+ # resource path
940
+ local_var_path = '/companies/{company_id}/assets/recommendations/bulk'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s))
941
+
942
+ # query parameters
943
+ query_params = opts[:query_params] || {}
944
+
945
+ # header parameters
946
+ header_params = opts[:header_params] || {}
947
+ # HTTP header 'Accept' (if needed)
948
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
949
+ # HTTP header 'Content-Type'
950
+ content_type = @api_client.select_header_content_type(['application/json'])
951
+ if !content_type.nil?
952
+ header_params['Content-Type'] = content_type
953
+ end
954
+
955
+ # form parameters
956
+ form_params = opts[:form_params] || {}
957
+
958
+ # http body (model)
959
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(asset)
960
+
961
+ # return_type
962
+ return_type = opts[:debug_return_type] || 'Object'
963
+
964
+ # auth_names
965
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
966
+
967
+ new_options = opts.merge(
968
+ :operation => :"AssetsApi.companies_company_id_assets_recommendations_bulk_post",
969
+ :header_params => header_params,
970
+ :query_params => query_params,
971
+ :form_params => form_params,
972
+ :body => post_body,
973
+ :auth_names => auth_names,
974
+ :return_type => return_type
975
+ )
976
+
977
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
978
+ if @api_client.config.debugging
979
+ @api_client.config.logger.debug "API called: AssetsApi#companies_company_id_assets_recommendations_bulk_post\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
980
+ end
981
+ return data, status_code, headers
982
+ end
983
+
984
+ # Health check for the recommendations system with sample data and performance metrics.
985
+ # @param company_id [String]
986
+ # @param [Hash] opts the optional parameters
987
+ # @return [Object]
988
+ def companies_company_id_assets_recommendations_health_get(company_id, opts = {})
989
+ data, _status_code, _headers = companies_company_id_assets_recommendations_health_get_with_http_info(company_id, opts)
990
+ data
991
+ end
992
+
993
+ # Health check for the recommendations system with sample data and performance metrics.
994
+ # @param company_id [String]
995
+ # @param [Hash] opts the optional parameters
996
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
997
+ def companies_company_id_assets_recommendations_health_get_with_http_info(company_id, opts = {})
998
+ if @api_client.config.debugging
999
+ @api_client.config.logger.debug 'Calling API: AssetsApi.companies_company_id_assets_recommendations_health_get ...'
1000
+ end
1001
+ # verify the required parameter 'company_id' is set
1002
+ if @api_client.config.client_side_validation && company_id.nil?
1003
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling AssetsApi.companies_company_id_assets_recommendations_health_get"
1004
+ end
1005
+ # resource path
1006
+ local_var_path = '/companies/{company_id}/assets/recommendations/health'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s))
1007
+
1008
+ # query parameters
1009
+ query_params = opts[:query_params] || {}
1010
+
1011
+ # header parameters
1012
+ header_params = opts[:header_params] || {}
1013
+ # HTTP header 'Accept' (if needed)
1014
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1015
+
1016
+ # form parameters
1017
+ form_params = opts[:form_params] || {}
1018
+
1019
+ # http body (model)
1020
+ post_body = opts[:debug_body]
1021
+
1022
+ # return_type
1023
+ return_type = opts[:debug_return_type] || 'Object'
1024
+
1025
+ # auth_names
1026
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
1027
+
1028
+ new_options = opts.merge(
1029
+ :operation => :"AssetsApi.companies_company_id_assets_recommendations_health_get",
1030
+ :header_params => header_params,
1031
+ :query_params => query_params,
1032
+ :form_params => form_params,
1033
+ :body => post_body,
1034
+ :auth_names => auth_names,
1035
+ :return_type => return_type
1036
+ )
1037
+
1038
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1039
+ if @api_client.config.debugging
1040
+ @api_client.config.logger.debug "API called: AssetsApi#companies_company_id_assets_recommendations_health_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1041
+ end
1042
+ return data, status_code, headers
1043
+ end
1044
+
1045
+ # Get statistics for all assets the user has access to
1046
+ # @param company_id [String]
1047
+ # @param [Hash] opts the optional parameters
1048
+ # @return [Object]
1049
+ def companies_company_id_assets_statistics_get(company_id, opts = {})
1050
+ data, _status_code, _headers = companies_company_id_assets_statistics_get_with_http_info(company_id, opts)
1051
+ data
1052
+ end
1053
+
1054
+ # Get statistics for all assets the user has access to
1055
+ # @param company_id [String]
1056
+ # @param [Hash] opts the optional parameters
1057
+ # @return [Array<(Object, Integer, Hash)>] Object data, response status code and response headers
1058
+ def companies_company_id_assets_statistics_get_with_http_info(company_id, opts = {})
1059
+ if @api_client.config.debugging
1060
+ @api_client.config.logger.debug 'Calling API: AssetsApi.companies_company_id_assets_statistics_get ...'
1061
+ end
1062
+ # verify the required parameter 'company_id' is set
1063
+ if @api_client.config.client_side_validation && company_id.nil?
1064
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling AssetsApi.companies_company_id_assets_statistics_get"
1065
+ end
1066
+ # resource path
1067
+ local_var_path = '/companies/{company_id}/assets/statistics'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s))
1068
+
1069
+ # query parameters
1070
+ query_params = opts[:query_params] || {}
1071
+
1072
+ # header parameters
1073
+ header_params = opts[:header_params] || {}
1074
+ # HTTP header 'Accept' (if needed)
1075
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1076
+
1077
+ # form parameters
1078
+ form_params = opts[:form_params] || {}
1079
+
1080
+ # http body (model)
1081
+ post_body = opts[:debug_body]
1082
+
1083
+ # return_type
1084
+ return_type = opts[:debug_return_type] || 'Object'
1085
+
1086
+ # auth_names
1087
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
1088
+
1089
+ new_options = opts.merge(
1090
+ :operation => :"AssetsApi.companies_company_id_assets_statistics_get",
1091
+ :header_params => header_params,
1092
+ :query_params => query_params,
1093
+ :form_params => form_params,
1094
+ :body => post_body,
1095
+ :auth_names => auth_names,
1096
+ :return_type => return_type
1097
+ )
1098
+
1099
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1100
+ if @api_client.config.debugging
1101
+ @api_client.config.logger.debug "API called: AssetsApi#companies_company_id_assets_statistics_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1102
+ end
1103
+ return data, status_code, headers
1104
+ end
1105
+ end
1106
+ end