ilovevideoeditor-sdk 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 (120) hide show
  1. checksums.yaml +7 -0
  2. data/lib/generated/ilovevideoeditor-sdk/api/api_keys_api.rb +204 -0
  3. data/lib/generated/ilovevideoeditor-sdk/api/assets_api.rb +632 -0
  4. data/lib/generated/ilovevideoeditor-sdk/api/billing_api.rb +428 -0
  5. data/lib/generated/ilovevideoeditor-sdk/api/health_api.rb +134 -0
  6. data/lib/generated/ilovevideoeditor-sdk/api/integrations_api.rb +587 -0
  7. data/lib/generated/ilovevideoeditor-sdk/api/projects_api.rb +614 -0
  8. data/lib/generated/ilovevideoeditor-sdk/api/render_api.rb +656 -0
  9. data/lib/generated/ilovevideoeditor-sdk/api/renditions_api.rb +420 -0
  10. data/lib/generated/ilovevideoeditor-sdk/api/templates_api.rb +217 -0
  11. data/lib/generated/ilovevideoeditor-sdk/api/tools_api.rb +220 -0
  12. data/lib/generated/ilovevideoeditor-sdk/api/webhooks_api.rb +204 -0
  13. data/lib/generated/ilovevideoeditor-sdk/api/workflows_api.rb +854 -0
  14. data/lib/generated/ilovevideoeditor-sdk/api_client.rb +397 -0
  15. data/lib/generated/ilovevideoeditor-sdk/api_error.rb +58 -0
  16. data/lib/generated/ilovevideoeditor-sdk/api_model_base.rb +88 -0
  17. data/lib/generated/ilovevideoeditor-sdk/configuration.rb +316 -0
  18. data/lib/generated/ilovevideoeditor-sdk/models/api_key.rb +246 -0
  19. data/lib/generated/ilovevideoeditor-sdk/models/api_key_with_secret.rb +191 -0
  20. data/lib/generated/ilovevideoeditor-sdk/models/asset.rb +404 -0
  21. data/lib/generated/ilovevideoeditor-sdk/models/asset_create.rb +303 -0
  22. data/lib/generated/ilovevideoeditor-sdk/models/asset_upload_url_response.rb +295 -0
  23. data/lib/generated/ilovevideoeditor-sdk/models/batch_delete_projects_request.rb +184 -0
  24. data/lib/generated/ilovevideoeditor-sdk/models/batch_delete_result.rb +175 -0
  25. data/lib/generated/ilovevideoeditor-sdk/models/billing_prices.rb +158 -0
  26. data/lib/generated/ilovevideoeditor-sdk/models/billing_prices_tiers.rb +168 -0
  27. data/lib/generated/ilovevideoeditor-sdk/models/billing_subscription.rb +254 -0
  28. data/lib/generated/ilovevideoeditor-sdk/models/cancel_render200_response.rb +225 -0
  29. data/lib/generated/ilovevideoeditor-sdk/models/create_api_key_request.rb +147 -0
  30. data/lib/generated/ilovevideoeditor-sdk/models/create_asset201_response.rb +164 -0
  31. data/lib/generated/ilovevideoeditor-sdk/models/create_checkout_session200_response.rb +164 -0
  32. data/lib/generated/ilovevideoeditor-sdk/models/create_checkout_session_request.rb +220 -0
  33. data/lib/generated/ilovevideoeditor-sdk/models/create_integration201_response.rb +164 -0
  34. data/lib/generated/ilovevideoeditor-sdk/models/create_project200_response.rb +164 -0
  35. data/lib/generated/ilovevideoeditor-sdk/models/create_workflow201_response.rb +164 -0
  36. data/lib/generated/ilovevideoeditor-sdk/models/create_workflow_request.rb +208 -0
  37. data/lib/generated/ilovevideoeditor-sdk/models/credit_balance.rb +219 -0
  38. data/lib/generated/ilovevideoeditor-sdk/models/credit_balance_summary.rb +174 -0
  39. data/lib/generated/ilovevideoeditor-sdk/models/credit_balance_usage.rb +156 -0
  40. data/lib/generated/ilovevideoeditor-sdk/models/delete_project200_response.rb +190 -0
  41. data/lib/generated/ilovevideoeditor-sdk/models/destination.rb +331 -0
  42. data/lib/generated/ilovevideoeditor-sdk/models/destination_input.rb +304 -0
  43. data/lib/generated/ilovevideoeditor-sdk/models/error.rb +182 -0
  44. data/lib/generated/ilovevideoeditor-sdk/models/estimate_render_cost_request.rb +164 -0
  45. data/lib/generated/ilovevideoeditor-sdk/models/get_asset_signed_url200_response.rb +164 -0
  46. data/lib/generated/ilovevideoeditor-sdk/models/get_asset_upload_url_request.rb +214 -0
  47. data/lib/generated/ilovevideoeditor-sdk/models/get_destination200_response.rb +164 -0
  48. data/lib/generated/ilovevideoeditor-sdk/models/get_project200_response.rb +173 -0
  49. data/lib/generated/ilovevideoeditor-sdk/models/get_project_stats200_response.rb +164 -0
  50. data/lib/generated/ilovevideoeditor-sdk/models/get_render_download_url200_response.rb +190 -0
  51. data/lib/generated/ilovevideoeditor-sdk/models/get_rendition200_response.rb +164 -0
  52. data/lib/generated/ilovevideoeditor-sdk/models/get_subscription200_response.rb +164 -0
  53. data/lib/generated/ilovevideoeditor-sdk/models/get_template200_response.rb +164 -0
  54. data/lib/generated/ilovevideoeditor-sdk/models/get_usage200_response.rb +166 -0
  55. data/lib/generated/ilovevideoeditor-sdk/models/get_workflow200_response.rb +175 -0
  56. data/lib/generated/ilovevideoeditor-sdk/models/get_workflow_run200_response.rb +175 -0
  57. data/lib/generated/ilovevideoeditor-sdk/models/health_check200_response.rb +147 -0
  58. data/lib/generated/ilovevideoeditor-sdk/models/health_check_detailed200_response.rb +199 -0
  59. data/lib/generated/ilovevideoeditor-sdk/models/health_check_detailed200_response_services.rb +156 -0
  60. data/lib/generated/ilovevideoeditor-sdk/models/list_api_keys200_response.rb +166 -0
  61. data/lib/generated/ilovevideoeditor-sdk/models/list_assets200_response.rb +185 -0
  62. data/lib/generated/ilovevideoeditor-sdk/models/list_integrations200_response.rb +166 -0
  63. data/lib/generated/ilovevideoeditor-sdk/models/list_invoices200_response.rb +158 -0
  64. data/lib/generated/ilovevideoeditor-sdk/models/list_projects200_response.rb +185 -0
  65. data/lib/generated/ilovevideoeditor-sdk/models/list_renditions200_response.rb +185 -0
  66. data/lib/generated/ilovevideoeditor-sdk/models/list_templates200_response.rb +166 -0
  67. data/lib/generated/ilovevideoeditor-sdk/models/list_webhook_subscriptions200_response.rb +166 -0
  68. data/lib/generated/ilovevideoeditor-sdk/models/list_workflow_runs200_response.rb +185 -0
  69. data/lib/generated/ilovevideoeditor-sdk/models/list_workflow_step_types200_response.rb +166 -0
  70. data/lib/generated/ilovevideoeditor-sdk/models/list_workflows200_response.rb +185 -0
  71. data/lib/generated/ilovevideoeditor-sdk/models/project.rb +329 -0
  72. data/lib/generated/ilovevideoeditor-sdk/models/project_create.rb +218 -0
  73. data/lib/generated/ilovevideoeditor-sdk/models/project_update.rb +239 -0
  74. data/lib/generated/ilovevideoeditor-sdk/models/queue_render200_response.rb +199 -0
  75. data/lib/generated/ilovevideoeditor-sdk/models/queue_render_request.rb +182 -0
  76. data/lib/generated/ilovevideoeditor-sdk/models/refresh_render_url200_response.rb +190 -0
  77. data/lib/generated/ilovevideoeditor-sdk/models/render_cost_estimate.rb +254 -0
  78. data/lib/generated/ilovevideoeditor-sdk/models/render_cost_estimate_resolution.rb +165 -0
  79. data/lib/generated/ilovevideoeditor-sdk/models/render_cost_estimate_tier.rb +165 -0
  80. data/lib/generated/ilovevideoeditor-sdk/models/render_job.rb +271 -0
  81. data/lib/generated/ilovevideoeditor-sdk/models/render_job_progress.rb +165 -0
  82. data/lib/generated/ilovevideoeditor-sdk/models/render_list_item.rb +356 -0
  83. data/lib/generated/ilovevideoeditor-sdk/models/render_template_request.rb +167 -0
  84. data/lib/generated/ilovevideoeditor-sdk/models/render_webhook_payload.rb +357 -0
  85. data/lib/generated/ilovevideoeditor-sdk/models/rendition.rb +335 -0
  86. data/lib/generated/ilovevideoeditor-sdk/models/rendition_cancel_result.rb +236 -0
  87. data/lib/generated/ilovevideoeditor-sdk/models/rendition_output.rb +233 -0
  88. data/lib/generated/ilovevideoeditor-sdk/models/rendition_stats.rb +192 -0
  89. data/lib/generated/ilovevideoeditor-sdk/models/run_workflow202_response.rb +164 -0
  90. data/lib/generated/ilovevideoeditor-sdk/models/run_workflow_request.rb +149 -0
  91. data/lib/generated/ilovevideoeditor-sdk/models/service_health.rb +208 -0
  92. data/lib/generated/ilovevideoeditor-sdk/models/template.rb +324 -0
  93. data/lib/generated/ilovevideoeditor-sdk/models/template_summary.rb +322 -0
  94. data/lib/generated/ilovevideoeditor-sdk/models/test_integration200_response.rb +174 -0
  95. data/lib/generated/ilovevideoeditor-sdk/models/tier_info.rb +214 -0
  96. data/lib/generated/ilovevideoeditor-sdk/models/tier_info_credits.rb +165 -0
  97. data/lib/generated/ilovevideoeditor-sdk/models/tool_job_request.rb +242 -0
  98. data/lib/generated/ilovevideoeditor-sdk/models/tool_job_request_dimensions.rb +208 -0
  99. data/lib/generated/ilovevideoeditor-sdk/models/tool_job_status.rb +310 -0
  100. data/lib/generated/ilovevideoeditor-sdk/models/track_render_bandwidth200_response.rb +164 -0
  101. data/lib/generated/ilovevideoeditor-sdk/models/update_workflow_request.rb +174 -0
  102. data/lib/generated/ilovevideoeditor-sdk/models/upload_asset200_response.rb +164 -0
  103. data/lib/generated/ilovevideoeditor-sdk/models/usage_log.rb +302 -0
  104. data/lib/generated/ilovevideoeditor-sdk/models/video_json.rb +243 -0
  105. data/lib/generated/ilovevideoeditor-sdk/models/video_json_destination.rb +227 -0
  106. data/lib/generated/ilovevideoeditor-sdk/models/webhook_subscription.rb +283 -0
  107. data/lib/generated/ilovevideoeditor-sdk/models/webhook_subscription_create.rb +204 -0
  108. data/lib/generated/ilovevideoeditor-sdk/models/workflow.rb +356 -0
  109. data/lib/generated/ilovevideoeditor-sdk/models/workflow_definition.rb +262 -0
  110. data/lib/generated/ilovevideoeditor-sdk/models/workflow_run.rb +372 -0
  111. data/lib/generated/ilovevideoeditor-sdk/models/workflow_run_step.rb +409 -0
  112. data/lib/generated/ilovevideoeditor-sdk/models/workflow_step.rb +262 -0
  113. data/lib/generated/ilovevideoeditor-sdk/models/workflow_variable.rb +242 -0
  114. data/lib/generated/ilovevideoeditor-sdk/models/workspace_integration.rb +398 -0
  115. data/lib/generated/ilovevideoeditor-sdk/models/workspace_integration_input.rb +260 -0
  116. data/lib/generated/ilovevideoeditor-sdk/version.rb +15 -0
  117. data/lib/generated/ilovevideoeditor-sdk.rb +150 -0
  118. data/lib/ilovevideoeditor/client.rb +106 -0
  119. data/lib/ilovevideoeditor-sdk.rb +2 -0
  120. metadata +181 -0
