fastpixapi 0.0.1 → 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 (932) hide show
  1. checksums.yaml +4 -4
  2. data/lib/crystalline/metadata_fields.rb +29 -31
  3. data/lib/crystalline/module.rb +95 -0
  4. data/lib/crystalline/t.rb +1 -2
  5. data/lib/crystalline/types.rb +77 -0
  6. data/lib/crystalline/utils.rb +48 -75
  7. data/lib/crystalline.rb +3 -3
  8. data/lib/fastpix_api_sdk/dimensions.rb +394 -0
  9. data/lib/fastpix_api_sdk/drm_configurations.rb +445 -0
  10. data/lib/fastpix_api_sdk/errors.rb +227 -0
  11. data/lib/fastpix_api_sdk/fastpix.rb +113 -0
  12. data/lib/fastpix_api_sdk/in_video_ai_features.rb +894 -0
  13. data/lib/fastpix_api_sdk/input_video.rb +106 -53
  14. data/lib/fastpix_api_sdk/live_playback.rb +627 -0
  15. data/lib/fastpix_api_sdk/manage_live_stream.rb +758 -64
  16. data/lib/fastpix_api_sdk/manage_videos.rb +2362 -108
  17. data/lib/fastpix_api_sdk/metrics.rb +793 -0
  18. data/lib/fastpix_api_sdk/models/callbacks.rb +11 -0
  19. data/lib/fastpix_api_sdk/models/components/accesspolicy.rb +22 -0
  20. data/lib/fastpix_api_sdk/models/components/accesspolicy.rbi +11 -0
  21. data/lib/fastpix_api_sdk/models/components/addtrackrequest.rb +44 -0
  22. data/lib/fastpix_api_sdk/models/components/addtrackrequest.rbi +19 -0
  23. data/lib/fastpix_api_sdk/models/components/addtrackrequest_type.rb +21 -0
  24. data/lib/fastpix_api_sdk/models/components/addtrackrequest_type.rbi +11 -0
  25. data/lib/fastpix_api_sdk/models/components/addtrackresponse.rb +48 -0
  26. data/lib/fastpix_api_sdk/models/components/addtrackresponse.rbi +21 -0
  27. data/lib/fastpix_api_sdk/models/components/addtrackresponse_type.rb +21 -0
  28. data/lib/fastpix_api_sdk/models/components/addtrackresponse_type.rbi +11 -0
  29. data/lib/fastpix_api_sdk/models/components/audioinput.rb +3 -4
  30. data/lib/fastpix_api_sdk/models/components/audioinput.rbi +17 -0
  31. data/lib/fastpix_api_sdk/models/components/audioinput_type.rb +2 -1
  32. data/lib/fastpix_api_sdk/models/components/audioinput_type.rbi +11 -0
  33. data/lib/fastpix_api_sdk/models/components/badrequest_error.rb +41 -0
  34. data/lib/fastpix_api_sdk/models/components/badrequest_error.rbi +17 -0
  35. data/lib/fastpix_api_sdk/models/components/basicaccesspolicy.rb +21 -0
  36. data/lib/fastpix_api_sdk/models/components/basicaccesspolicy.rbi +11 -0
  37. data/lib/fastpix_api_sdk/models/components/browsernamedimensiondetails.rb +40 -0
  38. data/lib/fastpix_api_sdk/models/components/browsernamedimensiondetails.rbi +17 -0
  39. data/lib/fastpix_api_sdk/models/components/chaptersresponse.rb +36 -0
  40. data/lib/fastpix_api_sdk/models/components/chaptersresponse.rbi +15 -0
  41. data/lib/fastpix_api_sdk/models/components/createlivestreamrequest.rb +0 -1
  42. data/lib/fastpix_api_sdk/models/components/createlivestreamrequest.rbi +15 -0
  43. data/lib/fastpix_api_sdk/models/components/createlivestreamrequest_maxresolution.rb +2 -1
  44. data/lib/fastpix_api_sdk/models/components/createlivestreamrequest_maxresolution.rbi +11 -0
  45. data/lib/fastpix_api_sdk/models/components/createlivestreamrequest_metadata.rb +0 -1
  46. data/lib/fastpix_api_sdk/models/components/createmediarequest.rb +18 -20
  47. data/lib/fastpix_api_sdk/models/components/createmediarequest.rbi +37 -0
  48. data/lib/fastpix_api_sdk/models/components/createmediarequest_accesspolicy.rb +2 -1
  49. data/lib/fastpix_api_sdk/models/components/createmediarequest_accesspolicy.rbi +11 -0
  50. data/lib/fastpix_api_sdk/models/components/createmediarequest_accessrestrictions.rb +2 -3
  51. data/lib/fastpix_api_sdk/models/components/createmediarequest_accessrestrictions.rbi +15 -0
  52. data/lib/fastpix_api_sdk/models/components/createmediarequest_domains.rb +5 -9
  53. data/lib/fastpix_api_sdk/models/components/createmediarequest_domains.rbi +17 -0
  54. data/lib/fastpix_api_sdk/models/components/createmediarequest_domains_defaultpolicy.rb +0 -1
  55. data/lib/fastpix_api_sdk/models/components/createmediarequest_languagecode.rb +2 -1
  56. data/lib/fastpix_api_sdk/models/components/createmediarequest_languagecode.rbi +11 -0
  57. data/lib/fastpix_api_sdk/models/components/createmediarequest_maxresolution.rb +2 -1
  58. data/lib/fastpix_api_sdk/models/components/createmediarequest_maxresolution.rbi +11 -0
  59. data/lib/fastpix_api_sdk/models/components/createmediarequest_metadata.rb +0 -1
  60. data/lib/fastpix_api_sdk/models/components/createmediarequest_mp4support.rb +3 -2
  61. data/lib/fastpix_api_sdk/models/components/createmediarequest_mp4support.rbi +11 -0
  62. data/lib/fastpix_api_sdk/models/components/createmediarequest_type.rb +0 -1
  63. data/lib/fastpix_api_sdk/models/components/createmediarequest_useragents.rb +5 -9
  64. data/lib/fastpix_api_sdk/models/components/createmediarequest_useragents.rbi +17 -0
  65. data/lib/fastpix_api_sdk/models/components/createmediarequest_useragents_defaultpolicy.rb +0 -1
  66. data/lib/fastpix_api_sdk/models/components/createmediaresponse.rb +9 -10
  67. data/lib/fastpix_api_sdk/models/components/createmediaresponse.rbi +27 -0
  68. data/lib/fastpix_api_sdk/models/components/createmediaresponse_maxresolution.rb +2 -1
  69. data/lib/fastpix_api_sdk/models/components/createmediaresponse_maxresolution.rbi +11 -0
  70. data/lib/fastpix_api_sdk/models/components/createmediaresponse_metadata.rb +0 -1
  71. data/lib/fastpix_api_sdk/models/components/createmediasuccessresponse.rb +36 -0
  72. data/lib/fastpix_api_sdk/models/components/createmediasuccessresponse.rbi +15 -0
  73. data/lib/fastpix_api_sdk/models/components/createplaylistrequest.rb +56 -0
  74. data/lib/fastpix_api_sdk/models/components/createplaylistrequest.rbi +25 -0
  75. data/lib/fastpix_api_sdk/models/components/createplaylistrequest_metadata.rb +36 -0
  76. data/lib/fastpix_api_sdk/models/components/createplaylistrequest_metadata.rbi +15 -0
  77. data/lib/fastpix_api_sdk/models/components/createplaylistrequest_type.rb +21 -0
  78. data/lib/fastpix_api_sdk/models/components/createplaylistrequest_type.rbi +11 -0
  79. data/lib/fastpix_api_sdk/models/components/createresponse.rb +36 -0
  80. data/lib/fastpix_api_sdk/models/components/createresponse.rbi +15 -0
  81. data/lib/fastpix_api_sdk/models/components/createsigningkeyresponsedto.rb +40 -0
  82. data/lib/fastpix_api_sdk/models/components/createsigningkeyresponsedto.rbi +17 -0
  83. data/lib/fastpix_api_sdk/models/components/datapagination.rb +45 -0
  84. data/lib/fastpix_api_sdk/models/components/datapagination.rbi +17 -0
  85. data/lib/fastpix_api_sdk/models/components/daterange.rb +36 -0
  86. data/lib/fastpix_api_sdk/models/components/daterange.rbi +15 -0
  87. data/lib/fastpix_api_sdk/models/components/deletesigningkeyresponse.rb +32 -0
  88. data/lib/fastpix_api_sdk/models/components/deletesigningkeyresponse.rbi +13 -0
  89. data/lib/fastpix_api_sdk/models/components/details.rb +48 -0
  90. data/lib/fastpix_api_sdk/models/components/details.rbi +19 -0
  91. data/lib/fastpix_api_sdk/models/components/directupload.rb +7 -8
  92. data/lib/fastpix_api_sdk/models/components/directupload.rbi +25 -0
  93. data/lib/fastpix_api_sdk/models/components/directuploadresponse.rb +3 -4
  94. data/lib/fastpix_api_sdk/models/components/directuploadresponse.rbi +15 -0
  95. data/lib/fastpix_api_sdk/models/components/directuploadresponse_metadata.rb +0 -1
  96. data/lib/fastpix_api_sdk/models/components/domainrestrictions.rb +40 -0
  97. data/lib/fastpix_api_sdk/models/components/domainrestrictions.rbi +17 -0
  98. data/lib/fastpix_api_sdk/models/components/drmidresponse.rb +32 -0
  99. data/lib/fastpix_api_sdk/models/components/drmidresponse.rbi +13 -0
  100. data/lib/fastpix_api_sdk/models/components/duplicatemp4support_error.rb +41 -0
  101. data/lib/fastpix_api_sdk/models/components/duplicatemp4support_error.rbi +17 -0
  102. data/lib/fastpix_api_sdk/models/components/duplicatereferenceiderrorresponse_error.rb +41 -0
  103. data/lib/fastpix_api_sdk/models/components/duplicatereferenceiderrorresponse_error.rbi +17 -0
  104. data/lib/fastpix_api_sdk/models/components/errordetails.rb +60 -0
  105. data/lib/fastpix_api_sdk/models/components/errordetails.rbi +27 -0
  106. data/lib/fastpix_api_sdk/models/components/errordetails_percentage.rb +27 -0
  107. data/lib/fastpix_api_sdk/models/components/errordetails_percentage.rbi +11 -0
  108. data/lib/fastpix_api_sdk/models/components/event.rb +52 -0
  109. data/lib/fastpix_api_sdk/models/components/event.rbi +21 -0
  110. data/lib/fastpix_api_sdk/models/components/event_time.rb +28 -0
  111. data/lib/fastpix_api_sdk/models/components/event_time.rbi +11 -0
  112. data/lib/fastpix_api_sdk/models/components/fielderror.rb +36 -0
  113. data/lib/fastpix_api_sdk/models/components/fielderror.rbi +15 -0
  114. data/lib/fastpix_api_sdk/models/components/forbidden_error.rb +41 -0
  115. data/lib/fastpix_api_sdk/models/components/forbidden_error.rbi +17 -0
  116. data/lib/fastpix_api_sdk/models/components/forbiddenresponse_error.rb +36 -0
  117. data/lib/fastpix_api_sdk/models/components/forbiddenresponse_error.rbi +15 -0
  118. data/lib/fastpix_api_sdk/models/components/generatedsubtitle.rb +27 -0
  119. data/lib/fastpix_api_sdk/models/components/generatedsubtitle.rbi +11 -0
  120. data/lib/fastpix_api_sdk/models/components/generatetrackresponse.rb +49 -0
  121. data/lib/fastpix_api_sdk/models/components/generatetrackresponse.rbi +21 -0
  122. data/lib/fastpix_api_sdk/models/components/generatetrackresponse_languagecode.rb +77 -0
  123. data/lib/fastpix_api_sdk/models/components/generatetrackresponse_languagecode.rbi +11 -0
  124. data/lib/fastpix_api_sdk/models/components/generatetrackresponse_type.rb +20 -0
  125. data/lib/fastpix_api_sdk/models/components/generatetrackresponse_type.rbi +11 -0
  126. data/lib/fastpix_api_sdk/models/components/getallplaylistsresponse.rb +40 -0
  127. data/lib/fastpix_api_sdk/models/components/getallplaylistsresponse.rbi +17 -0
  128. data/lib/fastpix_api_sdk/models/components/getallsigningkeyresponse.rb +36 -0
  129. data/lib/fastpix_api_sdk/models/components/getallsigningkeyresponse.rbi +15 -0
  130. data/lib/fastpix_api_sdk/models/components/getallsigningkeyresponsedto.rb +44 -0
  131. data/lib/fastpix_api_sdk/models/components/getallsigningkeyresponsedto.rbi +19 -0
  132. data/lib/fastpix_api_sdk/models/components/getcreatelivestreamresponsedto.rb +29 -22
  133. data/lib/fastpix_api_sdk/models/components/getcreatelivestreamresponsedto.rbi +43 -0
  134. data/lib/fastpix_api_sdk/models/components/getcreatelivestreamresponsedto_metadata.rb +0 -1
  135. data/lib/fastpix_api_sdk/models/components/getcreatelivestreamresponsedto_srtplaybackresponse.rb +0 -1
  136. data/lib/fastpix_api_sdk/models/components/getpublicpemusingsigningkeyidresponsedto.rb +36 -0
  137. data/lib/fastpix_api_sdk/models/components/getpublicpemusingsigningkeyidresponsedto.rbi +15 -0
  138. data/lib/fastpix_api_sdk/models/components/getpublicpemusingsigningkeyidresponsedto_data.rb +40 -0
  139. data/lib/fastpix_api_sdk/models/components/getpublicpemusingsigningkeyidresponsedto_data.rbi +17 -0
  140. data/lib/fastpix_api_sdk/models/components/getstreamsresponse.rb +4 -5
  141. data/lib/fastpix_api_sdk/models/components/getstreamsresponse.rbi +17 -0
  142. data/lib/fastpix_api_sdk/models/components/globalvalue.rb +27 -0
  143. data/lib/fastpix_api_sdk/models/components/globalvalue.rbi +11 -0
  144. data/lib/fastpix_api_sdk/models/components/imposetrack.rb +5 -6
  145. data/lib/fastpix_api_sdk/models/components/imposetrack.rbi +21 -0
  146. data/lib/fastpix_api_sdk/models/components/input.rb +0 -1
  147. data/lib/fastpix_api_sdk/models/components/input.rbi +11 -0
  148. data/lib/fastpix_api_sdk/models/components/inputmediasettings.rb +14 -11
  149. data/lib/fastpix_api_sdk/models/components/inputmediasettings.rbi +21 -0
  150. data/lib/fastpix_api_sdk/models/components/invalidpermission_error.rb +41 -0
  151. data/lib/fastpix_api_sdk/models/components/invalidpermission_error.rbi +17 -0
  152. data/lib/fastpix_api_sdk/models/components/invalidplaylistidresponse_error.rb +40 -0
  153. data/lib/fastpix_api_sdk/models/components/invalidplaylistidresponse_error.rbi +17 -0
  154. data/lib/fastpix_api_sdk/models/components/item.rb +49 -0
  155. data/lib/fastpix_api_sdk/models/components/item.rbi +21 -0
  156. data/lib/fastpix_api_sdk/models/components/languagecode.rb +80 -0
  157. data/lib/fastpix_api_sdk/models/components/languagecode.rbi +11 -0
  158. data/lib/fastpix_api_sdk/models/components/livenotfounderror_error.rb +41 -0
  159. data/lib/fastpix_api_sdk/models/components/livenotfounderror_error.rbi +17 -0
  160. data/lib/fastpix_api_sdk/models/components/livestreamdeleteresponse.rb +1 -2
  161. data/lib/fastpix_api_sdk/models/components/livestreamdeleteresponse.rbi +13 -0
  162. data/lib/fastpix_api_sdk/models/components/livestreamgetresponse.rb +2 -3
  163. data/lib/fastpix_api_sdk/models/components/livestreamgetresponse.rbi +15 -0
  164. data/lib/fastpix_api_sdk/models/components/livestreampagination.rb +40 -0
  165. data/lib/fastpix_api_sdk/models/components/livestreampagination.rbi +17 -0
  166. data/lib/fastpix_api_sdk/models/components/livestreamresponsedto.rb +2 -3
  167. data/lib/fastpix_api_sdk/models/components/livestreamresponsedto.rbi +15 -0
  168. data/lib/fastpix_api_sdk/models/components/media.rb +18 -19
  169. data/lib/fastpix_api_sdk/models/components/media.rbi +43 -0
  170. data/lib/fastpix_api_sdk/models/components/media_maxresolution.rb +2 -1
  171. data/lib/fastpix_api_sdk/models/components/media_maxresolution.rbi +11 -0
  172. data/lib/fastpix_api_sdk/models/components/media_metadata.rb +0 -1
  173. data/lib/fastpix_api_sdk/models/components/media_mp4support.rb +2 -1
  174. data/lib/fastpix_api_sdk/models/components/media_mp4support.rbi +11 -0
  175. data/lib/fastpix_api_sdk/models/components/media_sourceresolution.rb +25 -0
  176. data/lib/fastpix_api_sdk/models/components/media_sourceresolution.rbi +11 -0
  177. data/lib/fastpix_api_sdk/models/components/mediacancelresponse.rb +64 -0
  178. data/lib/fastpix_api_sdk/models/components/mediacancelresponse.rbi +29 -0
  179. data/lib/fastpix_api_sdk/models/components/mediaclipnotfound_error.rb +41 -0
  180. data/lib/fastpix_api_sdk/models/components/mediaclipnotfound_error.rbi +17 -0
  181. data/lib/fastpix_api_sdk/models/components/mediaclipresponse.rb +40 -0
  182. data/lib/fastpix_api_sdk/models/components/mediaclipresponse.rbi +17 -0
  183. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_accessrestrictions.rb +36 -0
  184. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_accessrestrictions.rbi +15 -0
  185. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_data.rb +100 -0
  186. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_data.rbi +47 -0
  187. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_domains.rb +40 -0
  188. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_domains.rbi +17 -0
  189. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_maxresolution.rb +25 -0
  190. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_maxresolution.rbi +11 -0
  191. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_pagination.rb +40 -0
  192. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_pagination.rbi +17 -0
  193. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_playbackid.rb +40 -0
  194. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_playbackid.rbi +17 -0
  195. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_sourceresolution.rb +25 -0
  196. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_sourceresolution.rbi +11 -0
  197. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_track.rb +56 -0
  198. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_track.rbi +25 -0
  199. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_type.rb +22 -0
  200. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_type.rbi +11 -0
  201. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_useragents.rb +40 -0
  202. data/lib/fastpix_api_sdk/models/components/mediaclipresponse_useragents.rbi +17 -0
  203. data/lib/fastpix_api_sdk/models/components/mediaidsrequest.rb +32 -0
  204. data/lib/fastpix_api_sdk/models/components/mediaidsrequest.rbi +13 -0
  205. data/lib/fastpix_api_sdk/models/components/medianotfound_error.rb +41 -0
  206. data/lib/fastpix_api_sdk/models/components/medianotfound_error.rbi +17 -0
  207. data/lib/fastpix_api_sdk/models/components/mediaorplaybacknotfound_error.rb +41 -0
  208. data/lib/fastpix_api_sdk/models/components/mediaorplaybacknotfound_error.rbi +17 -0
  209. data/lib/fastpix_api_sdk/models/components/mediapolicy.rb +0 -1
  210. data/lib/fastpix_api_sdk/models/components/mediatype.rb +22 -0
  211. data/lib/fastpix_api_sdk/models/components/mediatype.rbi +11 -0
  212. data/lib/fastpix_api_sdk/models/components/metricsbreakdowndetails.rb +48 -0
  213. data/lib/fastpix_api_sdk/models/components/metricsbreakdowndetails.rbi +21 -0
  214. data/lib/fastpix_api_sdk/models/components/metricsbreakdowndetails_value.rb +27 -0
  215. data/lib/fastpix_api_sdk/models/components/metricsbreakdowndetails_value.rbi +11 -0
  216. data/lib/fastpix_api_sdk/models/components/metricscomparisondetails.rb +49 -0
  217. data/lib/fastpix_api_sdk/models/components/metricscomparisondetails.rbi +21 -0
  218. data/lib/fastpix_api_sdk/models/components/metricsoveralldatadetails.rb +52 -0
  219. data/lib/fastpix_api_sdk/models/components/metricsoveralldatadetails.rbi +23 -0
  220. data/lib/fastpix_api_sdk/models/components/metricsoveralldatadetails_value.rb +27 -0
  221. data/lib/fastpix_api_sdk/models/components/metricsoveralldatadetails_value.rbi +11 -0
  222. data/lib/fastpix_api_sdk/models/components/metricsoverallmetadatadetails.rb +32 -0
  223. data/lib/fastpix_api_sdk/models/components/metricsoverallmetadatadetails.rbi +13 -0
  224. data/lib/fastpix_api_sdk/models/components/metricstimeseriesdatadetails.rb +40 -0
  225. data/lib/fastpix_api_sdk/models/components/metricstimeseriesdatadetails.rbi +17 -0
  226. data/lib/fastpix_api_sdk/models/components/metricstimeseriesmetadatadetails.rb +36 -0
  227. data/lib/fastpix_api_sdk/models/components/metricstimeseriesmetadatadetails.rbi +15 -0
  228. data/lib/fastpix_api_sdk/models/components/metricvalue.rb +27 -0
  229. data/lib/fastpix_api_sdk/models/components/metricvalue.rbi +11 -0
  230. data/lib/fastpix_api_sdk/models/components/moderation.rb +3 -5
  231. data/lib/fastpix_api_sdk/models/components/moderation.rbi +13 -0
  232. data/lib/fastpix_api_sdk/models/components/moderationresponse.rb +36 -0
  233. data/lib/fastpix_api_sdk/models/components/moderationresponse.rbi +15 -0
  234. data/lib/fastpix_api_sdk/models/components/namedentitiesresponse.rb +36 -0
  235. data/lib/fastpix_api_sdk/models/components/namedentitiesresponse.rbi +15 -0
  236. data/lib/fastpix_api_sdk/models/components/notfounderror_error.rb +40 -0
  237. data/lib/fastpix_api_sdk/models/components/notfounderror_error.rbi +17 -0
  238. data/lib/fastpix_api_sdk/models/components/notfounderrorplaybackid_error.rb +41 -0
  239. data/lib/fastpix_api_sdk/models/components/notfounderrorplaybackid_error.rbi +17 -0
  240. data/lib/fastpix_api_sdk/models/components/notfounderrorsimulcast_error.rb +41 -0
  241. data/lib/fastpix_api_sdk/models/components/notfounderrorsimulcast_error.rbi +17 -0
  242. data/lib/fastpix_api_sdk/models/components/pagination.rb +5 -6
  243. data/lib/fastpix_api_sdk/models/components/pagination.rbi +17 -0
  244. data/lib/fastpix_api_sdk/models/components/patchlivestreamrequest.rb +4 -5
  245. data/lib/fastpix_api_sdk/models/components/patchlivestreamrequest.rbi +15 -0
  246. data/lib/fastpix_api_sdk/models/components/patchlivestreamrequest_metadata.rb +0 -1
  247. data/lib/fastpix_api_sdk/models/components/patchresponsedata.rb +21 -22
  248. data/lib/fastpix_api_sdk/models/components/patchresponsedata.rbi +39 -0
  249. data/lib/fastpix_api_sdk/models/components/patchresponsedata_metadata.rb +0 -1
  250. data/lib/fastpix_api_sdk/models/components/patchresponsedata_srtplaybackresponse.rb +0 -1
  251. data/lib/fastpix_api_sdk/models/components/patchresponsedto.rb +2 -3
  252. data/lib/fastpix_api_sdk/models/components/patchresponsedto.rbi +15 -0
  253. data/lib/fastpix_api_sdk/models/components/placement.rb +4 -5
  254. data/lib/fastpix_api_sdk/models/components/placement.rbi +19 -0
  255. data/lib/fastpix_api_sdk/models/components/playbackid.rb +5 -6
  256. data/lib/fastpix_api_sdk/models/components/playbackid.rbi +17 -0
  257. data/lib/fastpix_api_sdk/models/components/playbackid_accesspolicy.rb +0 -1
  258. data/lib/fastpix_api_sdk/models/components/playbackid_accessrestrictions.rb +2 -3
  259. data/lib/fastpix_api_sdk/models/components/playbackid_accessrestrictions.rbi +15 -0
  260. data/lib/fastpix_api_sdk/models/components/playbackid_domains.rb +5 -6
  261. data/lib/fastpix_api_sdk/models/components/playbackid_domains.rbi +17 -0
  262. data/lib/fastpix_api_sdk/models/components/playbackid_domains_defaultpolicy.rb +0 -1
  263. data/lib/fastpix_api_sdk/models/components/playbackid_useragents.rb +5 -6
  264. data/lib/fastpix_api_sdk/models/components/playbackid_useragents.rbi +17 -0
  265. data/lib/fastpix_api_sdk/models/components/playbackid_useragents_defaultpolicy.rb +0 -1
  266. data/lib/fastpix_api_sdk/models/components/playbackidrequest.rb +4 -5
  267. data/lib/fastpix_api_sdk/models/components/playbackidrequest.rbi +13 -0
  268. data/lib/fastpix_api_sdk/models/components/playbackidrequest_accesspolicy.rb +0 -1
  269. data/lib/fastpix_api_sdk/models/components/playbackidresponse.rb +11 -12
  270. data/lib/fastpix_api_sdk/models/components/playbackidresponse.rbi +15 -0
  271. data/lib/fastpix_api_sdk/models/components/playbackidresponse_data.rb +0 -1
  272. data/lib/fastpix_api_sdk/models/components/playbackids.rb +0 -1
  273. data/lib/fastpix_api_sdk/models/components/playbackidsuccessresponse.rb +36 -0
  274. data/lib/fastpix_api_sdk/models/components/playbackidsuccessresponse.rbi +15 -0
  275. data/lib/fastpix_api_sdk/models/components/playbackidsuccessresponse_data.rb +36 -0
  276. data/lib/fastpix_api_sdk/models/components/playbackidsuccessresponse_data.rbi +15 -0
  277. data/lib/fastpix_api_sdk/models/components/playbacksettings.rb +4 -5
  278. data/lib/fastpix_api_sdk/models/components/playbacksettings.rbi +13 -0
  279. data/lib/fastpix_api_sdk/models/components/playbacksettings_accesspolicy.rb +0 -1
  280. data/lib/fastpix_api_sdk/models/components/playerheight.rb +28 -0
  281. data/lib/fastpix_api_sdk/models/components/playerheight.rbi +11 -0
  282. data/lib/fastpix_api_sdk/models/components/playerwidth.rb +28 -0
  283. data/lib/fastpix_api_sdk/models/components/playerwidth.rbi +11 -0
  284. data/lib/fastpix_api_sdk/models/components/playlistbyidresponse.rb +36 -0
  285. data/lib/fastpix_api_sdk/models/components/playlistbyidresponse.rbi +15 -0
  286. data/lib/fastpix_api_sdk/models/components/playlistbyidresponse_data.rb +68 -0
  287. data/lib/fastpix_api_sdk/models/components/playlistbyidresponse_data.rbi +31 -0
  288. data/lib/fastpix_api_sdk/models/components/playlistbyidresponse_medialist.rb +52 -0
  289. data/lib/fastpix_api_sdk/models/components/playlistbyidresponse_medialist.rbi +23 -0
  290. data/lib/fastpix_api_sdk/models/components/playlistbyidresponse_type.rb +21 -0
  291. data/lib/fastpix_api_sdk/models/components/playlistbyidresponse_type.rbi +11 -0
  292. data/lib/fastpix_api_sdk/models/components/playlistcreatedresponse.rb +36 -0
  293. data/lib/fastpix_api_sdk/models/components/playlistcreatedresponse.rbi +15 -0
  294. data/lib/fastpix_api_sdk/models/components/playlistcreatedschema.rb +76 -0
  295. data/lib/fastpix_api_sdk/models/components/playlistcreatedschema.rbi +35 -0
  296. data/lib/fastpix_api_sdk/models/components/playlistcreatedschema_medialist.rb +52 -0
  297. data/lib/fastpix_api_sdk/models/components/playlistcreatedschema_medialist.rbi +23 -0
  298. data/lib/fastpix_api_sdk/models/components/playlistcreatedschema_metadata.rb +36 -0
  299. data/lib/fastpix_api_sdk/models/components/playlistcreatedschema_metadata.rbi +15 -0
  300. data/lib/fastpix_api_sdk/models/components/playlistcreatedschema_type.rb +21 -0
  301. data/lib/fastpix_api_sdk/models/components/playlistcreatedschema_type.rbi +11 -0
  302. data/lib/fastpix_api_sdk/models/components/playlistitem.rb +52 -0
  303. data/lib/fastpix_api_sdk/models/components/playlistitem.rbi +23 -0
  304. data/lib/fastpix_api_sdk/models/components/playlistitem_type.rb +21 -0
  305. data/lib/fastpix_api_sdk/models/components/playlistitem_type.rbi +11 -0
  306. data/lib/fastpix_api_sdk/models/components/playlistorder.rb +21 -0
  307. data/lib/fastpix_api_sdk/models/components/playlistorder.rbi +11 -0
  308. data/lib/fastpix_api_sdk/models/components/policyaction.rb +21 -0
  309. data/lib/fastpix_api_sdk/models/components/policyaction.rbi +11 -0
  310. data/lib/fastpix_api_sdk/models/components/security.rb +0 -1
  311. data/lib/fastpix_api_sdk/models/components/security.rbi +15 -0
  312. data/lib/fastpix_api_sdk/models/components/segment_1.rb +0 -1
  313. data/lib/fastpix_api_sdk/models/components/segment_1.rbi +15 -0
  314. data/lib/fastpix_api_sdk/models/components/segment_2.rb +1 -2
  315. data/lib/fastpix_api_sdk/models/components/segment_2.rbi +15 -0
  316. data/lib/fastpix_api_sdk/models/components/segment_union.rb +0 -1
  317. data/lib/fastpix_api_sdk/models/components/segment_union.rbi +11 -0
  318. data/lib/fastpix_api_sdk/models/components/signingkeynotfounderror_error.rb +36 -0
  319. data/lib/fastpix_api_sdk/models/components/signingkeynotfounderror_error.rbi +15 -0
  320. data/lib/fastpix_api_sdk/models/components/signingkeyworkspacedto.rb +40 -0
  321. data/lib/fastpix_api_sdk/models/components/signingkeyworkspacedto.rbi +17 -0
  322. data/lib/fastpix_api_sdk/models/components/simulcastdeleteresponse.rb +1 -2
  323. data/lib/fastpix_api_sdk/models/components/simulcastdeleteresponse.rbi +13 -0
  324. data/lib/fastpix_api_sdk/models/components/simulcastrequest.rb +9 -6
  325. data/lib/fastpix_api_sdk/models/components/simulcastrequest.rbi +17 -0
  326. data/lib/fastpix_api_sdk/models/components/simulcastresponse.rb +2 -3
  327. data/lib/fastpix_api_sdk/models/components/simulcastresponse.rbi +15 -0
  328. data/lib/fastpix_api_sdk/models/components/simulcastresponse_data.rb +8 -9
  329. data/lib/fastpix_api_sdk/models/components/simulcastresponse_data.rbi +21 -0
  330. data/lib/fastpix_api_sdk/models/components/simulcastresponse_metadata.rb +0 -1
  331. data/lib/fastpix_api_sdk/models/components/simulcastunavailable_error.rb +44 -0
  332. data/lib/fastpix_api_sdk/models/components/simulcastunavailable_error.rbi +17 -0
  333. data/lib/fastpix_api_sdk/models/components/simulcastupdaterequest.rb +4 -5
  334. data/lib/fastpix_api_sdk/models/components/simulcastupdaterequest.rbi +15 -0
  335. data/lib/fastpix_api_sdk/models/components/simulcastupdaterequest_metadata.rb +0 -1
  336. data/lib/fastpix_api_sdk/models/components/simulcastupdateresponse.rb +2 -3
  337. data/lib/fastpix_api_sdk/models/components/simulcastupdateresponse.rbi +15 -0
  338. data/lib/fastpix_api_sdk/models/components/simulcastupdateresponse_data.rb +7 -8
  339. data/lib/fastpix_api_sdk/models/components/simulcastupdateresponse_data.rbi +21 -0
  340. data/lib/fastpix_api_sdk/models/components/simulcastupdateresponse_metadata.rb +0 -1
  341. data/lib/fastpix_api_sdk/models/components/singingkeyspagination.rb +40 -0
  342. data/lib/fastpix_api_sdk/models/components/singingkeyspagination.rbi +17 -0
  343. data/lib/fastpix_api_sdk/models/components/sortorder.rb +21 -0
  344. data/lib/fastpix_api_sdk/models/components/sortorder.rbi +11 -0
  345. data/lib/fastpix_api_sdk/models/components/sourceresolution.rb +0 -1
  346. data/lib/fastpix_api_sdk/models/components/srtplaybackresponse.rb +36 -0
  347. data/lib/fastpix_api_sdk/models/components/srtplaybackresponse.rbi +15 -0
  348. data/lib/fastpix_api_sdk/models/components/status.rb +23 -0
  349. data/lib/fastpix_api_sdk/models/components/status.rbi +11 -0
  350. data/lib/fastpix_api_sdk/models/components/streamalreadydisablederror_error.rb +41 -0
  351. data/lib/fastpix_api_sdk/models/components/streamalreadydisablederror_error.rbi +17 -0
  352. data/lib/fastpix_api_sdk/models/components/subtitle.rb +0 -1
  353. data/lib/fastpix_api_sdk/models/components/subtitle_metadata.rb +0 -1
  354. data/lib/fastpix_api_sdk/models/components/subtitleinput.rb +3 -5
  355. data/lib/fastpix_api_sdk/models/components/subtitleinput.rbi +19 -0
  356. data/lib/fastpix_api_sdk/models/components/subtitleinput_languagecode.rb +0 -1
  357. data/lib/fastpix_api_sdk/models/components/subtitles.rb +43 -0
  358. data/lib/fastpix_api_sdk/models/components/subtitles.rbi +17 -0
  359. data/lib/fastpix_api_sdk/models/components/successresponse.rb +36 -0
  360. data/lib/fastpix_api_sdk/models/components/successresponse.rbi +15 -0
  361. data/lib/fastpix_api_sdk/models/components/successresponse_data.rb +27 -0
  362. data/lib/fastpix_api_sdk/models/components/successresponse_data.rbi +11 -0
  363. data/lib/fastpix_api_sdk/models/components/summary.rb +2 -3
  364. data/lib/fastpix_api_sdk/models/components/summary.rbi +15 -0
  365. data/lib/fastpix_api_sdk/models/components/summaryresponse.rb +36 -0
  366. data/lib/fastpix_api_sdk/models/components/summaryresponse.rbi +15 -0
  367. data/lib/fastpix_api_sdk/models/components/toperrordetails.rb +64 -0
  368. data/lib/fastpix_api_sdk/models/components/toperrordetails.rbi +29 -0
  369. data/lib/fastpix_api_sdk/models/components/toperrordetails_percentage.rb +27 -0
  370. data/lib/fastpix_api_sdk/models/components/toperrordetails_percentage.rbi +11 -0
  371. data/lib/fastpix_api_sdk/models/components/track.rb +5 -6
  372. data/lib/fastpix_api_sdk/models/components/track.rbi +23 -0
  373. data/lib/fastpix_api_sdk/models/components/trackduplicaterequest_error.rb +41 -0
  374. data/lib/fastpix_api_sdk/models/components/trackduplicaterequest_error.rbi +17 -0
  375. data/lib/fastpix_api_sdk/models/components/tracksubtitlesgeneraterequest.rb +40 -0
  376. data/lib/fastpix_api_sdk/models/components/tracksubtitlesgeneraterequest.rbi +17 -0
  377. data/lib/fastpix_api_sdk/models/components/unauthorized_error.rb +41 -0
  378. data/lib/fastpix_api_sdk/models/components/unauthorized_error.rbi +17 -0
  379. data/lib/fastpix_api_sdk/models/components/unauthorizedresponse_error.rb +36 -0
  380. data/lib/fastpix_api_sdk/models/components/unauthorizedresponse_error.rbi +15 -0
  381. data/lib/fastpix_api_sdk/models/components/uniqueviewerseffectedpercentage.rb +27 -0
  382. data/lib/fastpix_api_sdk/models/components/uniqueviewerseffectedpercentage.rbi +11 -0
  383. data/lib/fastpix_api_sdk/models/components/updateplaylistrequest.rb +36 -0
  384. data/lib/fastpix_api_sdk/models/components/updateplaylistrequest.rbi +15 -0
  385. data/lib/fastpix_api_sdk/models/components/updatetrackrequest.rb +40 -0
  386. data/lib/fastpix_api_sdk/models/components/updatetrackrequest.rbi +17 -0
  387. data/lib/fastpix_api_sdk/models/components/updatetrackresponse.rb +48 -0
  388. data/lib/fastpix_api_sdk/models/components/updatetrackresponse.rbi +21 -0
  389. data/lib/fastpix_api_sdk/models/components/updatetrackresponse_type.rb +21 -0
  390. data/lib/fastpix_api_sdk/models/components/updatetrackresponse_type.rbi +11 -0
  391. data/lib/fastpix_api_sdk/models/components/useragentrestrictions.rb +40 -0
  392. data/lib/fastpix_api_sdk/models/components/useragentrestrictions.rbi +17 -0
  393. data/lib/fastpix_api_sdk/models/components/validationerrorresponse_error.rb +40 -0
  394. data/lib/fastpix_api_sdk/models/components/validationerrorresponse_error.rbi +17 -0
  395. data/lib/fastpix_api_sdk/models/components/videoinput.rb +6 -7
  396. data/lib/fastpix_api_sdk/models/components/videoinput.rbi +27 -0
  397. data/lib/fastpix_api_sdk/models/components/viewnotfound_error.rb +36 -0
  398. data/lib/fastpix_api_sdk/models/components/viewnotfound_error.rbi +15 -0
  399. data/lib/fastpix_api_sdk/models/components/views.rb +588 -0
  400. data/lib/fastpix_api_sdk/models/components/views.rbi +235 -0
  401. data/lib/fastpix_api_sdk/models/components/viewsbytopcontentdetails.rb +40 -0
  402. data/lib/fastpix_api_sdk/models/components/viewsbytopcontentdetails.rbi +17 -0
  403. data/lib/fastpix_api_sdk/models/components/viewscountresponse.rb +36 -0
  404. data/lib/fastpix_api_sdk/models/components/viewscountresponse.rbi +15 -0
  405. data/lib/fastpix_api_sdk/models/components/viewscountresponse_data.rb +32 -0
  406. data/lib/fastpix_api_sdk/models/components/viewscountresponse_data.rbi +13 -0
  407. data/lib/fastpix_api_sdk/models/components/viewslist.rb +88 -0
  408. data/lib/fastpix_api_sdk/models/components/viewslist.rbi +35 -0
  409. data/lib/fastpix_api_sdk/models/components/watermarkinput.rb +6 -7
  410. data/lib/fastpix_api_sdk/models/components/watermarkinput.rbi +23 -0
  411. data/lib/fastpix_api_sdk/models/components/watermarkinput_type.rb +2 -1
  412. data/lib/fastpix_api_sdk/models/components/watermarkinput_type.rbi +11 -0
  413. data/lib/fastpix_api_sdk/models/components/xalign.rb +2 -1
  414. data/lib/fastpix_api_sdk/models/components/xalign.rbi +11 -0
  415. data/lib/fastpix_api_sdk/models/components/yalign.rb +2 -1
  416. data/lib/fastpix_api_sdk/models/components/yalign.rbi +11 -0
  417. data/lib/fastpix_api_sdk/models/components.rb +127 -29
  418. data/lib/fastpix_api_sdk/models/errors/apierror.rb +0 -2
  419. data/lib/fastpix_api_sdk/models/errors/apierror.rbi +16 -0
  420. data/lib/fastpix_api_sdk/models/errors/badrequest_error.rb +9 -6
  421. data/lib/fastpix_api_sdk/models/errors/badrequest_error.rbi +17 -0
  422. data/lib/fastpix_api_sdk/models/errors/badrequest_error_error.rb +0 -1
  423. data/lib/fastpix_api_sdk/models/errors/duplicatemp4support_error.rb +40 -0
  424. data/lib/fastpix_api_sdk/models/errors/duplicatemp4support_error.rbi +17 -0
  425. data/lib/fastpix_api_sdk/models/errors/duplicatereferenceiderrorresponse.rb +40 -0
  426. data/lib/fastpix_api_sdk/models/errors/duplicatereferenceiderrorresponse.rbi +17 -0
  427. data/lib/fastpix_api_sdk/models/errors/field.rb +0 -1
  428. data/lib/fastpix_api_sdk/models/errors/forbidden_error.rb +9 -6
  429. data/lib/fastpix_api_sdk/models/errors/forbidden_error.rbi +17 -0
  430. data/lib/fastpix_api_sdk/models/errors/forbidden_error_error.rb +0 -1
  431. data/lib/fastpix_api_sdk/models/errors/forbiddenresponse_error.rb +40 -0
  432. data/lib/fastpix_api_sdk/models/errors/forbiddenresponse_error.rbi +17 -0
  433. data/lib/fastpix_api_sdk/models/errors/invalidpermission_error.rb +9 -6
  434. data/lib/fastpix_api_sdk/models/errors/invalidpermission_error.rbi +17 -0
  435. data/lib/fastpix_api_sdk/models/errors/invalidpermission_error_error.rb +0 -1
  436. data/lib/fastpix_api_sdk/models/errors/invalidplaylistidresponse_error.rb +40 -0
  437. data/lib/fastpix_api_sdk/models/errors/invalidplaylistidresponse_error.rbi +17 -0
  438. data/lib/fastpix_api_sdk/models/errors/livenotfounderror.rb +40 -0
  439. data/lib/fastpix_api_sdk/models/errors/livenotfounderror.rbi +17 -0
  440. data/lib/fastpix_api_sdk/models/errors/mediaclipnotfound_error.rb +40 -0
  441. data/lib/fastpix_api_sdk/models/errors/mediaclipnotfound_error.rbi +17 -0
  442. data/lib/fastpix_api_sdk/models/errors/medianotfound_error.rb +9 -6
  443. data/lib/fastpix_api_sdk/models/errors/medianotfound_error.rbi +17 -0
  444. data/lib/fastpix_api_sdk/models/errors/medianotfound_error_error.rb +0 -1
  445. data/lib/fastpix_api_sdk/models/errors/mediaorplaybacknotfound_error.rb +9 -6
  446. data/lib/fastpix_api_sdk/models/errors/mediaorplaybacknotfound_error.rbi +17 -0
  447. data/lib/fastpix_api_sdk/models/errors/mediaorplaybacknotfound_error_error.rb +0 -1
  448. data/lib/fastpix_api_sdk/models/errors/notfounderror.rb +11 -8
  449. data/lib/fastpix_api_sdk/models/errors/notfounderror.rbi +17 -0
  450. data/lib/fastpix_api_sdk/models/errors/notfounderror_error.rb +0 -1
  451. data/lib/fastpix_api_sdk/models/errors/notfounderrorplaybackid.rb +9 -6
  452. data/lib/fastpix_api_sdk/models/errors/notfounderrorplaybackid.rbi +17 -0
  453. data/lib/fastpix_api_sdk/models/errors/notfounderrorplaybackid_error.rb +0 -1
  454. data/lib/fastpix_api_sdk/models/errors/notfounderrorsimulcast.rb +9 -6
  455. data/lib/fastpix_api_sdk/models/errors/notfounderrorsimulcast.rbi +17 -0
  456. data/lib/fastpix_api_sdk/models/errors/notfounderrorsimulcast_error.rb +0 -1
  457. data/lib/fastpix_api_sdk/models/errors/signingkeynotfounderror.rb +40 -0
  458. data/lib/fastpix_api_sdk/models/errors/signingkeynotfounderror.rbi +17 -0
  459. data/lib/fastpix_api_sdk/models/errors/simulcastunavailable_error.rb +9 -6
  460. data/lib/fastpix_api_sdk/models/errors/simulcastunavailable_error.rbi +17 -0
  461. data/lib/fastpix_api_sdk/models/errors/simulcastunavailable_error_error.rb +0 -1
  462. data/lib/fastpix_api_sdk/models/errors/streamalreadydisablederror.rb +40 -0
  463. data/lib/fastpix_api_sdk/models/errors/streamalreadydisablederror.rbi +17 -0
  464. data/lib/fastpix_api_sdk/models/errors/trackduplicaterequest_error.rb +40 -0
  465. data/lib/fastpix_api_sdk/models/errors/trackduplicaterequest_error.rbi +17 -0
  466. data/lib/fastpix_api_sdk/models/errors/unauthorized_error.rb +9 -6
  467. data/lib/fastpix_api_sdk/models/errors/unauthorized_error.rbi +17 -0
  468. data/lib/fastpix_api_sdk/models/errors/unauthorized_error_error.rb +0 -1
  469. data/lib/fastpix_api_sdk/models/errors/unauthorizedresponse_error.rb +40 -0
  470. data/lib/fastpix_api_sdk/models/errors/unauthorizedresponse_error.rbi +17 -0
  471. data/lib/fastpix_api_sdk/models/errors/validationerrorresponse.rb +11 -8
  472. data/lib/fastpix_api_sdk/models/errors/validationerrorresponse.rbi +17 -0
  473. data/lib/fastpix_api_sdk/models/errors/validationerrorresponse_error.rb +0 -1
  474. data/lib/fastpix_api_sdk/models/errors/viewnotfound_error.rb +40 -0
  475. data/lib/fastpix_api_sdk/models/errors/viewnotfound_error.rbi +17 -0
  476. data/lib/fastpix_api_sdk/models/errors.rb +11 -13
  477. data/lib/fastpix_api_sdk/models/operations/add_media_to_playlist_request.rb +36 -0
  478. data/lib/fastpix_api_sdk/models/operations/add_media_to_playlist_request.rbi +15 -0
  479. data/lib/fastpix_api_sdk/models/operations/add_media_to_playlist_response.rb +44 -0
  480. data/lib/fastpix_api_sdk/models/operations/add_media_to_playlist_response.rbi +19 -0
  481. data/lib/fastpix_api_sdk/models/operations/add_media_track_request.rb +36 -0
  482. data/lib/fastpix_api_sdk/models/operations/add_media_track_request.rbi +15 -0
  483. data/lib/fastpix_api_sdk/models/operations/add_media_track_requestbody.rb +32 -0
  484. data/lib/fastpix_api_sdk/models/operations/add_media_track_requestbody.rbi +13 -0
  485. data/lib/fastpix_api_sdk/models/operations/add_media_track_response.rb +44 -0
  486. data/lib/fastpix_api_sdk/models/operations/add_media_track_response.rbi +19 -0
  487. data/lib/fastpix_api_sdk/models/operations/add_media_track_responsebody.rb +36 -0
  488. data/lib/fastpix_api_sdk/models/operations/add_media_track_responsebody.rbi +15 -0
  489. data/lib/fastpix_api_sdk/models/operations/cancel_upload_request.rb +32 -0
  490. data/lib/fastpix_api_sdk/models/operations/cancel_upload_request.rbi +13 -0
  491. data/lib/fastpix_api_sdk/models/operations/cancel_upload_response.rb +44 -0
  492. data/lib/fastpix_api_sdk/models/operations/cancel_upload_response.rbi +19 -0
  493. data/lib/fastpix_api_sdk/models/operations/cancel_upload_responsebody.rb +36 -0
  494. data/lib/fastpix_api_sdk/models/operations/cancel_upload_responsebody.rbi +15 -0
  495. data/lib/fastpix_api_sdk/models/operations/change_media_order_in_playlist_request.rb +36 -0
  496. data/lib/fastpix_api_sdk/models/operations/change_media_order_in_playlist_request.rbi +15 -0
  497. data/lib/fastpix_api_sdk/models/operations/change_media_order_in_playlist_response.rb +44 -0
  498. data/lib/fastpix_api_sdk/models/operations/change_media_order_in_playlist_response.rbi +19 -0
  499. data/lib/fastpix_api_sdk/models/operations/complete_live_stream_request.rb +32 -0
  500. data/lib/fastpix_api_sdk/models/operations/complete_live_stream_request.rbi +13 -0
  501. data/lib/fastpix_api_sdk/models/operations/complete_live_stream_response.rb +44 -0
  502. data/lib/fastpix_api_sdk/models/operations/complete_live_stream_response.rbi +19 -0
  503. data/lib/fastpix_api_sdk/models/operations/create_a_playlist_response.rb +44 -0
  504. data/lib/fastpix_api_sdk/models/operations/create_a_playlist_response.rbi +19 -0
  505. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_accesspolicy.rb +0 -1
  506. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_accessrestrictions.rb +5 -6
  507. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_accessrestrictions.rbi +15 -0
  508. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_data.rb +32 -0
  509. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_data.rbi +13 -0
  510. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_domains.rb +0 -1
  511. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_domains_defaultpolicy.rb +0 -1
  512. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_request.rb +1 -2
  513. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_request.rbi +15 -0
  514. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_requestbody.rb +13 -6
  515. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_requestbody.rbi +19 -0
  516. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_response.rb +1 -2
  517. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_response.rbi +19 -0
  518. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_responsebody.rb +3 -4
  519. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_responsebody.rbi +15 -0
  520. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_useragents.rb +0 -1
  521. data/lib/fastpix_api_sdk/models/operations/create_media_playback_id_useragents_defaultpolicy.rb +0 -1
  522. data/lib/fastpix_api_sdk/models/operations/create_media_response.rb +5 -6
  523. data/lib/fastpix_api_sdk/models/operations/create_media_response.rbi +19 -0
  524. data/lib/fastpix_api_sdk/models/operations/create_media_responsebody.rb +0 -1
  525. data/lib/fastpix_api_sdk/models/operations/create_new_stream_response.rb +7 -2
  526. data/lib/fastpix_api_sdk/models/operations/create_new_stream_response.rbi +19 -0
  527. data/lib/fastpix_api_sdk/models/operations/create_playbackid_of_stream_request.rb +3 -4
  528. data/lib/fastpix_api_sdk/models/operations/create_playbackid_of_stream_request.rbi +15 -0
  529. data/lib/fastpix_api_sdk/models/operations/create_playbackid_of_stream_response.rb +5 -6
  530. data/lib/fastpix_api_sdk/models/operations/create_playbackid_of_stream_response.rbi +19 -0
  531. data/lib/fastpix_api_sdk/models/operations/create_signing_key_response.rb +50 -0
  532. data/lib/fastpix_api_sdk/models/operations/create_signing_key_response.rbi +19 -0
  533. data/lib/fastpix_api_sdk/models/operations/create_simulcast_of_stream_request.rb +3 -4
  534. data/lib/fastpix_api_sdk/models/operations/create_simulcast_of_stream_request.rbi +15 -0
  535. data/lib/fastpix_api_sdk/models/operations/create_simulcast_of_stream_response.rb +1 -2
  536. data/lib/fastpix_api_sdk/models/operations/create_simulcast_of_stream_response.rbi +19 -0
  537. data/lib/fastpix_api_sdk/models/operations/data.rb +0 -1
  538. data/lib/fastpix_api_sdk/models/operations/delete_a_playlist_request.rb +32 -0
  539. data/lib/fastpix_api_sdk/models/operations/delete_a_playlist_request.rbi +13 -0
  540. data/lib/fastpix_api_sdk/models/operations/delete_a_playlist_response.rb +44 -0
  541. data/lib/fastpix_api_sdk/models/operations/delete_a_playlist_response.rbi +19 -0
  542. data/lib/fastpix_api_sdk/models/operations/delete_live_stream_request.rb +0 -1
  543. data/lib/fastpix_api_sdk/models/operations/delete_live_stream_request.rbi +13 -0
  544. data/lib/fastpix_api_sdk/models/operations/delete_live_stream_response.rb +7 -2
  545. data/lib/fastpix_api_sdk/models/operations/delete_live_stream_response.rbi +19 -0
  546. data/lib/fastpix_api_sdk/models/operations/delete_media_from_playlist_request.rb +36 -0
  547. data/lib/fastpix_api_sdk/models/operations/delete_media_from_playlist_request.rbi +15 -0
  548. data/lib/fastpix_api_sdk/models/operations/delete_media_from_playlist_response.rb +44 -0
  549. data/lib/fastpix_api_sdk/models/operations/delete_media_from_playlist_response.rbi +19 -0
  550. data/lib/fastpix_api_sdk/models/operations/delete_media_playback_id_request.rb +0 -1
  551. data/lib/fastpix_api_sdk/models/operations/delete_media_playback_id_request.rbi +15 -0
  552. data/lib/fastpix_api_sdk/models/operations/delete_media_playback_id_response.rb +1 -2
  553. data/lib/fastpix_api_sdk/models/operations/delete_media_playback_id_response.rbi +19 -0
  554. data/lib/fastpix_api_sdk/models/operations/delete_media_playback_id_responsebody.rb +1 -2
  555. data/lib/fastpix_api_sdk/models/operations/delete_media_playback_id_responsebody.rbi +13 -0
  556. data/lib/fastpix_api_sdk/models/operations/delete_media_request.rb +0 -1
  557. data/lib/fastpix_api_sdk/models/operations/delete_media_request.rbi +13 -0
  558. data/lib/fastpix_api_sdk/models/operations/delete_media_response.rb +1 -2
  559. data/lib/fastpix_api_sdk/models/operations/delete_media_response.rbi +19 -0
  560. data/lib/fastpix_api_sdk/models/operations/delete_media_responsebody.rb +1 -2
  561. data/lib/fastpix_api_sdk/models/operations/delete_media_responsebody.rbi +13 -0
  562. data/lib/fastpix_api_sdk/models/operations/delete_media_track_request.rb +36 -0
  563. data/lib/fastpix_api_sdk/models/operations/delete_media_track_request.rbi +15 -0
  564. data/lib/fastpix_api_sdk/models/operations/delete_media_track_response.rb +44 -0
  565. data/lib/fastpix_api_sdk/models/operations/delete_media_track_response.rbi +19 -0
  566. data/lib/fastpix_api_sdk/models/operations/delete_media_track_responsebody.rb +32 -0
  567. data/lib/fastpix_api_sdk/models/operations/delete_media_track_responsebody.rbi +13 -0
  568. data/lib/fastpix_api_sdk/models/operations/delete_playbackid_of_stream_request.rb +0 -1
  569. data/lib/fastpix_api_sdk/models/operations/delete_playbackid_of_stream_request.rbi +15 -0
  570. data/lib/fastpix_api_sdk/models/operations/delete_playbackid_of_stream_response.rb +1 -2
  571. data/lib/fastpix_api_sdk/models/operations/delete_playbackid_of_stream_response.rbi +19 -0
  572. data/lib/fastpix_api_sdk/models/operations/delete_signing_key_request.rb +32 -0
  573. data/lib/fastpix_api_sdk/models/operations/delete_signing_key_request.rbi +13 -0
  574. data/lib/fastpix_api_sdk/models/operations/delete_signing_key_response.rb +44 -0
  575. data/lib/fastpix_api_sdk/models/operations/delete_signing_key_response.rbi +19 -0
  576. data/lib/fastpix_api_sdk/models/operations/delete_simulcast_of_stream_request.rb +0 -1
  577. data/lib/fastpix_api_sdk/models/operations/delete_simulcast_of_stream_request.rbi +15 -0
  578. data/lib/fastpix_api_sdk/models/operations/delete_simulcast_of_stream_response.rb +1 -2
  579. data/lib/fastpix_api_sdk/models/operations/delete_simulcast_of_stream_response.rbi +19 -0
  580. data/lib/fastpix_api_sdk/models/operations/dimensionsid.rb +75 -0
  581. data/lib/fastpix_api_sdk/models/operations/dimensionsid.rbi +11 -0
  582. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_accesspolicy.rb +0 -1
  583. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_accessrestrictions.rb +5 -6
  584. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_accessrestrictions.rbi +15 -0
  585. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_domains.rb +0 -1
  586. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_domains_defaultpolicy.rb +0 -1
  587. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_metadata.rb +0 -1
  588. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_moderation.rb +32 -0
  589. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_moderation.rbi +13 -0
  590. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_mp4support.rb +23 -0
  591. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_mp4support.rbi +11 -0
  592. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_request.rb +1 -2
  593. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_request.rbi +15 -0
  594. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_response.rb +1 -2
  595. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_response.rbi +19 -0
  596. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_responsebody.rb +2 -3
  597. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_responsebody.rbi +15 -0
  598. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_useragents.rb +0 -1
  599. data/lib/fastpix_api_sdk/models/operations/direct_upload_video_media_useragents_defaultpolicy.rb +0 -1
  600. data/lib/fastpix_api_sdk/models/operations/disable_live_stream_request.rb +32 -0
  601. data/lib/fastpix_api_sdk/models/operations/disable_live_stream_request.rbi +13 -0
  602. data/lib/fastpix_api_sdk/models/operations/disable_live_stream_response.rb +44 -0
  603. data/lib/fastpix_api_sdk/models/operations/disable_live_stream_response.rbi +19 -0
  604. data/lib/fastpix_api_sdk/models/operations/errorcode.rb +28 -0
  605. data/lib/fastpix_api_sdk/models/operations/errorcode.rbi +11 -0
  606. data/lib/fastpix_api_sdk/models/operations/generate_subtitle_track_request.rb +40 -0
  607. data/lib/fastpix_api_sdk/models/operations/generate_subtitle_track_request.rbi +17 -0
  608. data/lib/fastpix_api_sdk/models/operations/generate_subtitle_track_response.rb +44 -0
  609. data/lib/fastpix_api_sdk/models/operations/generate_subtitle_track_response.rbi +19 -0
  610. data/lib/fastpix_api_sdk/models/operations/generate_subtitle_track_responsebody.rb +36 -0
  611. data/lib/fastpix_api_sdk/models/operations/generate_subtitle_track_responsebody.rbi +15 -0
  612. data/lib/fastpix_api_sdk/models/operations/get_all_playlists_request.rb +36 -0
  613. data/lib/fastpix_api_sdk/models/operations/get_all_playlists_request.rbi +15 -0
  614. data/lib/fastpix_api_sdk/models/operations/get_all_playlists_response.rb +50 -0
  615. data/lib/fastpix_api_sdk/models/operations/get_all_playlists_response.rbi +19 -0
  616. data/lib/fastpix_api_sdk/models/operations/get_all_streams_orderby.rb +0 -1
  617. data/lib/fastpix_api_sdk/models/operations/get_all_streams_request.rb +5 -6
  618. data/lib/fastpix_api_sdk/models/operations/get_all_streams_request.rbi +17 -0
  619. data/lib/fastpix_api_sdk/models/operations/get_all_streams_response.rb +7 -2
  620. data/lib/fastpix_api_sdk/models/operations/get_all_streams_response.rbi +19 -0
  621. data/lib/fastpix_api_sdk/models/operations/get_data_viewlist_current_views_filter_data.rb +40 -0
  622. data/lib/fastpix_api_sdk/models/operations/get_data_viewlist_current_views_filter_data.rbi +17 -0
  623. data/lib/fastpix_api_sdk/models/operations/get_data_viewlist_current_views_filter_dimension.rb +36 -0
  624. data/lib/fastpix_api_sdk/models/operations/get_data_viewlist_current_views_filter_dimension.rbi +11 -0
  625. data/lib/fastpix_api_sdk/models/operations/get_data_viewlist_current_views_filter_request.rb +42 -0
  626. data/lib/fastpix_api_sdk/models/operations/get_data_viewlist_current_views_filter_request.rbi +15 -0
  627. data/lib/fastpix_api_sdk/models/operations/get_data_viewlist_current_views_filter_response.rb +44 -0
  628. data/lib/fastpix_api_sdk/models/operations/get_data_viewlist_current_views_filter_response.rbi +19 -0
  629. data/lib/fastpix_api_sdk/models/operations/get_data_viewlist_current_views_filter_responsebody.rb +40 -0
  630. data/lib/fastpix_api_sdk/models/operations/get_data_viewlist_current_views_filter_responsebody.rbi +17 -0
  631. data/lib/fastpix_api_sdk/models/operations/get_data_viewlist_current_views_gettimeseriesviews_data.rb +40 -0
  632. data/lib/fastpix_api_sdk/models/operations/get_data_viewlist_current_views_gettimeseriesviews_data.rbi +17 -0
  633. data/lib/fastpix_api_sdk/models/operations/get_data_viewlist_current_views_gettimeseriesviews_response.rb +44 -0
  634. data/lib/fastpix_api_sdk/models/operations/get_data_viewlist_current_views_gettimeseriesviews_response.rbi +19 -0
  635. data/lib/fastpix_api_sdk/models/operations/get_data_viewlist_current_views_gettimeseriesviews_responsebody.rb +40 -0
  636. data/lib/fastpix_api_sdk/models/operations/get_data_viewlist_current_views_gettimeseriesviews_responsebody.rbi +17 -0
  637. data/lib/fastpix_api_sdk/models/operations/get_live_stream_by_id_request.rb +0 -1
  638. data/lib/fastpix_api_sdk/models/operations/get_live_stream_by_id_request.rbi +13 -0
  639. data/lib/fastpix_api_sdk/models/operations/get_live_stream_by_id_response.rb +1 -2
  640. data/lib/fastpix_api_sdk/models/operations/get_live_stream_by_id_response.rbi +19 -0
  641. data/lib/fastpix_api_sdk/models/operations/get_live_stream_playback_id_request.rb +0 -1
  642. data/lib/fastpix_api_sdk/models/operations/get_live_stream_playback_id_request.rbi +15 -0
  643. data/lib/fastpix_api_sdk/models/operations/get_live_stream_playback_id_response.rb +5 -6
  644. data/lib/fastpix_api_sdk/models/operations/get_live_stream_playback_id_response.rbi +19 -0
  645. data/lib/fastpix_api_sdk/models/operations/get_live_stream_viewer_count_by_id_request.rb +32 -0
  646. data/lib/fastpix_api_sdk/models/operations/get_live_stream_viewer_count_by_id_request.rbi +13 -0
  647. data/lib/fastpix_api_sdk/models/operations/get_live_stream_viewer_count_by_id_response.rb +44 -0
  648. data/lib/fastpix_api_sdk/models/operations/get_live_stream_viewer_count_by_id_response.rbi +19 -0
  649. data/lib/fastpix_api_sdk/models/operations/get_media_clips_request.rb +44 -0
  650. data/lib/fastpix_api_sdk/models/operations/get_media_clips_request.rbi +19 -0
  651. data/lib/fastpix_api_sdk/models/operations/get_media_clips_response.rb +50 -0
  652. data/lib/fastpix_api_sdk/models/operations/get_media_clips_response.rbi +19 -0
  653. data/lib/fastpix_api_sdk/models/operations/get_media_request.rb +0 -1
  654. data/lib/fastpix_api_sdk/models/operations/get_media_request.rbi +13 -0
  655. data/lib/fastpix_api_sdk/models/operations/get_media_response.rb +1 -2
  656. data/lib/fastpix_api_sdk/models/operations/get_media_response.rbi +19 -0
  657. data/lib/fastpix_api_sdk/models/operations/get_media_responsebody.rb +2 -3
  658. data/lib/fastpix_api_sdk/models/operations/get_media_responsebody.rbi +15 -0
  659. data/lib/fastpix_api_sdk/models/operations/get_playback_id_data.rb +36 -0
  660. data/lib/fastpix_api_sdk/models/operations/get_playback_id_data.rbi +15 -0
  661. data/lib/fastpix_api_sdk/models/operations/get_playback_id_request.rb +36 -0
  662. data/lib/fastpix_api_sdk/models/operations/get_playback_id_request.rbi +15 -0
  663. data/lib/fastpix_api_sdk/models/operations/get_playback_id_response.rb +44 -0
  664. data/lib/fastpix_api_sdk/models/operations/get_playback_id_response.rbi +19 -0
  665. data/lib/fastpix_api_sdk/models/operations/get_playback_id_responsebody.rb +36 -0
  666. data/lib/fastpix_api_sdk/models/operations/get_playback_id_responsebody.rbi +15 -0
  667. data/lib/fastpix_api_sdk/models/operations/get_playlist_by_id_request.rb +32 -0
  668. data/lib/fastpix_api_sdk/models/operations/get_playlist_by_id_request.rbi +13 -0
  669. data/lib/fastpix_api_sdk/models/operations/get_playlist_by_id_response.rb +44 -0
  670. data/lib/fastpix_api_sdk/models/operations/get_playlist_by_id_response.rbi +19 -0
  671. data/lib/fastpix_api_sdk/models/operations/get_signing_key_by_id_request.rb +32 -0
  672. data/lib/fastpix_api_sdk/models/operations/get_signing_key_by_id_request.rbi +13 -0
  673. data/lib/fastpix_api_sdk/models/operations/get_signing_key_by_id_response.rb +44 -0
  674. data/lib/fastpix_api_sdk/models/operations/get_signing_key_by_id_response.rbi +19 -0
  675. data/lib/fastpix_api_sdk/models/operations/get_specific_simulcast_of_stream_request.rb +0 -1
  676. data/lib/fastpix_api_sdk/models/operations/get_specific_simulcast_of_stream_request.rbi +15 -0
  677. data/lib/fastpix_api_sdk/models/operations/get_specific_simulcast_of_stream_response.rb +1 -2
  678. data/lib/fastpix_api_sdk/models/operations/get_specific_simulcast_of_stream_response.rbi +19 -0
  679. data/lib/fastpix_api_sdk/models/operations/get_timeseries_data_metricid.rb +46 -0
  680. data/lib/fastpix_api_sdk/models/operations/get_timeseries_data_metricid.rbi +11 -0
  681. data/lib/fastpix_api_sdk/models/operations/get_timeseries_data_request.rb +60 -0
  682. data/lib/fastpix_api_sdk/models/operations/get_timeseries_data_request.rbi +23 -0
  683. data/lib/fastpix_api_sdk/models/operations/get_timeseries_data_response.rb +44 -0
  684. data/lib/fastpix_api_sdk/models/operations/get_timeseries_data_response.rbi +19 -0
  685. data/lib/fastpix_api_sdk/models/operations/get_timeseries_data_responsebody.rb +45 -0
  686. data/lib/fastpix_api_sdk/models/operations/get_timeseries_data_responsebody.rbi +19 -0
  687. data/lib/fastpix_api_sdk/models/operations/get_timeseries_data_sortorder.rb +22 -0
  688. data/lib/fastpix_api_sdk/models/operations/get_timeseries_data_sortorder.rbi +11 -0
  689. data/lib/fastpix_api_sdk/models/operations/get_timeseries_data_timespan_.rb +26 -0
  690. data/lib/fastpix_api_sdk/models/operations/get_timeseries_data_timespan_.rbi +11 -0
  691. data/lib/fastpix_api_sdk/models/operations/get_video_view_details_request.rb +32 -0
  692. data/lib/fastpix_api_sdk/models/operations/get_video_view_details_request.rbi +13 -0
  693. data/lib/fastpix_api_sdk/models/operations/get_video_view_details_response.rb +44 -0
  694. data/lib/fastpix_api_sdk/models/operations/get_video_view_details_response.rbi +19 -0
  695. data/lib/fastpix_api_sdk/models/operations/get_video_view_details_responsebody.rb +36 -0
  696. data/lib/fastpix_api_sdk/models/operations/get_video_view_details_responsebody.rbi +15 -0
  697. data/lib/fastpix_api_sdk/models/operations/getdrmconfiguration_request.rb +36 -0
  698. data/lib/fastpix_api_sdk/models/operations/getdrmconfiguration_request.rbi +15 -0
  699. data/lib/fastpix_api_sdk/models/operations/getdrmconfiguration_response.rb +44 -0
  700. data/lib/fastpix_api_sdk/models/operations/getdrmconfiguration_response.rbi +19 -0
  701. data/lib/fastpix_api_sdk/models/operations/getdrmconfiguration_responsebody.rb +40 -0
  702. data/lib/fastpix_api_sdk/models/operations/getdrmconfiguration_responsebody.rbi +17 -0
  703. data/lib/fastpix_api_sdk/models/operations/getdrmconfigurationbyid_request.rb +32 -0
  704. data/lib/fastpix_api_sdk/models/operations/getdrmconfigurationbyid_request.rbi +13 -0
  705. data/lib/fastpix_api_sdk/models/operations/getdrmconfigurationbyid_response.rb +44 -0
  706. data/lib/fastpix_api_sdk/models/operations/getdrmconfigurationbyid_response.rbi +19 -0
  707. data/lib/fastpix_api_sdk/models/operations/getdrmconfigurationbyid_responsebody.rb +36 -0
  708. data/lib/fastpix_api_sdk/models/operations/getdrmconfigurationbyid_responsebody.rbi +15 -0
  709. data/lib/fastpix_api_sdk/models/operations/groupby.rb +24 -0
  710. data/lib/fastpix_api_sdk/models/operations/groupby.rbi +11 -0
  711. data/lib/fastpix_api_sdk/models/operations/input.rb +0 -1
  712. data/lib/fastpix_api_sdk/models/operations/input.rbi +11 -0
  713. data/lib/fastpix_api_sdk/models/operations/languagecode.rb +2 -1
  714. data/lib/fastpix_api_sdk/models/operations/languagecode.rbi +11 -0
  715. data/lib/fastpix_api_sdk/models/operations/list_breakdown_values_metricid.rb +46 -0
  716. data/lib/fastpix_api_sdk/models/operations/list_breakdown_values_metricid.rbi +11 -0
  717. data/lib/fastpix_api_sdk/models/operations/list_breakdown_values_request.rb +75 -0
  718. data/lib/fastpix_api_sdk/models/operations/list_breakdown_values_request.rbi +29 -0
  719. data/lib/fastpix_api_sdk/models/operations/list_breakdown_values_response.rb +44 -0
  720. data/lib/fastpix_api_sdk/models/operations/list_breakdown_values_response.rbi +19 -0
  721. data/lib/fastpix_api_sdk/models/operations/list_breakdown_values_responsebody.rb +45 -0
  722. data/lib/fastpix_api_sdk/models/operations/list_breakdown_values_responsebody.rbi +19 -0
  723. data/lib/fastpix_api_sdk/models/operations/list_breakdown_values_sortorder.rb +22 -0
  724. data/lib/fastpix_api_sdk/models/operations/list_breakdown_values_sortorder.rbi +11 -0
  725. data/lib/fastpix_api_sdk/models/operations/list_breakdown_values_timespan_.rb +26 -0
  726. data/lib/fastpix_api_sdk/models/operations/list_breakdown_values_timespan_.rbi +11 -0
  727. data/lib/fastpix_api_sdk/models/operations/list_by_top_content_request.rb +44 -0
  728. data/lib/fastpix_api_sdk/models/operations/list_by_top_content_request.rbi +17 -0
  729. data/lib/fastpix_api_sdk/models/operations/list_by_top_content_response.rb +44 -0
  730. data/lib/fastpix_api_sdk/models/operations/list_by_top_content_response.rbi +19 -0
  731. data/lib/fastpix_api_sdk/models/operations/list_by_top_content_responsebody.rb +36 -0
  732. data/lib/fastpix_api_sdk/models/operations/list_by_top_content_responsebody.rbi +15 -0
  733. data/lib/fastpix_api_sdk/models/operations/list_by_top_content_timespan_.rb +26 -0
  734. data/lib/fastpix_api_sdk/models/operations/list_by_top_content_timespan_.rbi +11 -0
  735. data/lib/fastpix_api_sdk/models/operations/list_comparison_values_dimension.rb +75 -0
  736. data/lib/fastpix_api_sdk/models/operations/list_comparison_values_dimension.rbi +11 -0
  737. data/lib/fastpix_api_sdk/models/operations/list_comparison_values_request.rb +52 -0
  738. data/lib/fastpix_api_sdk/models/operations/list_comparison_values_request.rbi +19 -0
  739. data/lib/fastpix_api_sdk/models/operations/list_comparison_values_response.rb +44 -0
  740. data/lib/fastpix_api_sdk/models/operations/list_comparison_values_response.rbi +19 -0
  741. data/lib/fastpix_api_sdk/models/operations/list_comparison_values_responsebody.rb +42 -0
  742. data/lib/fastpix_api_sdk/models/operations/list_comparison_values_responsebody.rbi +17 -0
  743. data/lib/fastpix_api_sdk/models/operations/list_comparison_values_timespan_.rb +26 -0
  744. data/lib/fastpix_api_sdk/models/operations/list_comparison_values_timespan_.rbi +11 -0
  745. data/lib/fastpix_api_sdk/models/operations/list_dimensions_response.rb +44 -0
  746. data/lib/fastpix_api_sdk/models/operations/list_dimensions_response.rbi +19 -0
  747. data/lib/fastpix_api_sdk/models/operations/list_dimensions_responsebody.rb +36 -0
  748. data/lib/fastpix_api_sdk/models/operations/list_dimensions_responsebody.rbi +15 -0
  749. data/lib/fastpix_api_sdk/models/operations/list_errors_data.rb +36 -0
  750. data/lib/fastpix_api_sdk/models/operations/list_errors_data.rbi +15 -0
  751. data/lib/fastpix_api_sdk/models/operations/list_errors_request.rb +44 -0
  752. data/lib/fastpix_api_sdk/models/operations/list_errors_request.rbi +17 -0
  753. data/lib/fastpix_api_sdk/models/operations/list_errors_response.rb +44 -0
  754. data/lib/fastpix_api_sdk/models/operations/list_errors_response.rbi +19 -0
  755. data/lib/fastpix_api_sdk/models/operations/list_errors_responsebody.rb +41 -0
  756. data/lib/fastpix_api_sdk/models/operations/list_errors_responsebody.rbi +17 -0
  757. data/lib/fastpix_api_sdk/models/operations/list_errors_timespan_.rb +26 -0
  758. data/lib/fastpix_api_sdk/models/operations/list_errors_timespan_.rbi +11 -0
  759. data/lib/fastpix_api_sdk/models/operations/list_filter_values_for_dimension_request.rb +44 -0
  760. data/lib/fastpix_api_sdk/models/operations/list_filter_values_for_dimension_request.rbi +17 -0
  761. data/lib/fastpix_api_sdk/models/operations/list_filter_values_for_dimension_response.rb +44 -0
  762. data/lib/fastpix_api_sdk/models/operations/list_filter_values_for_dimension_response.rbi +19 -0
  763. data/lib/fastpix_api_sdk/models/operations/list_filter_values_for_dimension_responsebody.rb +41 -0
  764. data/lib/fastpix_api_sdk/models/operations/list_filter_values_for_dimension_responsebody.rbi +17 -0
  765. data/lib/fastpix_api_sdk/models/operations/list_filter_values_for_dimension_timespan_.rb +26 -0
  766. data/lib/fastpix_api_sdk/models/operations/list_filter_values_for_dimension_timespan_.rbi +11 -0
  767. data/lib/fastpix_api_sdk/models/operations/list_live_clips_request.rb +44 -0
  768. data/lib/fastpix_api_sdk/models/operations/list_live_clips_request.rbi +19 -0
  769. data/lib/fastpix_api_sdk/models/operations/list_live_clips_response.rb +44 -0
  770. data/lib/fastpix_api_sdk/models/operations/list_live_clips_response.rbi +19 -0
  771. data/lib/fastpix_api_sdk/models/operations/list_live_clips_responsebody.rb +40 -0
  772. data/lib/fastpix_api_sdk/models/operations/list_live_clips_responsebody.rbi +17 -0
  773. data/lib/fastpix_api_sdk/models/operations/list_media_orderby.rb +0 -1
  774. data/lib/fastpix_api_sdk/models/operations/list_media_request.rb +5 -6
  775. data/lib/fastpix_api_sdk/models/operations/list_media_request.rbi +17 -0
  776. data/lib/fastpix_api_sdk/models/operations/list_media_response.rb +1 -2
  777. data/lib/fastpix_api_sdk/models/operations/list_media_response.rbi +19 -0
  778. data/lib/fastpix_api_sdk/models/operations/list_media_responsebody.rb +3 -4
  779. data/lib/fastpix_api_sdk/models/operations/list_media_responsebody.rbi +17 -0
  780. data/lib/fastpix_api_sdk/models/operations/list_overall_values_metricid.rb +46 -0
  781. data/lib/fastpix_api_sdk/models/operations/list_overall_values_metricid.rbi +11 -0
  782. data/lib/fastpix_api_sdk/models/operations/list_overall_values_request.rb +50 -0
  783. data/lib/fastpix_api_sdk/models/operations/list_overall_values_request.rbi +19 -0
  784. data/lib/fastpix_api_sdk/models/operations/list_overall_values_response.rb +44 -0
  785. data/lib/fastpix_api_sdk/models/operations/list_overall_values_response.rbi +19 -0
  786. data/lib/fastpix_api_sdk/models/operations/list_overall_values_responsebody.rb +45 -0
  787. data/lib/fastpix_api_sdk/models/operations/list_overall_values_responsebody.rbi +19 -0
  788. data/lib/fastpix_api_sdk/models/operations/list_overall_values_timespan_.rb +26 -0
  789. data/lib/fastpix_api_sdk/models/operations/list_overall_values_timespan_.rbi +11 -0
  790. data/lib/fastpix_api_sdk/models/operations/list_signing_keys_request.rb +36 -0
  791. data/lib/fastpix_api_sdk/models/operations/list_signing_keys_request.rbi +15 -0
  792. data/lib/fastpix_api_sdk/models/operations/list_signing_keys_response.rb +44 -0
  793. data/lib/fastpix_api_sdk/models/operations/list_signing_keys_response.rbi +19 -0
  794. data/lib/fastpix_api_sdk/models/operations/list_uploads_request.rb +40 -0
  795. data/lib/fastpix_api_sdk/models/operations/list_uploads_request.rbi +17 -0
  796. data/lib/fastpix_api_sdk/models/operations/list_uploads_response.rb +44 -0
  797. data/lib/fastpix_api_sdk/models/operations/list_uploads_response.rbi +19 -0
  798. data/lib/fastpix_api_sdk/models/operations/list_uploads_responsebody.rb +40 -0
  799. data/lib/fastpix_api_sdk/models/operations/list_uploads_responsebody.rbi +17 -0
  800. data/lib/fastpix_api_sdk/models/operations/list_video_views_request.rb +69 -0
  801. data/lib/fastpix_api_sdk/models/operations/list_video_views_request.rbi +27 -0
  802. data/lib/fastpix_api_sdk/models/operations/list_video_views_response.rb +44 -0
  803. data/lib/fastpix_api_sdk/models/operations/list_video_views_response.rbi +19 -0
  804. data/lib/fastpix_api_sdk/models/operations/list_video_views_responsebody.rb +45 -0
  805. data/lib/fastpix_api_sdk/models/operations/list_video_views_responsebody.rbi +19 -0
  806. data/lib/fastpix_api_sdk/models/operations/list_video_views_timespan_.rb +26 -0
  807. data/lib/fastpix_api_sdk/models/operations/list_video_views_timespan_.rbi +11 -0
  808. data/lib/fastpix_api_sdk/models/operations/maxresolution.rb +2 -1
  809. data/lib/fastpix_api_sdk/models/operations/maxresolution.rbi +11 -0
  810. data/lib/fastpix_api_sdk/models/operations/moderation.rb +0 -1
  811. data/lib/fastpix_api_sdk/models/operations/mp4support.rb +0 -1
  812. data/lib/fastpix_api_sdk/models/operations/orderby.rb +21 -0
  813. data/lib/fastpix_api_sdk/models/operations/orderby.rbi +11 -0
  814. data/lib/fastpix_api_sdk/models/operations/push_media_settings.rb +17 -18
  815. data/lib/fastpix_api_sdk/models/operations/push_media_settings.rbi +41 -0
  816. data/lib/fastpix_api_sdk/models/operations/resolution.rb +24 -0
  817. data/lib/fastpix_api_sdk/models/operations/resolution.rbi +11 -0
  818. data/lib/fastpix_api_sdk/models/operations/retrievemediainputinfo_data.rb +27 -0
  819. data/lib/fastpix_api_sdk/models/operations/retrievemediainputinfo_data.rbi +11 -0
  820. data/lib/fastpix_api_sdk/models/operations/retrievemediainputinfo_request.rb +0 -1
  821. data/lib/fastpix_api_sdk/models/operations/retrievemediainputinfo_request.rbi +13 -0
  822. data/lib/fastpix_api_sdk/models/operations/retrievemediainputinfo_response.rb +1 -2
  823. data/lib/fastpix_api_sdk/models/operations/retrievemediainputinfo_response.rbi +19 -0
  824. data/lib/fastpix_api_sdk/models/operations/retrievemediainputinfo_responsebody.rb +3 -4
  825. data/lib/fastpix_api_sdk/models/operations/retrievemediainputinfo_responsebody.rbi +15 -0
  826. data/lib/fastpix_api_sdk/models/operations/subtitles.rb +5 -6
  827. data/lib/fastpix_api_sdk/models/operations/subtitles.rbi +17 -0
  828. data/lib/fastpix_api_sdk/models/operations/subtitles_metadata.rb +0 -1
  829. data/lib/fastpix_api_sdk/models/operations/summary.rb +2 -3
  830. data/lib/fastpix_api_sdk/models/operations/summary.rbi +15 -0
  831. data/lib/fastpix_api_sdk/models/operations/type.rb +0 -1
  832. data/lib/fastpix_api_sdk/models/operations/update_a_playlist_request.rb +36 -0
  833. data/lib/fastpix_api_sdk/models/operations/update_a_playlist_request.rbi +15 -0
  834. data/lib/fastpix_api_sdk/models/operations/update_a_playlist_response.rb +44 -0
  835. data/lib/fastpix_api_sdk/models/operations/update_a_playlist_response.rbi +19 -0
  836. data/lib/fastpix_api_sdk/models/operations/update_live_stream_request.rb +3 -4
  837. data/lib/fastpix_api_sdk/models/operations/update_live_stream_request.rbi +15 -0
  838. data/lib/fastpix_api_sdk/models/operations/update_live_stream_response.rb +1 -2
  839. data/lib/fastpix_api_sdk/models/operations/update_live_stream_response.rbi +19 -0
  840. data/lib/fastpix_api_sdk/models/operations/update_media_chapters_request.rb +37 -0
  841. data/lib/fastpix_api_sdk/models/operations/update_media_chapters_request.rbi +15 -0
  842. data/lib/fastpix_api_sdk/models/operations/update_media_chapters_requestbody.rb +33 -0
  843. data/lib/fastpix_api_sdk/models/operations/update_media_chapters_requestbody.rbi +13 -0
  844. data/lib/fastpix_api_sdk/models/operations/update_media_chapters_response.rb +44 -0
  845. data/lib/fastpix_api_sdk/models/operations/update_media_chapters_response.rbi +19 -0
  846. data/lib/fastpix_api_sdk/models/operations/update_media_chapters_responsebody.rb +36 -0
  847. data/lib/fastpix_api_sdk/models/operations/update_media_chapters_responsebody.rbi +15 -0
  848. data/lib/fastpix_api_sdk/models/operations/update_media_moderation_moderation.rb +32 -0
  849. data/lib/fastpix_api_sdk/models/operations/update_media_moderation_moderation.rbi +13 -0
  850. data/lib/fastpix_api_sdk/models/operations/update_media_moderation_request.rb +37 -0
  851. data/lib/fastpix_api_sdk/models/operations/update_media_moderation_request.rbi +15 -0
  852. data/lib/fastpix_api_sdk/models/operations/update_media_moderation_requestbody.rb +32 -0
  853. data/lib/fastpix_api_sdk/models/operations/update_media_moderation_requestbody.rbi +13 -0
  854. data/lib/fastpix_api_sdk/models/operations/update_media_moderation_response.rb +44 -0
  855. data/lib/fastpix_api_sdk/models/operations/update_media_moderation_response.rbi +19 -0
  856. data/lib/fastpix_api_sdk/models/operations/update_media_moderation_responsebody.rb +36 -0
  857. data/lib/fastpix_api_sdk/models/operations/update_media_moderation_responsebody.rbi +15 -0
  858. data/lib/fastpix_api_sdk/models/operations/update_media_named_entities_request.rb +37 -0
  859. data/lib/fastpix_api_sdk/models/operations/update_media_named_entities_request.rbi +15 -0
  860. data/lib/fastpix_api_sdk/models/operations/update_media_named_entities_requestbody.rb +33 -0
  861. data/lib/fastpix_api_sdk/models/operations/update_media_named_entities_requestbody.rbi +13 -0
  862. data/lib/fastpix_api_sdk/models/operations/update_media_named_entities_response.rb +44 -0
  863. data/lib/fastpix_api_sdk/models/operations/update_media_named_entities_response.rbi +19 -0
  864. data/lib/fastpix_api_sdk/models/operations/update_media_named_entities_responsebody.rb +36 -0
  865. data/lib/fastpix_api_sdk/models/operations/update_media_named_entities_responsebody.rbi +15 -0
  866. data/lib/fastpix_api_sdk/models/operations/update_media_summary_request.rb +37 -0
  867. data/lib/fastpix_api_sdk/models/operations/update_media_summary_request.rbi +15 -0
  868. data/lib/fastpix_api_sdk/models/operations/update_media_summary_requestbody.rb +39 -0
  869. data/lib/fastpix_api_sdk/models/operations/update_media_summary_requestbody.rbi +15 -0
  870. data/lib/fastpix_api_sdk/models/operations/update_media_summary_response.rb +44 -0
  871. data/lib/fastpix_api_sdk/models/operations/update_media_summary_response.rbi +19 -0
  872. data/lib/fastpix_api_sdk/models/operations/update_media_summary_responsebody.rb +36 -0
  873. data/lib/fastpix_api_sdk/models/operations/update_media_summary_responsebody.rbi +15 -0
  874. data/lib/fastpix_api_sdk/models/operations/update_media_track_request.rb +40 -0
  875. data/lib/fastpix_api_sdk/models/operations/update_media_track_request.rbi +17 -0
  876. data/lib/fastpix_api_sdk/models/operations/update_media_track_response.rb +44 -0
  877. data/lib/fastpix_api_sdk/models/operations/update_media_track_response.rbi +19 -0
  878. data/lib/fastpix_api_sdk/models/operations/update_media_track_responsebody.rb +36 -0
  879. data/lib/fastpix_api_sdk/models/operations/update_media_track_responsebody.rbi +15 -0
  880. data/lib/fastpix_api_sdk/models/operations/update_specific_simulcast_of_stream_request.rb +3 -4
  881. data/lib/fastpix_api_sdk/models/operations/update_specific_simulcast_of_stream_request.rbi +17 -0
  882. data/lib/fastpix_api_sdk/models/operations/update_specific_simulcast_of_stream_response.rb +1 -2
  883. data/lib/fastpix_api_sdk/models/operations/update_specific_simulcast_of_stream_response.rbi +19 -0
  884. data/lib/fastpix_api_sdk/models/operations/updated_media_metadata.rb +0 -1
  885. data/lib/fastpix_api_sdk/models/operations/updated_media_request.rb +3 -4
  886. data/lib/fastpix_api_sdk/models/operations/updated_media_request.rbi +15 -0
  887. data/lib/fastpix_api_sdk/models/operations/updated_media_requestbody.rb +3 -4
  888. data/lib/fastpix_api_sdk/models/operations/updated_media_requestbody.rbi +13 -0
  889. data/lib/fastpix_api_sdk/models/operations/updated_media_response.rb +1 -2
  890. data/lib/fastpix_api_sdk/models/operations/updated_media_response.rbi +19 -0
  891. data/lib/fastpix_api_sdk/models/operations/updated_media_responsebody.rb +2 -3
  892. data/lib/fastpix_api_sdk/models/operations/updated_media_responsebody.rbi +15 -0
  893. data/lib/fastpix_api_sdk/models/operations/updated_mp4support_mp4support.rb +23 -0
  894. data/lib/fastpix_api_sdk/models/operations/updated_mp4support_mp4support.rbi +11 -0
  895. data/lib/fastpix_api_sdk/models/operations/updated_mp4support_request.rb +37 -0
  896. data/lib/fastpix_api_sdk/models/operations/updated_mp4support_request.rbi +15 -0
  897. data/lib/fastpix_api_sdk/models/operations/updated_mp4support_requestbody.rb +32 -0
  898. data/lib/fastpix_api_sdk/models/operations/updated_mp4support_requestbody.rbi +13 -0
  899. data/lib/fastpix_api_sdk/models/operations/updated_mp4support_response.rb +44 -0
  900. data/lib/fastpix_api_sdk/models/operations/updated_mp4support_response.rbi +19 -0
  901. data/lib/fastpix_api_sdk/models/operations/updated_mp4support_responsebody.rb +36 -0
  902. data/lib/fastpix_api_sdk/models/operations/updated_mp4support_responsebody.rbi +15 -0
  903. data/lib/fastpix_api_sdk/models/operations/updated_source_access_request.rb +37 -0
  904. data/lib/fastpix_api_sdk/models/operations/updated_source_access_request.rbi +15 -0
  905. data/lib/fastpix_api_sdk/models/operations/updated_source_access_requestbody.rb +32 -0
  906. data/lib/fastpix_api_sdk/models/operations/updated_source_access_requestbody.rbi +13 -0
  907. data/lib/fastpix_api_sdk/models/operations/updated_source_access_response.rb +44 -0
  908. data/lib/fastpix_api_sdk/models/operations/updated_source_access_response.rbi +19 -0
  909. data/lib/fastpix_api_sdk/models/operations/updated_source_access_responsebody.rb +36 -0
  910. data/lib/fastpix_api_sdk/models/operations/updated_source_access_responsebody.rbi +15 -0
  911. data/lib/fastpix_api_sdk/models/operations.rb +149 -21
  912. data/lib/fastpix_api_sdk/playback.rb +153 -443
  913. data/lib/fastpix_api_sdk/playlist.rb +1558 -0
  914. data/lib/fastpix_api_sdk/sdk.rb +0 -1
  915. data/lib/fastpix_api_sdk/sdk_hooks/hooks.rb +8 -10
  916. data/lib/fastpix_api_sdk/sdk_hooks/types.rb +23 -11
  917. data/lib/fastpix_api_sdk/sdkconfiguration.rb +50 -24
  918. data/lib/fastpix_api_sdk/sdkconfiguration.rbi +57 -0
  919. data/lib/fastpix_api_sdk/signing_keys.rb +838 -0
  920. data/lib/fastpix_api_sdk/simulcast_stream.rb +159 -74
  921. data/lib/fastpix_api_sdk/start_live_stream.rb +46 -21
  922. data/lib/fastpix_api_sdk/utils/forms.rb +22 -27
  923. data/lib/fastpix_api_sdk/utils/headers.rb +5 -8
  924. data/lib/fastpix_api_sdk/utils/query_params.rb +13 -16
  925. data/lib/fastpix_api_sdk/utils/request_bodies.rb +11 -13
  926. data/lib/fastpix_api_sdk/utils/retries.rb +5 -1
  927. data/lib/fastpix_api_sdk/utils/security.rb +13 -17
  928. data/lib/fastpix_api_sdk/utils/url.rb +12 -15
  929. data/lib/fastpix_api_sdk/utils/utils.rb +20 -18
  930. data/lib/fastpix_api_sdk/views.rb +937 -0
  931. data/lib/fastpixapi.rb +14 -6
  932. metadata +717 -2
