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,656 @@
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 RenderApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Cancel a render job
23
+ # Cancels a render job that has not reached a terminal state.
24
+ # @param id [String]
25
+ # @param [Hash] opts the optional parameters
26
+ # @return [CancelRender200Response]
27
+ def cancel_render(id, opts = {})
28
+ data, _status_code, _headers = cancel_render_with_http_info(id, opts)
29
+ data
30
+ end
31
+
32
+ # Cancel a render job
33
+ # Cancels a render job that has not reached a terminal state.
34
+ # @param id [String]
35
+ # @param [Hash] opts the optional parameters
36
+ # @return [Array<(CancelRender200Response, Integer, Hash)>] CancelRender200Response data, response status code and response headers
37
+ def cancel_render_with_http_info(id, opts = {})
38
+ if @api_client.config.debugging
39
+ @api_client.config.logger.debug 'Calling API: RenderApi.cancel_render ...'
40
+ end
41
+ # verify the required parameter 'id' is set
42
+ if @api_client.config.client_side_validation && id.nil?
43
+ fail ArgumentError, "Missing the required parameter 'id' when calling RenderApi.cancel_render"
44
+ end
45
+ # resource path
46
+ local_var_path = '/v1/render/{id}/cancel'.sub('{id}', CGI.escape(id.to_s))
47
+
48
+ # query parameters
49
+ query_params = opts[:query_params] || {}
50
+
51
+ # header parameters
52
+ header_params = opts[:header_params] || {}
53
+ # HTTP header 'Accept' (if needed)
54
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
55
+
56
+ # form parameters
57
+ form_params = opts[:form_params] || {}
58
+
59
+ # http body (model)
60
+ post_body = opts[:debug_body]
61
+
62
+ # return_type
63
+ return_type = opts[:debug_return_type] || 'CancelRender200Response'
64
+
65
+ # auth_names
66
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
67
+
68
+ new_options = opts.merge(
69
+ :operation => :"RenderApi.cancel_render",
70
+ :header_params => header_params,
71
+ :query_params => query_params,
72
+ :form_params => form_params,
73
+ :body => post_body,
74
+ :auth_names => auth_names,
75
+ :return_type => return_type
76
+ )
77
+
78
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
79
+ if @api_client.config.debugging
80
+ @api_client.config.logger.debug "API called: RenderApi#cancel_render\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
81
+ end
82
+ return data, status_code, headers
83
+ end
84
+
85
+ # Download rendered video
86
+ # Redirects to the signed CDN URL for the completed render.
87
+ # @param id [String]
88
+ # @param [Hash] opts the optional parameters
89
+ # @return [nil]
90
+ def download_render(id, opts = {})
91
+ download_render_with_http_info(id, opts)
92
+ nil
93
+ end
94
+
95
+ # Download rendered video
96
+ # Redirects to the signed CDN URL for the completed render.
97
+ # @param id [String]
98
+ # @param [Hash] opts the optional parameters
99
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
100
+ def download_render_with_http_info(id, opts = {})
101
+ if @api_client.config.debugging
102
+ @api_client.config.logger.debug 'Calling API: RenderApi.download_render ...'
103
+ end
104
+ # verify the required parameter 'id' is set
105
+ if @api_client.config.client_side_validation && id.nil?
106
+ fail ArgumentError, "Missing the required parameter 'id' when calling RenderApi.download_render"
107
+ end
108
+ # resource path
109
+ local_var_path = '/v1/render/{id}/download'.sub('{id}', CGI.escape(id.to_s))
110
+
111
+ # query parameters
112
+ query_params = opts[:query_params] || {}
113
+
114
+ # header parameters
115
+ header_params = opts[:header_params] || {}
116
+ # HTTP header 'Accept' (if needed)
117
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
118
+
119
+ # form parameters
120
+ form_params = opts[:form_params] || {}
121
+
122
+ # http body (model)
123
+ post_body = opts[:debug_body]
124
+
125
+ # return_type
126
+ return_type = opts[:debug_return_type]
127
+
128
+ # auth_names
129
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
130
+
131
+ new_options = opts.merge(
132
+ :operation => :"RenderApi.download_render",
133
+ :header_params => header_params,
134
+ :query_params => query_params,
135
+ :form_params => form_params,
136
+ :body => post_body,
137
+ :auth_names => auth_names,
138
+ :return_type => return_type
139
+ )
140
+
141
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
142
+ if @api_client.config.debugging
143
+ @api_client.config.logger.debug "API called: RenderApi#download_render\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
144
+ end
145
+ return data, status_code, headers
146
+ end
147
+
148
+ # Estimate render cost
149
+ # @param estimate_render_cost_request [EstimateRenderCostRequest]
150
+ # @param [Hash] opts the optional parameters
151
+ # @return [RenderCostEstimate]
152
+ def estimate_render_cost(estimate_render_cost_request, opts = {})
153
+ data, _status_code, _headers = estimate_render_cost_with_http_info(estimate_render_cost_request, opts)
154
+ data
155
+ end
156
+
157
+ # Estimate render cost
158
+ # @param estimate_render_cost_request [EstimateRenderCostRequest]
159
+ # @param [Hash] opts the optional parameters
160
+ # @return [Array<(RenderCostEstimate, Integer, Hash)>] RenderCostEstimate data, response status code and response headers
161
+ def estimate_render_cost_with_http_info(estimate_render_cost_request, opts = {})
162
+ if @api_client.config.debugging
163
+ @api_client.config.logger.debug 'Calling API: RenderApi.estimate_render_cost ...'
164
+ end
165
+ # verify the required parameter 'estimate_render_cost_request' is set
166
+ if @api_client.config.client_side_validation && estimate_render_cost_request.nil?
167
+ fail ArgumentError, "Missing the required parameter 'estimate_render_cost_request' when calling RenderApi.estimate_render_cost"
168
+ end
169
+ # resource path
170
+ local_var_path = '/v1/render/cost'
171
+
172
+ # query parameters
173
+ query_params = opts[:query_params] || {}
174
+
175
+ # header parameters
176
+ header_params = opts[:header_params] || {}
177
+ # HTTP header 'Accept' (if needed)
178
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
179
+ # HTTP header 'Content-Type'
180
+ content_type = @api_client.select_header_content_type(['application/json'])
181
+ if !content_type.nil?
182
+ header_params['Content-Type'] = content_type
183
+ end
184
+
185
+ # form parameters
186
+ form_params = opts[:form_params] || {}
187
+
188
+ # http body (model)
189
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(estimate_render_cost_request)
190
+
191
+ # return_type
192
+ return_type = opts[:debug_return_type] || 'RenderCostEstimate'
193
+
194
+ # auth_names
195
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
196
+
197
+ new_options = opts.merge(
198
+ :operation => :"RenderApi.estimate_render_cost",
199
+ :header_params => header_params,
200
+ :query_params => query_params,
201
+ :form_params => form_params,
202
+ :body => post_body,
203
+ :auth_names => auth_names,
204
+ :return_type => return_type
205
+ )
206
+
207
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
208
+ if @api_client.config.debugging
209
+ @api_client.config.logger.debug "API called: RenderApi#estimate_render_cost\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
210
+ end
211
+ return data, status_code, headers
212
+ end
213
+
214
+ # Get rendered video download URL
215
+ # @param id [String]
216
+ # @param [Hash] opts the optional parameters
217
+ # @return [GetRenderDownloadUrl200Response]
218
+ def get_render_download_url(id, opts = {})
219
+ data, _status_code, _headers = get_render_download_url_with_http_info(id, opts)
220
+ data
221
+ end
222
+
223
+ # Get rendered video download URL
224
+ # @param id [String]
225
+ # @param [Hash] opts the optional parameters
226
+ # @return [Array<(GetRenderDownloadUrl200Response, Integer, Hash)>] GetRenderDownloadUrl200Response data, response status code and response headers
227
+ def get_render_download_url_with_http_info(id, opts = {})
228
+ if @api_client.config.debugging
229
+ @api_client.config.logger.debug 'Calling API: RenderApi.get_render_download_url ...'
230
+ end
231
+ # verify the required parameter 'id' is set
232
+ if @api_client.config.client_side_validation && id.nil?
233
+ fail ArgumentError, "Missing the required parameter 'id' when calling RenderApi.get_render_download_url"
234
+ end
235
+ # resource path
236
+ local_var_path = '/v1/render/{id}/download-url'.sub('{id}', CGI.escape(id.to_s))
237
+
238
+ # query parameters
239
+ query_params = opts[:query_params] || {}
240
+
241
+ # header parameters
242
+ header_params = opts[:header_params] || {}
243
+ # HTTP header 'Accept' (if needed)
244
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
245
+
246
+ # form parameters
247
+ form_params = opts[:form_params] || {}
248
+
249
+ # http body (model)
250
+ post_body = opts[:debug_body]
251
+
252
+ # return_type
253
+ return_type = opts[:debug_return_type] || 'GetRenderDownloadUrl200Response'
254
+
255
+ # auth_names
256
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
257
+
258
+ new_options = opts.merge(
259
+ :operation => :"RenderApi.get_render_download_url",
260
+ :header_params => header_params,
261
+ :query_params => query_params,
262
+ :form_params => form_params,
263
+ :body => post_body,
264
+ :auth_names => auth_names,
265
+ :return_type => return_type
266
+ )
267
+
268
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
269
+ if @api_client.config.debugging
270
+ @api_client.config.logger.debug "API called: RenderApi#get_render_download_url\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
271
+ end
272
+ return data, status_code, headers
273
+ end
274
+
275
+ # Get render job status
276
+ # @param id [String]
277
+ # @param [Hash] opts the optional parameters
278
+ # @return [RenderJob]
279
+ def get_render_status(id, opts = {})
280
+ data, _status_code, _headers = get_render_status_with_http_info(id, opts)
281
+ data
282
+ end
283
+
284
+ # Get render job status
285
+ # @param id [String]
286
+ # @param [Hash] opts the optional parameters
287
+ # @return [Array<(RenderJob, Integer, Hash)>] RenderJob data, response status code and response headers
288
+ def get_render_status_with_http_info(id, opts = {})
289
+ if @api_client.config.debugging
290
+ @api_client.config.logger.debug 'Calling API: RenderApi.get_render_status ...'
291
+ end
292
+ # verify the required parameter 'id' is set
293
+ if @api_client.config.client_side_validation && id.nil?
294
+ fail ArgumentError, "Missing the required parameter 'id' when calling RenderApi.get_render_status"
295
+ end
296
+ # resource path
297
+ local_var_path = '/v1/render/{id}'.sub('{id}', CGI.escape(id.to_s))
298
+
299
+ # query parameters
300
+ query_params = opts[:query_params] || {}
301
+
302
+ # header parameters
303
+ header_params = opts[:header_params] || {}
304
+ # HTTP header 'Accept' (if needed)
305
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
306
+
307
+ # form parameters
308
+ form_params = opts[:form_params] || {}
309
+
310
+ # http body (model)
311
+ post_body = opts[:debug_body]
312
+
313
+ # return_type
314
+ return_type = opts[:debug_return_type] || 'RenderJob'
315
+
316
+ # auth_names
317
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
318
+
319
+ new_options = opts.merge(
320
+ :operation => :"RenderApi.get_render_status",
321
+ :header_params => header_params,
322
+ :query_params => query_params,
323
+ :form_params => form_params,
324
+ :body => post_body,
325
+ :auth_names => auth_names,
326
+ :return_type => return_type
327
+ )
328
+
329
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
330
+ if @api_client.config.debugging
331
+ @api_client.config.logger.debug "API called: RenderApi#get_render_status\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
332
+ end
333
+ return data, status_code, headers
334
+ end
335
+
336
+ # Get workspace render tier
337
+ # @param [Hash] opts the optional parameters
338
+ # @return [TierInfo]
339
+ def get_render_tier(opts = {})
340
+ data, _status_code, _headers = get_render_tier_with_http_info(opts)
341
+ data
342
+ end
343
+
344
+ # Get workspace render tier
345
+ # @param [Hash] opts the optional parameters
346
+ # @return [Array<(TierInfo, Integer, Hash)>] TierInfo data, response status code and response headers
347
+ def get_render_tier_with_http_info(opts = {})
348
+ if @api_client.config.debugging
349
+ @api_client.config.logger.debug 'Calling API: RenderApi.get_render_tier ...'
350
+ end
351
+ # resource path
352
+ local_var_path = '/v1/render/tier'
353
+
354
+ # query parameters
355
+ query_params = opts[:query_params] || {}
356
+
357
+ # header parameters
358
+ header_params = opts[:header_params] || {}
359
+ # HTTP header 'Accept' (if needed)
360
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
361
+
362
+ # form parameters
363
+ form_params = opts[:form_params] || {}
364
+
365
+ # http body (model)
366
+ post_body = opts[:debug_body]
367
+
368
+ # return_type
369
+ return_type = opts[:debug_return_type] || 'TierInfo'
370
+
371
+ # auth_names
372
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
373
+
374
+ new_options = opts.merge(
375
+ :operation => :"RenderApi.get_render_tier",
376
+ :header_params => header_params,
377
+ :query_params => query_params,
378
+ :form_params => form_params,
379
+ :body => post_body,
380
+ :auth_names => auth_names,
381
+ :return_type => return_type
382
+ )
383
+
384
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
385
+ if @api_client.config.debugging
386
+ @api_client.config.logger.debug "API called: RenderApi#get_render_tier\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
387
+ end
388
+ return data, status_code, headers
389
+ end
390
+
391
+ # List recent renders
392
+ # @param [Hash] opts the optional parameters
393
+ # @option opts [Integer] :limit (default to 10)
394
+ # @return [Array<RenderListItem>]
395
+ def list_renders(opts = {})
396
+ data, _status_code, _headers = list_renders_with_http_info(opts)
397
+ data
398
+ end
399
+
400
+ # List recent renders
401
+ # @param [Hash] opts the optional parameters
402
+ # @option opts [Integer] :limit (default to 10)
403
+ # @return [Array<(Array<RenderListItem>, Integer, Hash)>] Array<RenderListItem> data, response status code and response headers
404
+ def list_renders_with_http_info(opts = {})
405
+ if @api_client.config.debugging
406
+ @api_client.config.logger.debug 'Calling API: RenderApi.list_renders ...'
407
+ end
408
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 50
409
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling RenderApi.list_renders, must be smaller than or equal to 50.'
410
+ end
411
+
412
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] < 1
413
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling RenderApi.list_renders, must be greater than or equal to 1.'
414
+ end
415
+
416
+ # resource path
417
+ local_var_path = '/v1/render'
418
+
419
+ # query parameters
420
+ query_params = opts[:query_params] || {}
421
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
422
+
423
+ # header parameters
424
+ header_params = opts[:header_params] || {}
425
+ # HTTP header 'Accept' (if needed)
426
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
427
+
428
+ # form parameters
429
+ form_params = opts[:form_params] || {}
430
+
431
+ # http body (model)
432
+ post_body = opts[:debug_body]
433
+
434
+ # return_type
435
+ return_type = opts[:debug_return_type] || 'Array<RenderListItem>'
436
+
437
+ # auth_names
438
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
439
+
440
+ new_options = opts.merge(
441
+ :operation => :"RenderApi.list_renders",
442
+ :header_params => header_params,
443
+ :query_params => query_params,
444
+ :form_params => form_params,
445
+ :body => post_body,
446
+ :auth_names => auth_names,
447
+ :return_type => return_type
448
+ )
449
+
450
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
451
+ if @api_client.config.debugging
452
+ @api_client.config.logger.debug "API called: RenderApi#list_renders\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
453
+ end
454
+ return data, status_code, headers
455
+ end
456
+
457
+ # Queue a render job
458
+ # Submit a `VideoJSON` payload to be rendered to MP4.
459
+ # @param queue_render_request [QueueRenderRequest]
460
+ # @param [Hash] opts the optional parameters
461
+ # @option opts [String] :idempotency_key Optional idempotency key (max 128 chars, 24h replay window).
462
+ # @return [QueueRender200Response]
463
+ def queue_render(queue_render_request, opts = {})
464
+ data, _status_code, _headers = queue_render_with_http_info(queue_render_request, opts)
465
+ data
466
+ end
467
+
468
+ # Queue a render job
469
+ # Submit a &#x60;VideoJSON&#x60; payload to be rendered to MP4.
470
+ # @param queue_render_request [QueueRenderRequest]
471
+ # @param [Hash] opts the optional parameters
472
+ # @option opts [String] :idempotency_key Optional idempotency key (max 128 chars, 24h replay window).
473
+ # @return [Array<(QueueRender200Response, Integer, Hash)>] QueueRender200Response data, response status code and response headers
474
+ def queue_render_with_http_info(queue_render_request, opts = {})
475
+ if @api_client.config.debugging
476
+ @api_client.config.logger.debug 'Calling API: RenderApi.queue_render ...'
477
+ end
478
+ # verify the required parameter 'queue_render_request' is set
479
+ if @api_client.config.client_side_validation && queue_render_request.nil?
480
+ fail ArgumentError, "Missing the required parameter 'queue_render_request' when calling RenderApi.queue_render"
481
+ end
482
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 128
483
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling RenderApi.queue_render, the character length must be smaller than or equal to 128.'
484
+ end
485
+
486
+ # resource path
487
+ local_var_path = '/v1/render'
488
+
489
+ # query parameters
490
+ query_params = opts[:query_params] || {}
491
+
492
+ # header parameters
493
+ header_params = opts[:header_params] || {}
494
+ # HTTP header 'Accept' (if needed)
495
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
496
+ # HTTP header 'Content-Type'
497
+ content_type = @api_client.select_header_content_type(['application/json'])
498
+ if !content_type.nil?
499
+ header_params['Content-Type'] = content_type
500
+ end
501
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
502
+
503
+ # form parameters
504
+ form_params = opts[:form_params] || {}
505
+
506
+ # http body (model)
507
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(queue_render_request)
508
+
509
+ # return_type
510
+ return_type = opts[:debug_return_type] || 'QueueRender200Response'
511
+
512
+ # auth_names
513
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
514
+
515
+ new_options = opts.merge(
516
+ :operation => :"RenderApi.queue_render",
517
+ :header_params => header_params,
518
+ :query_params => query_params,
519
+ :form_params => form_params,
520
+ :body => post_body,
521
+ :auth_names => auth_names,
522
+ :return_type => return_type
523
+ )
524
+
525
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
526
+ if @api_client.config.debugging
527
+ @api_client.config.logger.debug "API called: RenderApi#queue_render\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
528
+ end
529
+ return data, status_code, headers
530
+ end
531
+
532
+ # Refresh signed download URL
533
+ # @param id [String]
534
+ # @param [Hash] opts the optional parameters
535
+ # @return [RefreshRenderUrl200Response]
536
+ def refresh_render_url(id, opts = {})
537
+ data, _status_code, _headers = refresh_render_url_with_http_info(id, opts)
538
+ data
539
+ end
540
+
541
+ # Refresh signed download URL
542
+ # @param id [String]
543
+ # @param [Hash] opts the optional parameters
544
+ # @return [Array<(RefreshRenderUrl200Response, Integer, Hash)>] RefreshRenderUrl200Response data, response status code and response headers
545
+ def refresh_render_url_with_http_info(id, opts = {})
546
+ if @api_client.config.debugging
547
+ @api_client.config.logger.debug 'Calling API: RenderApi.refresh_render_url ...'
548
+ end
549
+ # verify the required parameter 'id' is set
550
+ if @api_client.config.client_side_validation && id.nil?
551
+ fail ArgumentError, "Missing the required parameter 'id' when calling RenderApi.refresh_render_url"
552
+ end
553
+ # resource path
554
+ local_var_path = '/v1/render/{id}/refresh-url'.sub('{id}', CGI.escape(id.to_s))
555
+
556
+ # query parameters
557
+ query_params = opts[:query_params] || {}
558
+
559
+ # header parameters
560
+ header_params = opts[:header_params] || {}
561
+ # HTTP header 'Accept' (if needed)
562
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
563
+
564
+ # form parameters
565
+ form_params = opts[:form_params] || {}
566
+
567
+ # http body (model)
568
+ post_body = opts[:debug_body]
569
+
570
+ # return_type
571
+ return_type = opts[:debug_return_type] || 'RefreshRenderUrl200Response'
572
+
573
+ # auth_names
574
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
575
+
576
+ new_options = opts.merge(
577
+ :operation => :"RenderApi.refresh_render_url",
578
+ :header_params => header_params,
579
+ :query_params => query_params,
580
+ :form_params => form_params,
581
+ :body => post_body,
582
+ :auth_names => auth_names,
583
+ :return_type => return_type
584
+ )
585
+
586
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
587
+ if @api_client.config.debugging
588
+ @api_client.config.logger.debug "API called: RenderApi#refresh_render_url\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
589
+ end
590
+ return data, status_code, headers
591
+ end
592
+
593
+ # Track render download bandwidth
594
+ # Records bandwidth usage for renders streamed directly from the CDN.
595
+ # @param id [String]
596
+ # @param [Hash] opts the optional parameters
597
+ # @return [TrackRenderBandwidth200Response]
598
+ def track_render_bandwidth(id, opts = {})
599
+ data, _status_code, _headers = track_render_bandwidth_with_http_info(id, opts)
600
+ data
601
+ end
602
+
603
+ # Track render download bandwidth
604
+ # Records bandwidth usage for renders streamed directly from the CDN.
605
+ # @param id [String]
606
+ # @param [Hash] opts the optional parameters
607
+ # @return [Array<(TrackRenderBandwidth200Response, Integer, Hash)>] TrackRenderBandwidth200Response data, response status code and response headers
608
+ def track_render_bandwidth_with_http_info(id, opts = {})
609
+ if @api_client.config.debugging
610
+ @api_client.config.logger.debug 'Calling API: RenderApi.track_render_bandwidth ...'
611
+ end
612
+ # verify the required parameter 'id' is set
613
+ if @api_client.config.client_side_validation && id.nil?
614
+ fail ArgumentError, "Missing the required parameter 'id' when calling RenderApi.track_render_bandwidth"
615
+ end
616
+ # resource path
617
+ local_var_path = '/v1/render/{id}/track-bandwidth'.sub('{id}', CGI.escape(id.to_s))
618
+
619
+ # query parameters
620
+ query_params = opts[:query_params] || {}
621
+
622
+ # header parameters
623
+ header_params = opts[:header_params] || {}
624
+ # HTTP header 'Accept' (if needed)
625
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
626
+
627
+ # form parameters
628
+ form_params = opts[:form_params] || {}
629
+
630
+ # http body (model)
631
+ post_body = opts[:debug_body]
632
+
633
+ # return_type
634
+ return_type = opts[:debug_return_type] || 'TrackRenderBandwidth200Response'
635
+
636
+ # auth_names
637
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
638
+
639
+ new_options = opts.merge(
640
+ :operation => :"RenderApi.track_render_bandwidth",
641
+ :header_params => header_params,
642
+ :query_params => query_params,
643
+ :form_params => form_params,
644
+ :body => post_body,
645
+ :auth_names => auth_names,
646
+ :return_type => return_type
647
+ )
648
+
649
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
650
+ if @api_client.config.debugging
651
+ @api_client.config.logger.debug "API called: RenderApi#track_render_bandwidth\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
652
+ end
653
+ return data, status_code, headers
654
+ end
655
+ end
656
+ end