@@ -0,0 +1,587 @@
1
+ =begin
2
+ #iLoveVideoEditor API
3
+
4
+ #Cloud video rendering API for iLoveVideoEditor. Submit a `VideoJSON` payload, queue a render job, and download the resulting MP4. **Authentication** - **API Key** (`x-api-key` header) — accepted by render pipeline and tool endpoints. - **Bearer Token** (`Authorization: Bearer <jwt>`) — required for user-scoped project, asset, billing, and webhook endpoints. - Many endpoints accept either form of authentication. **SDKs** Official typed SDKs are available for JavaScript/TypeScript, PHP, Python, Ruby, and Go. See https://ilovevideoeditor.com/docs/sdks **Outbound Webhooks** Render lifecycle events (`render.completed`, `render.failed`) are delivered to your endpoints as signed HTTP POST requests. See the `Webhooks` tag and the root-level `x-webhook-docs` extension for the payload format (`RenderWebhookPayload`), signature headers, HMAC verification, and the retry policy.
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.22.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module ILoveVideoEditor
16
+ class IntegrationsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Create a workspace integration
23
+ # @param workspace_integration_input [WorkspaceIntegrationInput]
24
+ # @param [Hash] opts the optional parameters
25
+ # @return [CreateIntegration201Response]
26
+ def create_integration(workspace_integration_input, opts = {})
27
+ data, _status_code, _headers = create_integration_with_http_info(workspace_integration_input, opts)
28
+ data
29
+ end
30
+
31
+ # Create a workspace integration
32
+ # @param workspace_integration_input [WorkspaceIntegrationInput]
33
+ # @param [Hash] opts the optional parameters
34
+ # @return [Array<(CreateIntegration201Response, Integer, Hash)>] CreateIntegration201Response data, response status code and response headers
35
+ def create_integration_with_http_info(workspace_integration_input, opts = {})
36
+ if @api_client.config.debugging
37
+ @api_client.config.logger.debug 'Calling API: IntegrationsApi.create_integration ...'
38
+ end
39
+ # verify the required parameter 'workspace_integration_input' is set
40
+ if @api_client.config.client_side_validation && workspace_integration_input.nil?
41
+ fail ArgumentError, "Missing the required parameter 'workspace_integration_input' when calling IntegrationsApi.create_integration"
42
+ end
43
+ # resource path
44
+ local_var_path = '/v1/integrations'
45
+
46
+ # query parameters
47
+ query_params = opts[:query_params] || {}
48
+
49
+ # header parameters
50
+ header_params = opts[:header_params] || {}
51
+ # HTTP header 'Accept' (if needed)
52
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
53
+ # HTTP header 'Content-Type'
54
+ content_type = @api_client.select_header_content_type(['application/json'])
55
+ if !content_type.nil?
56
+ header_params['Content-Type'] = content_type
57
+ end
58
+
59
+ # form parameters
60
+ form_params = opts[:form_params] || {}
61
+
62
+ # http body (model)
63
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(workspace_integration_input)
64
+
65
+ # return_type
66
+ return_type = opts[:debug_return_type] || 'CreateIntegration201Response'
67
+
68
+ # auth_names
69
+ auth_names = opts[:debug_auth_names] || ['BearerAuth']
70
+
71
+ new_options = opts.merge(
72
+ :operation => :"IntegrationsApi.create_integration",
73
+ :header_params => header_params,
74
+ :query_params => query_params,
75
+ :form_params => form_params,
76
+ :body => post_body,
77
+ :auth_names => auth_names,
78
+ :return_type => return_type
79
+ )
80
+
81
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
82
+ if @api_client.config.debugging
83
+ @api_client.config.logger.debug "API called: IntegrationsApi#create_integration\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
84
+ end
85
+ return data, status_code, headers
86
+ end
87
+
88
+ # Delete default destination
89
+ # Backwards-compatible single-destination endpoint.
90
+ # @param [Hash] opts the optional parameters
91
+ # @return [UploadAsset200Response]
92
+ def delete_destination(opts = {})
93
+ data, _status_code, _headers = delete_destination_with_http_info(opts)
94
+ data
95
+ end
96
+
97
+ # Delete default destination
98
+ # Backwards-compatible single-destination endpoint.
99
+ # @param [Hash] opts the optional parameters
100
+ # @return [Array<(UploadAsset200Response, Integer, Hash)>] UploadAsset200Response data, response status code and response headers
101
+ def delete_destination_with_http_info(opts = {})
102
+ if @api_client.config.debugging
103
+ @api_client.config.logger.debug 'Calling API: IntegrationsApi.delete_destination ...'
104
+ end
105
+ # resource path
106
+ local_var_path = '/v1/destination'
107
+
108
+ # query parameters
109
+ query_params = opts[:query_params] || {}
110
+
111
+ # header parameters
112
+ header_params = opts[:header_params] || {}
113
+ # HTTP header 'Accept' (if needed)
114
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
115
+
116
+ # form parameters
117
+ form_params = opts[:form_params] || {}
118
+
119
+ # http body (model)
120
+ post_body = opts[:debug_body]
121
+
122
+ # return_type
123
+ return_type = opts[:debug_return_type] || 'UploadAsset200Response'
124
+
125
+ # auth_names
126
+ auth_names = opts[:debug_auth_names] || ['BearerAuth']
127
+
128
+ new_options = opts.merge(
129
+ :operation => :"IntegrationsApi.delete_destination",
130
+ :header_params => header_params,
131
+ :query_params => query_params,
132
+ :form_params => form_params,
133
+ :body => post_body,
134
+ :auth_names => auth_names,
135
+ :return_type => return_type
136
+ )
137
+
138
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
139
+ if @api_client.config.debugging
140
+ @api_client.config.logger.debug "API called: IntegrationsApi#delete_destination\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
141
+ end
142
+ return data, status_code, headers
143
+ end
144
+
145
+ # Delete a workspace integration
146
+ # @param id [String]
147
+ # @param [Hash] opts the optional parameters
148
+ # @return [UploadAsset200Response]
149
+ def delete_integration(id, opts = {})
150
+ data, _status_code, _headers = delete_integration_with_http_info(id, opts)
151
+ data
152
+ end
153
+
154
+ # Delete a workspace integration
155
+ # @param id [String]
156
+ # @param [Hash] opts the optional parameters
157
+ # @return [Array<(UploadAsset200Response, Integer, Hash)>] UploadAsset200Response data, response status code and response headers
158
+ def delete_integration_with_http_info(id, opts = {})
159
+ if @api_client.config.debugging
160
+ @api_client.config.logger.debug 'Calling API: IntegrationsApi.delete_integration ...'
161
+ end
162
+ # verify the required parameter 'id' is set
163
+ if @api_client.config.client_side_validation && id.nil?
164
+ fail ArgumentError, "Missing the required parameter 'id' when calling IntegrationsApi.delete_integration"
165
+ end
166
+ # resource path
167
+ local_var_path = '/v1/integrations/{id}'.sub('{id}', CGI.escape(id.to_s))
168
+
169
+ # query parameters
170
+ query_params = opts[:query_params] || {}
171
+
172
+ # header parameters
173
+ header_params = opts[:header_params] || {}
174
+ # HTTP header 'Accept' (if needed)
175
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
176
+
177
+ # form parameters
178
+ form_params = opts[:form_params] || {}
179
+
180
+ # http body (model)
181
+ post_body = opts[:debug_body]
182
+
183
+ # return_type
184
+ return_type = opts[:debug_return_type] || 'UploadAsset200Response'
185
+
186
+ # auth_names
187
+ auth_names = opts[:debug_auth_names] || ['BearerAuth']
188
+
189
+ new_options = opts.merge(
190
+ :operation => :"IntegrationsApi.delete_integration",
191
+ :header_params => header_params,
192
+ :query_params => query_params,
193
+ :form_params => form_params,
194
+ :body => post_body,
195
+ :auth_names => auth_names,
196
+ :return_type => return_type
197
+ )
198
+
199
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
200
+ if @api_client.config.debugging
201
+ @api_client.config.logger.debug "API called: IntegrationsApi#delete_integration\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
202
+ end
203
+ return data, status_code, headers
204
+ end
205
+
206
+ # Get default destination
207
+ # Backwards-compatible single-destination endpoint.
208
+ # @param [Hash] opts the optional parameters
209
+ # @return [GetDestination200Response]
210
+ def get_destination(opts = {})
211
+ data, _status_code, _headers = get_destination_with_http_info(opts)
212
+ data
213
+ end
214
+
215
+ # Get default destination
216
+ # Backwards-compatible single-destination endpoint.
217
+ # @param [Hash] opts the optional parameters
218
+ # @return [Array<(GetDestination200Response, Integer, Hash)>] GetDestination200Response data, response status code and response headers
219
+ def get_destination_with_http_info(opts = {})
220
+ if @api_client.config.debugging
221
+ @api_client.config.logger.debug 'Calling API: IntegrationsApi.get_destination ...'
222
+ end
223
+ # resource path
224
+ local_var_path = '/v1/destination'
225
+
226
+ # query parameters
227
+ query_params = opts[:query_params] || {}
228
+
229
+ # header parameters
230
+ header_params = opts[:header_params] || {}
231
+ # HTTP header 'Accept' (if needed)
232
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
233
+
234
+ # form parameters
235
+ form_params = opts[:form_params] || {}
236
+
237
+ # http body (model)
238
+ post_body = opts[:debug_body]
239
+
240
+ # return_type
241
+ return_type = opts[:debug_return_type] || 'GetDestination200Response'
242
+
243
+ # auth_names
244
+ auth_names = opts[:debug_auth_names] || ['BearerAuth']
245
+
246
+ new_options = opts.merge(
247
+ :operation => :"IntegrationsApi.get_destination",
248
+ :header_params => header_params,
249
+ :query_params => query_params,
250
+ :form_params => form_params,
251
+ :body => post_body,
252
+ :auth_names => auth_names,
253
+ :return_type => return_type
254
+ )
255
+
256
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
257
+ if @api_client.config.debugging
258
+ @api_client.config.logger.debug "API called: IntegrationsApi#get_destination\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
259
+ end
260
+ return data, status_code, headers
261
+ end
262
+
263
+ # List workspace storage integrations
264
+ # @param [Hash] opts the optional parameters
265
+ # @return [ListIntegrations200Response]
266
+ def list_integrations(opts = {})
267
+ data, _status_code, _headers = list_integrations_with_http_info(opts)
268
+ data
269
+ end
270
+
271
+ # List workspace storage integrations
272
+ # @param [Hash] opts the optional parameters
273
+ # @return [Array<(ListIntegrations200Response, Integer, Hash)>] ListIntegrations200Response data, response status code and response headers
274
+ def list_integrations_with_http_info(opts = {})
275
+ if @api_client.config.debugging
276
+ @api_client.config.logger.debug 'Calling API: IntegrationsApi.list_integrations ...'
277
+ end
278
+ # resource path
279
+ local_var_path = '/v1/integrations'
280
+
281
+ # query parameters
282
+ query_params = opts[:query_params] || {}
283
+
284
+ # header parameters
285
+ header_params = opts[:header_params] || {}
286
+ # HTTP header 'Accept' (if needed)
287
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
288
+
289
+ # form parameters
290
+ form_params = opts[:form_params] || {}
291
+
292
+ # http body (model)
293
+ post_body = opts[:debug_body]
294
+
295
+ # return_type
296
+ return_type = opts[:debug_return_type] || 'ListIntegrations200Response'
297
+
298
+ # auth_names
299
+ auth_names = opts[:debug_auth_names] || ['BearerAuth']
300
+
301
+ new_options = opts.merge(
302
+ :operation => :"IntegrationsApi.list_integrations",
303
+ :header_params => header_params,
304
+ :query_params => query_params,
305
+ :form_params => form_params,
306
+ :body => post_body,
307
+ :auth_names => auth_names,
308
+ :return_type => return_type
309
+ )
310
+
311
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
312
+ if @api_client.config.debugging
313
+ @api_client.config.logger.debug "API called: IntegrationsApi#list_integrations\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
314
+ end
315
+ return data, status_code, headers
316
+ end
317
+
318
+ # Set default destination
319
+ # Backwards-compatible single-destination endpoint.
320
+ # @param destination_input [DestinationInput]
321
+ # @param [Hash] opts the optional parameters
322
+ # @return [GetDestination200Response]
323
+ def set_destination(destination_input, opts = {})
324
+ data, _status_code, _headers = set_destination_with_http_info(destination_input, opts)
325
+ data
326
+ end
327
+
328
+ # Set default destination
329
+ # Backwards-compatible single-destination endpoint.
330
+ # @param destination_input [DestinationInput]
331
+ # @param [Hash] opts the optional parameters
332
+ # @return [Array<(GetDestination200Response, Integer, Hash)>] GetDestination200Response data, response status code and response headers
333
+ def set_destination_with_http_info(destination_input, opts = {})
334
+ if @api_client.config.debugging
335
+ @api_client.config.logger.debug 'Calling API: IntegrationsApi.set_destination ...'
336
+ end
337
+ # verify the required parameter 'destination_input' is set
338
+ if @api_client.config.client_side_validation && destination_input.nil?
339
+ fail ArgumentError, "Missing the required parameter 'destination_input' when calling IntegrationsApi.set_destination"
340
+ end
341
+ # resource path
342
+ local_var_path = '/v1/destination'
343
+
344
+ # query parameters
345
+ query_params = opts[:query_params] || {}
346
+
347
+ # header parameters
348
+ header_params = opts[:header_params] || {}
349
+ # HTTP header 'Accept' (if needed)
350
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
351
+ # HTTP header 'Content-Type'
352
+ content_type = @api_client.select_header_content_type(['application/json'])
353
+ if !content_type.nil?
354
+ header_params['Content-Type'] = content_type
355
+ end
356
+
357
+ # form parameters
358
+ form_params = opts[:form_params] || {}
359
+
360
+ # http body (model)
361
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(destination_input)
362
+
363
+ # return_type
364
+ return_type = opts[:debug_return_type] || 'GetDestination200Response'
365
+
366
+ # auth_names
367
+ auth_names = opts[:debug_auth_names] || ['BearerAuth']
368
+
369
+ new_options = opts.merge(
370
+ :operation => :"IntegrationsApi.set_destination",
371
+ :header_params => header_params,
372
+ :query_params => query_params,
373
+ :form_params => form_params,
374
+ :body => post_body,
375
+ :auth_names => auth_names,
376
+ :return_type => return_type
377
+ )
378
+
379
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
380
+ if @api_client.config.debugging
381
+ @api_client.config.logger.debug "API called: IntegrationsApi#set_destination\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
382
+ end
383
+ return data, status_code, headers
384
+ end
385
+
386
+ # Test default destination
387
+ # Backwards-compatible single-destination test endpoint.
388
+ # @param destination_input [DestinationInput]
389
+ # @param [Hash] opts the optional parameters
390
+ # @return [TestIntegration200Response]
391
+ def test_destination(destination_input, opts = {})
392
+ data, _status_code, _headers = test_destination_with_http_info(destination_input, opts)
393
+ data
394
+ end
395
+
396
+ # Test default destination
397
+ # Backwards-compatible single-destination test endpoint.
398
+ # @param destination_input [DestinationInput]
399
+ # @param [Hash] opts the optional parameters
400
+ # @return [Array<(TestIntegration200Response, Integer, Hash)>] TestIntegration200Response data, response status code and response headers
401
+ def test_destination_with_http_info(destination_input, opts = {})
402
+ if @api_client.config.debugging
403
+ @api_client.config.logger.debug 'Calling API: IntegrationsApi.test_destination ...'
404
+ end
405
+ # verify the required parameter 'destination_input' is set
406
+ if @api_client.config.client_side_validation && destination_input.nil?
407
+ fail ArgumentError, "Missing the required parameter 'destination_input' when calling IntegrationsApi.test_destination"
408
+ end
409
+ # resource path
410
+ local_var_path = '/v1/destination/test'
411
+
412
+ # query parameters
413
+ query_params = opts[:query_params] || {}
414
+
415
+ # header parameters
416
+ header_params = opts[:header_params] || {}
417
+ # HTTP header 'Accept' (if needed)
418
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
419
+ # HTTP header 'Content-Type'
420
+ content_type = @api_client.select_header_content_type(['application/json'])
421
+ if !content_type.nil?
422
+ header_params['Content-Type'] = content_type
423
+ end
424
+
425
+ # form parameters
426
+ form_params = opts[:form_params] || {}
427
+
428
+ # http body (model)
429
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(destination_input)
430
+
431
+ # return_type
432
+ return_type = opts[:debug_return_type] || 'TestIntegration200Response'
433
+
434
+ # auth_names
435
+ auth_names = opts[:debug_auth_names] || ['BearerAuth']
436
+
437
+ new_options = opts.merge(
438
+ :operation => :"IntegrationsApi.test_destination",
439
+ :header_params => header_params,
440
+ :query_params => query_params,
441
+ :form_params => form_params,
442
+ :body => post_body,
443
+ :auth_names => auth_names,
444
+ :return_type => return_type
445
+ )
446
+
447
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
448
+ if @api_client.config.debugging
449
+ @api_client.config.logger.debug "API called: IntegrationsApi#test_destination\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
450
+ end
451
+ return data, status_code, headers
452
+ end
453
+
454
+ # Test a workspace integration
455
+ # @param id [String]
456
+ # @param [Hash] opts the optional parameters
457
+ # @return [TestIntegration200Response]
458
+ def test_integration(id, opts = {})
459
+ data, _status_code, _headers = test_integration_with_http_info(id, opts)
460
+ data
461
+ end
462
+
463
+ # Test a workspace integration
464
+ # @param id [String]
465
+ # @param [Hash] opts the optional parameters
466
+ # @return [Array<(TestIntegration200Response, Integer, Hash)>] TestIntegration200Response data, response status code and response headers
467
+ def test_integration_with_http_info(id, opts = {})
468
+ if @api_client.config.debugging
469
+ @api_client.config.logger.debug 'Calling API: IntegrationsApi.test_integration ...'
470
+ end
471
+ # verify the required parameter 'id' is set
472
+ if @api_client.config.client_side_validation && id.nil?
473
+ fail ArgumentError, "Missing the required parameter 'id' when calling IntegrationsApi.test_integration"
474
+ end
475
+ # resource path
476
+ local_var_path = '/v1/integrations/{id}/test'.sub('{id}', CGI.escape(id.to_s))
477
+
478
+ # query parameters
479
+ query_params = opts[:query_params] || {}
480
+
481
+ # header parameters
482
+ header_params = opts[:header_params] || {}
483
+ # HTTP header 'Accept' (if needed)
484
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
485
+
486
+ # form parameters
487
+ form_params = opts[:form_params] || {}
488
+
489
+ # http body (model)
490
+ post_body = opts[:debug_body]
491
+
492
+ # return_type
493
+ return_type = opts[:debug_return_type] || 'TestIntegration200Response'
494
+
495
+ # auth_names
496
+ auth_names = opts[:debug_auth_names] || ['BearerAuth']
497
+
498
+ new_options = opts.merge(
499
+ :operation => :"IntegrationsApi.test_integration",
500
+ :header_params => header_params,
501
+ :query_params => query_params,
502
+ :form_params => form_params,
503
+ :body => post_body,
504
+ :auth_names => auth_names,
505
+ :return_type => return_type
506
+ )
507
+
508
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
509
+ if @api_client.config.debugging
510
+ @api_client.config.logger.debug "API called: IntegrationsApi#test_integration\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
511
+ end
512
+ return data, status_code, headers
513
+ end
514
+
515
+ # Update a workspace integration
516
+ # @param id [String]
517
+ # @param workspace_integration_input [WorkspaceIntegrationInput]
518
+ # @param [Hash] opts the optional parameters
519
+ # @return [CreateIntegration201Response]
520
+ def update_integration(id, workspace_integration_input, opts = {})
521
+ data, _status_code, _headers = update_integration_with_http_info(id, workspace_integration_input, opts)
522
+ data
523
+ end
524
+
525
+ # Update a workspace integration
526
+ # @param id [String]
527
+ # @param workspace_integration_input [WorkspaceIntegrationInput]
528
+ # @param [Hash] opts the optional parameters
529
+ # @return [Array<(CreateIntegration201Response, Integer, Hash)>] CreateIntegration201Response data, response status code and response headers
530
+ def update_integration_with_http_info(id, workspace_integration_input, opts = {})
531
+ if @api_client.config.debugging
532
+ @api_client.config.logger.debug 'Calling API: IntegrationsApi.update_integration ...'
533
+ end
534
+ # verify the required parameter 'id' is set
535
+ if @api_client.config.client_side_validation && id.nil?
536
+ fail ArgumentError, "Missing the required parameter 'id' when calling IntegrationsApi.update_integration"
537
+ end
538
+ # verify the required parameter 'workspace_integration_input' is set
539
+ if @api_client.config.client_side_validation && workspace_integration_input.nil?
540
+ fail ArgumentError, "Missing the required parameter 'workspace_integration_input' when calling IntegrationsApi.update_integration"
541
+ end
542
+ # resource path
543
+ local_var_path = '/v1/integrations/{id}'.sub('{id}', CGI.escape(id.to_s))
544
+
545
+ # query parameters
546
+ query_params = opts[:query_params] || {}
547
+
548
+ # header parameters
549
+ header_params = opts[:header_params] || {}
550
+ # HTTP header 'Accept' (if needed)
551
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
552
+ # HTTP header 'Content-Type'
553
+ content_type = @api_client.select_header_content_type(['application/json'])
554
+ if !content_type.nil?
555
+ header_params['Content-Type'] = content_type
556
+ end
557
+
558
+ # form parameters
559
+ form_params = opts[:form_params] || {}
560
+
561
+ # http body (model)
562
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(workspace_integration_input)
563
+
564
+ # return_type
565
+ return_type = opts[:debug_return_type] || 'CreateIntegration201Response'
566
+
567
+ # auth_names
568
+ auth_names = opts[:debug_auth_names] || ['BearerAuth']
569
+
570
+ new_options = opts.merge(
571
+ :operation => :"IntegrationsApi.update_integration",
572
+ :header_params => header_params,
573
+ :query_params => query_params,
574
+ :form_params => form_params,
575
+ :body => post_body,
576
+ :auth_names => auth_names,
577
+ :return_type => return_type
578
+ )
579
+
580
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
581
+ if @api_client.config.debugging
582
+ @api_client.config.logger.debug "API called: IntegrationsApi#update_integration\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
583
+ end
584
+ return data, status_code, headers
585
+ end
586
+ end
587
+ end