ittybit 0.8.7 → 0.9.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 (320) hide show
  1. checksums.yaml +4 -4
  2. data/lib/ittybit/automations/client.rb +61 -58
  3. data/lib/ittybit/automations/types/automations_create_request_workflow_item.rb +81 -0
  4. data/lib/ittybit/automations/types/automations_create_request_workflow_item_kind.rb +20 -0
  5. data/lib/ittybit/automations/types/automations_create_request_workflow_item_next_item.rb +71 -0
  6. data/lib/ittybit/automations/types/automations_create_response.rb +107 -0
  7. data/lib/ittybit/automations/types/automations_create_response_data.rb +133 -0
  8. data/lib/ittybit/automations/types/automations_create_response_data_status.rb +10 -0
  9. data/lib/ittybit/automations/types/automations_create_response_data_trigger.rb +67 -0
  10. data/lib/ittybit/automations/types/automations_create_response_data_workflow_item.rb +61 -0
  11. data/lib/ittybit/automations/types/automations_create_response_data_workflow_item_conditions.rb +86 -0
  12. data/lib/ittybit/automations/types/automations_create_response_data_workflow_item_conditions_conditions_item.rb +72 -0
  13. data/lib/ittybit/automations/types/automations_create_response_data_workflow_item_conditions_next_item.rb +71 -0
  14. data/lib/ittybit/automations/types/automations_create_response_data_workflow_item_ref.rb +83 -0
  15. data/lib/ittybit/automations/types/automations_create_response_data_workflow_item_ref_kind.rb +20 -0
  16. data/lib/ittybit/automations/types/automations_create_response_data_workflow_item_ref_next_item.rb +71 -0
  17. data/lib/ittybit/automations/types/automations_create_response_error.rb +59 -0
  18. data/lib/ittybit/automations/types/automations_create_response_links.rb +69 -0
  19. data/lib/ittybit/automations/types/automations_create_response_meta.rb +98 -0
  20. data/lib/ittybit/automations/types/automations_create_response_meta_type.rb +10 -0
  21. data/lib/ittybit/automations/types/automations_delete_response.rb +107 -0
  22. data/lib/ittybit/automations/types/automations_delete_response_data.rb +59 -0
  23. data/lib/ittybit/automations/types/automations_delete_response_error.rb +59 -0
  24. data/lib/ittybit/automations/types/automations_delete_response_links.rb +69 -0
  25. data/lib/ittybit/automations/types/automations_delete_response_meta.rb +98 -0
  26. data/lib/ittybit/automations/types/automations_delete_response_meta_type.rb +10 -0
  27. data/lib/ittybit/automations/types/automations_get_response.rb +107 -0
  28. data/lib/ittybit/automations/types/automations_get_response_data.rb +133 -0
  29. data/lib/ittybit/automations/types/automations_get_response_data_status.rb +10 -0
  30. data/lib/ittybit/automations/types/automations_get_response_data_trigger.rb +67 -0
  31. data/lib/ittybit/automations/types/automations_get_response_data_workflow_item.rb +61 -0
  32. data/lib/ittybit/automations/types/automations_get_response_data_workflow_item_conditions.rb +86 -0
  33. data/lib/ittybit/automations/types/automations_get_response_data_workflow_item_conditions_conditions_item.rb +71 -0
  34. data/lib/ittybit/automations/types/automations_get_response_data_workflow_item_conditions_next_item.rb +71 -0
  35. data/lib/ittybit/automations/types/automations_get_response_data_workflow_item_ref.rb +83 -0
  36. data/lib/ittybit/automations/types/automations_get_response_data_workflow_item_ref_kind.rb +20 -0
  37. data/lib/ittybit/automations/types/automations_get_response_data_workflow_item_ref_next_item.rb +71 -0
  38. data/lib/ittybit/automations/types/automations_get_response_error.rb +59 -0
  39. data/lib/ittybit/automations/types/automations_get_response_links.rb +69 -0
  40. data/lib/ittybit/automations/types/automations_get_response_meta.rb +98 -0
  41. data/lib/ittybit/automations/types/automations_get_response_meta_type.rb +10 -0
  42. data/lib/ittybit/automations/types/automations_list_response.rb +105 -0
  43. data/lib/ittybit/automations/types/automations_list_response_data_item.rb +133 -0
  44. data/lib/ittybit/automations/types/automations_list_response_data_item_status.rb +10 -0
  45. data/lib/ittybit/automations/types/automations_list_response_data_item_trigger.rb +68 -0
  46. data/lib/ittybit/automations/types/automations_list_response_data_item_workflow_item.rb +61 -0
  47. data/lib/ittybit/automations/types/automations_list_response_data_item_workflow_item_conditions.rb +86 -0
  48. data/lib/ittybit/automations/types/automations_list_response_data_item_workflow_item_conditions_conditions_item.rb +72 -0
  49. data/lib/ittybit/automations/types/automations_list_response_data_item_workflow_item_conditions_next_item.rb +71 -0
  50. data/lib/ittybit/automations/types/automations_list_response_data_item_workflow_item_ref.rb +83 -0
  51. data/lib/ittybit/automations/types/automations_list_response_data_item_workflow_item_ref_kind.rb +20 -0
  52. data/lib/ittybit/automations/types/automations_list_response_data_item_workflow_item_ref_next_item.rb +71 -0
  53. data/lib/ittybit/automations/types/automations_list_response_error.rb +59 -0
  54. data/lib/ittybit/automations/types/automations_list_response_links.rb +90 -0
  55. data/lib/ittybit/automations/types/automations_list_response_meta.rb +130 -0
  56. data/lib/ittybit/automations/types/automations_list_response_meta_type.rb +10 -0
  57. data/lib/ittybit/automations/types/automations_update_request_workflow_item.rb +81 -0
  58. data/lib/ittybit/automations/types/automations_update_request_workflow_item_kind.rb +20 -0
  59. data/lib/ittybit/automations/types/automations_update_request_workflow_item_next_item.rb +71 -0
  60. data/lib/ittybit/automations/types/automations_update_response.rb +107 -0
  61. data/lib/ittybit/automations/types/automations_update_response_data.rb +133 -0
  62. data/lib/ittybit/automations/types/automations_update_response_data_status.rb +10 -0
  63. data/lib/ittybit/automations/types/automations_update_response_data_trigger.rb +67 -0
  64. data/lib/ittybit/automations/types/automations_update_response_data_workflow_item.rb +61 -0
  65. data/lib/ittybit/automations/types/automations_update_response_data_workflow_item_conditions.rb +86 -0
  66. data/lib/ittybit/automations/types/automations_update_response_data_workflow_item_conditions_conditions_item.rb +72 -0
  67. data/lib/ittybit/automations/types/automations_update_response_data_workflow_item_conditions_next_item.rb +71 -0
  68. data/lib/ittybit/automations/types/automations_update_response_data_workflow_item_ref.rb +83 -0
  69. data/lib/ittybit/automations/types/automations_update_response_data_workflow_item_ref_kind.rb +20 -0
  70. data/lib/ittybit/automations/types/automations_update_response_data_workflow_item_ref_next_item.rb +71 -0
  71. data/lib/ittybit/automations/types/automations_update_response_error.rb +59 -0
  72. data/lib/ittybit/automations/types/automations_update_response_links.rb +69 -0
  73. data/lib/ittybit/automations/types/automations_update_response_meta.rb +98 -0
  74. data/lib/ittybit/automations/types/automations_update_response_meta_type.rb +10 -0
  75. data/lib/ittybit/files/client.rb +47 -45
  76. data/lib/ittybit/files/types/files_create_response.rb +107 -0
  77. data/lib/ittybit/files/types/files_create_response_data.rb +317 -0
  78. data/lib/ittybit/files/types/files_create_response_data_kind.rb +11 -0
  79. data/lib/ittybit/files/types/files_create_response_data_object.rb +11 -0
  80. data/lib/ittybit/files/types/files_create_response_data_status.rb +12 -0
  81. data/lib/ittybit/files/types/files_create_response_error.rb +59 -0
  82. data/lib/ittybit/files/types/files_create_response_links.rb +69 -0
  83. data/lib/ittybit/files/types/files_create_response_meta.rb +98 -0
  84. data/lib/ittybit/files/types/files_create_response_meta_type.rb +10 -0
  85. data/lib/ittybit/files/types/files_delete_response.rb +107 -0
  86. data/lib/ittybit/files/types/files_delete_response_data.rb +59 -0
  87. data/lib/ittybit/files/types/files_delete_response_error.rb +59 -0
  88. data/lib/ittybit/files/types/files_delete_response_links.rb +69 -0
  89. data/lib/ittybit/files/types/files_delete_response_meta.rb +98 -0
  90. data/lib/ittybit/files/types/files_delete_response_meta_type.rb +10 -0
  91. data/lib/ittybit/files/types/files_get_response.rb +107 -0
  92. data/lib/ittybit/files/types/files_get_response_data.rb +317 -0
  93. data/lib/ittybit/files/types/files_get_response_data_kind.rb +11 -0
  94. data/lib/ittybit/files/types/files_get_response_data_object.rb +11 -0
  95. data/lib/ittybit/files/types/files_get_response_data_status.rb +12 -0
  96. data/lib/ittybit/files/types/files_get_response_error.rb +59 -0
  97. data/lib/ittybit/files/types/files_get_response_links.rb +69 -0
  98. data/lib/ittybit/files/types/files_get_response_meta.rb +98 -0
  99. data/lib/ittybit/files/types/files_get_response_meta_type.rb +10 -0
  100. data/lib/ittybit/files/types/files_list_response.rb +105 -0
  101. data/lib/ittybit/files/types/files_list_response_data_item.rb +317 -0
  102. data/lib/ittybit/files/types/files_list_response_data_item_kind.rb +11 -0
  103. data/lib/ittybit/files/types/files_list_response_data_item_object.rb +11 -0
  104. data/lib/ittybit/files/types/files_list_response_data_item_status.rb +12 -0
  105. data/lib/ittybit/files/types/files_list_response_error.rb +59 -0
  106. data/lib/ittybit/files/types/files_list_response_links.rb +90 -0
  107. data/lib/ittybit/files/types/files_list_response_meta.rb +130 -0
  108. data/lib/ittybit/files/types/files_list_response_meta_type.rb +10 -0
  109. data/lib/ittybit/files/types/files_update_response.rb +107 -0
  110. data/lib/ittybit/files/types/files_update_response_data.rb +317 -0
  111. data/lib/ittybit/files/types/files_update_response_data_kind.rb +11 -0
  112. data/lib/ittybit/files/types/files_update_response_data_object.rb +11 -0
  113. data/lib/ittybit/files/types/files_update_response_data_status.rb +12 -0
  114. data/lib/ittybit/files/types/files_update_response_error.rb +59 -0
  115. data/lib/ittybit/files/types/files_update_response_links.rb +69 -0
  116. data/lib/ittybit/files/types/files_update_response_meta.rb +98 -0
  117. data/lib/ittybit/files/types/files_update_response_meta_type.rb +10 -0
  118. data/lib/ittybit/media/client.rb +42 -40
  119. data/lib/ittybit/media/types/media_create_response.rb +107 -0
  120. data/lib/ittybit/media/types/media_create_response_data.rb +175 -0
  121. data/lib/ittybit/media/types/media_create_response_data_files_item.rb +262 -0
  122. data/lib/ittybit/media/types/media_create_response_data_files_item_kind.rb +11 -0
  123. data/lib/ittybit/media/types/media_create_response_data_files_item_object.rb +11 -0
  124. data/lib/ittybit/media/types/media_create_response_data_files_item_orientation.rb +11 -0
  125. data/lib/ittybit/media/types/media_create_response_data_files_item_status.rb +12 -0
  126. data/lib/ittybit/media/types/media_create_response_data_kind.rb +11 -0
  127. data/lib/ittybit/media/types/media_create_response_error.rb +59 -0
  128. data/lib/ittybit/media/types/media_create_response_links.rb +69 -0
  129. data/lib/ittybit/media/types/media_create_response_meta.rb +98 -0
  130. data/lib/ittybit/media/types/media_create_response_meta_type.rb +10 -0
  131. data/lib/ittybit/media/types/media_delete_response.rb +107 -0
  132. data/lib/ittybit/media/types/media_delete_response_data.rb +59 -0
  133. data/lib/ittybit/media/types/media_delete_response_error.rb +59 -0
  134. data/lib/ittybit/media/types/media_delete_response_links.rb +69 -0
  135. data/lib/ittybit/media/types/media_delete_response_meta.rb +98 -0
  136. data/lib/ittybit/media/types/media_delete_response_meta_type.rb +10 -0
  137. data/lib/ittybit/media/types/media_get_response.rb +107 -0
  138. data/lib/ittybit/media/types/media_get_response_data.rb +175 -0
  139. data/lib/ittybit/media/types/media_get_response_data_files_item.rb +262 -0
  140. data/lib/ittybit/media/types/media_get_response_data_files_item_kind.rb +11 -0
  141. data/lib/ittybit/media/types/media_get_response_data_files_item_object.rb +11 -0
  142. data/lib/ittybit/media/types/media_get_response_data_files_item_orientation.rb +11 -0
  143. data/lib/ittybit/media/types/media_get_response_data_files_item_status.rb +12 -0
  144. data/lib/ittybit/media/types/media_get_response_data_kind.rb +11 -0
  145. data/lib/ittybit/media/types/media_get_response_error.rb +59 -0
  146. data/lib/ittybit/media/types/media_get_response_links.rb +69 -0
  147. data/lib/ittybit/media/types/media_get_response_meta.rb +98 -0
  148. data/lib/ittybit/media/types/media_get_response_meta_type.rb +10 -0
  149. data/lib/ittybit/media/types/media_update_response.rb +107 -0
  150. data/lib/ittybit/media/types/media_update_response_data.rb +175 -0
  151. data/lib/ittybit/media/types/media_update_response_data_files_item.rb +262 -0
  152. data/lib/ittybit/media/types/media_update_response_data_files_item_kind.rb +11 -0
  153. data/lib/ittybit/media/types/media_update_response_data_files_item_object.rb +11 -0
  154. data/lib/ittybit/media/types/media_update_response_data_files_item_orientation.rb +11 -0
  155. data/lib/ittybit/media/types/media_update_response_data_files_item_status.rb +12 -0
  156. data/lib/ittybit/media/types/media_update_response_data_kind.rb +11 -0
  157. data/lib/ittybit/media/types/media_update_response_error.rb +59 -0
  158. data/lib/ittybit/media/types/media_update_response_links.rb +69 -0
  159. data/lib/ittybit/media/types/media_update_response_meta.rb +98 -0
  160. data/lib/ittybit/media/types/media_update_response_meta_type.rb +10 -0
  161. data/lib/ittybit/signatures/client.rb +9 -9
  162. data/lib/ittybit/signatures/types/signatures_create_response.rb +107 -0
  163. data/lib/ittybit/signatures/types/signatures_create_response_data.rb +112 -0
  164. data/lib/ittybit/signatures/types/signatures_create_response_error.rb +59 -0
  165. data/lib/ittybit/signatures/types/signatures_create_response_links.rb +69 -0
  166. data/lib/ittybit/signatures/types/signatures_create_response_meta.rb +98 -0
  167. data/lib/ittybit/signatures/types/signatures_create_response_meta_type.rb +10 -0
  168. data/lib/ittybit/tasks/client.rb +35 -30
  169. data/lib/ittybit/tasks/types/tasks_create_response.rb +107 -0
  170. data/lib/ittybit/tasks/types/tasks_create_response_data.rb +186 -0
  171. data/lib/ittybit/tasks/types/tasks_create_response_data_kind.rb +23 -0
  172. data/lib/ittybit/tasks/types/tasks_create_response_data_results.rb +76 -0
  173. data/lib/ittybit/tasks/types/tasks_create_response_data_status.rb +16 -0
  174. data/lib/ittybit/tasks/types/tasks_create_response_error.rb +59 -0
  175. data/lib/ittybit/tasks/types/tasks_create_response_links.rb +69 -0
  176. data/lib/ittybit/tasks/types/tasks_create_response_meta.rb +98 -0
  177. data/lib/ittybit/tasks/types/tasks_create_response_meta_type.rb +10 -0
  178. data/lib/ittybit/tasks/types/tasks_get_response.rb +107 -0
  179. data/lib/ittybit/tasks/types/tasks_get_response_data.rb +186 -0
  180. data/lib/ittybit/tasks/types/tasks_get_response_data_kind.rb +23 -0
  181. data/lib/ittybit/tasks/types/tasks_get_response_data_results.rb +76 -0
  182. data/lib/ittybit/tasks/types/tasks_get_response_data_status.rb +16 -0
  183. data/lib/ittybit/tasks/types/tasks_get_response_error.rb +59 -0
  184. data/lib/ittybit/tasks/types/tasks_get_response_links.rb +69 -0
  185. data/lib/ittybit/tasks/types/tasks_get_response_meta.rb +98 -0
  186. data/lib/ittybit/tasks/types/tasks_get_response_meta_type.rb +10 -0
  187. data/lib/ittybit/tasks/types/tasks_list_response.rb +105 -0
  188. data/lib/ittybit/tasks/types/tasks_list_response_data_item.rb +186 -0
  189. data/lib/ittybit/tasks/types/tasks_list_response_data_item_kind.rb +23 -0
  190. data/lib/ittybit/tasks/types/tasks_list_response_data_item_results.rb +76 -0
  191. data/lib/ittybit/tasks/types/tasks_list_response_data_item_status.rb +16 -0
  192. data/lib/ittybit/tasks/types/tasks_list_response_error.rb +59 -0
  193. data/lib/ittybit/tasks/types/tasks_list_response_links.rb +90 -0
  194. data/lib/ittybit/tasks/types/tasks_list_response_meta.rb +130 -0
  195. data/lib/ittybit/tasks/types/tasks_list_response_meta_type.rb +10 -0
  196. data/lib/ittybit/types/automation_list_response.rb +19 -19
  197. data/lib/ittybit/types/automation_list_response_data_item.rb +131 -0
  198. data/lib/ittybit/types/automation_list_response_data_item_status.rb +8 -0
  199. data/lib/ittybit/types/automation_list_response_data_item_trigger.rb +66 -0
  200. data/lib/ittybit/types/automation_list_response_data_item_workflow_item.rb +57 -0
  201. data/lib/ittybit/types/automation_list_response_data_item_workflow_item_conditions.rb +84 -0
  202. data/lib/ittybit/types/automation_list_response_data_item_workflow_item_conditions_conditions_item.rb +70 -0
  203. data/lib/ittybit/types/automation_list_response_data_item_workflow_item_conditions_next_item.rb +69 -0
  204. data/lib/ittybit/types/automation_list_response_data_item_workflow_item_ref.rb +81 -0
  205. data/lib/ittybit/types/automation_list_response_data_item_workflow_item_ref_kind.rb +18 -0
  206. data/lib/ittybit/types/automation_list_response_data_item_workflow_item_ref_next_item.rb +69 -0
  207. data/lib/ittybit/types/automation_list_response_error.rb +57 -0
  208. data/lib/ittybit/types/automation_list_response_links.rb +88 -0
  209. data/lib/ittybit/types/automation_list_response_meta.rb +128 -0
  210. data/lib/ittybit/types/automation_list_response_meta_type.rb +8 -0
  211. data/lib/ittybit/types/automation_response.rb +25 -20
  212. data/lib/ittybit/types/automation_response_data.rb +131 -0
  213. data/lib/ittybit/types/automation_response_data_status.rb +8 -0
  214. data/lib/ittybit/types/automation_response_data_trigger.rb +65 -0
  215. data/lib/ittybit/types/automation_response_data_workflow_item.rb +54 -0
  216. data/lib/ittybit/types/automation_response_data_workflow_item_conditions.rb +84 -0
  217. data/lib/ittybit/types/automation_response_data_workflow_item_conditions_conditions_item.rb +69 -0
  218. data/lib/ittybit/types/automation_response_data_workflow_item_conditions_next_item.rb +69 -0
  219. data/lib/ittybit/types/automation_response_data_workflow_item_ref.rb +80 -0
  220. data/lib/ittybit/types/automation_response_data_workflow_item_ref_kind.rb +18 -0
  221. data/lib/ittybit/types/automation_response_data_workflow_item_ref_next_item.rb +69 -0
  222. data/lib/ittybit/types/automation_response_error.rb +57 -0
  223. data/lib/ittybit/types/automation_response_links.rb +67 -0
  224. data/lib/ittybit/types/automation_response_meta.rb +96 -0
  225. data/lib/ittybit/types/automation_response_meta_type.rb +8 -0
  226. data/lib/ittybit/types/automation_workflow_item.rb +8 -8
  227. data/lib/ittybit/types/automation_workflow_item_conditions.rb +82 -0
  228. data/lib/ittybit/types/automation_workflow_item_conditions_conditions_item.rb +69 -0
  229. data/lib/ittybit/types/automation_workflow_item_conditions_next_item.rb +69 -0
  230. data/lib/ittybit/types/automation_workflow_item_ref.rb +79 -0
  231. data/lib/ittybit/types/automation_workflow_item_ref_kind.rb +18 -0
  232. data/lib/ittybit/types/automation_workflow_item_ref_next_item.rb +67 -0
  233. data/lib/ittybit/types/confirmation_response.rb +25 -20
  234. data/lib/ittybit/types/confirmation_response_data.rb +57 -0
  235. data/lib/ittybit/types/confirmation_response_error.rb +57 -0
  236. data/lib/ittybit/types/confirmation_response_links.rb +67 -0
  237. data/lib/ittybit/types/confirmation_response_meta.rb +96 -0
  238. data/lib/ittybit/types/confirmation_response_meta_type.rb +8 -0
  239. data/lib/ittybit/types/created_by.rb +5 -0
  240. data/lib/ittybit/types/error.rb +1 -53
  241. data/lib/ittybit/types/file_list_response.rb +19 -19
  242. data/lib/ittybit/types/file_list_response_data_item.rb +315 -0
  243. data/lib/ittybit/types/file_list_response_data_item_kind.rb +9 -0
  244. data/lib/ittybit/types/file_list_response_data_item_object.rb +9 -0
  245. data/lib/ittybit/types/file_list_response_data_item_status.rb +10 -0
  246. data/lib/ittybit/types/file_list_response_error.rb +57 -0
  247. data/lib/ittybit/types/file_list_response_links.rb +88 -0
  248. data/lib/ittybit/types/file_list_response_meta.rb +128 -0
  249. data/lib/ittybit/types/file_list_response_meta_type.rb +8 -0
  250. data/lib/ittybit/types/file_response.rb +25 -20
  251. data/lib/ittybit/types/file_response_data.rb +315 -0
  252. data/lib/ittybit/types/file_response_data_kind.rb +9 -0
  253. data/lib/ittybit/types/file_response_data_object.rb +9 -0
  254. data/lib/ittybit/types/file_response_data_status.rb +10 -0
  255. data/lib/ittybit/types/file_response_error.rb +57 -0
  256. data/lib/ittybit/types/file_response_links.rb +67 -0
  257. data/lib/ittybit/types/file_response_meta.rb +96 -0
  258. data/lib/ittybit/types/file_response_meta_type.rb +8 -0
  259. data/lib/ittybit/types/kind.rb +21 -0
  260. data/lib/ittybit/types/media.rb +4 -4
  261. data/lib/ittybit/types/media_files_item.rb +260 -0
  262. data/lib/ittybit/types/media_files_item_kind.rb +9 -0
  263. data/lib/ittybit/types/media_files_item_object.rb +9 -0
  264. data/lib/ittybit/types/media_files_item_orientation.rb +9 -0
  265. data/lib/ittybit/types/media_files_item_status.rb +10 -0
  266. data/lib/ittybit/types/media_list_response.rb +19 -19
  267. data/lib/ittybit/types/media_list_response_data_item.rb +173 -0
  268. data/lib/ittybit/types/media_list_response_data_item_files_item.rb +260 -0
  269. data/lib/ittybit/types/media_list_response_data_item_files_item_kind.rb +9 -0
  270. data/lib/ittybit/types/media_list_response_data_item_files_item_object.rb +9 -0
  271. data/lib/ittybit/types/media_list_response_data_item_files_item_orientation.rb +9 -0
  272. data/lib/ittybit/types/media_list_response_data_item_files_item_status.rb +10 -0
  273. data/lib/ittybit/types/media_list_response_data_item_kind.rb +9 -0
  274. data/lib/ittybit/types/media_list_response_error.rb +57 -0
  275. data/lib/ittybit/types/media_list_response_links.rb +88 -0
  276. data/lib/ittybit/types/media_list_response_meta.rb +128 -0
  277. data/lib/ittybit/types/media_list_response_meta_type.rb +8 -0
  278. data/lib/ittybit/types/media_response.rb +25 -20
  279. data/lib/ittybit/types/media_response_data.rb +173 -0
  280. data/lib/ittybit/types/media_response_data_files_item.rb +260 -0
  281. data/lib/ittybit/types/media_response_data_files_item_kind.rb +9 -0
  282. data/lib/ittybit/types/media_response_data_files_item_object.rb +9 -0
  283. data/lib/ittybit/types/media_response_data_files_item_orientation.rb +9 -0
  284. data/lib/ittybit/types/media_response_data_files_item_status.rb +10 -0
  285. data/lib/ittybit/types/media_response_data_kind.rb +9 -0
  286. data/lib/ittybit/types/media_response_error.rb +57 -0
  287. data/lib/ittybit/types/media_response_links.rb +67 -0
  288. data/lib/ittybit/types/media_response_meta.rb +96 -0
  289. data/lib/ittybit/types/media_response_meta_type.rb +8 -0
  290. data/lib/ittybit/types/parent_id.rb +5 -0
  291. data/lib/ittybit/types/progress.rb +5 -0
  292. data/lib/ittybit/types/signature_response.rb +25 -20
  293. data/lib/ittybit/types/signature_response_data.rb +110 -0
  294. data/lib/ittybit/types/signature_response_error.rb +57 -0
  295. data/lib/ittybit/types/signature_response_links.rb +67 -0
  296. data/lib/ittybit/types/signature_response_meta.rb +96 -0
  297. data/lib/ittybit/types/signature_response_meta_type.rb +8 -0
  298. data/lib/ittybit/types/status.rb +14 -0
  299. data/lib/ittybit/types/task_list_response.rb +19 -19
  300. data/lib/ittybit/types/task_list_response_data_item.rb +184 -0
  301. data/lib/ittybit/types/task_list_response_data_item_kind.rb +21 -0
  302. data/lib/ittybit/types/task_list_response_data_item_results.rb +74 -0
  303. data/lib/ittybit/types/task_list_response_data_item_status.rb +14 -0
  304. data/lib/ittybit/types/task_list_response_error.rb +57 -0
  305. data/lib/ittybit/types/task_list_response_links.rb +88 -0
  306. data/lib/ittybit/types/task_list_response_meta.rb +128 -0
  307. data/lib/ittybit/types/task_list_response_meta_type.rb +8 -0
  308. data/lib/ittybit/types/task_response.rb +25 -20
  309. data/lib/ittybit/types/task_response_data.rb +184 -0
  310. data/lib/ittybit/types/task_response_data_kind.rb +21 -0
  311. data/lib/ittybit/types/task_response_data_results.rb +74 -0
  312. data/lib/ittybit/types/task_response_data_status.rb +14 -0
  313. data/lib/ittybit/types/task_response_error.rb +57 -0
  314. data/lib/ittybit/types/task_response_links.rb +67 -0
  315. data/lib/ittybit/types/task_response_meta.rb +96 -0
  316. data/lib/ittybit/types/task_response_meta_type.rb +8 -0
  317. data/lib/ittybit.rb +8 -8
  318. data/lib/requests.rb +24 -24
  319. data/lib/types_export.rb +300 -2
  320. metadata +299 -2