@@ -0,0 +1,1558 @@
1
+
2
+ # typed: true
3
+ # frozen_string_literal: true
4
+
5
+ require 'faraday'
6
+ require 'faraday/multipart'
7
+ require 'faraday/retry'
8
+ require 'sorbet-runtime'
9
+ require_relative 'sdk_hooks/hooks'
10
+ require_relative 'utils/retries'
11
+
12
+ module FastpixApiSDK
13
+ extend T::Sig
14
+ class Playlist
15
+ extend T::Sig
16
+
17
+
18
+
19
+ sig { params(sdk_config: SDKConfiguration).void }
20
+ def initialize(sdk_config)
21
+ @sdk_configuration = sdk_config
22
+
23
+ end
24
+
25
+ sig { params(base_url: String, url_variables: T.nilable(T::Hash[Symbol, T.any(String, T::Enum)])).returns(String) }
26
+ def get_url(base_url:, url_variables: nil)
27
+ sd_base_url, sd_options = @sdk_configuration.get_server_details
28
+
29
+ if base_url.nil?
30
+ base_url = sd_base_url
31
+ end
32
+
33
+ if url_variables.nil?
34
+ url_variables = sd_options
35
+ end
36
+
37
+ return Utils.template_url base_url, url_variables
38
+ end
39
+
40
+
41
+ sig { params(request: Models::Components::CreatePlaylistRequest, retries: T.nilable(Utils::RetryConfig), timeout_ms: T.nilable(Integer)).returns(Models::Operations::CreateAPlaylistResponse) }
42
+ def create_a_playlist(request:, retries: nil, timeout_ms: nil)
43
+ # create_a_playlist - Create a new playlist
44
+ # This endpoint creates a new playlist within a specified workspace. A playlist acts as a container for organizing media items either manually or based on filters and metadata. <br> <br>
45
+ # ### Playlists can be created in two modes
46
+ # - **Manual:** An empty playlist is created without any initial media items. It's intended for manual curation, where items can be added later in a user-defined sequence.
47
+ # - **Smart:** The playlist is auto-populated at creation time based on filters (video creation date range) criteria provided in the request.
48
+ #
49
+ # #### How it works
50
+ #
51
+ # - When a user sends a POST request to this endpoint, FastPix creates a playlist and returns a playlist ID, using which items can be added later in a user-defined sequence.
52
+ # - For a smart playlist, the playlist will be auto-populated based on metadata in the request body.
53
+ #
54
+ #
55
+ # #### Example
56
+ # An e-learning platform creates a new playlist titled "Beginner Python Series" via the API. The response includes a unique playlist ID. The platform then uses this ID to add a series of video tutorials to the playlist in a defined order. The playlist is presented to learners on the frontend as a structured learning path.
57
+ url, params = @sdk_configuration.get_server_details
58
+ base_url = Utils.template_url(url, params)
59
+ url = "#{base_url}/on-demand/playlists"
60
+ headers = {}
61
+ headers = T.cast(headers, T::Hash[String, String])
62
+ req_content_type, data, form = Utils.serialize_request_body(request, false, false, :request, :json)
63
+ headers['content-type'] = req_content_type
64
+ raise StandardError, 'request body is required' if data.nil? && form.nil?
65
+
66
+ if form
67
+ body = Utils.encode_form(form)
68
+ elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
69
+ body = URI.encode_www_form(T.cast(data, T::Hash[Symbol, Object]))
70
+ else
71
+ body = data
72
+ end
73
+ headers['Accept'] = 'application/json'
74
+ headers['user-agent'] = @sdk_configuration.user_agent
75
+ retries ||= @sdk_configuration.retry_config
76
+ retries ||= Utils::RetryConfig.new(
77
+ backoff: Utils::BackoffStrategy.new(
78
+ exponent: 1.5,
79
+ initial_interval: 1000,
80
+ max_elapsed_time: 3_600_000,
81
+ max_interval: 10_000
82
+ ),
83
+ retry_connection_errors: true,
84
+ strategy: 'backoff'
85
+ )
86
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
87
+ retry_options[:retry_statuses] = [408, 429, 500, 502, 503, 504]
88
+
89
+ security = @sdk_configuration.security_source&.call
90
+
91
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
92
+ timeout ||= @sdk_configuration.timeout
93
+
94
+
95
+ connection = @sdk_configuration.client.dup
96
+ connection.request :retry, retry_options
97
+
98
+ hook_ctx = SDKHooks::HookContext.new(
99
+ config: @sdk_configuration,
100
+ base_url: base_url,
101
+ oauth2_scopes: nil,
102
+ operation_id: 'create-a-playlist',
103
+ security_source: @sdk_configuration.security_source
104
+ )
105
+
106
+ error = T.let(nil, T.nilable(StandardError))
107
+ http_response = T.let(nil, T.nilable(Faraday::Response))
108
+
109
+
110
+ begin
111
+ http_response = T.must(connection).post(url) do |req|
112
+ req.body = body
113
+ req.headers.merge!(headers)
114
+ req.options.timeout = timeout unless timeout.nil?
115
+ Utils.configure_request_security(req, security)
116
+
117
+ @sdk_configuration.hooks.before_request(
118
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
119
+ hook_ctx: hook_ctx
120
+ ),
121
+ request: req
122
+ )
123
+ end
124
+ rescue StandardError => e
125
+ error = e
126
+ ensure
127
+ if http_response.nil? || Utils.error_status?(http_response.status)
128
+ http_response = @sdk_configuration.hooks.after_error(
129
+ error: error,
130
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
131
+ hook_ctx: hook_ctx
132
+ ),
133
+ response: http_response
134
+ )
135
+ else
136
+ http_response = @sdk_configuration.hooks.after_success(
137
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
138
+ hook_ctx: hook_ctx
139
+ ),
140
+ response: http_response
141
+ )
142
+ end
143
+
144
+ if http_response.nil?
145
+ raise error if !error.nil?
146
+ raise 'no response'
147
+ end
148
+ end
149
+
150
+ content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
151
+ if Utils.match_status_code(http_response.status, ['201'])
152
+ if Utils.match_content_type(content_type, 'application/json')
153
+ http_response = @sdk_configuration.hooks.after_success(
154
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
155
+ hook_ctx: hook_ctx
156
+ ),
157
+ response: http_response
158
+ )
159
+ response_data = http_response.env.response_body
160
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Components::PlaylistCreatedResponse)
161
+ response = Models::Operations::CreateAPlaylistResponse.new(
162
+ status_code: http_response.status,
163
+ content_type: content_type,
164
+ raw_response: http_response,
165
+ playlist_created_response: T.unsafe(obj)
166
+ )
167
+
168
+ return response
169
+ else
170
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
171
+ end
172
+ elsif Utils.match_status_code(http_response.status, ['401'])
173
+ if Utils.match_content_type(content_type, 'application/json')
174
+ http_response = @sdk_configuration.hooks.after_success(
175
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
176
+ hook_ctx: hook_ctx
177
+ ),
178
+ response: http_response
179
+ )
180
+ response_data = http_response.env.response_body
181
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnauthorizedError)
182
+ obj.raw_response = http_response
183
+ raise obj
184
+ else
185
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
186
+ end
187
+ elsif Utils.match_status_code(http_response.status, ['403'])
188
+ if Utils.match_content_type(content_type, 'application/json')
189
+ http_response = @sdk_configuration.hooks.after_success(
190
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
191
+ hook_ctx: hook_ctx
192
+ ),
193
+ response: http_response
194
+ )
195
+ response_data = http_response.env.response_body
196
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InvalidPermissionError)
197
+ obj.raw_response = http_response
198
+ raise obj
199
+ else
200
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
201
+ end
202
+ elsif Utils.match_status_code(http_response.status, ['409'])
203
+ if Utils.match_content_type(content_type, 'application/json')
204
+ http_response = @sdk_configuration.hooks.after_success(
205
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
206
+ hook_ctx: hook_ctx
207
+ ),
208
+ response: http_response
209
+ )
210
+ response_data = http_response.env.response_body
211
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::DuplicateReferenceIdErrorResponse)
212
+ obj.raw_response = http_response
213
+ raise obj
214
+ else
215
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
216
+ end
217
+ elsif Utils.match_status_code(http_response.status, ['422'])
218
+ if Utils.match_content_type(content_type, 'application/json')
219
+ http_response = @sdk_configuration.hooks.after_success(
220
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
221
+ hook_ctx: hook_ctx
222
+ ),
223
+ response: http_response
224
+ )
225
+ response_data = http_response.env.response_body
226
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ValidationErrorResponse)
227
+ obj.raw_response = http_response
228
+ raise obj
229
+ else
230
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
231
+ end
232
+ elsif Utils.match_status_code(http_response.status, ['4XX'])
233
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
234
+ elsif Utils.match_status_code(http_response.status, ['5XX'])
235
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
236
+ else
237
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown status code received'
238
+
239
+ end
240
+ end
241
+
242
+
243
+ sig { params(limit: T.nilable(::Integer), offset: T.nilable(::Integer), retries: T.nilable(Utils::RetryConfig), timeout_ms: T.nilable(Integer)).returns(Models::Operations::GetAllPlaylistsResponse) }
244
+ def get_all_playlists(limit: nil, offset: nil, retries: nil, timeout_ms: nil)
245
+ # get_all_playlists - Get all playlists
246
+ # This endpoint retrieves all playlists present within a specified workspace. It allows users to view the collection of playlists that have been created, whether manual or smart, along with their associated metadata.
247
+ # #### How it works
248
+ #
249
+ # - When a user sends a GET request to this endpoint, FastPix returns a list of all playlists in the workspace, including details such as playlist IDs, titles, creation mode (manual or smart), and other relevant metadata.
250
+ #
251
+ # #### Example
252
+ #
253
+ # An e-learning platform requests all playlists within a workspace to display an overview of available learning paths. The response includes multiple playlists like "Beginner Python Series" and "Advanced Java Tutorials," enabling the platform to show users a catalog of curated content collections.
254
+ request = Models::Operations::GetAllPlaylistsRequest.new(
255
+ limit: limit,
256
+ offset: offset
257
+ )
258
+ url, params = @sdk_configuration.get_server_details
259
+ base_url = Utils.template_url(url, params)
260
+ url = "#{base_url}/on-demand/playlists"
261
+ headers = {}
262
+ headers = T.cast(headers, T::Hash[String, String])
263
+ query_params = Utils.get_query_params(Models::Operations::GetAllPlaylistsRequest, request, nil)
264
+ headers['Accept'] = 'application/json'
265
+ headers['user-agent'] = @sdk_configuration.user_agent
266
+ retries ||= @sdk_configuration.retry_config
267
+ retries ||= Utils::RetryConfig.new(
268
+ backoff: Utils::BackoffStrategy.new(
269
+ exponent: 1.5,
270
+ initial_interval: 1000,
271
+ max_elapsed_time: 3_600_000,
272
+ max_interval: 10_000
273
+ ),
274
+ retry_connection_errors: true,
275
+ strategy: 'backoff'
276
+ )
277
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
278
+ retry_options[:retry_statuses] = [408, 429, 500, 502, 503, 504]
279
+
280
+ security = @sdk_configuration.security_source&.call
281
+
282
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
283
+ timeout ||= @sdk_configuration.timeout
284
+
285
+
286
+ connection = @sdk_configuration.client.dup
287
+ connection.request :retry, retry_options
288
+
289
+ hook_ctx = SDKHooks::HookContext.new(
290
+ config: @sdk_configuration,
291
+ base_url: base_url,
292
+ oauth2_scopes: nil,
293
+ operation_id: 'get-all-playlists',
294
+ security_source: @sdk_configuration.security_source
295
+ )
296
+
297
+ error = T.let(nil, T.nilable(StandardError))
298
+ http_response = T.let(nil, T.nilable(Faraday::Response))
299
+
300
+
301
+ begin
302
+ http_response = T.must(connection).get(url) do |req|
303
+ req.headers.merge!(headers)
304
+ req.options.timeout = timeout unless timeout.nil?
305
+ req.params = query_params
306
+ Utils.configure_request_security(req, security)
307
+
308
+ @sdk_configuration.hooks.before_request(
309
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
310
+ hook_ctx: hook_ctx
311
+ ),
312
+ request: req
313
+ )
314
+ end
315
+ rescue StandardError => e
316
+ error = e
317
+ ensure
318
+ if http_response.nil? || Utils.error_status?(http_response.status)
319
+ http_response = @sdk_configuration.hooks.after_error(
320
+ error: error,
321
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
322
+ hook_ctx: hook_ctx
323
+ ),
324
+ response: http_response
325
+ )
326
+ else
327
+ http_response = @sdk_configuration.hooks.after_success(
328
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
329
+ hook_ctx: hook_ctx
330
+ ),
331
+ response: http_response
332
+ )
333
+ end
334
+
335
+ if http_response.nil?
336
+ raise error if !error.nil?
337
+ raise 'no response'
338
+ end
339
+ end
340
+
341
+ content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
342
+ if Utils.match_status_code(http_response.status, ['200'])
343
+ if Utils.match_content_type(content_type, 'application/json')
344
+ http_response = @sdk_configuration.hooks.after_success(
345
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
346
+ hook_ctx: hook_ctx
347
+ ),
348
+ response: http_response
349
+ )
350
+ response_data = http_response.env.response_body
351
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Components::GetAllPlaylistsResponse)
352
+ response = Models::Operations::GetAllPlaylistsResponse.new(
353
+ status_code: http_response.status,
354
+ content_type: content_type,
355
+ raw_response: http_response,
356
+ get_all_playlists_response: T.unsafe(obj)
357
+ )
358
+
359
+ return response
360
+ else
361
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
362
+ end
363
+ elsif Utils.match_status_code(http_response.status, ['401'])
364
+ if Utils.match_content_type(content_type, 'application/json')
365
+ http_response = @sdk_configuration.hooks.after_success(
366
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
367
+ hook_ctx: hook_ctx
368
+ ),
369
+ response: http_response
370
+ )
371
+ response_data = http_response.env.response_body
372
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnauthorizedError)
373
+ obj.raw_response = http_response
374
+ raise obj
375
+ else
376
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
377
+ end
378
+ elsif Utils.match_status_code(http_response.status, ['4XX'])
379
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
380
+ elsif Utils.match_status_code(http_response.status, ['5XX'])
381
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
382
+ else
383
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown status code received'
384
+
385
+ end
386
+ end
387
+
388
+
389
+ sig { params(playlist_id: ::String, retries: T.nilable(Utils::RetryConfig), timeout_ms: T.nilable(Integer)).returns(Models::Operations::GetPlaylistByIdResponse) }
390
+ def get_playlist_by_id(playlist_id:, retries: nil, timeout_ms: nil)
391
+ # get_playlist_by_id - Get a playlist by ID
392
+ # This endpoint retrieves detailed information about a specific playlist using its unique `playlistId`. It provides comprehensive metadata about the playlist, including its title, creation mode (manual or smart), media items along with the metadata of each media in the playlist.
393
+ #
394
+ #
395
+ # #### Example
396
+ # An e-learning platform requests details for the playlist "Beginner Python Series" by providing its unique `playlistId`. The response includes the playlist's title, creation mode, and the ordered list of video tutorials contained within, enabling the platform to present the full learning path to users.
397
+ request = Models::Operations::GetPlaylistByIdRequest.new(
398
+ playlist_id: playlist_id
399
+ )
400
+ url, params = @sdk_configuration.get_server_details
401
+ base_url = Utils.template_url(url, params)
402
+ url = Utils.generate_url(
403
+ Models::Operations::GetPlaylistByIdRequest,
404
+ base_url,
405
+ '/on-demand/playlists/{playlistId}',
406
+ request
407
+ )
408
+ headers = {}
409
+ headers = T.cast(headers, T::Hash[String, String])
410
+ headers['Accept'] = 'application/json'
411
+ headers['user-agent'] = @sdk_configuration.user_agent
412
+ retries ||= @sdk_configuration.retry_config
413
+ retries ||= Utils::RetryConfig.new(
414
+ backoff: Utils::BackoffStrategy.new(
415
+ exponent: 1.5,
416
+ initial_interval: 1000,
417
+ max_elapsed_time: 3_600_000,
418
+ max_interval: 10_000
419
+ ),
420
+ retry_connection_errors: true,
421
+ strategy: 'backoff'
422
+ )
423
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
424
+ retry_options[:retry_statuses] = [408, 429, 500, 502, 503, 504]
425
+
426
+ security = @sdk_configuration.security_source&.call
427
+
428
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
429
+ timeout ||= @sdk_configuration.timeout
430
+
431
+
432
+ connection = @sdk_configuration.client.dup
433
+ connection.request :retry, retry_options
434
+
435
+ hook_ctx = SDKHooks::HookContext.new(
436
+ config: @sdk_configuration,
437
+ base_url: base_url,
438
+ oauth2_scopes: nil,
439
+ operation_id: 'get-playlist-by-id',
440
+ security_source: @sdk_configuration.security_source
441
+ )
442
+
443
+ error = T.let(nil, T.nilable(StandardError))
444
+ http_response = T.let(nil, T.nilable(Faraday::Response))
445
+
446
+
447
+ begin
448
+ http_response = T.must(connection).get(url) do |req|
449
+ req.headers.merge!(headers)
450
+ req.options.timeout = timeout unless timeout.nil?
451
+ Utils.configure_request_security(req, security)
452
+
453
+ @sdk_configuration.hooks.before_request(
454
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
455
+ hook_ctx: hook_ctx
456
+ ),
457
+ request: req
458
+ )
459
+ end
460
+ rescue StandardError => e
461
+ error = e
462
+ ensure
463
+ if http_response.nil? || Utils.error_status?(http_response.status)
464
+ http_response = @sdk_configuration.hooks.after_error(
465
+ error: error,
466
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
467
+ hook_ctx: hook_ctx
468
+ ),
469
+ response: http_response
470
+ )
471
+ else
472
+ http_response = @sdk_configuration.hooks.after_success(
473
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
474
+ hook_ctx: hook_ctx
475
+ ),
476
+ response: http_response
477
+ )
478
+ end
479
+
480
+ if http_response.nil?
481
+ raise error if !error.nil?
482
+ raise 'no response'
483
+ end
484
+ end
485
+
486
+ content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
487
+ if Utils.match_status_code(http_response.status, ['200'])
488
+ if Utils.match_content_type(content_type, 'application/json')
489
+ http_response = @sdk_configuration.hooks.after_success(
490
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
491
+ hook_ctx: hook_ctx
492
+ ),
493
+ response: http_response
494
+ )
495
+ response_data = http_response.env.response_body
496
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Components::PlaylistByIdResponse)
497
+ response = Models::Operations::GetPlaylistByIdResponse.new(
498
+ status_code: http_response.status,
499
+ content_type: content_type,
500
+ raw_response: http_response,
501
+ playlist_by_id_response: T.unsafe(obj)
502
+ )
503
+
504
+ return response
505
+ else
506
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
507
+ end
508
+ elsif Utils.match_status_code(http_response.status, ['401'])
509
+ if Utils.match_content_type(content_type, 'application/json')
510
+ http_response = @sdk_configuration.hooks.after_success(
511
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
512
+ hook_ctx: hook_ctx
513
+ ),
514
+ response: http_response
515
+ )
516
+ response_data = http_response.env.response_body
517
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnauthorizedError)
518
+ obj.raw_response = http_response
519
+ raise obj
520
+ else
521
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
522
+ end
523
+ elsif Utils.match_status_code(http_response.status, ['404'])
524
+ if Utils.match_content_type(content_type, 'application/json')
525
+ http_response = @sdk_configuration.hooks.after_success(
526
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
527
+ hook_ctx: hook_ctx
528
+ ),
529
+ response: http_response
530
+ )
531
+ response_data = http_response.env.response_body
532
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::NotFoundError)
533
+ obj.raw_response = http_response
534
+ raise obj
535
+ else
536
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
537
+ end
538
+ elsif Utils.match_status_code(http_response.status, ['422'])
539
+ if Utils.match_content_type(content_type, 'application/json')
540
+ http_response = @sdk_configuration.hooks.after_success(
541
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
542
+ hook_ctx: hook_ctx
543
+ ),
544
+ response: http_response
545
+ )
546
+ response_data = http_response.env.response_body
547
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InvalidPlaylistIdResponseError)
548
+ obj.raw_response = http_response
549
+ raise obj
550
+ else
551
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
552
+ end
553
+ elsif Utils.match_status_code(http_response.status, ['4XX'])
554
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
555
+ elsif Utils.match_status_code(http_response.status, ['5XX'])
556
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
557
+ else
558
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown status code received'
559
+
560
+ end
561
+ end
562
+
563
+
564
+ sig { params(update_playlist_request: Models::Components::UpdatePlaylistRequest, playlist_id: ::String, retries: T.nilable(Utils::RetryConfig), timeout_ms: T.nilable(Integer)).returns(Models::Operations::UpdateAPlaylistResponse) }
565
+ def update_a_playlist(update_playlist_request:, playlist_id:, retries: nil, timeout_ms: nil)
566
+ # update_a_playlist - Update a playlist by ID
567
+ # This endpoint allows you to update the name and description of an existing playlist. It enables modifications to the playlist's metadata without altering the media items or playlist structure.
568
+ # #### How it works
569
+ #
570
+ # - When a user sends a PUT request to this endpoint with the `playlistId` and updated name and description in the request body, FastPix updates the playlist metadata accordingly and returns the updated playlist details.
571
+ #
572
+ # #### Example
573
+ # An e-learning platform updates the playlist titled "Beginner Python Series" to rename it as "Python Basics" and add a more detailed description. The updated metadata is reflected when retrieving the playlist, helping users better understand the playlist content.
574
+ request = Models::Operations::UpdateAPlaylistRequest.new(
575
+ playlist_id: playlist_id,
576
+ update_playlist_request: update_playlist_request
577
+ )
578
+ url, params = @sdk_configuration.get_server_details
579
+ base_url = Utils.template_url(url, params)
580
+ url = Utils.generate_url(
581
+ Models::Operations::UpdateAPlaylistRequest,
582
+ base_url,
583
+ '/on-demand/playlists/{playlistId}',
584
+ request
585
+ )
586
+ headers = {}
587
+ headers = T.cast(headers, T::Hash[String, String])
588
+ req_content_type, data, form = Utils.serialize_request_body(request, false, false, :update_playlist_request, :json)
589
+ headers['content-type'] = req_content_type
590
+ raise StandardError, 'request body is required' if data.nil? && form.nil?
591
+
592
+ if form
593
+ body = Utils.encode_form(form)
594
+ elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
595
+ body = URI.encode_www_form(T.cast(data, T::Hash[Symbol, Object]))
596
+ else
597
+ body = data
598
+ end
599
+ headers['Accept'] = 'application/json'
600
+ headers['user-agent'] = @sdk_configuration.user_agent
601
+ retries ||= @sdk_configuration.retry_config
602
+ retries ||= Utils::RetryConfig.new(
603
+ backoff: Utils::BackoffStrategy.new(
604
+ exponent: 1.5,
605
+ initial_interval: 1000,
606
+ max_elapsed_time: 3_600_000,
607
+ max_interval: 10_000
608
+ ),
609
+ retry_connection_errors: true,
610
+ strategy: 'backoff'
611
+ )
612
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
613
+ retry_options[:retry_statuses] = [408, 429, 500, 502, 503, 504]
614
+
615
+ security = @sdk_configuration.security_source&.call
616
+
617
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
618
+ timeout ||= @sdk_configuration.timeout
619
+
620
+
621
+ connection = @sdk_configuration.client.dup
622
+ connection.request :retry, retry_options
623
+
624
+ hook_ctx = SDKHooks::HookContext.new(
625
+ config: @sdk_configuration,
626
+ base_url: base_url,
627
+ oauth2_scopes: nil,
628
+ operation_id: 'update-a-playlist',
629
+ security_source: @sdk_configuration.security_source
630
+ )
631
+
632
+ error = T.let(nil, T.nilable(StandardError))
633
+ http_response = T.let(nil, T.nilable(Faraday::Response))
634
+
635
+
636
+ begin
637
+ http_response = T.must(connection).put(url) do |req|
638
+ req.body = body
639
+ req.headers.merge!(headers)
640
+ req.options.timeout = timeout unless timeout.nil?
641
+ Utils.configure_request_security(req, security)
642
+
643
+ @sdk_configuration.hooks.before_request(
644
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
645
+ hook_ctx: hook_ctx
646
+ ),
647
+ request: req
648
+ )
649
+ end
650
+ rescue StandardError => e
651
+ error = e
652
+ ensure
653
+ if http_response.nil? || Utils.error_status?(http_response.status)
654
+ http_response = @sdk_configuration.hooks.after_error(
655
+ error: error,
656
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
657
+ hook_ctx: hook_ctx
658
+ ),
659
+ response: http_response
660
+ )
661
+ else
662
+ http_response = @sdk_configuration.hooks.after_success(
663
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
664
+ hook_ctx: hook_ctx
665
+ ),
666
+ response: http_response
667
+ )
668
+ end
669
+
670
+ if http_response.nil?
671
+ raise error if !error.nil?
672
+ raise 'no response'
673
+ end
674
+ end
675
+
676
+ content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
677
+ if Utils.match_status_code(http_response.status, ['201'])
678
+ if Utils.match_content_type(content_type, 'application/json')
679
+ http_response = @sdk_configuration.hooks.after_success(
680
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
681
+ hook_ctx: hook_ctx
682
+ ),
683
+ response: http_response
684
+ )
685
+ response_data = http_response.env.response_body
686
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Components::PlaylistCreatedResponse)
687
+ response = Models::Operations::UpdateAPlaylistResponse.new(
688
+ status_code: http_response.status,
689
+ content_type: content_type,
690
+ raw_response: http_response,
691
+ playlist_created_response: T.unsafe(obj)
692
+ )
693
+
694
+ return response
695
+ else
696
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
697
+ end
698
+ elsif Utils.match_status_code(http_response.status, ['401'])
699
+ if Utils.match_content_type(content_type, 'application/json')
700
+ http_response = @sdk_configuration.hooks.after_success(
701
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
702
+ hook_ctx: hook_ctx
703
+ ),
704
+ response: http_response
705
+ )
706
+ response_data = http_response.env.response_body
707
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnauthorizedError)
708
+ obj.raw_response = http_response
709
+ raise obj
710
+ else
711
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
712
+ end
713
+ elsif Utils.match_status_code(http_response.status, ['403'])
714
+ if Utils.match_content_type(content_type, 'application/json')
715
+ http_response = @sdk_configuration.hooks.after_success(
716
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
717
+ hook_ctx: hook_ctx
718
+ ),
719
+ response: http_response
720
+ )
721
+ response_data = http_response.env.response_body
722
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InvalidPermissionError)
723
+ obj.raw_response = http_response
724
+ raise obj
725
+ else
726
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
727
+ end
728
+ elsif Utils.match_status_code(http_response.status, ['422'])
729
+ if Utils.match_content_type(content_type, 'application/json')
730
+ http_response = @sdk_configuration.hooks.after_success(
731
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
732
+ hook_ctx: hook_ctx
733
+ ),
734
+ response: http_response
735
+ )
736
+ response_data = http_response.env.response_body
737
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InvalidPlaylistIdResponseError)
738
+ obj.raw_response = http_response
739
+ raise obj
740
+ else
741
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
742
+ end
743
+ elsif Utils.match_status_code(http_response.status, ['4XX'])
744
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
745
+ elsif Utils.match_status_code(http_response.status, ['5XX'])
746
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
747
+ else
748
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown status code received'
749
+
750
+ end
751
+ end
752
+
753
+
754
+ sig { params(playlist_id: ::String, retries: T.nilable(Utils::RetryConfig), timeout_ms: T.nilable(Integer)).returns(Models::Operations::DeleteAPlaylistResponse) }
755
+ def delete_a_playlist(playlist_id:, retries: nil, timeout_ms: nil)
756
+ # delete_a_playlist - Delete a playlist by ID
757
+ # This endpoint allows you to delete an existing playlist from the workspace. Once deleted, the playlist and its metadata are permanently removed and cannot be recovered.
758
+ # #### How it works
759
+ # - When a user sends a DELETE request to this endpoint with the `playlistId`, FastPix removes the specified playlist from the workspace and returns a confirmation of successful deletion.
760
+ #
761
+ # #### Example
762
+ # An e-learning platform deletes an outdated playlist titled "Old Python Tutorials" by providing its unique playlist ID. The platform receives confirmation that the playlist has been removed, ensuring learners no longer see the obsolete content.
763
+ request = Models::Operations::DeleteAPlaylistRequest.new(
764
+ playlist_id: playlist_id
765
+ )
766
+ url, params = @sdk_configuration.get_server_details
767
+ base_url = Utils.template_url(url, params)
768
+ url = Utils.generate_url(
769
+ Models::Operations::DeleteAPlaylistRequest,
770
+ base_url,
771
+ '/on-demand/playlists/{playlistId}',
772
+ request
773
+ )
774
+ headers = {}
775
+ headers = T.cast(headers, T::Hash[String, String])
776
+ headers['Accept'] = 'application/json'
777
+ headers['user-agent'] = @sdk_configuration.user_agent
778
+ retries ||= @sdk_configuration.retry_config
779
+ retries ||= Utils::RetryConfig.new(
780
+ backoff: Utils::BackoffStrategy.new(
781
+ exponent: 1.5,
782
+ initial_interval: 1000,
783
+ max_elapsed_time: 3_600_000,
784
+ max_interval: 10_000
785
+ ),
786
+ retry_connection_errors: true,
787
+ strategy: 'backoff'
788
+ )
789
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
790
+ retry_options[:retry_statuses] = [408, 429, 500, 502, 503, 504]
791
+
792
+ security = @sdk_configuration.security_source&.call
793
+
794
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
795
+ timeout ||= @sdk_configuration.timeout
796
+
797
+
798
+ connection = @sdk_configuration.client.dup
799
+ connection.request :retry, retry_options
800
+
801
+ hook_ctx = SDKHooks::HookContext.new(
802
+ config: @sdk_configuration,
803
+ base_url: base_url,
804
+ oauth2_scopes: nil,
805
+ operation_id: 'delete-a-playlist',
806
+ security_source: @sdk_configuration.security_source
807
+ )
808
+
809
+ error = T.let(nil, T.nilable(StandardError))
810
+ http_response = T.let(nil, T.nilable(Faraday::Response))
811
+
812
+
813
+ begin
814
+ http_response = T.must(connection).delete(url) do |req|
815
+ req.headers.merge!(headers)
816
+ req.options.timeout = timeout unless timeout.nil?
817
+ Utils.configure_request_security(req, security)
818
+
819
+ @sdk_configuration.hooks.before_request(
820
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
821
+ hook_ctx: hook_ctx
822
+ ),
823
+ request: req
824
+ )
825
+ end
826
+ rescue StandardError => e
827
+ error = e
828
+ ensure
829
+ if http_response.nil? || Utils.error_status?(http_response.status)
830
+ http_response = @sdk_configuration.hooks.after_error(
831
+ error: error,
832
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
833
+ hook_ctx: hook_ctx
834
+ ),
835
+ response: http_response
836
+ )
837
+ else
838
+ http_response = @sdk_configuration.hooks.after_success(
839
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
840
+ hook_ctx: hook_ctx
841
+ ),
842
+ response: http_response
843
+ )
844
+ end
845
+
846
+ if http_response.nil?
847
+ raise error if !error.nil?
848
+ raise 'no response'
849
+ end
850
+ end
851
+
852
+ content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
853
+ if Utils.match_status_code(http_response.status, ['200'])
854
+ if Utils.match_content_type(content_type, 'application/json')
855
+ http_response = @sdk_configuration.hooks.after_success(
856
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
857
+ hook_ctx: hook_ctx
858
+ ),
859
+ response: http_response
860
+ )
861
+ response_data = http_response.env.response_body
862
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Components::SuccessResponse)
863
+ response = Models::Operations::DeleteAPlaylistResponse.new(
864
+ status_code: http_response.status,
865
+ content_type: content_type,
866
+ raw_response: http_response,
867
+ success_response: T.unsafe(obj)
868
+ )
869
+
870
+ return response
871
+ else
872
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
873
+ end
874
+ elsif Utils.match_status_code(http_response.status, ['401'])
875
+ if Utils.match_content_type(content_type, 'application/json')
876
+ http_response = @sdk_configuration.hooks.after_success(
877
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
878
+ hook_ctx: hook_ctx
879
+ ),
880
+ response: http_response
881
+ )
882
+ response_data = http_response.env.response_body
883
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnauthorizedError)
884
+ obj.raw_response = http_response
885
+ raise obj
886
+ else
887
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
888
+ end
889
+ elsif Utils.match_status_code(http_response.status, ['403'])
890
+ if Utils.match_content_type(content_type, 'application/json')
891
+ http_response = @sdk_configuration.hooks.after_success(
892
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
893
+ hook_ctx: hook_ctx
894
+ ),
895
+ response: http_response
896
+ )
897
+ response_data = http_response.env.response_body
898
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InvalidPermissionError)
899
+ obj.raw_response = http_response
900
+ raise obj
901
+ else
902
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
903
+ end
904
+ elsif Utils.match_status_code(http_response.status, ['404'])
905
+ if Utils.match_content_type(content_type, 'application/json')
906
+ http_response = @sdk_configuration.hooks.after_success(
907
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
908
+ hook_ctx: hook_ctx
909
+ ),
910
+ response: http_response
911
+ )
912
+ response_data = http_response.env.response_body
913
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::NotFoundError)
914
+ obj.raw_response = http_response
915
+ raise obj
916
+ else
917
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
918
+ end
919
+ elsif Utils.match_status_code(http_response.status, ['422'])
920
+ if Utils.match_content_type(content_type, 'application/json')
921
+ http_response = @sdk_configuration.hooks.after_success(
922
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
923
+ hook_ctx: hook_ctx
924
+ ),
925
+ response: http_response
926
+ )
927
+ response_data = http_response.env.response_body
928
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InvalidPlaylistIdResponseError)
929
+ obj.raw_response = http_response
930
+ raise obj
931
+ else
932
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
933
+ end
934
+ elsif Utils.match_status_code(http_response.status, ['4XX'])
935
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
936
+ elsif Utils.match_status_code(http_response.status, ['5XX'])
937
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
938
+ else
939
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown status code received'
940
+
941
+ end
942
+ end
943
+
944
+
945
+ sig { params(media_ids_request: Models::Components::MediaIdsRequest, playlist_id: ::String, retries: T.nilable(Utils::RetryConfig), timeout_ms: T.nilable(Integer)).returns(Models::Operations::AddMediaToPlaylistResponse) }
946
+ def add_media_to_playlist(media_ids_request:, playlist_id:, retries: nil, timeout_ms: nil)
947
+ # add_media_to_playlist - Add media to a playlist by ID
948
+ # This endpoint allows you to add one or more media items to an existing playlist. By passing the media ID(s) in the request, the specified media items are appended to the playlist in the order provided.
949
+ # #### How it works
950
+ #
951
+ # - When a user sends a PATCH request to this endpoint with the `playlistId` as path parameter and a list of media ID(s) in the request body, FastPix adds the specified media items to the playlist and returns the updated playlist details.
952
+ #
953
+ # #### Example
954
+ # An e-learning platform adds new video tutorials to the "Beginner Python Series" playlist by sending their media IDs in the request. The playlist is updated with the new content, ensuring learners have access to the latest tutorials in sequence.
955
+ request = Models::Operations::AddMediaToPlaylistRequest.new(
956
+ playlist_id: playlist_id,
957
+ media_ids_request: media_ids_request
958
+ )
959
+ url, params = @sdk_configuration.get_server_details
960
+ base_url = Utils.template_url(url, params)
961
+ url = Utils.generate_url(
962
+ Models::Operations::AddMediaToPlaylistRequest,
963
+ base_url,
964
+ '/on-demand/playlists/{playlistId}/media',
965
+ request
966
+ )
967
+ headers = {}
968
+ headers = T.cast(headers, T::Hash[String, String])
969
+ req_content_type, data, form = Utils.serialize_request_body(request, false, false, :media_ids_request, :json)
970
+ headers['content-type'] = req_content_type
971
+ raise StandardError, 'request body is required' if data.nil? && form.nil?
972
+
973
+ if form
974
+ body = Utils.encode_form(form)
975
+ elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
976
+ body = URI.encode_www_form(T.cast(data, T::Hash[Symbol, Object]))
977
+ else
978
+ body = data
979
+ end
980
+ headers['Accept'] = 'application/json'
981
+ headers['user-agent'] = @sdk_configuration.user_agent
982
+ retries ||= @sdk_configuration.retry_config
983
+ retries ||= Utils::RetryConfig.new(
984
+ backoff: Utils::BackoffStrategy.new(
985
+ exponent: 1.5,
986
+ initial_interval: 1000,
987
+ max_elapsed_time: 3_600_000,
988
+ max_interval: 10_000
989
+ ),
990
+ retry_connection_errors: true,
991
+ strategy: 'backoff'
992
+ )
993
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
994
+ retry_options[:retry_statuses] = [408, 429, 500, 502, 503, 504]
995
+
996
+ security = @sdk_configuration.security_source&.call
997
+
998
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
999
+ timeout ||= @sdk_configuration.timeout
1000
+
1001
+
1002
+ connection = @sdk_configuration.client.dup
1003
+ connection.request :retry, retry_options
1004
+
1005
+ hook_ctx = SDKHooks::HookContext.new(
1006
+ config: @sdk_configuration,
1007
+ base_url: base_url,
1008
+ oauth2_scopes: nil,
1009
+ operation_id: 'add-media-to-playlist',
1010
+ security_source: @sdk_configuration.security_source
1011
+ )
1012
+
1013
+ error = T.let(nil, T.nilable(StandardError))
1014
+ http_response = T.let(nil, T.nilable(Faraday::Response))
1015
+
1016
+
1017
+ begin
1018
+ http_response = T.must(connection).patch(url) do |req|
1019
+ req.body = body
1020
+ req.headers.merge!(headers)
1021
+ req.options.timeout = timeout unless timeout.nil?
1022
+ Utils.configure_request_security(req, security)
1023
+
1024
+ @sdk_configuration.hooks.before_request(
1025
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
1026
+ hook_ctx: hook_ctx
1027
+ ),
1028
+ request: req
1029
+ )
1030
+ end
1031
+ rescue StandardError => e
1032
+ error = e
1033
+ ensure
1034
+ if http_response.nil? || Utils.error_status?(http_response.status)
1035
+ http_response = @sdk_configuration.hooks.after_error(
1036
+ error: error,
1037
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
1038
+ hook_ctx: hook_ctx
1039
+ ),
1040
+ response: http_response
1041
+ )
1042
+ else
1043
+ http_response = @sdk_configuration.hooks.after_success(
1044
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1045
+ hook_ctx: hook_ctx
1046
+ ),
1047
+ response: http_response
1048
+ )
1049
+ end
1050
+
1051
+ if http_response.nil?
1052
+ raise error if !error.nil?
1053
+ raise 'no response'
1054
+ end
1055
+ end
1056
+
1057
+ content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
1058
+ if Utils.match_status_code(http_response.status, ['201'])
1059
+ if Utils.match_content_type(content_type, 'application/json')
1060
+ http_response = @sdk_configuration.hooks.after_success(
1061
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1062
+ hook_ctx: hook_ctx
1063
+ ),
1064
+ response: http_response
1065
+ )
1066
+ response_data = http_response.env.response_body
1067
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Components::PlaylistByIdResponse)
1068
+ response = Models::Operations::AddMediaToPlaylistResponse.new(
1069
+ status_code: http_response.status,
1070
+ content_type: content_type,
1071
+ raw_response: http_response,
1072
+ playlist_by_id_response: T.unsafe(obj)
1073
+ )
1074
+
1075
+ return response
1076
+ else
1077
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1078
+ end
1079
+ elsif Utils.match_status_code(http_response.status, ['401'])
1080
+ if Utils.match_content_type(content_type, 'application/json')
1081
+ http_response = @sdk_configuration.hooks.after_success(
1082
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1083
+ hook_ctx: hook_ctx
1084
+ ),
1085
+ response: http_response
1086
+ )
1087
+ response_data = http_response.env.response_body
1088
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnauthorizedError)
1089
+ obj.raw_response = http_response
1090
+ raise obj
1091
+ else
1092
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1093
+ end
1094
+ elsif Utils.match_status_code(http_response.status, ['403'])
1095
+ if Utils.match_content_type(content_type, 'application/json')
1096
+ http_response = @sdk_configuration.hooks.after_success(
1097
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1098
+ hook_ctx: hook_ctx
1099
+ ),
1100
+ response: http_response
1101
+ )
1102
+ response_data = http_response.env.response_body
1103
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InvalidPermissionError)
1104
+ obj.raw_response = http_response
1105
+ raise obj
1106
+ else
1107
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1108
+ end
1109
+ elsif Utils.match_status_code(http_response.status, ['404'])
1110
+ if Utils.match_content_type(content_type, 'application/json')
1111
+ http_response = @sdk_configuration.hooks.after_success(
1112
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1113
+ hook_ctx: hook_ctx
1114
+ ),
1115
+ response: http_response
1116
+ )
1117
+ response_data = http_response.env.response_body
1118
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::NotFoundError)
1119
+ obj.raw_response = http_response
1120
+ raise obj
1121
+ else
1122
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1123
+ end
1124
+ elsif Utils.match_status_code(http_response.status, ['422'])
1125
+ if Utils.match_content_type(content_type, 'application/json')
1126
+ http_response = @sdk_configuration.hooks.after_success(
1127
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1128
+ hook_ctx: hook_ctx
1129
+ ),
1130
+ response: http_response
1131
+ )
1132
+ response_data = http_response.env.response_body
1133
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InvalidPlaylistIdResponseError)
1134
+ obj.raw_response = http_response
1135
+ raise obj
1136
+ else
1137
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1138
+ end
1139
+ elsif Utils.match_status_code(http_response.status, ['4XX'])
1140
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
1141
+ elsif Utils.match_status_code(http_response.status, ['5XX'])
1142
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
1143
+ else
1144
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown status code received'
1145
+
1146
+ end
1147
+ end
1148
+
1149
+
1150
+ sig { params(media_ids_request: Models::Components::MediaIdsRequest, playlist_id: ::String, retries: T.nilable(Utils::RetryConfig), timeout_ms: T.nilable(Integer)).returns(Models::Operations::ChangeMediaOrderInPlaylistResponse) }
1151
+ def change_media_order_in_playlist(media_ids_request:, playlist_id:, retries: nil, timeout_ms: nil)
1152
+ # change_media_order_in_playlist - Change media order in a playlist by ID
1153
+ # This endpoint allows you to change the order of media items within a playlist. By passing the complete list of media IDs in the desired sequence, the playlist's play order is updated accordingly.
1154
+ # #### How it works
1155
+ #
1156
+ # - When a user sends a PUT request to this endpoint with the `playlistId` as path parameter and the reordered list of all media IDs in the request body, FastPix updates the playlist to reflect the new media sequence and returns the updated playlist details.
1157
+ #
1158
+ # #### Example
1159
+ # An e-learning platform rearranges the "Beginner Python Series" playlist by submitting a reordered list of media IDs. The playlist now follows the new sequence, providing learners with a better structured learning path.
1160
+ request = Models::Operations::ChangeMediaOrderInPlaylistRequest.new(
1161
+ playlist_id: playlist_id,
1162
+ media_ids_request: media_ids_request
1163
+ )
1164
+ url, params = @sdk_configuration.get_server_details
1165
+ base_url = Utils.template_url(url, params)
1166
+ url = Utils.generate_url(
1167
+ Models::Operations::ChangeMediaOrderInPlaylistRequest,
1168
+ base_url,
1169
+ '/on-demand/playlists/{playlistId}/media',
1170
+ request
1171
+ )
1172
+ headers = {}
1173
+ headers = T.cast(headers, T::Hash[String, String])
1174
+ req_content_type, data, form = Utils.serialize_request_body(request, false, false, :media_ids_request, :json)
1175
+ headers['content-type'] = req_content_type
1176
+ raise StandardError, 'request body is required' if data.nil? && form.nil?
1177
+
1178
+ if form
1179
+ body = Utils.encode_form(form)
1180
+ elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
1181
+ body = URI.encode_www_form(T.cast(data, T::Hash[Symbol, Object]))
1182
+ else
1183
+ body = data
1184
+ end
1185
+ headers['Accept'] = 'application/json'
1186
+ headers['user-agent'] = @sdk_configuration.user_agent
1187
+ retries ||= @sdk_configuration.retry_config
1188
+ retries ||= Utils::RetryConfig.new(
1189
+ backoff: Utils::BackoffStrategy.new(
1190
+ exponent: 1.5,
1191
+ initial_interval: 1000,
1192
+ max_elapsed_time: 3_600_000,
1193
+ max_interval: 10_000
1194
+ ),
1195
+ retry_connection_errors: true,
1196
+ strategy: 'backoff'
1197
+ )
1198
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1199
+ retry_options[:retry_statuses] = [408, 429, 500, 502, 503, 504]
1200
+
1201
+ security = @sdk_configuration.security_source&.call
1202
+
1203
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
1204
+ timeout ||= @sdk_configuration.timeout
1205
+
1206
+
1207
+ connection = @sdk_configuration.client.dup
1208
+ connection.request :retry, retry_options
1209
+
1210
+ hook_ctx = SDKHooks::HookContext.new(
1211
+ config: @sdk_configuration,
1212
+ base_url: base_url,
1213
+ oauth2_scopes: nil,
1214
+ operation_id: 'change-media-order-in-playlist',
1215
+ security_source: @sdk_configuration.security_source
1216
+ )
1217
+
1218
+ error = T.let(nil, T.nilable(StandardError))
1219
+ http_response = T.let(nil, T.nilable(Faraday::Response))
1220
+
1221
+
1222
+ begin
1223
+ http_response = T.must(connection).put(url) do |req|
1224
+ req.body = body
1225
+ req.headers.merge!(headers)
1226
+ req.options.timeout = timeout unless timeout.nil?
1227
+ Utils.configure_request_security(req, security)
1228
+
1229
+ @sdk_configuration.hooks.before_request(
1230
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
1231
+ hook_ctx: hook_ctx
1232
+ ),
1233
+ request: req
1234
+ )
1235
+ end
1236
+ rescue StandardError => e
1237
+ error = e
1238
+ ensure
1239
+ if http_response.nil? || Utils.error_status?(http_response.status)
1240
+ http_response = @sdk_configuration.hooks.after_error(
1241
+ error: error,
1242
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
1243
+ hook_ctx: hook_ctx
1244
+ ),
1245
+ response: http_response
1246
+ )
1247
+ else
1248
+ http_response = @sdk_configuration.hooks.after_success(
1249
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1250
+ hook_ctx: hook_ctx
1251
+ ),
1252
+ response: http_response
1253
+ )
1254
+ end
1255
+
1256
+ if http_response.nil?
1257
+ raise error if !error.nil?
1258
+ raise 'no response'
1259
+ end
1260
+ end
1261
+
1262
+ content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
1263
+ if Utils.match_status_code(http_response.status, ['200'])
1264
+ if Utils.match_content_type(content_type, 'application/json')
1265
+ http_response = @sdk_configuration.hooks.after_success(
1266
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1267
+ hook_ctx: hook_ctx
1268
+ ),
1269
+ response: http_response
1270
+ )
1271
+ response_data = http_response.env.response_body
1272
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Components::PlaylistByIdResponse)
1273
+ response = Models::Operations::ChangeMediaOrderInPlaylistResponse.new(
1274
+ status_code: http_response.status,
1275
+ content_type: content_type,
1276
+ raw_response: http_response,
1277
+ playlist_by_id_response: T.unsafe(obj)
1278
+ )
1279
+
1280
+ return response
1281
+ else
1282
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1283
+ end
1284
+ elsif Utils.match_status_code(http_response.status, ['401'])
1285
+ if Utils.match_content_type(content_type, 'application/json')
1286
+ http_response = @sdk_configuration.hooks.after_success(
1287
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1288
+ hook_ctx: hook_ctx
1289
+ ),
1290
+ response: http_response
1291
+ )
1292
+ response_data = http_response.env.response_body
1293
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnauthorizedError)
1294
+ obj.raw_response = http_response
1295
+ raise obj
1296
+ else
1297
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1298
+ end
1299
+ elsif Utils.match_status_code(http_response.status, ['403'])
1300
+ if Utils.match_content_type(content_type, 'application/json')
1301
+ http_response = @sdk_configuration.hooks.after_success(
1302
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1303
+ hook_ctx: hook_ctx
1304
+ ),
1305
+ response: http_response
1306
+ )
1307
+ response_data = http_response.env.response_body
1308
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InvalidPermissionError)
1309
+ obj.raw_response = http_response
1310
+ raise obj
1311
+ else
1312
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1313
+ end
1314
+ elsif Utils.match_status_code(http_response.status, ['404'])
1315
+ if Utils.match_content_type(content_type, 'application/json')
1316
+ http_response = @sdk_configuration.hooks.after_success(
1317
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1318
+ hook_ctx: hook_ctx
1319
+ ),
1320
+ response: http_response
1321
+ )
1322
+ response_data = http_response.env.response_body
1323
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::NotFoundError)
1324
+ obj.raw_response = http_response
1325
+ raise obj
1326
+ else
1327
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1328
+ end
1329
+ elsif Utils.match_status_code(http_response.status, ['422'])
1330
+ if Utils.match_content_type(content_type, 'application/json')
1331
+ http_response = @sdk_configuration.hooks.after_success(
1332
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1333
+ hook_ctx: hook_ctx
1334
+ ),
1335
+ response: http_response
1336
+ )
1337
+ response_data = http_response.env.response_body
1338
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InvalidPlaylistIdResponseError)
1339
+ obj.raw_response = http_response
1340
+ raise obj
1341
+ else
1342
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1343
+ end
1344
+ elsif Utils.match_status_code(http_response.status, ['4XX'])
1345
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
1346
+ elsif Utils.match_status_code(http_response.status, ['5XX'])
1347
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
1348
+ else
1349
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown status code received'
1350
+
1351
+ end
1352
+ end
1353
+
1354
+
1355
+ sig { params(playlist_id: ::String, media_ids_request: T.nilable(Models::Components::MediaIdsRequest), retries: T.nilable(Utils::RetryConfig), timeout_ms: T.nilable(Integer)).returns(Models::Operations::DeleteMediaFromPlaylistResponse) }
1356
+ def delete_media_from_playlist(playlist_id:, media_ids_request: nil, retries: nil, timeout_ms: nil)
1357
+ # delete_media_from_playlist - Delete media in a playlist by ID
1358
+ # This endpoint allows you to delete one or more media items from an existing playlist. By passing the media ID(s) in the request, the specified media items are removed from the playlist.
1359
+ # #### How it works
1360
+ #
1361
+ # - When a user sends a DELETE request to this endpoint with the playlist ID as the path parameter and the media ID(s) to be removed in the request body, FastPix deletes the specified media items from the playlist and returns the updated playlist details.
1362
+ #
1363
+ # #### Example
1364
+ # An e-learning platform removes outdated video tutorials from the "Beginner Python Series" playlist by specifying their media IDs in the request. The playlist is updated to exclude these items, ensuring learners only access relevant content.
1365
+ request = Models::Operations::DeleteMediaFromPlaylistRequest.new(
1366
+ playlist_id: playlist_id,
1367
+ media_ids_request: media_ids_request
1368
+ )
1369
+ url, params = @sdk_configuration.get_server_details
1370
+ base_url = Utils.template_url(url, params)
1371
+ url = Utils.generate_url(
1372
+ Models::Operations::DeleteMediaFromPlaylistRequest,
1373
+ base_url,
1374
+ '/on-demand/playlists/{playlistId}/media',
1375
+ request
1376
+ )
1377
+ headers = {}
1378
+ headers = T.cast(headers, T::Hash[String, String])
1379
+ req_content_type, data, form = Utils.serialize_request_body(request, false, false, :media_ids_request, :json)
1380
+ headers['content-type'] = req_content_type
1381
+
1382
+ if form
1383
+ body = Utils.encode_form(form)
1384
+ elsif Utils.match_content_type(req_content_type, 'application/x-www-form-urlencoded')
1385
+ body = URI.encode_www_form(T.cast(data, T::Hash[Symbol, Object]))
1386
+ else
1387
+ body = data
1388
+ end
1389
+ headers['Accept'] = 'application/json'
1390
+ headers['user-agent'] = @sdk_configuration.user_agent
1391
+ retries ||= @sdk_configuration.retry_config
1392
+ retries ||= Utils::RetryConfig.new(
1393
+ backoff: Utils::BackoffStrategy.new(
1394
+ exponent: 1.5,
1395
+ initial_interval: 1000,
1396
+ max_elapsed_time: 3_600_000,
1397
+ max_interval: 10_000
1398
+ ),
1399
+ retry_connection_errors: true,
1400
+ strategy: 'backoff'
1401
+ )
1402
+ retry_options = retries.to_faraday_retry_options(initial_time: Time.now)
1403
+ retry_options[:retry_statuses] = [408, 429, 500, 502, 503, 504]
1404
+
1405
+ security = @sdk_configuration.security_source&.call
1406
+
1407
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
1408
+ timeout ||= @sdk_configuration.timeout
1409
+
1410
+
1411
+ connection = @sdk_configuration.client.dup
1412
+ connection.request :retry, retry_options
1413
+
1414
+ hook_ctx = SDKHooks::HookContext.new(
1415
+ config: @sdk_configuration,
1416
+ base_url: base_url,
1417
+ oauth2_scopes: nil,
1418
+ operation_id: 'delete-media-from-playlist',
1419
+ security_source: @sdk_configuration.security_source
1420
+ )
1421
+
1422
+ error = T.let(nil, T.nilable(StandardError))
1423
+ http_response = T.let(nil, T.nilable(Faraday::Response))
1424
+
1425
+
1426
+ begin
1427
+ http_response = T.must(connection).delete(url) do |req|
1428
+ req.body = body
1429
+ req.headers.merge!(headers)
1430
+ req.options.timeout = timeout unless timeout.nil?
1431
+ Utils.configure_request_security(req, security)
1432
+
1433
+ @sdk_configuration.hooks.before_request(
1434
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
1435
+ hook_ctx: hook_ctx
1436
+ ),
1437
+ request: req
1438
+ )
1439
+ end
1440
+ rescue StandardError => e
1441
+ error = e
1442
+ ensure
1443
+ if http_response.nil? || Utils.error_status?(http_response.status)
1444
+ http_response = @sdk_configuration.hooks.after_error(
1445
+ error: error,
1446
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
1447
+ hook_ctx: hook_ctx
1448
+ ),
1449
+ response: http_response
1450
+ )
1451
+ else
1452
+ http_response = @sdk_configuration.hooks.after_success(
1453
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1454
+ hook_ctx: hook_ctx
1455
+ ),
1456
+ response: http_response
1457
+ )
1458
+ end
1459
+
1460
+ if http_response.nil?
1461
+ raise error if !error.nil?
1462
+ raise 'no response'
1463
+ end
1464
+ end
1465
+
1466
+ content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
1467
+ if Utils.match_status_code(http_response.status, ['200'])
1468
+ if Utils.match_content_type(content_type, 'application/json')
1469
+ http_response = @sdk_configuration.hooks.after_success(
1470
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1471
+ hook_ctx: hook_ctx
1472
+ ),
1473
+ response: http_response
1474
+ )
1475
+ response_data = http_response.env.response_body
1476
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Components::PlaylistByIdResponse)
1477
+ response = Models::Operations::DeleteMediaFromPlaylistResponse.new(
1478
+ status_code: http_response.status,
1479
+ content_type: content_type,
1480
+ raw_response: http_response,
1481
+ playlist_by_id_response: T.unsafe(obj)
1482
+ )
1483
+
1484
+ return response
1485
+ else
1486
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1487
+ end
1488
+ elsif Utils.match_status_code(http_response.status, ['401'])
1489
+ if Utils.match_content_type(content_type, 'application/json')
1490
+ http_response = @sdk_configuration.hooks.after_success(
1491
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1492
+ hook_ctx: hook_ctx
1493
+ ),
1494
+ response: http_response
1495
+ )
1496
+ response_data = http_response.env.response_body
1497
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::UnauthorizedError)
1498
+ obj.raw_response = http_response
1499
+ raise obj
1500
+ else
1501
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1502
+ end
1503
+ elsif Utils.match_status_code(http_response.status, ['403'])
1504
+ if Utils.match_content_type(content_type, 'application/json')
1505
+ http_response = @sdk_configuration.hooks.after_success(
1506
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1507
+ hook_ctx: hook_ctx
1508
+ ),
1509
+ response: http_response
1510
+ )
1511
+ response_data = http_response.env.response_body
1512
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InvalidPermissionError)
1513
+ obj.raw_response = http_response
1514
+ raise obj
1515
+ else
1516
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1517
+ end
1518
+ elsif Utils.match_status_code(http_response.status, ['404'])
1519
+ if Utils.match_content_type(content_type, 'application/json')
1520
+ http_response = @sdk_configuration.hooks.after_success(
1521
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1522
+ hook_ctx: hook_ctx
1523
+ ),
1524
+ response: http_response
1525
+ )
1526
+ response_data = http_response.env.response_body
1527
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::NotFoundError)
1528
+ obj.raw_response = http_response
1529
+ raise obj
1530
+ else
1531
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1532
+ end
1533
+ elsif Utils.match_status_code(http_response.status, ['422'])
1534
+ if Utils.match_content_type(content_type, 'application/json')
1535
+ http_response = @sdk_configuration.hooks.after_success(
1536
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
1537
+ hook_ctx: hook_ctx
1538
+ ),
1539
+ response: http_response
1540
+ )
1541
+ response_data = http_response.env.response_body
1542
+ obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::InvalidPlaylistIdResponseError)
1543
+ obj.raw_response = http_response
1544
+ raise obj
1545
+ else
1546
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1547
+ end
1548
+ elsif Utils.match_status_code(http_response.status, ['4XX'])
1549
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
1550
+ elsif Utils.match_status_code(http_response.status, ['5XX'])
1551
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'API error occurred'
1552
+ else
1553
+ raise ::FastpixApiSDK::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown status code received'
1554
+
1555
+ end
1556
+ end
1557
+ end
1558
+ end