mux_ruby 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (224) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +8 -0
  3. data/Gemfile.lock +79 -0
  4. data/LICENSE +7 -0
  5. data/README.md +121 -0
  6. data/Rakefile +10 -0
  7. data/docs/AbridgedVideoView.md +18 -0
  8. data/docs/Asset.md +27 -0
  9. data/docs/AssetErrors.md +9 -0
  10. data/docs/AssetMaster.md +9 -0
  11. data/docs/AssetResponse.md +8 -0
  12. data/docs/AssetStaticRenditions.md +9 -0
  13. data/docs/AssetStaticRenditionsFiles.md +13 -0
  14. data/docs/AssetsApi.md +476 -0
  15. data/docs/BreakdownValue.md +12 -0
  16. data/docs/CreateAssetRequest.md +13 -0
  17. data/docs/CreateLiveStreamRequest.md +9 -0
  18. data/docs/CreatePlaybackIDRequest.md +8 -0
  19. data/docs/CreatePlaybackIDResponse.md +8 -0
  20. data/docs/CreateUploadRequest.md +10 -0
  21. data/docs/DirectUploadsApi.md +214 -0
  22. data/docs/Error.md +15 -0
  23. data/docs/ErrorsApi.md +64 -0
  24. data/docs/ExportsApi.md +56 -0
  25. data/docs/FilterValue.md +9 -0
  26. data/docs/FiltersApi.md +118 -0
  27. data/docs/GetAssetInputInfoResponse.md +8 -0
  28. data/docs/GetAssetPlaybackIDResponse.md +8 -0
  29. data/docs/GetMetricTimeseriesDataResponse.md +10 -0
  30. data/docs/GetOverallValuesResponse.md +10 -0
  31. data/docs/InputFile.md +9 -0
  32. data/docs/InputInfo.md +9 -0
  33. data/docs/InputSettings.md +10 -0
  34. data/docs/InputSettingsOverlaySettings.md +14 -0
  35. data/docs/InputTrack.md +18 -0
  36. data/docs/Insight.md +13 -0
  37. data/docs/ListAllMetricValuesResponse.md +10 -0
  38. data/docs/ListAssetsResponse.md +8 -0
  39. data/docs/ListBreakdownValuesResponse.md +10 -0
  40. data/docs/ListErrorsResponse.md +10 -0
  41. data/docs/ListExportsResponse.md +10 -0
  42. data/docs/ListFilterValuesResponse.md +10 -0
  43. data/docs/ListFiltersResponse.md +10 -0
  44. data/docs/ListFiltersResponseData.md +9 -0
  45. data/docs/ListInsightsResponse.md +10 -0
  46. data/docs/ListLiveStreamsResponse.md +8 -0
  47. data/docs/ListSigningKeysResponse.md +8 -0
  48. data/docs/ListUploadsResponse.md +8 -0
  49. data/docs/ListVideoViewsResponse.md +10 -0
  50. data/docs/LiveStream.md +17 -0
  51. data/docs/LiveStreamResponse.md +8 -0
  52. data/docs/LiveStreamsApi.md +420 -0
  53. data/docs/Metric.md +12 -0
  54. data/docs/MetricsApi.md +322 -0
  55. data/docs/OverallValues.md +11 -0
  56. data/docs/PlaybackID.md +9 -0
  57. data/docs/PlaybackPolicy.md +7 -0
  58. data/docs/Score.md +13 -0
  59. data/docs/SignalLiveStreamCompleteResponse.md +8 -0
  60. data/docs/SigningKey.md +10 -0
  61. data/docs/SigningKeyResponse.md +8 -0
  62. data/docs/Track.md +17 -0
  63. data/docs/URLSigningKeysApi.md +215 -0
  64. data/docs/UpdateAssetMP4SupportRequest.md +8 -0
  65. data/docs/Upload.md +15 -0
  66. data/docs/UploadError.md +9 -0
  67. data/docs/UploadResponse.md +8 -0
  68. data/docs/VideoView.md +117 -0
  69. data/docs/VideoViewEvent.md +11 -0
  70. data/docs/VideoViewResponse.md +9 -0
  71. data/docs/VideoViewsApi.md +126 -0
  72. data/examples/data/exercise-errors.rb +23 -0
  73. data/examples/data/exercise-exports.rb +22 -0
  74. data/examples/data/exercise-filters.rb +29 -0
  75. data/examples/data/exercise-metrics.rb +52 -0
  76. data/examples/data/exercise-video-views.rb +30 -0
  77. data/examples/video/create-live-stream.rb +25 -0
  78. data/examples/video/exercise-assets.rb +95 -0
  79. data/examples/video/exercise-live-streams.rb +89 -0
  80. data/examples/video/exercise-signing-keys.rb +46 -0
  81. data/examples/video/exercise-uploads.rb +49 -0
  82. data/examples/video/ingest.rb +37 -0
  83. data/examples/video/list-everything.rb +48 -0
  84. data/github-ruby-sdk.png +0 -0
  85. data/lib/mux_ruby/api/assets_api.rb +507 -0
  86. data/lib/mux_ruby/api/direct_uploads_api.rb +224 -0
  87. data/lib/mux_ruby/api/errors_api.rb +69 -0
  88. data/lib/mux_ruby/api/exports_api.rb +63 -0
  89. data/lib/mux_ruby/api/filters_api.rb +128 -0
  90. data/lib/mux_ruby/api/live_streams_api.rb +440 -0
  91. data/lib/mux_ruby/api/metrics_api.rb +393 -0
  92. data/lib/mux_ruby/api/url_signing_keys_api.rb +219 -0
  93. data/lib/mux_ruby/api/video_views_api.rb +140 -0
  94. data/lib/mux_ruby/api_client.rb +400 -0
  95. data/lib/mux_ruby/api_error.rb +44 -0
  96. data/lib/mux_ruby/configuration.rb +244 -0
  97. data/lib/mux_ruby/models/abridged_video_view.rb +274 -0
  98. data/lib/mux_ruby/models/asset.rb +409 -0
  99. data/lib/mux_ruby/models/asset_errors.rb +195 -0
  100. data/lib/mux_ruby/models/asset_master.rb +193 -0
  101. data/lib/mux_ruby/models/asset_response.rb +184 -0
  102. data/lib/mux_ruby/models/asset_static_renditions.rb +232 -0
  103. data/lib/mux_ruby/models/asset_static_renditions_files.rb +279 -0
  104. data/lib/mux_ruby/models/breakdown_value.rb +220 -0
  105. data/lib/mux_ruby/models/create_asset_request.rb +267 -0
  106. data/lib/mux_ruby/models/create_live_stream_request.rb +195 -0
  107. data/lib/mux_ruby/models/create_playback_id_request.rb +184 -0
  108. data/lib/mux_ruby/models/create_playback_id_response.rb +184 -0
  109. data/lib/mux_ruby/models/create_upload_request.rb +235 -0
  110. data/lib/mux_ruby/models/error.rb +247 -0
  111. data/lib/mux_ruby/models/filter_value.rb +193 -0
  112. data/lib/mux_ruby/models/get_asset_input_info_response.rb +186 -0
  113. data/lib/mux_ruby/models/get_asset_playback_id_response.rb +184 -0
  114. data/lib/mux_ruby/models/get_metric_timeseries_data_response.rb +206 -0
  115. data/lib/mux_ruby/models/get_overall_values_response.rb +204 -0
  116. data/lib/mux_ruby/models/input_file.rb +195 -0
  117. data/lib/mux_ruby/models/input_info.rb +193 -0
  118. data/lib/mux_ruby/models/input_settings.rb +203 -0
  119. data/lib/mux_ruby/models/input_settings_overlay_settings.rb +238 -0
  120. data/lib/mux_ruby/models/input_track.rb +274 -0
  121. data/lib/mux_ruby/models/insight.rb +229 -0
  122. data/lib/mux_ruby/models/list_all_metric_values_response.rb +206 -0
  123. data/lib/mux_ruby/models/list_assets_response.rb +186 -0
  124. data/lib/mux_ruby/models/list_breakdown_values_response.rb +206 -0
  125. data/lib/mux_ruby/models/list_errors_response.rb +206 -0
  126. data/lib/mux_ruby/models/list_exports_response.rb +206 -0
  127. data/lib/mux_ruby/models/list_filter_values_response.rb +206 -0
  128. data/lib/mux_ruby/models/list_filters_response.rb +204 -0
  129. data/lib/mux_ruby/models/list_filters_response_data.rb +197 -0
  130. data/lib/mux_ruby/models/list_insights_response.rb +206 -0
  131. data/lib/mux_ruby/models/list_live_streams_response.rb +186 -0
  132. data/lib/mux_ruby/models/list_signing_keys_response.rb +186 -0
  133. data/lib/mux_ruby/models/list_uploads_response.rb +186 -0
  134. data/lib/mux_ruby/models/list_video_views_response.rb +206 -0
  135. data/lib/mux_ruby/models/live_stream.rb +269 -0
  136. data/lib/mux_ruby/models/live_stream_response.rb +184 -0
  137. data/lib/mux_ruby/models/metric.rb +220 -0
  138. data/lib/mux_ruby/models/overall_values.rb +211 -0
  139. data/lib/mux_ruby/models/playback_id.rb +193 -0
  140. data/lib/mux_ruby/models/playback_policy.rb +31 -0
  141. data/lib/mux_ruby/models/score.rb +231 -0
  142. data/lib/mux_ruby/models/signal_live_stream_complete_response.rb +184 -0
  143. data/lib/mux_ruby/models/signing_key.rb +202 -0
  144. data/lib/mux_ruby/models/signing_key_response.rb +184 -0
  145. data/lib/mux_ruby/models/track.rb +265 -0
  146. data/lib/mux_ruby/models/update_asset_mp4_support_request.rb +219 -0
  147. data/lib/mux_ruby/models/upload.rb +311 -0
  148. data/lib/mux_ruby/models/upload_error.rb +194 -0
  149. data/lib/mux_ruby/models/upload_response.rb +184 -0
  150. data/lib/mux_ruby/models/video_view.rb +1167 -0
  151. data/lib/mux_ruby/models/video_view_event.rb +211 -0
  152. data/lib/mux_ruby/models/video_view_response.rb +195 -0
  153. data/lib/mux_ruby/version.rb +8 -0
  154. data/lib/mux_ruby.rb +97 -0
  155. data/mux_ruby.gemspec +38 -0
  156. data/spec/api/assets_api_spec.rb +136 -0
  157. data/spec/api/direct_uploads_api_spec.rb +74 -0
  158. data/spec/api/errors_api_spec.rb +41 -0
  159. data/spec/api/exports_api_spec.rb +39 -0
  160. data/spec/api/filters_api_spec.rb +55 -0
  161. data/spec/api/live_streams_api_spec.rb +122 -0
  162. data/spec/api/metrics_api_spec.rb +110 -0
  163. data/spec/api/url_signing_keys_api_spec.rb +76 -0
  164. data/spec/api/video_views_api_spec.rb +58 -0
  165. data/spec/api_client_spec.rb +219 -0
  166. data/spec/configuration_spec.rb +35 -0
  167. data/spec/models/abridged_video_view_spec.rb +94 -0
  168. data/spec/models/asset_errors_spec.rb +40 -0
  169. data/spec/models/asset_master_spec.rb +40 -0
  170. data/spec/models/asset_response_spec.rb +34 -0
  171. data/spec/models/asset_spec.rb +156 -0
  172. data/spec/models/asset_static_renditions_files_spec.rb +72 -0
  173. data/spec/models/asset_static_renditions_spec.rb +44 -0
  174. data/spec/models/breakdown_value_spec.rb +58 -0
  175. data/spec/models/create_asset_request_spec.rb +68 -0
  176. data/spec/models/create_live_stream_request_spec.rb +40 -0
  177. data/spec/models/create_playback_id_request_spec.rb +34 -0
  178. data/spec/models/create_playback_id_response_spec.rb +34 -0
  179. data/spec/models/create_upload_request_spec.rb +46 -0
  180. data/spec/models/error_spec.rb +76 -0
  181. data/spec/models/filter_value_spec.rb +40 -0
  182. data/spec/models/get_asset_input_info_response_spec.rb +34 -0
  183. data/spec/models/get_asset_playback_id_response_spec.rb +34 -0
  184. data/spec/models/get_metric_timeseries_data_response_spec.rb +46 -0
  185. data/spec/models/get_overall_values_response_spec.rb +46 -0
  186. data/spec/models/input_file_spec.rb +40 -0
  187. data/spec/models/input_info_spec.rb +40 -0
  188. data/spec/models/input_settings_overlay_settings_spec.rb +70 -0
  189. data/spec/models/input_settings_spec.rb +46 -0
  190. data/spec/models/input_track_spec.rb +94 -0
  191. data/spec/models/insight_spec.rb +64 -0
  192. data/spec/models/list_all_metric_values_response_spec.rb +46 -0
  193. data/spec/models/list_assets_response_spec.rb +34 -0
  194. data/spec/models/list_breakdown_values_response_spec.rb +46 -0
  195. data/spec/models/list_errors_response_spec.rb +46 -0
  196. data/spec/models/list_exports_response_spec.rb +46 -0
  197. data/spec/models/list_filter_values_response_spec.rb +46 -0
  198. data/spec/models/list_filters_response_data_spec.rb +40 -0
  199. data/spec/models/list_filters_response_spec.rb +46 -0
  200. data/spec/models/list_insights_response_spec.rb +46 -0
  201. data/spec/models/list_live_streams_response_spec.rb +34 -0
  202. data/spec/models/list_signing_keys_response_spec.rb +34 -0
  203. data/spec/models/list_uploads_response_spec.rb +34 -0
  204. data/spec/models/list_video_views_response_spec.rb +46 -0
  205. data/spec/models/live_stream_response_spec.rb +34 -0
  206. data/spec/models/live_stream_spec.rb +88 -0
  207. data/spec/models/metric_spec.rb +58 -0
  208. data/spec/models/overall_values_spec.rb +52 -0
  209. data/spec/models/playback_id_spec.rb +40 -0
  210. data/spec/models/playback_policy_spec.rb +28 -0
  211. data/spec/models/score_spec.rb +64 -0
  212. data/spec/models/signal_live_stream_complete_response_spec.rb +34 -0
  213. data/spec/models/signing_key_response_spec.rb +34 -0
  214. data/spec/models/signing_key_spec.rb +46 -0
  215. data/spec/models/track_spec.rb +88 -0
  216. data/spec/models/update_asset_mp4_support_request_spec.rb +38 -0
  217. data/spec/models/upload_error_spec.rb +40 -0
  218. data/spec/models/upload_response_spec.rb +34 -0
  219. data/spec/models/upload_spec.rb +80 -0
  220. data/spec/models/video_view_event_spec.rb +52 -0
  221. data/spec/models/video_view_response_spec.rb +40 -0
  222. data/spec/models/video_view_spec.rb +688 -0
  223. data/spec/spec_helper.rb +104 -0
  224. metadata +514 -0
