togai_client 1.0.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.
Files changed (187) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +61 -0
  4. data/Rakefile +10 -0
  5. data/docs/Account.md +24 -0
  6. data/docs/AccountAliases.md +20 -0
  7. data/docs/AccountPaginatedResponse.md +22 -0
  8. data/docs/AccountsApi.md +595 -0
  9. data/docs/AddAccountAliasesRequest.md +18 -0
  10. data/docs/AssociatePricePlanRequest.md +24 -0
  11. data/docs/AssociatePricePlanResponse.md +22 -0
  12. data/docs/BaseSuccessResponse.md +18 -0
  13. data/docs/BundleStrategy.md +24 -0
  14. data/docs/BundleStrategyUsageMetersValue.md +18 -0
  15. data/docs/Computation.md +31 -0
  16. data/docs/CreateAccountRequest.md +22 -0
  17. data/docs/CreateCustomerRequest.md +26 -0
  18. data/docs/CreateCustomerResponse.md +26 -0
  19. data/docs/CreateEventSchemaRequest.md +24 -0
  20. data/docs/CreatePricePlanRequest.md +24 -0
  21. data/docs/CreateUsageMeterRequest.md +26 -0
  22. data/docs/Customer.md +30 -0
  23. data/docs/CustomerPaginatedResponse.md +22 -0
  24. data/docs/CustomersApi.md +363 -0
  25. data/docs/DimensionsSchema.md +18 -0
  26. data/docs/ErrorResponse.md +18 -0
  27. data/docs/Event.md +28 -0
  28. data/docs/EventAttribute.md +22 -0
  29. data/docs/EventAttributeSchema.md +20 -0
  30. data/docs/EventIngestionApi.md +146 -0
  31. data/docs/EventManagementApi.md +159 -0
  32. data/docs/EventPipelineInfo.md +26 -0
  33. data/docs/EventPipelineInfoAccount.md +20 -0
  34. data/docs/EventPipelineInfoCustomer.md +20 -0
  35. data/docs/EventPipelineInfoEventSchema.md +20 -0
  36. data/docs/EventPipelineInfoPricePlansInner.md +26 -0
  37. data/docs/EventPipelineInfoUsageMetersInner.md +24 -0
  38. data/docs/EventSchema.md +32 -0
  39. data/docs/EventSchemaListData.md +34 -0
  40. data/docs/EventSchemaListDataAllOf.md +18 -0
  41. data/docs/EventSchemaListPaginatedResponse.md +22 -0
  42. data/docs/EventSchemaVersionsResponse.md +18 -0
  43. data/docs/EventSchemasApi.md +581 -0
  44. data/docs/EventWithStatus.md +20 -0
  45. data/docs/EventWithStatusAndEventPipelineInfo.md +22 -0
  46. data/docs/EventWithStatusAndEventPipelineInfoAllOf.md +18 -0
  47. data/docs/GetEventResponse.md +18 -0
  48. data/docs/GetEventsResponse.md +20 -0
  49. data/docs/GetMetricsRequest.md +22 -0
  50. data/docs/GetMetricsResponse.md +18 -0
  51. data/docs/IngestBatchEventRequest.md +18 -0
  52. data/docs/IngestBatchEventResponse.md +18 -0
  53. data/docs/IngestError.md +20 -0
  54. data/docs/IngestEventRequest.md +18 -0
  55. data/docs/IngestEventResponse.md +18 -0
  56. data/docs/IngestionStatus.md +20 -0
  57. data/docs/MetricDataPoints.md +22 -0
  58. data/docs/MetricDataPointsGroupedBy.md +20 -0
  59. data/docs/MetricName.md +15 -0
  60. data/docs/MetricQuery.md +26 -0
  61. data/docs/MetricQueryFilterEntry.md +20 -0
  62. data/docs/MetricQueryResponse.md +22 -0
  63. data/docs/MetricsApi.md +79 -0
  64. data/docs/PaginationOptions.md +20 -0
  65. data/docs/PlanOverride.md +24 -0
  66. data/docs/PricePlan.md +26 -0
  67. data/docs/PricePlanListData.md +32 -0
  68. data/docs/PricePlanPaginatedResponse.md +22 -0
  69. data/docs/PricePlansApi.md +363 -0
  70. data/docs/PricingCycle.md +24 -0
  71. data/docs/PricingCycleStartOffset.md +20 -0
  72. data/docs/PricingSchedule.md +22 -0
  73. data/docs/RateCard.md +22 -0
  74. data/docs/RateCardBundle.md +22 -0
  75. data/docs/RateCardUsageValue.md +24 -0
  76. data/docs/RemoveAccountAliasesRequest.md +18 -0
  77. data/docs/SignupRequest.md +22 -0
  78. data/docs/SignupResponse.md +20 -0
  79. data/docs/StatusResponse.md +24 -0
  80. data/docs/StatusResponseHeaders.md +18 -0
  81. data/docs/UpdateAccountRequest.md +18 -0
  82. data/docs/UpdateCustomerRequest.md +22 -0
  83. data/docs/UpdateEventSchemaRequest.md +22 -0
  84. data/docs/UpdatePricePlanRequest.md +22 -0
  85. data/docs/UpdateUsageMeterRequest.md +24 -0
  86. data/docs/UsageMeter.md +34 -0
  87. data/docs/UsageMeterPaginatedResponse.md +22 -0
  88. data/docs/UsageMetersApi.md +521 -0
  89. data/docs/UsageStrategy.md +22 -0
  90. data/docs/UserDetails.md +26 -0
  91. data/git_push.sh +57 -0
  92. data/lib/togai_client/api/accounts_api.rb +679 -0
  93. data/lib/togai_client/api/customers_api.rb +365 -0
  94. data/lib/togai_client/api/event_ingestion_api.rb +158 -0
  95. data/lib/togai_client/api/event_management_api.rb +164 -0
  96. data/lib/togai_client/api/event_schemas_api.rb +579 -0
  97. data/lib/togai_client/api/metrics_api.rb +86 -0
  98. data/lib/togai_client/api/price_plans_api.rb +365 -0
  99. data/lib/togai_client/api/usage_meters_api.rb +572 -0
  100. data/lib/togai_client/api_client.rb +392 -0
  101. data/lib/togai_client/api_error.rb +57 -0
  102. data/lib/togai_client/configuration.rb +287 -0
  103. data/lib/togai_client/models/account.rb +373 -0
  104. data/lib/togai_client/models/account_aliases.rb +277 -0
  105. data/lib/togai_client/models/account_paginated_response.rb +239 -0
  106. data/lib/togai_client/models/add_account_aliases_request.rb +247 -0
  107. data/lib/togai_client/models/associate_price_plan_request.rb +274 -0
  108. data/lib/togai_client/models/associate_price_plan_response.rb +275 -0
  109. data/lib/togai_client/models/base_success_response.rb +224 -0
  110. data/lib/togai_client/models/bundle_strategy.rb +325 -0
  111. data/lib/togai_client/models/bundle_strategy_usage_meters_value.rb +224 -0
  112. data/lib/togai_client/models/computation.rb +294 -0
  113. data/lib/togai_client/models/create_account_request.rb +324 -0
  114. data/lib/togai_client/models/create_customer_request.rb +374 -0
  115. data/lib/togai_client/models/create_customer_response.rb +373 -0
  116. data/lib/togai_client/models/create_event_schema_request.rb +351 -0
  117. data/lib/togai_client/models/create_price_plan_request.rb +298 -0
  118. data/lib/togai_client/models/create_usage_meter_request.rb +368 -0
  119. data/lib/togai_client/models/customer.rb +442 -0
  120. data/lib/togai_client/models/customer_paginated_response.rb +239 -0
  121. data/lib/togai_client/models/dimensions_schema.rb +256 -0
  122. data/lib/togai_client/models/error_response.rb +244 -0
  123. data/lib/togai_client/models/event.rb +379 -0
  124. data/lib/togai_client/models/event_attribute.rb +304 -0
  125. data/lib/togai_client/models/event_attribute_schema.rb +281 -0
  126. data/lib/togai_client/models/event_pipeline_info.rb +260 -0
  127. data/lib/togai_client/models/event_pipeline_info_account.rb +238 -0
  128. data/lib/togai_client/models/event_pipeline_info_customer.rb +238 -0
  129. data/lib/togai_client/models/event_pipeline_info_event_schema.rb +238 -0
  130. data/lib/togai_client/models/event_pipeline_info_price_plans_inner.rb +283 -0
  131. data/lib/togai_client/models/event_pipeline_info_usage_meters_inner.rb +295 -0
  132. data/lib/togai_client/models/event_schema.rb +438 -0
  133. data/lib/togai_client/models/event_schema_list_data.rb +456 -0
  134. data/lib/togai_client/models/event_schema_list_data_all_of.rb +221 -0
  135. data/lib/togai_client/models/event_schema_list_paginated_response.rb +239 -0
  136. data/lib/togai_client/models/event_schema_versions_response.rb +227 -0
  137. data/lib/togai_client/models/event_with_status.rb +239 -0
  138. data/lib/togai_client/models/event_with_status_and_event_pipeline_info.rb +255 -0
  139. data/lib/togai_client/models/event_with_status_and_event_pipeline_info_all_of.rb +219 -0
  140. data/lib/togai_client/models/get_event_response.rb +222 -0
  141. data/lib/togai_client/models/get_events_response.rb +279 -0
  142. data/lib/togai_client/models/get_metrics_request.rb +265 -0
  143. data/lib/togai_client/models/get_metrics_response.rb +227 -0
  144. data/lib/togai_client/models/ingest_batch_event_request.rb +255 -0
  145. data/lib/togai_client/models/ingest_batch_event_response.rb +245 -0
  146. data/lib/togai_client/models/ingest_error.rb +229 -0
  147. data/lib/togai_client/models/ingest_event_request.rb +220 -0
  148. data/lib/togai_client/models/ingest_event_response.rb +244 -0
  149. data/lib/togai_client/models/ingestion_status.rb +284 -0
  150. data/lib/togai_client/models/metric_data_points.rb +289 -0
  151. data/lib/togai_client/models/metric_data_points_grouped_by.rb +238 -0
  152. data/lib/togai_client/models/metric_name.rb +38 -0
  153. data/lib/togai_client/models/metric_query.rb +331 -0
  154. data/lib/togai_client/models/metric_query_filter_entry.rb +241 -0
  155. data/lib/togai_client/models/metric_query_response.rb +255 -0
  156. data/lib/togai_client/models/pagination_options.rb +262 -0
  157. data/lib/togai_client/models/plan_override.rb +262 -0
  158. data/lib/togai_client/models/price_plan.rb +349 -0
  159. data/lib/togai_client/models/price_plan_list_data.rb +393 -0
  160. data/lib/togai_client/models/price_plan_paginated_response.rb +239 -0
  161. data/lib/togai_client/models/pricing_cycle.rb +313 -0
  162. data/lib/togai_client/models/pricing_cycle_start_offset.rb +241 -0
  163. data/lib/togai_client/models/pricing_schedule.rb +248 -0
  164. data/lib/togai_client/models/rate_card.rb +279 -0
  165. data/lib/togai_client/models/rate_card_bundle.rb +328 -0
  166. data/lib/togai_client/models/rate_card_usage_value.rb +343 -0
  167. data/lib/togai_client/models/remove_account_aliases_request.rb +247 -0
  168. data/lib/togai_client/models/signup_request.rb +293 -0
  169. data/lib/togai_client/models/signup_response.rb +260 -0
  170. data/lib/togai_client/models/status_response.rb +246 -0
  171. data/lib/togai_client/models/status_response_headers.rb +219 -0
  172. data/lib/togai_client/models/update_account_request.rb +245 -0
  173. data/lib/togai_client/models/update_customer_request.rb +304 -0
  174. data/lib/togai_client/models/update_event_schema_request.rb +306 -0
  175. data/lib/togai_client/models/update_price_plan_request.rb +254 -0
  176. data/lib/togai_client/models/update_usage_meter_request.rb +323 -0
  177. data/lib/togai_client/models/usage_meter.rb +440 -0
  178. data/lib/togai_client/models/usage_meter_paginated_response.rb +239 -0
  179. data/lib/togai_client/models/usage_strategy.rb +281 -0
  180. data/lib/togai_client/models/user_details.rb +380 -0
  181. data/lib/togai_client/version.rb +15 -0
  182. data/lib/togai_client.rb +125 -0
  183. data/spec/api_client_spec.rb +226 -0
  184. data/spec/configuration_spec.rb +42 -0
  185. data/spec/spec_helper.rb +111 -0
  186. data/togai_client.gemspec +38 -0
  187. metadata +271 -0