@@ -0,0 +1,175 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "media_create_response_data_kind"
4
+ require_relative "media_create_response_data_files_item"
5
+ require "date"
6
+ require "ostruct"
7
+ require "json"
8
+
9
+ module Ittybit
10
+ class Media
11
+ class MediaCreateResponseData
12
+ # @return [String]
13
+ attr_reader :id
14
+ # @return [String]
15
+ attr_reader :object
16
+ # @return [Ittybit::Media::MediaCreateResponseDataKind]
17
+ attr_reader :kind
18
+ # @return [String]
19
+ attr_reader :title
20
+ # @return [String]
21
+ attr_reader :alt
22
+ # @return [Integer]
23
+ attr_reader :width
24
+ # @return [Integer]
25
+ attr_reader :height
26
+ # @return [Float]
27
+ attr_reader :duration
28
+ # @return [Array<Ittybit::Media::MediaCreateResponseDataFilesItem>]
29
+ attr_reader :files
30
+ # @return [Hash{String => Object}]
31
+ attr_reader :urls
32
+ # @return [String]
33
+ attr_reader :background
34
+ # @return [Hash{String => Object}]
35
+ attr_reader :metadata
36
+ # @return [DateTime]
37
+ attr_reader :created
38
+ # @return [DateTime]
39
+ attr_reader :updated
40
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
41
+ attr_reader :additional_properties
42
+ # @return [Object]
43
+ attr_reader :_field_set
44
+ protected :_field_set
45
+
46
+ OMIT = Object.new
47
+
48
+ # @param id [String]
49
+ # @param object [String]
50
+ # @param kind [Ittybit::Media::MediaCreateResponseDataKind]
51
+ # @param title [String]
52
+ # @param alt [String]
53
+ # @param width [Integer]
54
+ # @param height [Integer]
55
+ # @param duration [Float]
56
+ # @param files [Array<Ittybit::Media::MediaCreateResponseDataFilesItem>]
57
+ # @param urls [Hash{String => Object}]
58
+ # @param background [String]
59
+ # @param metadata [Hash{String => Object}]
60
+ # @param created [DateTime]
61
+ # @param updated [DateTime]
62
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
63
+ # @return [Ittybit::Media::MediaCreateResponseData]
64
+ def initialize(id:, object:, files:, urls:, created:, updated:, kind: OMIT, title: OMIT, alt: OMIT, width: OMIT,
65
+ height: OMIT, duration: OMIT, background: OMIT, metadata: OMIT, additional_properties: nil)
66
+ @id = id
67
+ @object = object
68
+ @kind = kind if kind != OMIT
69
+ @title = title if title != OMIT
70
+ @alt = alt if alt != OMIT
71
+ @width = width if width != OMIT
72
+ @height = height if height != OMIT
73
+ @duration = duration if duration != OMIT
74
+ @files = files
75
+ @urls = urls
76
+ @background = background if background != OMIT
77
+ @metadata = metadata if metadata != OMIT
78
+ @created = created
79
+ @updated = updated
80
+ @additional_properties = additional_properties
81
+ @_field_set = {
82
+ "id": id,
83
+ "object": object,
84
+ "kind": kind,
85
+ "title": title,
86
+ "alt": alt,
87
+ "width": width,
88
+ "height": height,
89
+ "duration": duration,
90
+ "files": files,
91
+ "urls": urls,
92
+ "background": background,
93
+ "metadata": metadata,
94
+ "created": created,
95
+ "updated": updated
96
+ }.reject do |_k, v|
97
+ v == OMIT
98
+ end
99
+ end
100
+
101
+ # Deserialize a JSON object to an instance of MediaCreateResponseData
102
+ #
103
+ # @param json_object [String]
104
+ # @return [Ittybit::Media::MediaCreateResponseData]
105
+ def self.from_json(json_object:)
106
+ struct = JSON.parse(json_object, object_class: OpenStruct)
107
+ parsed_json = JSON.parse(json_object)
108
+ id = parsed_json["id"]
109
+ object = parsed_json["object"]
110
+ kind = parsed_json["kind"]
111
+ title = parsed_json["title"]
112
+ alt = parsed_json["alt"]
113
+ width = parsed_json["width"]
114
+ height = parsed_json["height"]
115
+ duration = parsed_json["duration"]
116
+ files = parsed_json["files"]&.map do |item|
117
+ item = item.to_json
118
+ Ittybit::Media::MediaCreateResponseDataFilesItem.from_json(json_object: item)
119
+ end
120
+ urls = parsed_json["urls"]
121
+ background = parsed_json["background"]
122
+ metadata = parsed_json["metadata"]
123
+ created = (DateTime.parse(parsed_json["created"]) unless parsed_json["created"].nil?)
124
+ updated = (DateTime.parse(parsed_json["updated"]) unless parsed_json["updated"].nil?)
125
+ new(
126
+ id: id,
127
+ object: object,
128
+ kind: kind,
129
+ title: title,
130
+ alt: alt,
131
+ width: width,
132
+ height: height,
133
+ duration: duration,
134
+ files: files,
135
+ urls: urls,
136
+ background: background,
137
+ metadata: metadata,
138
+ created: created,
139
+ updated: updated,
140
+ additional_properties: struct
141
+ )
142
+ end
143
+
144
+ # Serialize an instance of MediaCreateResponseData to a JSON object
145
+ #
146
+ # @return [String]
147
+ def to_json(*_args)
148
+ @_field_set&.to_json
149
+ end
150
+
151
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
152
+ # hash and check each fields type against the current object's property
153
+ # definitions.
154
+ #
155
+ # @param obj [Object]
156
+ # @return [Void]
157
+ def self.validate_raw(obj:)
158
+ obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
159
+ obj.object.is_a?(String) != false || raise("Passed value for field obj.object is not the expected type, validation failed.")
160
+ obj.kind&.is_a?(Ittybit::Media::MediaCreateResponseDataKind) != false || raise("Passed value for field obj.kind is not the expected type, validation failed.")
161
+ obj.title&.is_a?(String) != false || raise("Passed value for field obj.title is not the expected type, validation failed.")
162
+ obj.alt&.is_a?(String) != false || raise("Passed value for field obj.alt is not the expected type, validation failed.")
163
+ obj.width&.is_a?(Integer) != false || raise("Passed value for field obj.width is not the expected type, validation failed.")
164
+ obj.height&.is_a?(Integer) != false || raise("Passed value for field obj.height is not the expected type, validation failed.")
165
+ obj.duration&.is_a?(Float) != false || raise("Passed value for field obj.duration is not the expected type, validation failed.")
166
+ obj.files.is_a?(Array) != false || raise("Passed value for field obj.files is not the expected type, validation failed.")
167
+ obj.urls.is_a?(Hash) != false || raise("Passed value for field obj.urls is not the expected type, validation failed.")
168
+ obj.background&.is_a?(String) != false || raise("Passed value for field obj.background is not the expected type, validation failed.")
169
+ obj.metadata&.is_a?(Hash) != false || raise("Passed value for field obj.metadata is not the expected type, validation failed.")
170
+ obj.created.is_a?(DateTime) != false || raise("Passed value for field obj.created is not the expected type, validation failed.")
171
+ obj.updated.is_a?(DateTime) != false || raise("Passed value for field obj.updated is not the expected type, validation failed.")
172
+ end
173
+ end
174
+ end
175
+ end
@@ -0,0 +1,262 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "media_create_response_data_files_item_object"
4
+ require_relative "media_create_response_data_files_item_kind"
5
+ require_relative "media_create_response_data_files_item_orientation"
6
+ require "date"
7
+ require_relative "media_create_response_data_files_item_status"
8
+ require "ostruct"
9
+ require "json"
10
+
11
+ module Ittybit
12
+ class Media
13
+ class MediaCreateResponseDataFilesItem
14
+ # @return [String]
15
+ attr_reader :id
16
+ # @return [Ittybit::Media::MediaCreateResponseDataFilesItemObject]
17
+ attr_reader :object
18
+ # @return [Ittybit::Media::MediaCreateResponseDataFilesItemKind]
19
+ attr_reader :kind
20
+ # @return [String]
21
+ attr_reader :type
22
+ # @return [String]
23
+ attr_reader :codec
24
+ # @return [String]
25
+ attr_reader :container
26
+ # @return [Integer]
27
+ attr_reader :width
28
+ # @return [Integer]
29
+ attr_reader :height
30
+ # @return [Ittybit::Media::MediaCreateResponseDataFilesItemOrientation]
31
+ attr_reader :orientation
32
+ # @return [Float]
33
+ attr_reader :rotation
34
+ # @return [Boolean]
35
+ attr_reader :transparency
36
+ # @return [Integer]
37
+ attr_reader :frames
38
+ # @return [Float]
39
+ attr_reader :duration
40
+ # @return [Float]
41
+ attr_reader :fps
42
+ # @return [Integer]
43
+ attr_reader :filesize
44
+ # @return [Integer]
45
+ attr_reader :bitrate
46
+ # @return [String]
47
+ attr_reader :ref
48
+ # @return [String]
49
+ attr_reader :folder
50
+ # @return [String]
51
+ attr_reader :filename
52
+ # @return [String]
53
+ attr_reader :url
54
+ # @return [Hash{String => Object}]
55
+ attr_reader :metadata
56
+ # @return [Boolean]
57
+ attr_reader :original
58
+ # @return [DateTime]
59
+ attr_reader :created
60
+ # @return [DateTime]
61
+ attr_reader :updated
62
+ # @return [Ittybit::Media::MediaCreateResponseDataFilesItemStatus]
63
+ attr_reader :status
64
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
65
+ attr_reader :additional_properties
66
+ # @return [Object]
67
+ attr_reader :_field_set
68
+ protected :_field_set
69
+
70
+ OMIT = Object.new
71
+
72
+ # @param id [String]
73
+ # @param object [Ittybit::Media::MediaCreateResponseDataFilesItemObject]
74
+ # @param kind [Ittybit::Media::MediaCreateResponseDataFilesItemKind]
75
+ # @param type [String]
76
+ # @param codec [String]
77
+ # @param container [String]
78
+ # @param width [Integer]
79
+ # @param height [Integer]
80
+ # @param orientation [Ittybit::Media::MediaCreateResponseDataFilesItemOrientation]
81
+ # @param rotation [Float]
82
+ # @param transparency [Boolean]
83
+ # @param frames [Integer]
84
+ # @param duration [Float]
85
+ # @param fps [Float]
86
+ # @param filesize [Integer]
87
+ # @param bitrate [Integer]
88
+ # @param ref [String]
89
+ # @param folder [String]
90
+ # @param filename [String]
91
+ # @param url [String]
92
+ # @param metadata [Hash{String => Object}]
93
+ # @param original [Boolean]
94
+ # @param created [DateTime]
95
+ # @param updated [DateTime]
96
+ # @param status [Ittybit::Media::MediaCreateResponseDataFilesItemStatus]
97
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
98
+ # @return [Ittybit::Media::MediaCreateResponseDataFilesItem]
99
+ def initialize(id:, object:, kind:, type:, filesize:, url:, created:, updated:, status:, codec: OMIT, container: OMIT, width: OMIT, height: OMIT,
100
+ orientation: OMIT, rotation: OMIT, transparency: OMIT, frames: OMIT, duration: OMIT, fps: OMIT, bitrate: OMIT, ref: OMIT, folder: OMIT, filename: OMIT, metadata: OMIT, original: OMIT, additional_properties: nil)
101
+ @id = id
102
+ @object = object
103
+ @kind = kind
104
+ @type = type
105
+ @codec = codec if codec != OMIT
106
+ @container = container if container != OMIT
107
+ @width = width if width != OMIT
108
+ @height = height if height != OMIT
109
+ @orientation = orientation if orientation != OMIT
110
+ @rotation = rotation if rotation != OMIT
111
+ @transparency = transparency if transparency != OMIT
112
+ @frames = frames if frames != OMIT
113
+ @duration = duration if duration != OMIT
114
+ @fps = fps if fps != OMIT
115
+ @filesize = filesize
116
+ @bitrate = bitrate if bitrate != OMIT
117
+ @ref = ref if ref != OMIT
118
+ @folder = folder if folder != OMIT
119
+ @filename = filename if filename != OMIT
120
+ @url = url
121
+ @metadata = metadata if metadata != OMIT
122
+ @original = original if original != OMIT
123
+ @created = created
124
+ @updated = updated
125
+ @status = status
126
+ @additional_properties = additional_properties
127
+ @_field_set = {
128
+ "id": id,
129
+ "object": object,
130
+ "kind": kind,
131
+ "type": type,
132
+ "codec": codec,
133
+ "container": container,
134
+ "width": width,
135
+ "height": height,
136
+ "orientation": orientation,
137
+ "rotation": rotation,
138
+ "transparency": transparency,
139
+ "frames": frames,
140
+ "duration": duration,
141
+ "fps": fps,
142
+ "filesize": filesize,
143
+ "bitrate": bitrate,
144
+ "ref": ref,
145
+ "folder": folder,
146
+ "filename": filename,
147
+ "url": url,
148
+ "metadata": metadata,
149
+ "original": original,
150
+ "created": created,
151
+ "updated": updated,
152
+ "status": status
153
+ }.reject do |_k, v|
154
+ v == OMIT
155
+ end
156
+ end
157
+
158
+ # Deserialize a JSON object to an instance of MediaCreateResponseDataFilesItem
159
+ #
160
+ # @param json_object [String]
161
+ # @return [Ittybit::Media::MediaCreateResponseDataFilesItem]
162
+ def self.from_json(json_object:)
163
+ struct = JSON.parse(json_object, object_class: OpenStruct)
164
+ parsed_json = JSON.parse(json_object)
165
+ id = parsed_json["id"]
166
+ object = parsed_json["object"]
167
+ kind = parsed_json["kind"]
168
+ type = parsed_json["type"]
169
+ codec = parsed_json["codec"]
170
+ container = parsed_json["container"]
171
+ width = parsed_json["width"]
172
+ height = parsed_json["height"]
173
+ orientation = parsed_json["orientation"]
174
+ rotation = parsed_json["rotation"]
175
+ transparency = parsed_json["transparency"]
176
+ frames = parsed_json["frames"]
177
+ duration = parsed_json["duration"]
178
+ fps = parsed_json["fps"]
179
+ filesize = parsed_json["filesize"]
180
+ bitrate = parsed_json["bitrate"]
181
+ ref = parsed_json["ref"]
182
+ folder = parsed_json["folder"]
183
+ filename = parsed_json["filename"]
184
+ url = parsed_json["url"]
185
+ metadata = parsed_json["metadata"]
186
+ original = parsed_json["original"]
187
+ created = (DateTime.parse(parsed_json["created"]) unless parsed_json["created"].nil?)
188
+ updated = (DateTime.parse(parsed_json["updated"]) unless parsed_json["updated"].nil?)
189
+ status = parsed_json["status"]
190
+ new(
191
+ id: id,
192
+ object: object,
193
+ kind: kind,
194
+ type: type,
195
+ codec: codec,
196
+ container: container,
197
+ width: width,
198
+ height: height,
199
+ orientation: orientation,
200
+ rotation: rotation,
201
+ transparency: transparency,
202
+ frames: frames,
203
+ duration: duration,
204
+ fps: fps,
205
+ filesize: filesize,
206
+ bitrate: bitrate,
207
+ ref: ref,
208
+ folder: folder,
209
+ filename: filename,
210
+ url: url,
211
+ metadata: metadata,
212
+ original: original,
213
+ created: created,
214
+ updated: updated,
215
+ status: status,
216
+ additional_properties: struct
217
+ )
218
+ end
219
+
220
+ # Serialize an instance of MediaCreateResponseDataFilesItem to a JSON object
221
+ #
222
+ # @return [String]
223
+ def to_json(*_args)
224
+ @_field_set&.to_json
225
+ end
226
+
227
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
228
+ # hash and check each fields type against the current object's property
229
+ # definitions.
230
+ #
231
+ # @param obj [Object]
232
+ # @return [Void]
233
+ def self.validate_raw(obj:)
234
+ obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
235
+ obj.object.is_a?(Ittybit::Media::MediaCreateResponseDataFilesItemObject) != false || raise("Passed value for field obj.object is not the expected type, validation failed.")
236
+ obj.kind.is_a?(Ittybit::Media::MediaCreateResponseDataFilesItemKind) != false || raise("Passed value for field obj.kind is not the expected type, validation failed.")
237
+ obj.type.is_a?(String) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
238
+ obj.codec&.is_a?(String) != false || raise("Passed value for field obj.codec is not the expected type, validation failed.")
239
+ obj.container&.is_a?(String) != false || raise("Passed value for field obj.container is not the expected type, validation failed.")
240
+ obj.width&.is_a?(Integer) != false || raise("Passed value for field obj.width is not the expected type, validation failed.")
241
+ obj.height&.is_a?(Integer) != false || raise("Passed value for field obj.height is not the expected type, validation failed.")
242
+ obj.orientation&.is_a?(Ittybit::Media::MediaCreateResponseDataFilesItemOrientation) != false || raise("Passed value for field obj.orientation is not the expected type, validation failed.")
243
+ obj.rotation&.is_a?(Float) != false || raise("Passed value for field obj.rotation is not the expected type, validation failed.")
244
+ obj.transparency&.is_a?(Boolean) != false || raise("Passed value for field obj.transparency is not the expected type, validation failed.")
245
+ obj.frames&.is_a?(Integer) != false || raise("Passed value for field obj.frames is not the expected type, validation failed.")
246
+ obj.duration&.is_a?(Float) != false || raise("Passed value for field obj.duration is not the expected type, validation failed.")
247
+ obj.fps&.is_a?(Float) != false || raise("Passed value for field obj.fps is not the expected type, validation failed.")
248
+ obj.filesize.is_a?(Integer) != false || raise("Passed value for field obj.filesize is not the expected type, validation failed.")
249
+ obj.bitrate&.is_a?(Integer) != false || raise("Passed value for field obj.bitrate is not the expected type, validation failed.")
250
+ obj.ref&.is_a?(String) != false || raise("Passed value for field obj.ref is not the expected type, validation failed.")
251
+ obj.folder&.is_a?(String) != false || raise("Passed value for field obj.folder is not the expected type, validation failed.")
252
+ obj.filename&.is_a?(String) != false || raise("Passed value for field obj.filename is not the expected type, validation failed.")
253
+ obj.url.is_a?(String) != false || raise("Passed value for field obj.url is not the expected type, validation failed.")
254
+ obj.metadata&.is_a?(Hash) != false || raise("Passed value for field obj.metadata is not the expected type, validation failed.")
255
+ obj.original&.is_a?(Boolean) != false || raise("Passed value for field obj.original is not the expected type, validation failed.")
256
+ obj.created.is_a?(DateTime) != false || raise("Passed value for field obj.created is not the expected type, validation failed.")
257
+ obj.updated.is_a?(DateTime) != false || raise("Passed value for field obj.updated is not the expected type, validation failed.")
258
+ obj.status.is_a?(Ittybit::Media::MediaCreateResponseDataFilesItemStatus) != false || raise("Passed value for field obj.status is not the expected type, validation failed.")
259
+ end
260
+ end
261
+ end
262
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Ittybit
4
+ class Media
5
+ class MediaCreateResponseDataFilesItemKind
6
+ VIDEO = "video"
7
+ IMAGE = "image"
8
+ AUDIO = "audio"
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Ittybit
4
+ class Media
5
+ class MediaCreateResponseDataFilesItemObject
6
+ SOURCE = "source"
7
+ TRACK = "track"
8
+ INTELLIGENCE = "intelligence"
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Ittybit
4
+ class Media
5
+ class MediaCreateResponseDataFilesItemOrientation
6
+ LANDSCAPE = "landscape"
7
+ PORTRAIT = "portrait"
8
+ SQUARE = "square"
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Ittybit
4
+ class Media
5
+ class MediaCreateResponseDataFilesItemStatus
6
+ WAITING = "waiting"
7
+ PROCESSING = "processing"
8
+ READY = "ready"
9
+ FAILED = "failed"
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Ittybit
4
+ class Media
5
+ class MediaCreateResponseDataKind
6
+ VIDEO = "video"
7
+ IMAGE = "image"
8
+ AUDIO = "audio"
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,59 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "ostruct"
4
+ require "json"
5
+
6
+ module Ittybit
7
+ class Media
8
+ class MediaCreateResponseError
9
+ # @return [String]
10
+ attr_reader :message
11
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
12
+ attr_reader :additional_properties
13
+ # @return [Object]
14
+ attr_reader :_field_set
15
+ protected :_field_set
16
+
17
+ OMIT = Object.new
18
+
19
+ # @param message [String]
20
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
21
+ # @return [Ittybit::Media::MediaCreateResponseError]
22
+ def initialize(message: OMIT, additional_properties: nil)
23
+ @message = message if message != OMIT
24
+ @additional_properties = additional_properties
25
+ @_field_set = { "message": message }.reject do |_k, v|
26
+ v == OMIT
27
+ end
28
+ end
29
+
30
+ # Deserialize a JSON object to an instance of MediaCreateResponseError
31
+ #
32
+ # @param json_object [String]
33
+ # @return [Ittybit::Media::MediaCreateResponseError]
34
+ def self.from_json(json_object:)
35
+ struct = JSON.parse(json_object, object_class: OpenStruct)
36
+ parsed_json = JSON.parse(json_object)
37
+ message = parsed_json["message"]
38
+ new(message: message, additional_properties: struct)
39
+ end
40
+
41
+ # Serialize an instance of MediaCreateResponseError to a JSON object
42
+ #
43
+ # @return [String]
44
+ def to_json(*_args)
45
+ @_field_set&.to_json
46
+ end
47
+
48
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
49
+ # hash and check each fields type against the current object's property
50
+ # definitions.
51
+ #
52
+ # @param obj [Object]
53
+ # @return [Void]
54
+ def self.validate_raw(obj:)
55
+ obj.message&.is_a?(String) != false || raise("Passed value for field obj.message is not the expected type, validation failed.")
56
+ end
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,69 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "ostruct"
4
+ require "json"
5
+
6
+ module Ittybit
7
+ class Media
8
+ class MediaCreateResponseLinks
9
+ # @return [String]
10
+ attr_reader :self_
11
+ # @return [String]
12
+ attr_reader :parent
13
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
14
+ attr_reader :additional_properties
15
+ # @return [Object]
16
+ attr_reader :_field_set
17
+ protected :_field_set
18
+
19
+ OMIT = Object.new
20
+
21
+ # @param self_ [String]
22
+ # @param parent [String]
23
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
24
+ # @return [Ittybit::Media::MediaCreateResponseLinks]
25
+ def initialize(self_: OMIT, parent: OMIT, additional_properties: nil)
26
+ @self_ = self_ if self_ != OMIT
27
+ @parent = parent if parent != OMIT
28
+ @additional_properties = additional_properties
29
+ @_field_set = { "self": self_, "parent": parent }.reject do |_k, v|
30
+ v == OMIT
31
+ end
32
+ end
33
+
34
+ # Deserialize a JSON object to an instance of MediaCreateResponseLinks
35
+ #
36
+ # @param json_object [String]
37
+ # @return [Ittybit::Media::MediaCreateResponseLinks]
38
+ def self.from_json(json_object:)
39
+ struct = JSON.parse(json_object, object_class: OpenStruct)
40
+ parsed_json = JSON.parse(json_object)
41
+ self_ = parsed_json["self"]
42
+ parent = parsed_json["parent"]
43
+ new(
44
+ self_: self_,
45
+ parent: parent,
46
+ additional_properties: struct
47
+ )
48
+ end
49
+
50
+ # Serialize an instance of MediaCreateResponseLinks to a JSON object
51
+ #
52
+ # @return [String]
53
+ def to_json(*_args)
54
+ @_field_set&.to_json
55
+ end
56
+
57
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
58
+ # hash and check each fields type against the current object's property
59
+ # definitions.
60
+ #
61
+ # @param obj [Object]
62
+ # @return [Void]
63
+ def self.validate_raw(obj:)
64
+ obj.self_&.is_a?(String) != false || raise("Passed value for field obj.self_ is not the expected type, validation failed.")
65
+ obj.parent&.is_a?(String) != false || raise("Passed value for field obj.parent is not the expected type, validation failed.")
66
+ end
67
+ end
68
+ end
69
+ end