@@ -0,0 +1,49 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'mux_ruby'
4
+ require 'solid_assert'
5
+
6
+ SolidAssert.enable_assertions
7
+
8
+ # Authentication Setup
9
+ openapi = MuxRuby.configure do |config|
10
+ config.username = ENV['MUX_TOKEN_ID']
11
+ config.password = ENV['MUX_TOKEN_SECRET']
12
+ end
13
+
14
+ # API Client Initialization
15
+ uploads_api = MuxRuby::DirectUploadsApi.new
16
+
17
+ # ========== create-direct-upload ==========
18
+ create_asset_request = MuxRuby::CreateAssetRequest.new
19
+ create_asset_request.playback_policy = [MuxRuby::PlaybackPolicy::PUBLIC]
20
+ create_upload_request = MuxRuby::CreateUploadRequest.new
21
+ create_upload_request.new_asset_settings = create_asset_request
22
+ create_upload_request.timeout = 3600
23
+ create_upload_request.cors_origin = "philcluff.co.uk"
24
+ upload = uploads_api.create_direct_upload(create_upload_request)
25
+ assert upload != nil
26
+ assert upload.data != nil
27
+ assert upload.data.id != nil
28
+ puts "create-direct-upload OK ✅"
29
+
30
+ # ========== list-direct-uploads ==========
31
+ uploads = uploads_api.list_direct_uploads()
32
+ assert uploads.data != nil
33
+ assert uploads.data.first.id == upload.data.id
34
+ puts "list-direct-uploads OK ✅"
35
+
36
+ # ========== get-direct-upload ==========
37
+ upload_get = uploads_api.get_direct_upload(upload.data.id)
38
+ assert upload_get != nil
39
+ assert upload_get.data != nil
40
+ assert upload_get.data.id == upload.data.id
41
+ puts "get-direct-upload OK ✅"
42
+
43
+ # ========== cancel-direct-upload ==========
44
+ cancelled_upload = uploads_api.cancel_direct_upload(upload.data.id)
45
+ assert cancelled_upload != nil
46
+ assert cancelled_upload.data != nil
47
+ assert cancelled_upload.data.id == upload.data.id
48
+ assert cancelled_upload.data.status == "cancelled"
49
+ puts "cancel-direct-upload OK ✅"
@@ -0,0 +1,37 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'mux_ruby'
4
+ require 'solid_assert'
5
+
6
+ SolidAssert.enable_assertions
7
+
8
+ # Authentication Setup
9
+ openapi = MuxRuby.configure do |config|
10
+ config.username = ENV['MUX_TOKEN_ID']
11
+ config.password = ENV['MUX_TOKEN_SECRET']
12
+ end
13
+
14
+ # API Client Initialization
15
+ assets_api = MuxRuby::AssetsApi.new
16
+
17
+ # Create an Asset
18
+ car = MuxRuby::CreateAssetRequest.new
19
+ car.input = 'https://storage.googleapis.com/muxdemofiles/mux-video-intro.mp4'
20
+ car.playback_policy = [MuxRuby::PlaybackPolicy::PUBLIC]
21
+ create_response = assets_api.create_asset(car)
22
+ puts "Created Asset ID: #{create_response.data.id}"
23
+
24
+ # Wait for the asset to become ready, then print its URL
25
+ if create_response.data.status != 'ready'
26
+ puts "Waiting for asset to become ready..."
27
+ while true do
28
+ asset = assets_api.get_asset(create_response.data.id)
29
+ if asset.data.status != 'ready'
30
+ puts "Asset not ready yet, sleeping..."
31
+ sleep(1)
32
+ else
33
+ puts "Asset ready! Playback URL: https://stream.mux.com/#{create_response.data.playback_ids.first.id}.m3u8"
34
+ break
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,48 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'mux_ruby'
4
+
5
+ # Auth Setup
6
+ openapi = MuxRuby.configure do |config|
7
+ config.username = ENV['MUX_TOKEN_ID']
8
+ config.password = ENV['MUX_TOKEN_SECRET']
9
+ end
10
+
11
+ # API Client Init
12
+ assets_api = MuxRuby::AssetsApi.new
13
+ uploads_api = MuxRuby::DirectUploadsApi.new
14
+ live_api = MuxRuby::LiveStreamsApi.new
15
+ keys_api = MuxRuby::URLSigningKeysApi.new
16
+
17
+ # List Assets
18
+ puts "Listing Assets:\n\n"
19
+ assets = assets_api.list_assets()
20
+ assets.data.each do | asset |
21
+ puts "Asset ID: #{asset.id}"
22
+ puts "Status: #{asset.status}"
23
+ puts "Duration: #{asset.duration.to_s}\n\n"
24
+ end
25
+
26
+ # List Live Streams
27
+ puts "Listing Live Streams:\n\n"
28
+ streams = live_api.list_live_streams()
29
+ streams.data.each do | stream |
30
+ puts "Live Stream ID: #{stream.id}"
31
+ puts "Strean: #{stream.status}"
32
+ puts "Stream Key: #{stream.stream_key}\n\n"
33
+ end
34
+
35
+ # List Direct Uploads
36
+ puts "Listing Direct Uploads:\n\n"
37
+ uploads = uploads_api.list_direct_uploads()
38
+ uploads.data.each do | upload |
39
+ puts "Status: #{upload.status}"
40
+ puts "Asset ID: #{upload.asset_id}\n\n"
41
+ end
42
+
43
+ # List Signing Keys
44
+ puts "Listing Signing Keys:\n\n"
45
+ keys = keys_api.list_url_signing_keys()
46
+ keys.data.each do | key |
47
+ puts "Signing Key ID: #{key.id}\n\n"
48
+ end
Binary file
@@ -0,0 +1,507 @@
1
+ =begin
2
+ # Mux Ruby - Copyright 2019 Mux Inc.
3
+ # NOTE: This file is auto generated. Do not edit this file manually.
4
+ =end
5
+
6
+ require 'uri'
7
+
8
+ module MuxRuby
9
+ class AssetsApi
10
+ attr_accessor :api_client
11
+
12
+ def initialize(api_client = ApiClient.default)
13
+ @api_client = api_client
14
+ end
15
+ # Create an asset
16
+ # Create a new Mux Video asset.
17
+ # @param create_asset_request
18
+ # @param [Hash] opts the optional parameters
19
+ # @return [AssetResponse]
20
+ def create_asset(create_asset_request, opts = {})
21
+ data, _status_code, _headers = create_asset_with_http_info(create_asset_request, opts)
22
+ data
23
+ end
24
+
25
+ # Create an asset
26
+ # Create a new Mux Video asset.
27
+ # @param create_asset_request
28
+ # @param [Hash] opts the optional parameters
29
+ # @return [Array<(AssetResponse, Fixnum, Hash)>] AssetResponse data, response status code and response headers
30
+ def create_asset_with_http_info(create_asset_request, opts = {})
31
+ if @api_client.config.debugging
32
+ @api_client.config.logger.debug 'Calling API: AssetsApi.create_asset ...'
33
+ end
34
+ # verify the required parameter 'create_asset_request' is set
35
+ if @api_client.config.client_side_validation && create_asset_request.nil?
36
+ fail ArgumentError, "Missing the required parameter 'create_asset_request' when calling AssetsApi.create_asset"
37
+ end
38
+ # resource path
39
+ local_var_path = '/video/v1/assets'
40
+
41
+ # query parameters
42
+ query_params = {}
43
+
44
+ # header parameters
45
+ header_params = {}
46
+ # HTTP header 'Accept' (if needed)
47
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
48
+ # HTTP header 'Content-Type'
49
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
50
+
51
+ # form parameters
52
+ form_params = {}
53
+
54
+ # http body (model)
55
+ post_body = @api_client.object_to_http_body(create_asset_request)
56
+ auth_names = ['accessToken']
57
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
58
+ :header_params => header_params,
59
+ :query_params => query_params,
60
+ :form_params => form_params,
61
+ :body => post_body,
62
+ :auth_names => auth_names,
63
+ :return_type => 'AssetResponse')
64
+ if @api_client.config.debugging
65
+ @api_client.config.logger.debug "API called: AssetsApi#create_asset\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
66
+ end
67
+ return data, status_code, headers
68
+ end
69
+
70
+ # Create a playback ID
71
+ # @param asset_id The asset ID.
72
+ # @param create_playback_id_request
73
+ # @param [Hash] opts the optional parameters
74
+ # @return [CreatePlaybackIDResponse]
75
+ def create_asset_playback_id(asset_id, create_playback_id_request, opts = {})
76
+ data, _status_code, _headers = create_asset_playback_id_with_http_info(asset_id, create_playback_id_request, opts)
77
+ data
78
+ end
79
+
80
+ # Create a playback ID
81
+ # @param asset_id The asset ID.
82
+ # @param create_playback_id_request
83
+ # @param [Hash] opts the optional parameters
84
+ # @return [Array<(CreatePlaybackIDResponse, Fixnum, Hash)>] CreatePlaybackIDResponse data, response status code and response headers
85
+ def create_asset_playback_id_with_http_info(asset_id, create_playback_id_request, opts = {})
86
+ if @api_client.config.debugging
87
+ @api_client.config.logger.debug 'Calling API: AssetsApi.create_asset_playback_id ...'
88
+ end
89
+ # verify the required parameter 'asset_id' is set
90
+ if @api_client.config.client_side_validation && asset_id.nil?
91
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.create_asset_playback_id"
92
+ end
93
+ # verify the required parameter 'create_playback_id_request' is set
94
+ if @api_client.config.client_side_validation && create_playback_id_request.nil?
95
+ fail ArgumentError, "Missing the required parameter 'create_playback_id_request' when calling AssetsApi.create_asset_playback_id"
96
+ end
97
+ # resource path
98
+ local_var_path = '/video/v1/assets/{ASSET_ID}/playback-ids'.sub('{' + 'ASSET_ID' + '}', asset_id.to_s)
99
+
100
+ # query parameters
101
+ query_params = {}
102
+
103
+ # header parameters
104
+ header_params = {}
105
+ # HTTP header 'Accept' (if needed)
106
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
107
+ # HTTP header 'Content-Type'
108
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
109
+
110
+ # form parameters
111
+ form_params = {}
112
+
113
+ # http body (model)
114
+ post_body = @api_client.object_to_http_body(create_playback_id_request)
115
+ auth_names = ['accessToken']
116
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
117
+ :header_params => header_params,
118
+ :query_params => query_params,
119
+ :form_params => form_params,
120
+ :body => post_body,
121
+ :auth_names => auth_names,
122
+ :return_type => 'CreatePlaybackIDResponse')
123
+ if @api_client.config.debugging
124
+ @api_client.config.logger.debug "API called: AssetsApi#create_asset_playback_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
125
+ end
126
+ return data, status_code, headers
127
+ end
128
+
129
+ # Delete an asset
130
+ # @param asset_id The asset ID.
131
+ # @param [Hash] opts the optional parameters
132
+ # @return [nil]
133
+ def delete_asset(asset_id, opts = {})
134
+ delete_asset_with_http_info(asset_id, opts)
135
+ nil
136
+ end
137
+
138
+ # Delete an asset
139
+ # @param asset_id The asset ID.
140
+ # @param [Hash] opts the optional parameters
141
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
142
+ def delete_asset_with_http_info(asset_id, opts = {})
143
+ if @api_client.config.debugging
144
+ @api_client.config.logger.debug 'Calling API: AssetsApi.delete_asset ...'
145
+ end
146
+ # verify the required parameter 'asset_id' is set
147
+ if @api_client.config.client_side_validation && asset_id.nil?
148
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.delete_asset"
149
+ end
150
+ # resource path
151
+ local_var_path = '/video/v1/assets/{ASSET_ID}'.sub('{' + 'ASSET_ID' + '}', asset_id.to_s)
152
+
153
+ # query parameters
154
+ query_params = {}
155
+
156
+ # header parameters
157
+ header_params = {}
158
+
159
+ # form parameters
160
+ form_params = {}
161
+
162
+ # http body (model)
163
+ post_body = nil
164
+ auth_names = ['accessToken']
165
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
166
+ :header_params => header_params,
167
+ :query_params => query_params,
168
+ :form_params => form_params,
169
+ :body => post_body,
170
+ :auth_names => auth_names)
171
+ if @api_client.config.debugging
172
+ @api_client.config.logger.debug "API called: AssetsApi#delete_asset\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
173
+ end
174
+ return data, status_code, headers
175
+ end
176
+
177
+ # Delete a playback ID
178
+ # @param asset_id The asset ID.
179
+ # @param playback_id The live stream&#39;s playback ID.
180
+ # @param [Hash] opts the optional parameters
181
+ # @return [nil]
182
+ def delete_asset_playback_id(asset_id, playback_id, opts = {})
183
+ delete_asset_playback_id_with_http_info(asset_id, playback_id, opts)
184
+ nil
185
+ end
186
+
187
+ # Delete a playback ID
188
+ # @param asset_id The asset ID.
189
+ # @param playback_id The live stream&#39;s playback ID.
190
+ # @param [Hash] opts the optional parameters
191
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
192
+ def delete_asset_playback_id_with_http_info(asset_id, playback_id, opts = {})
193
+ if @api_client.config.debugging
194
+ @api_client.config.logger.debug 'Calling API: AssetsApi.delete_asset_playback_id ...'
195
+ end
196
+ # verify the required parameter 'asset_id' is set
197
+ if @api_client.config.client_side_validation && asset_id.nil?
198
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.delete_asset_playback_id"
199
+ end
200
+ # verify the required parameter 'playback_id' is set
201
+ if @api_client.config.client_side_validation && playback_id.nil?
202
+ fail ArgumentError, "Missing the required parameter 'playback_id' when calling AssetsApi.delete_asset_playback_id"
203
+ end
204
+ # resource path
205
+ local_var_path = '/video/v1/assets/{ASSET_ID}/playback-ids/{PLAYBACK_ID}'.sub('{' + 'ASSET_ID' + '}', asset_id.to_s).sub('{' + 'PLAYBACK_ID' + '}', playback_id.to_s)
206
+
207
+ # query parameters
208
+ query_params = {}
209
+
210
+ # header parameters
211
+ header_params = {}
212
+
213
+ # form parameters
214
+ form_params = {}
215
+
216
+ # http body (model)
217
+ post_body = nil
218
+ auth_names = ['accessToken']
219
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
220
+ :header_params => header_params,
221
+ :query_params => query_params,
222
+ :form_params => form_params,
223
+ :body => post_body,
224
+ :auth_names => auth_names)
225
+ if @api_client.config.debugging
226
+ @api_client.config.logger.debug "API called: AssetsApi#delete_asset_playback_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
227
+ end
228
+ return data, status_code, headers
229
+ end
230
+
231
+ # Retrieve an asset
232
+ # Retrieves the details of an asset that has previously been created. Supply the unique asset ID that was returned from your previous request, and Mux will return the corresponding asset information. The same information is returned when creating an asset.
233
+ # @param asset_id The asset ID.
234
+ # @param [Hash] opts the optional parameters
235
+ # @return [AssetResponse]
236
+ def get_asset(asset_id, opts = {})
237
+ data, _status_code, _headers = get_asset_with_http_info(asset_id, opts)
238
+ data
239
+ end
240
+
241
+ # Retrieve an asset
242
+ # Retrieves the details of an asset that has previously been created. Supply the unique asset ID that was returned from your previous request, and Mux will return the corresponding asset information. The same information is returned when creating an asset.
243
+ # @param asset_id The asset ID.
244
+ # @param [Hash] opts the optional parameters
245
+ # @return [Array<(AssetResponse, Fixnum, Hash)>] AssetResponse data, response status code and response headers
246
+ def get_asset_with_http_info(asset_id, opts = {})
247
+ if @api_client.config.debugging
248
+ @api_client.config.logger.debug 'Calling API: AssetsApi.get_asset ...'
249
+ end
250
+ # verify the required parameter 'asset_id' is set
251
+ if @api_client.config.client_side_validation && asset_id.nil?
252
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.get_asset"
253
+ end
254
+ # resource path
255
+ local_var_path = '/video/v1/assets/{ASSET_ID}'.sub('{' + 'ASSET_ID' + '}', asset_id.to_s)
256
+
257
+ # query parameters
258
+ query_params = {}
259
+
260
+ # header parameters
261
+ header_params = {}
262
+ # HTTP header 'Accept' (if needed)
263
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
264
+
265
+ # form parameters
266
+ form_params = {}
267
+
268
+ # http body (model)
269
+ post_body = nil
270
+ auth_names = ['accessToken']
271
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
272
+ :header_params => header_params,
273
+ :query_params => query_params,
274
+ :form_params => form_params,
275
+ :body => post_body,
276
+ :auth_names => auth_names,
277
+ :return_type => 'AssetResponse')
278
+ if @api_client.config.debugging
279
+ @api_client.config.logger.debug "API called: AssetsApi#get_asset\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
280
+ end
281
+ return data, status_code, headers
282
+ end
283
+
284
+ # Retrieve asset input info
285
+ # Returns a list of the input objects that were used to create the asset along with any settings that were applied to each input.
286
+ # @param asset_id The asset ID.
287
+ # @param [Hash] opts the optional parameters
288
+ # @return [GetAssetInputInfoResponse]
289
+ def get_asset_input_info(asset_id, opts = {})
290
+ data, _status_code, _headers = get_asset_input_info_with_http_info(asset_id, opts)
291
+ data
292
+ end
293
+
294
+ # Retrieve asset input info
295
+ # Returns a list of the input objects that were used to create the asset along with any settings that were applied to each input.
296
+ # @param asset_id The asset ID.
297
+ # @param [Hash] opts the optional parameters
298
+ # @return [Array<(GetAssetInputInfoResponse, Fixnum, Hash)>] GetAssetInputInfoResponse data, response status code and response headers
299
+ def get_asset_input_info_with_http_info(asset_id, opts = {})
300
+ if @api_client.config.debugging
301
+ @api_client.config.logger.debug 'Calling API: AssetsApi.get_asset_input_info ...'
302
+ end
303
+ # verify the required parameter 'asset_id' is set
304
+ if @api_client.config.client_side_validation && asset_id.nil?
305
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.get_asset_input_info"
306
+ end
307
+ # resource path
308
+ local_var_path = '/video/v1/assets/{ASSET_ID}/input-info'.sub('{' + 'ASSET_ID' + '}', asset_id.to_s)
309
+
310
+ # query parameters
311
+ query_params = {}
312
+
313
+ # header parameters
314
+ header_params = {}
315
+ # HTTP header 'Accept' (if needed)
316
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
317
+
318
+ # form parameters
319
+ form_params = {}
320
+
321
+ # http body (model)
322
+ post_body = nil
323
+ auth_names = ['accessToken']
324
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
325
+ :header_params => header_params,
326
+ :query_params => query_params,
327
+ :form_params => form_params,
328
+ :body => post_body,
329
+ :auth_names => auth_names,
330
+ :return_type => 'GetAssetInputInfoResponse')
331
+ if @api_client.config.debugging
332
+ @api_client.config.logger.debug "API called: AssetsApi#get_asset_input_info\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
333
+ end
334
+ return data, status_code, headers
335
+ end
336
+
337
+ # Retrieve a playback ID
338
+ # @param asset_id The asset ID.
339
+ # @param playback_id The live stream&#39;s playback ID.
340
+ # @param [Hash] opts the optional parameters
341
+ # @return [GetAssetPlaybackIDResponse]
342
+ def get_asset_playback_id(asset_id, playback_id, opts = {})
343
+ data, _status_code, _headers = get_asset_playback_id_with_http_info(asset_id, playback_id, opts)
344
+ data
345
+ end
346
+
347
+ # Retrieve a playback ID
348
+ # @param asset_id The asset ID.
349
+ # @param playback_id The live stream&#39;s playback ID.
350
+ # @param [Hash] opts the optional parameters
351
+ # @return [Array<(GetAssetPlaybackIDResponse, Fixnum, Hash)>] GetAssetPlaybackIDResponse data, response status code and response headers
352
+ def get_asset_playback_id_with_http_info(asset_id, playback_id, opts = {})
353
+ if @api_client.config.debugging
354
+ @api_client.config.logger.debug 'Calling API: AssetsApi.get_asset_playback_id ...'
355
+ end
356
+ # verify the required parameter 'asset_id' is set
357
+ if @api_client.config.client_side_validation && asset_id.nil?
358
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.get_asset_playback_id"
359
+ end
360
+ # verify the required parameter 'playback_id' is set
361
+ if @api_client.config.client_side_validation && playback_id.nil?
362
+ fail ArgumentError, "Missing the required parameter 'playback_id' when calling AssetsApi.get_asset_playback_id"
363
+ end
364
+ # resource path
365
+ local_var_path = '/video/v1/assets/{ASSET_ID}/playback-ids/{PLAYBACK_ID}'.sub('{' + 'ASSET_ID' + '}', asset_id.to_s).sub('{' + 'PLAYBACK_ID' + '}', playback_id.to_s)
366
+
367
+ # query parameters
368
+ query_params = {}
369
+
370
+ # header parameters
371
+ header_params = {}
372
+ # HTTP header 'Accept' (if needed)
373
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
374
+
375
+ # form parameters
376
+ form_params = {}
377
+
378
+ # http body (model)
379
+ post_body = nil
380
+ auth_names = ['accessToken']
381
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
382
+ :header_params => header_params,
383
+ :query_params => query_params,
384
+ :form_params => form_params,
385
+ :body => post_body,
386
+ :auth_names => auth_names,
387
+ :return_type => 'GetAssetPlaybackIDResponse')
388
+ if @api_client.config.debugging
389
+ @api_client.config.logger.debug "API called: AssetsApi#get_asset_playback_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
390
+ end
391
+ return data, status_code, headers
392
+ end
393
+
394
+ # List assets
395
+ # @param [Hash] opts the optional parameters
396
+ # @option opts [Integer] :limit Number of items to include in the response (default to 25)
397
+ # @option opts [Integer] :page Offset by this many pages, of the size of &#x60;limit&#x60; (default to 1)
398
+ # @return [ListAssetsResponse]
399
+ def list_assets(opts = {})
400
+ data, _status_code, _headers = list_assets_with_http_info(opts)
401
+ data
402
+ end
403
+
404
+ # List assets
405
+ # @param [Hash] opts the optional parameters
406
+ # @option opts [Integer] :limit Number of items to include in the response
407
+ # @option opts [Integer] :page Offset by this many pages, of the size of &#x60;limit&#x60;
408
+ # @return [Array<(ListAssetsResponse, Fixnum, Hash)>] ListAssetsResponse data, response status code and response headers
409
+ def list_assets_with_http_info(opts = {})
410
+ if @api_client.config.debugging
411
+ @api_client.config.logger.debug 'Calling API: AssetsApi.list_assets ...'
412
+ end
413
+ # resource path
414
+ local_var_path = '/video/v1/assets'
415
+
416
+ # query parameters
417
+ query_params = {}
418
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
419
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
420
+
421
+ # header parameters
422
+ header_params = {}
423
+ # HTTP header 'Accept' (if needed)
424
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
425
+
426
+ # form parameters
427
+ form_params = {}
428
+
429
+ # http body (model)
430
+ post_body = nil
431
+ auth_names = ['accessToken']
432
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
433
+ :header_params => header_params,
434
+ :query_params => query_params,
435
+ :form_params => form_params,
436
+ :body => post_body,
437
+ :auth_names => auth_names,
438
+ :return_type => 'ListAssetsResponse')
439
+ if @api_client.config.debugging
440
+ @api_client.config.logger.debug "API called: AssetsApi#list_assets\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
441
+ end
442
+ return data, status_code, headers
443
+ end
444
+
445
+ # Update MP4 support
446
+ # Allows you add or remove mp4 support for assets that were created without it. Currently there are two values supported in this request, `standard` and `none`. `none` means that an asset *does not* have mp4 support, so submitting a request with `mp4_support` set to `none` will delete the mp4 assets from the asset in question.
447
+ # @param asset_id The asset ID.
448
+ # @param update_asset_mp4_support_request
449
+ # @param [Hash] opts the optional parameters
450
+ # @return [AssetResponse]
451
+ def update_asset_mp4_support(asset_id, update_asset_mp4_support_request, opts = {})
452
+ data, _status_code, _headers = update_asset_mp4_support_with_http_info(asset_id, update_asset_mp4_support_request, opts)
453
+ data
454
+ end
455
+
456
+ # Update MP4 support
457
+ # Allows you add or remove mp4 support for assets that were created without it. Currently there are two values supported in this request, &#x60;standard&#x60; and &#x60;none&#x60;. &#x60;none&#x60; means that an asset *does not* have mp4 support, so submitting a request with &#x60;mp4_support&#x60; set to &#x60;none&#x60; will delete the mp4 assets from the asset in question.
458
+ # @param asset_id The asset ID.
459
+ # @param update_asset_mp4_support_request
460
+ # @param [Hash] opts the optional parameters
461
+ # @return [Array<(AssetResponse, Fixnum, Hash)>] AssetResponse data, response status code and response headers
462
+ def update_asset_mp4_support_with_http_info(asset_id, update_asset_mp4_support_request, opts = {})
463
+ if @api_client.config.debugging
464
+ @api_client.config.logger.debug 'Calling API: AssetsApi.update_asset_mp4_support ...'
465
+ end
466
+ # verify the required parameter 'asset_id' is set
467
+ if @api_client.config.client_side_validation && asset_id.nil?
468
+ fail ArgumentError, "Missing the required parameter 'asset_id' when calling AssetsApi.update_asset_mp4_support"
469
+ end
470
+ # verify the required parameter 'update_asset_mp4_support_request' is set
471
+ if @api_client.config.client_side_validation && update_asset_mp4_support_request.nil?
472
+ fail ArgumentError, "Missing the required parameter 'update_asset_mp4_support_request' when calling AssetsApi.update_asset_mp4_support"
473
+ end
474
+ # resource path
475
+ local_var_path = '/video/v1/assets/{ASSET_ID}/mp4-support'.sub('{' + 'ASSET_ID' + '}', asset_id.to_s)
476
+
477
+ # query parameters
478
+ query_params = {}
479
+
480
+ # header parameters
481
+ header_params = {}
482
+ # HTTP header 'Accept' (if needed)
483
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
484
+ # HTTP header 'Content-Type'
485
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
486
+
487
+ # form parameters
488
+ form_params = {}
489
+
490
+ # http body (model)
491
+ post_body = @api_client.object_to_http_body(update_asset_mp4_support_request)
492
+ auth_names = ['accessToken']
493
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
494
+ :header_params => header_params,
495
+ :query_params => query_params,
496
+ :form_params => form_params,
497
+ :body => post_body,
498
+ :auth_names => auth_names,
499
+ :return_type => 'AssetResponse')
500
+ if @api_client.config.debugging
501
+ @api_client.config.logger.debug "API called: AssetsApi#update_asset_mp4_support\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
502
+ end
503
+ return data, status_code, headers
504
+ end
505
+
506
+ end
507
+ end