@@ -0,0 +1,679 @@
1
+ =begin
2
+ #Togai Apis
3
+
4
+ #APIs for Togai App
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: engg@togai.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 6.1.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module TogaiClient
16
+ class AccountsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Add Aliases to account
23
+ # Add Aliases to an account by id
24
+ # @param customer_id [String]
25
+ # @param account_id [String]
26
+ # @param add_account_aliases_request [AddAccountAliasesRequest] Payload to add aliases to account
27
+ # @param [Hash] opts the optional parameters
28
+ # @return [Account]
29
+ def add_aliases(customer_id, account_id, add_account_aliases_request, opts = {})
30
+ data, _status_code, _headers = add_aliases_with_http_info(customer_id, account_id, add_account_aliases_request, opts)
31
+ data
32
+ end
33
+
34
+ # Add Aliases to account
35
+ # Add Aliases to an account by id
36
+ # @param customer_id [String]
37
+ # @param account_id [String]
38
+ # @param add_account_aliases_request [AddAccountAliasesRequest] Payload to add aliases to account
39
+ # @param [Hash] opts the optional parameters
40
+ # @return [Array<(Account, Integer, Hash)>] Account data, response status code and response headers
41
+ def add_aliases_with_http_info(customer_id, account_id, add_account_aliases_request, opts = {})
42
+ if @api_client.config.debugging
43
+ @api_client.config.logger.debug 'Calling API: AccountsApi.add_aliases ...'
44
+ end
45
+ # verify the required parameter 'customer_id' is set
46
+ if @api_client.config.client_side_validation && customer_id.nil?
47
+ fail ArgumentError, "Missing the required parameter 'customer_id' when calling AccountsApi.add_aliases"
48
+ end
49
+ if @api_client.config.client_side_validation && customer_id.to_s.length > 50
50
+ fail ArgumentError, 'invalid value for "customer_id" when calling AccountsApi.add_aliases, the character length must be smaller than or equal to 50.'
51
+ end
52
+
53
+ # verify the required parameter 'account_id' is set
54
+ if @api_client.config.client_side_validation && account_id.nil?
55
+ fail ArgumentError, "Missing the required parameter 'account_id' when calling AccountsApi.add_aliases"
56
+ end
57
+ if @api_client.config.client_side_validation && account_id.to_s.length > 50
58
+ fail ArgumentError, 'invalid value for "account_id" when calling AccountsApi.add_aliases, the character length must be smaller than or equal to 50.'
59
+ end
60
+
61
+ # verify the required parameter 'add_account_aliases_request' is set
62
+ if @api_client.config.client_side_validation && add_account_aliases_request.nil?
63
+ fail ArgumentError, "Missing the required parameter 'add_account_aliases_request' when calling AccountsApi.add_aliases"
64
+ end
65
+ # resource path
66
+ local_var_path = '/customers/{customer_id}/accounts/{account_id}/add_aliases'.sub('{' + 'customer_id' + '}', CGI.escape(customer_id.to_s)).sub('{' + 'account_id' + '}', CGI.escape(account_id.to_s))
67
+
68
+ # query parameters
69
+ query_params = opts[:query_params] || {}
70
+
71
+ # header parameters
72
+ header_params = opts[:header_params] || {}
73
+ # HTTP header 'Accept' (if needed)
74
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
75
+ # HTTP header 'Content-Type'
76
+ content_type = @api_client.select_header_content_type(['application/json'])
77
+ if !content_type.nil?
78
+ header_params['Content-Type'] = content_type
79
+ end
80
+
81
+ # form parameters
82
+ form_params = opts[:form_params] || {}
83
+
84
+ # http body (model)
85
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(add_account_aliases_request)
86
+
87
+ # return_type
88
+ return_type = opts[:debug_return_type] || 'Account'
89
+
90
+ # auth_names
91
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
92
+
93
+ new_options = opts.merge(
94
+ :operation => :"AccountsApi.add_aliases",
95
+ :header_params => header_params,
96
+ :query_params => query_params,
97
+ :form_params => form_params,
98
+ :body => post_body,
99
+ :auth_names => auth_names,
100
+ :return_type => return_type
101
+ )
102
+
103
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
104
+ if @api_client.config.debugging
105
+ @api_client.config.logger.debug "API called: AccountsApi#add_aliases\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
106
+ end
107
+ return data, status_code, headers
108
+ end
109
+
110
+ # Associate a plan to an account
111
+ # Associate a plan to an account
112
+ # @param customer_id [String]
113
+ # @param account_id [String]
114
+ # @param associate_price_plan_request [AssociatePricePlanRequest] Payload to associate a price plan to an account
115
+ # @param [Hash] opts the optional parameters
116
+ # @return [AssociatePricePlanResponse]
117
+ def associate_price_plan(customer_id, account_id, associate_price_plan_request, opts = {})
118
+ data, _status_code, _headers = associate_price_plan_with_http_info(customer_id, account_id, associate_price_plan_request, opts)
119
+ data
120
+ end
121
+
122
+ # Associate a plan to an account
123
+ # Associate a plan to an account
124
+ # @param customer_id [String]
125
+ # @param account_id [String]
126
+ # @param associate_price_plan_request [AssociatePricePlanRequest] Payload to associate a price plan to an account
127
+ # @param [Hash] opts the optional parameters
128
+ # @return [Array<(AssociatePricePlanResponse, Integer, Hash)>] AssociatePricePlanResponse data, response status code and response headers
129
+ def associate_price_plan_with_http_info(customer_id, account_id, associate_price_plan_request, opts = {})
130
+ if @api_client.config.debugging
131
+ @api_client.config.logger.debug 'Calling API: AccountsApi.associate_price_plan ...'
132
+ end
133
+ # verify the required parameter 'customer_id' is set
134
+ if @api_client.config.client_side_validation && customer_id.nil?
135
+ fail ArgumentError, "Missing the required parameter 'customer_id' when calling AccountsApi.associate_price_plan"
136
+ end
137
+ if @api_client.config.client_side_validation && customer_id.to_s.length > 50
138
+ fail ArgumentError, 'invalid value for "customer_id" when calling AccountsApi.associate_price_plan, the character length must be smaller than or equal to 50.'
139
+ end
140
+
141
+ # verify the required parameter 'account_id' is set
142
+ if @api_client.config.client_side_validation && account_id.nil?
143
+ fail ArgumentError, "Missing the required parameter 'account_id' when calling AccountsApi.associate_price_plan"
144
+ end
145
+ if @api_client.config.client_side_validation && account_id.to_s.length > 50
146
+ fail ArgumentError, 'invalid value for "account_id" when calling AccountsApi.associate_price_plan, the character length must be smaller than or equal to 50.'
147
+ end
148
+
149
+ # verify the required parameter 'associate_price_plan_request' is set
150
+ if @api_client.config.client_side_validation && associate_price_plan_request.nil?
151
+ fail ArgumentError, "Missing the required parameter 'associate_price_plan_request' when calling AccountsApi.associate_price_plan"
152
+ end
153
+ # resource path
154
+ local_var_path = '/customers/{customer_id}/accounts/{account_id}/price_plans'.sub('{' + 'customer_id' + '}', CGI.escape(customer_id.to_s)).sub('{' + 'account_id' + '}', CGI.escape(account_id.to_s))
155
+
156
+ # query parameters
157
+ query_params = opts[:query_params] || {}
158
+
159
+ # header parameters
160
+ header_params = opts[:header_params] || {}
161
+ # HTTP header 'Accept' (if needed)
162
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
163
+ # HTTP header 'Content-Type'
164
+ content_type = @api_client.select_header_content_type(['application/json'])
165
+ if !content_type.nil?
166
+ header_params['Content-Type'] = content_type
167
+ end
168
+
169
+ # form parameters
170
+ form_params = opts[:form_params] || {}
171
+
172
+ # http body (model)
173
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(associate_price_plan_request)
174
+
175
+ # return_type
176
+ return_type = opts[:debug_return_type] || 'AssociatePricePlanResponse'
177
+
178
+ # auth_names
179
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
180
+
181
+ new_options = opts.merge(
182
+ :operation => :"AccountsApi.associate_price_plan",
183
+ :header_params => header_params,
184
+ :query_params => query_params,
185
+ :form_params => form_params,
186
+ :body => post_body,
187
+ :auth_names => auth_names,
188
+ :return_type => return_type
189
+ )
190
+
191
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
192
+ if @api_client.config.debugging
193
+ @api_client.config.logger.debug "API called: AccountsApi#associate_price_plan\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
194
+ end
195
+ return data, status_code, headers
196
+ end
197
+
198
+ # Create an account
199
+ # Create an account
200
+ # @param customer_id [String]
201
+ # @param create_account_request [CreateAccountRequest] Payload to create account
202
+ # @param [Hash] opts the optional parameters
203
+ # @return [Account]
204
+ def create_account(customer_id, create_account_request, opts = {})
205
+ data, _status_code, _headers = create_account_with_http_info(customer_id, create_account_request, opts)
206
+ data
207
+ end
208
+
209
+ # Create an account
210
+ # Create an account
211
+ # @param customer_id [String]
212
+ # @param create_account_request [CreateAccountRequest] Payload to create account
213
+ # @param [Hash] opts the optional parameters
214
+ # @return [Array<(Account, Integer, Hash)>] Account data, response status code and response headers
215
+ def create_account_with_http_info(customer_id, create_account_request, opts = {})
216
+ if @api_client.config.debugging
217
+ @api_client.config.logger.debug 'Calling API: AccountsApi.create_account ...'
218
+ end
219
+ # verify the required parameter 'customer_id' is set
220
+ if @api_client.config.client_side_validation && customer_id.nil?
221
+ fail ArgumentError, "Missing the required parameter 'customer_id' when calling AccountsApi.create_account"
222
+ end
223
+ if @api_client.config.client_side_validation && customer_id.to_s.length > 50
224
+ fail ArgumentError, 'invalid value for "customer_id" when calling AccountsApi.create_account, the character length must be smaller than or equal to 50.'
225
+ end
226
+
227
+ # verify the required parameter 'create_account_request' is set
228
+ if @api_client.config.client_side_validation && create_account_request.nil?
229
+ fail ArgumentError, "Missing the required parameter 'create_account_request' when calling AccountsApi.create_account"
230
+ end
231
+ # resource path
232
+ local_var_path = '/customers/{customer_id}/accounts'.sub('{' + 'customer_id' + '}', CGI.escape(customer_id.to_s))
233
+
234
+ # query parameters
235
+ query_params = opts[:query_params] || {}
236
+
237
+ # header parameters
238
+ header_params = opts[:header_params] || {}
239
+ # HTTP header 'Accept' (if needed)
240
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
241
+ # HTTP header 'Content-Type'
242
+ content_type = @api_client.select_header_content_type(['application/json'])
243
+ if !content_type.nil?
244
+ header_params['Content-Type'] = content_type
245
+ end
246
+
247
+ # form parameters
248
+ form_params = opts[:form_params] || {}
249
+
250
+ # http body (model)
251
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(create_account_request)
252
+
253
+ # return_type
254
+ return_type = opts[:debug_return_type] || 'Account'
255
+
256
+ # auth_names
257
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
258
+
259
+ new_options = opts.merge(
260
+ :operation => :"AccountsApi.create_account",
261
+ :header_params => header_params,
262
+ :query_params => query_params,
263
+ :form_params => form_params,
264
+ :body => post_body,
265
+ :auth_names => auth_names,
266
+ :return_type => return_type
267
+ )
268
+
269
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
270
+ if @api_client.config.debugging
271
+ @api_client.config.logger.debug "API called: AccountsApi#create_account\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
272
+ end
273
+ return data, status_code, headers
274
+ end
275
+
276
+ # Delete an account
277
+ # Delete an account by id
278
+ # @param customer_id [String]
279
+ # @param account_id [String]
280
+ # @param [Hash] opts the optional parameters
281
+ # @return [BaseSuccessResponse]
282
+ def delete_account(customer_id, account_id, opts = {})
283
+ data, _status_code, _headers = delete_account_with_http_info(customer_id, account_id, opts)
284
+ data
285
+ end
286
+
287
+ # Delete an account
288
+ # Delete an account by id
289
+ # @param customer_id [String]
290
+ # @param account_id [String]
291
+ # @param [Hash] opts the optional parameters
292
+ # @return [Array<(BaseSuccessResponse, Integer, Hash)>] BaseSuccessResponse data, response status code and response headers
293
+ def delete_account_with_http_info(customer_id, account_id, opts = {})
294
+ if @api_client.config.debugging
295
+ @api_client.config.logger.debug 'Calling API: AccountsApi.delete_account ...'
296
+ end
297
+ # verify the required parameter 'customer_id' is set
298
+ if @api_client.config.client_side_validation && customer_id.nil?
299
+ fail ArgumentError, "Missing the required parameter 'customer_id' when calling AccountsApi.delete_account"
300
+ end
301
+ if @api_client.config.client_side_validation && customer_id.to_s.length > 50
302
+ fail ArgumentError, 'invalid value for "customer_id" when calling AccountsApi.delete_account, the character length must be smaller than or equal to 50.'
303
+ end
304
+
305
+ # verify the required parameter 'account_id' is set
306
+ if @api_client.config.client_side_validation && account_id.nil?
307
+ fail ArgumentError, "Missing the required parameter 'account_id' when calling AccountsApi.delete_account"
308
+ end
309
+ if @api_client.config.client_side_validation && account_id.to_s.length > 50
310
+ fail ArgumentError, 'invalid value for "account_id" when calling AccountsApi.delete_account, the character length must be smaller than or equal to 50.'
311
+ end
312
+
313
+ # resource path
314
+ local_var_path = '/customers/{customer_id}/accounts/{account_id}'.sub('{' + 'customer_id' + '}', CGI.escape(customer_id.to_s)).sub('{' + 'account_id' + '}', CGI.escape(account_id.to_s))
315
+
316
+ # query parameters
317
+ query_params = opts[:query_params] || {}
318
+
319
+ # header parameters
320
+ header_params = opts[:header_params] || {}
321
+ # HTTP header 'Accept' (if needed)
322
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
323
+
324
+ # form parameters
325
+ form_params = opts[:form_params] || {}
326
+
327
+ # http body (model)
328
+ post_body = opts[:debug_body]
329
+
330
+ # return_type
331
+ return_type = opts[:debug_return_type] || 'BaseSuccessResponse'
332
+
333
+ # auth_names
334
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
335
+
336
+ new_options = opts.merge(
337
+ :operation => :"AccountsApi.delete_account",
338
+ :header_params => header_params,
339
+ :query_params => query_params,
340
+ :form_params => form_params,
341
+ :body => post_body,
342
+ :auth_names => auth_names,
343
+ :return_type => return_type
344
+ )
345
+
346
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
347
+ if @api_client.config.debugging
348
+ @api_client.config.logger.debug "API called: AccountsApi#delete_account\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
349
+ end
350
+ return data, status_code, headers
351
+ end
352
+
353
+ # Get an account
354
+ # Get an account
355
+ # @param customer_id [String]
356
+ # @param account_id [String]
357
+ # @param [Hash] opts the optional parameters
358
+ # @return [Account]
359
+ def get_account(customer_id, account_id, opts = {})
360
+ data, _status_code, _headers = get_account_with_http_info(customer_id, account_id, opts)
361
+ data
362
+ end
363
+
364
+ # Get an account
365
+ # Get an account
366
+ # @param customer_id [String]
367
+ # @param account_id [String]
368
+ # @param [Hash] opts the optional parameters
369
+ # @return [Array<(Account, Integer, Hash)>] Account data, response status code and response headers
370
+ def get_account_with_http_info(customer_id, account_id, opts = {})
371
+ if @api_client.config.debugging
372
+ @api_client.config.logger.debug 'Calling API: AccountsApi.get_account ...'
373
+ end
374
+ # verify the required parameter 'customer_id' is set
375
+ if @api_client.config.client_side_validation && customer_id.nil?
376
+ fail ArgumentError, "Missing the required parameter 'customer_id' when calling AccountsApi.get_account"
377
+ end
378
+ if @api_client.config.client_side_validation && customer_id.to_s.length > 50
379
+ fail ArgumentError, 'invalid value for "customer_id" when calling AccountsApi.get_account, the character length must be smaller than or equal to 50.'
380
+ end
381
+
382
+ # verify the required parameter 'account_id' is set
383
+ if @api_client.config.client_side_validation && account_id.nil?
384
+ fail ArgumentError, "Missing the required parameter 'account_id' when calling AccountsApi.get_account"
385
+ end
386
+ if @api_client.config.client_side_validation && account_id.to_s.length > 50
387
+ fail ArgumentError, 'invalid value for "account_id" when calling AccountsApi.get_account, the character length must be smaller than or equal to 50.'
388
+ end
389
+
390
+ # resource path
391
+ local_var_path = '/customers/{customer_id}/accounts/{account_id}'.sub('{' + 'customer_id' + '}', CGI.escape(customer_id.to_s)).sub('{' + 'account_id' + '}', CGI.escape(account_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'])
400
+
401
+ # form parameters
402
+ form_params = opts[:form_params] || {}
403
+
404
+ # http body (model)
405
+ post_body = opts[:debug_body]
406
+
407
+ # return_type
408
+ return_type = opts[:debug_return_type] || 'Account'
409
+
410
+ # auth_names
411
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
412
+
413
+ new_options = opts.merge(
414
+ :operation => :"AccountsApi.get_account",
415
+ :header_params => header_params,
416
+ :query_params => query_params,
417
+ :form_params => form_params,
418
+ :body => post_body,
419
+ :auth_names => auth_names,
420
+ :return_type => return_type
421
+ )
422
+
423
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
424
+ if @api_client.config.debugging
425
+ @api_client.config.logger.debug "API called: AccountsApi#get_account\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
426
+ end
427
+ return data, status_code, headers
428
+ end
429
+
430
+ # List accounts of customer
431
+ # List accounts with pagination and sort
432
+ # @param customer_id [String]
433
+ # @param [Hash] opts the optional parameters
434
+ # @option opts [String] :next_token
435
+ # @option opts [String] :page_size
436
+ # @return [AccountPaginatedResponse]
437
+ def get_accounts(customer_id, opts = {})
438
+ data, _status_code, _headers = get_accounts_with_http_info(customer_id, opts)
439
+ data
440
+ end
441
+
442
+ # List accounts of customer
443
+ # List accounts with pagination and sort
444
+ # @param customer_id [String]
445
+ # @param [Hash] opts the optional parameters
446
+ # @option opts [String] :next_token
447
+ # @option opts [String] :page_size
448
+ # @return [Array<(AccountPaginatedResponse, Integer, Hash)>] AccountPaginatedResponse data, response status code and response headers
449
+ def get_accounts_with_http_info(customer_id, opts = {})
450
+ if @api_client.config.debugging
451
+ @api_client.config.logger.debug 'Calling API: AccountsApi.get_accounts ...'
452
+ end
453
+ # verify the required parameter 'customer_id' is set
454
+ if @api_client.config.client_side_validation && customer_id.nil?
455
+ fail ArgumentError, "Missing the required parameter 'customer_id' when calling AccountsApi.get_accounts"
456
+ end
457
+ if @api_client.config.client_side_validation && customer_id.to_s.length > 50
458
+ fail ArgumentError, 'invalid value for "customer_id" when calling AccountsApi.get_accounts, the character length must be smaller than or equal to 50.'
459
+ end
460
+
461
+ # resource path
462
+ local_var_path = '/customers/{customer_id}/accounts'.sub('{' + 'customer_id' + '}', CGI.escape(customer_id.to_s))
463
+
464
+ # query parameters
465
+ query_params = opts[:query_params] || {}
466
+ query_params[:'nextToken'] = opts[:'next_token'] if !opts[:'next_token'].nil?
467
+ query_params[:'pageSize'] = opts[:'page_size'] if !opts[:'page_size'].nil?
468
+
469
+ # header parameters
470
+ header_params = opts[:header_params] || {}
471
+ # HTTP header 'Accept' (if needed)
472
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
473
+
474
+ # form parameters
475
+ form_params = opts[:form_params] || {}
476
+
477
+ # http body (model)
478
+ post_body = opts[:debug_body]
479
+
480
+ # return_type
481
+ return_type = opts[:debug_return_type] || 'AccountPaginatedResponse'
482
+
483
+ # auth_names
484
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
485
+
486
+ new_options = opts.merge(
487
+ :operation => :"AccountsApi.get_accounts",
488
+ :header_params => header_params,
489
+ :query_params => query_params,
490
+ :form_params => form_params,
491
+ :body => post_body,
492
+ :auth_names => auth_names,
493
+ :return_type => return_type
494
+ )
495
+
496
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
497
+ if @api_client.config.debugging
498
+ @api_client.config.logger.debug "API called: AccountsApi#get_accounts\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
499
+ end
500
+ return data, status_code, headers
501
+ end
502
+
503
+ # Remove Aliases to account
504
+ # Remove Aliases to an account by id
505
+ # @param customer_id [String]
506
+ # @param account_id [String]
507
+ # @param remove_account_aliases_request [RemoveAccountAliasesRequest] Payload to remove aliases from account
508
+ # @param [Hash] opts the optional parameters
509
+ # @return [Account]
510
+ def remove_aliases(customer_id, account_id, remove_account_aliases_request, opts = {})
511
+ data, _status_code, _headers = remove_aliases_with_http_info(customer_id, account_id, remove_account_aliases_request, opts)
512
+ data
513
+ end
514
+
515
+ # Remove Aliases to account
516
+ # Remove Aliases to an account by id
517
+ # @param customer_id [String]
518
+ # @param account_id [String]
519
+ # @param remove_account_aliases_request [RemoveAccountAliasesRequest] Payload to remove aliases from account
520
+ # @param [Hash] opts the optional parameters
521
+ # @return [Array<(Account, Integer, Hash)>] Account data, response status code and response headers
522
+ def remove_aliases_with_http_info(customer_id, account_id, remove_account_aliases_request, opts = {})
523
+ if @api_client.config.debugging
524
+ @api_client.config.logger.debug 'Calling API: AccountsApi.remove_aliases ...'
525
+ end
526
+ # verify the required parameter 'customer_id' is set
527
+ if @api_client.config.client_side_validation && customer_id.nil?
528
+ fail ArgumentError, "Missing the required parameter 'customer_id' when calling AccountsApi.remove_aliases"
529
+ end
530
+ if @api_client.config.client_side_validation && customer_id.to_s.length > 50
531
+ fail ArgumentError, 'invalid value for "customer_id" when calling AccountsApi.remove_aliases, the character length must be smaller than or equal to 50.'
532
+ end
533
+
534
+ # verify the required parameter 'account_id' is set
535
+ if @api_client.config.client_side_validation && account_id.nil?
536
+ fail ArgumentError, "Missing the required parameter 'account_id' when calling AccountsApi.remove_aliases"
537
+ end
538
+ if @api_client.config.client_side_validation && account_id.to_s.length > 50
539
+ fail ArgumentError, 'invalid value for "account_id" when calling AccountsApi.remove_aliases, the character length must be smaller than or equal to 50.'
540
+ end
541
+
542
+ # verify the required parameter 'remove_account_aliases_request' is set
543
+ if @api_client.config.client_side_validation && remove_account_aliases_request.nil?
544
+ fail ArgumentError, "Missing the required parameter 'remove_account_aliases_request' when calling AccountsApi.remove_aliases"
545
+ end
546
+ # resource path
547
+ local_var_path = '/customers/{customer_id}/accounts/{account_id}/remove_aliases'.sub('{' + 'customer_id' + '}', CGI.escape(customer_id.to_s)).sub('{' + 'account_id' + '}', CGI.escape(account_id.to_s))
548
+
549
+ # query parameters
550
+ query_params = opts[:query_params] || {}
551
+
552
+ # header parameters
553
+ header_params = opts[:header_params] || {}
554
+ # HTTP header 'Accept' (if needed)
555
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
556
+ # HTTP header 'Content-Type'
557
+ content_type = @api_client.select_header_content_type(['application/json'])
558
+ if !content_type.nil?
559
+ header_params['Content-Type'] = content_type
560
+ end
561
+
562
+ # form parameters
563
+ form_params = opts[:form_params] || {}
564
+
565
+ # http body (model)
566
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(remove_account_aliases_request)
567
+
568
+ # return_type
569
+ return_type = opts[:debug_return_type] || 'Account'
570
+
571
+ # auth_names
572
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
573
+
574
+ new_options = opts.merge(
575
+ :operation => :"AccountsApi.remove_aliases",
576
+ :header_params => header_params,
577
+ :query_params => query_params,
578
+ :form_params => form_params,
579
+ :body => post_body,
580
+ :auth_names => auth_names,
581
+ :return_type => return_type
582
+ )
583
+
584
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
585
+ if @api_client.config.debugging
586
+ @api_client.config.logger.debug "API called: AccountsApi#remove_aliases\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
587
+ end
588
+ return data, status_code, headers
589
+ end
590
+
591
+ # Update an account
592
+ # Update an account by id
593
+ # @param customer_id [String]
594
+ # @param account_id [String]
595
+ # @param update_account_request [UpdateAccountRequest] Payload to update account
596
+ # @param [Hash] opts the optional parameters
597
+ # @return [Account]
598
+ def update_account(customer_id, account_id, update_account_request, opts = {})
599
+ data, _status_code, _headers = update_account_with_http_info(customer_id, account_id, update_account_request, opts)
600
+ data
601
+ end
602
+
603
+ # Update an account
604
+ # Update an account by id
605
+ # @param customer_id [String]
606
+ # @param account_id [String]
607
+ # @param update_account_request [UpdateAccountRequest] Payload to update account
608
+ # @param [Hash] opts the optional parameters
609
+ # @return [Array<(Account, Integer, Hash)>] Account data, response status code and response headers
610
+ def update_account_with_http_info(customer_id, account_id, update_account_request, opts = {})
611
+ if @api_client.config.debugging
612
+ @api_client.config.logger.debug 'Calling API: AccountsApi.update_account ...'
613
+ end
614
+ # verify the required parameter 'customer_id' is set
615
+ if @api_client.config.client_side_validation && customer_id.nil?
616
+ fail ArgumentError, "Missing the required parameter 'customer_id' when calling AccountsApi.update_account"
617
+ end
618
+ if @api_client.config.client_side_validation && customer_id.to_s.length > 50
619
+ fail ArgumentError, 'invalid value for "customer_id" when calling AccountsApi.update_account, the character length must be smaller than or equal to 50.'
620
+ end
621
+
622
+ # verify the required parameter 'account_id' is set
623
+ if @api_client.config.client_side_validation && account_id.nil?
624
+ fail ArgumentError, "Missing the required parameter 'account_id' when calling AccountsApi.update_account"
625
+ end
626
+ if @api_client.config.client_side_validation && account_id.to_s.length > 50
627
+ fail ArgumentError, 'invalid value for "account_id" when calling AccountsApi.update_account, the character length must be smaller than or equal to 50.'
628
+ end
629
+
630
+ # verify the required parameter 'update_account_request' is set
631
+ if @api_client.config.client_side_validation && update_account_request.nil?
632
+ fail ArgumentError, "Missing the required parameter 'update_account_request' when calling AccountsApi.update_account"
633
+ end
634
+ # resource path
635
+ local_var_path = '/customers/{customer_id}/accounts/{account_id}'.sub('{' + 'customer_id' + '}', CGI.escape(customer_id.to_s)).sub('{' + 'account_id' + '}', CGI.escape(account_id.to_s))
636
+
637
+ # query parameters
638
+ query_params = opts[:query_params] || {}
639
+
640
+ # header parameters
641
+ header_params = opts[:header_params] || {}
642
+ # HTTP header 'Accept' (if needed)
643
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
644
+ # HTTP header 'Content-Type'
645
+ content_type = @api_client.select_header_content_type(['application/json'])
646
+ if !content_type.nil?
647
+ header_params['Content-Type'] = content_type
648
+ end
649
+
650
+ # form parameters
651
+ form_params = opts[:form_params] || {}
652
+
653
+ # http body (model)
654
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(update_account_request)
655
+
656
+ # return_type
657
+ return_type = opts[:debug_return_type] || 'Account'
658
+
659
+ # auth_names
660
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
661
+
662
+ new_options = opts.merge(
663
+ :operation => :"AccountsApi.update_account",
664
+ :header_params => header_params,
665
+ :query_params => query_params,
666
+ :form_params => form_params,
667
+ :body => post_body,
668
+ :auth_names => auth_names,
669
+ :return_type => return_type
670
+ )
671
+
672
+ data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options)
673
+ if @api_client.config.debugging
674
+ @api_client.config.logger.debug "API called: AccountsApi#update_account\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
675
+ end
676
+ return data, status_code, headers
677
+ end
678
+ end
679
+ end