ittybit 0.8.14 → 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 (319) hide show
  1. checksums.yaml +4 -4
  2. data/lib/ittybit/automations/client.rb +39 -36
  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 +25 -23
  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 +20 -18
  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 +5 -5
  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 +15 -14
  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/requests.rb +2 -2
  318. data/lib/types_export.rb +300 -2
  319. metadata +299 -2
@@ -0,0 +1,69 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "ostruct"
4
+ require "json"
5
+
6
+ module Ittybit
7
+ class Files
8
+ class FilesUpdateResponseLinks
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::Files::FilesUpdateResponseLinks]
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 FilesUpdateResponseLinks
35
+ #
36
+ # @param json_object [String]
37
+ # @return [Ittybit::Files::FilesUpdateResponseLinks]
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 FilesUpdateResponseLinks 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
@@ -0,0 +1,98 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "files_update_response_meta_type"
4
+ require "ostruct"
5
+ require "json"
6
+
7
+ module Ittybit
8
+ class Files
9
+ class FilesUpdateResponseMeta
10
+ # @return [String]
11
+ attr_reader :request_id
12
+ # @return [String]
13
+ attr_reader :org_id
14
+ # @return [String]
15
+ attr_reader :project_id
16
+ # @return [String]
17
+ attr_reader :version
18
+ # @return [Ittybit::Files::FilesUpdateResponseMetaType]
19
+ attr_reader :type
20
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
21
+ attr_reader :additional_properties
22
+ # @return [Object]
23
+ attr_reader :_field_set
24
+ protected :_field_set
25
+
26
+ OMIT = Object.new
27
+
28
+ # @param request_id [String]
29
+ # @param org_id [String]
30
+ # @param project_id [String]
31
+ # @param version [String]
32
+ # @param type [Ittybit::Files::FilesUpdateResponseMetaType]
33
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
34
+ # @return [Ittybit::Files::FilesUpdateResponseMeta]
35
+ def initialize(request_id: OMIT, org_id: OMIT, project_id: OMIT, version: OMIT, type: OMIT,
36
+ additional_properties: nil)
37
+ @request_id = request_id if request_id != OMIT
38
+ @org_id = org_id if org_id != OMIT
39
+ @project_id = project_id if project_id != OMIT
40
+ @version = version if version != OMIT
41
+ @type = type if type != OMIT
42
+ @additional_properties = additional_properties
43
+ @_field_set = {
44
+ "request_id": request_id,
45
+ "org_id": org_id,
46
+ "project_id": project_id,
47
+ "version": version,
48
+ "type": type
49
+ }.reject do |_k, v|
50
+ v == OMIT
51
+ end
52
+ end
53
+
54
+ # Deserialize a JSON object to an instance of FilesUpdateResponseMeta
55
+ #
56
+ # @param json_object [String]
57
+ # @return [Ittybit::Files::FilesUpdateResponseMeta]
58
+ def self.from_json(json_object:)
59
+ struct = JSON.parse(json_object, object_class: OpenStruct)
60
+ parsed_json = JSON.parse(json_object)
61
+ request_id = parsed_json["request_id"]
62
+ org_id = parsed_json["org_id"]
63
+ project_id = parsed_json["project_id"]
64
+ version = parsed_json["version"]
65
+ type = parsed_json["type"]
66
+ new(
67
+ request_id: request_id,
68
+ org_id: org_id,
69
+ project_id: project_id,
70
+ version: version,
71
+ type: type,
72
+ additional_properties: struct
73
+ )
74
+ end
75
+
76
+ # Serialize an instance of FilesUpdateResponseMeta to a JSON object
77
+ #
78
+ # @return [String]
79
+ def to_json(*_args)
80
+ @_field_set&.to_json
81
+ end
82
+
83
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
84
+ # hash and check each fields type against the current object's property
85
+ # definitions.
86
+ #
87
+ # @param obj [Object]
88
+ # @return [Void]
89
+ def self.validate_raw(obj:)
90
+ obj.request_id&.is_a?(String) != false || raise("Passed value for field obj.request_id is not the expected type, validation failed.")
91
+ obj.org_id&.is_a?(String) != false || raise("Passed value for field obj.org_id is not the expected type, validation failed.")
92
+ obj.project_id&.is_a?(String) != false || raise("Passed value for field obj.project_id is not the expected type, validation failed.")
93
+ obj.version&.is_a?(String) != false || raise("Passed value for field obj.version is not the expected type, validation failed.")
94
+ obj.type&.is_a?(Ittybit::Files::FilesUpdateResponseMetaType) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
95
+ end
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Ittybit
4
+ class Files
5
+ class FilesUpdateResponseMetaType
6
+ OBJECT = "object"
7
+ LIST = "list"
8
+ end
9
+ end
10
+ end
@@ -2,8 +2,10 @@
2
2
 
3
3
  require_relative "../../requests"
4
4
  require_relative "../types/media_list_response"
5
- require_relative "../types/media_response"
6
- require_relative "../types/confirmation_response"
5
+ require_relative "types/media_create_response"
6
+ require_relative "types/media_get_response"
7
+ require_relative "types/media_delete_response"
8
+ require_relative "types/media_update_response"
7
9
  require "async"
8
10
 
9
11
  module Ittybit
@@ -55,7 +57,7 @@ module Ittybit
55
57
  # @param alt [String]
56
58
  # @param metadata [Hash{String => Object}]
57
59
  # @param request_options [Ittybit::RequestOptions]
58
- # @return [Ittybit::MediaResponse]
60
+ # @return [Ittybit::Media::MediaCreateResponse]
59
61
  # @example
60
62
  # api = Ittybit::Client.new(
61
63
  # base_url: "https://api.example.com",
@@ -88,14 +90,14 @@ module Ittybit
88
90
  }.compact
89
91
  req.url "#{@request_client.get_url(request_options: request_options)}/media"
90
92
  end
91
- Ittybit::MediaResponse.from_json(json_object: response.body)
93
+ Ittybit::Media::MediaCreateResponse.from_json(json_object: response.body)
92
94
  end
93
95
 
94
96
  # Retrieves the media object for a media with the given ID.
95
97
  #
96
98
  # @param id [String]
97
99
  # @param request_options [Ittybit::RequestOptions]
98
- # @return [Ittybit::MediaResponse]
100
+ # @return [Ittybit::Media::MediaGetResponse]
99
101
  # @example
100
102
  # api = Ittybit::Client.new(
101
103
  # base_url: "https://api.example.com",
@@ -121,7 +123,7 @@ module Ittybit
121
123
  end
122
124
  req.url "#{@request_client.get_url(request_options: request_options)}/media/#{id}"
123
125
  end
124
- Ittybit::MediaResponse.from_json(json_object: response.body)
126
+ Ittybit::Media::MediaGetResponse.from_json(json_object: response.body)
125
127
  end
126
128
 
127
129
  # Permanently removes a media object from the system. This action cannot be
@@ -129,7 +131,7 @@ module Ittybit
129
131
  #
130
132
  # @param id [String]
131
133
  # @param request_options [Ittybit::RequestOptions]
132
- # @return [Ittybit::ConfirmationResponse]
134
+ # @return [Ittybit::Media::MediaDeleteResponse]
133
135
  # @example
134
136
  # api = Ittybit::Client.new(
135
137
  # base_url: "https://api.example.com",
@@ -155,7 +157,7 @@ module Ittybit
155
157
  end
156
158
  req.url "#{@request_client.get_url(request_options: request_options)}/media/#{id}"
157
159
  end
158
- Ittybit::ConfirmationResponse.from_json(json_object: response.body)
160
+ Ittybit::Media::MediaDeleteResponse.from_json(json_object: response.body)
159
161
  end
160
162
 
161
163
  # Updates a media object's `title`, `alt`, or `metadata`. Only the specified
@@ -166,7 +168,7 @@ module Ittybit
166
168
  # @param alt [String]
167
169
  # @param metadata [Hash{String => Object}]
168
170
  # @param request_options [Ittybit::RequestOptions]
169
- # @return [Ittybit::MediaResponse]
171
+ # @return [Ittybit::Media::MediaUpdateResponse]
170
172
  # @example
171
173
  # api = Ittybit::Client.new(
172
174
  # base_url: "https://api.example.com",
@@ -200,7 +202,7 @@ module Ittybit
200
202
  }.compact
201
203
  req.url "#{@request_client.get_url(request_options: request_options)}/media/#{id}"
202
204
  end
203
- Ittybit::MediaResponse.from_json(json_object: response.body)
205
+ Ittybit::Media::MediaUpdateResponse.from_json(json_object: response.body)
204
206
  end
205
207
  end
206
208
 
@@ -254,7 +256,7 @@ module Ittybit
254
256
  # @param alt [String]
255
257
  # @param metadata [Hash{String => Object}]
256
258
  # @param request_options [Ittybit::RequestOptions]
257
- # @return [Ittybit::MediaResponse]
259
+ # @return [Ittybit::Media::MediaCreateResponse]
258
260
  # @example
259
261
  # api = Ittybit::Client.new(
260
262
  # base_url: "https://api.example.com",
@@ -288,7 +290,7 @@ module Ittybit
288
290
  }.compact
289
291
  req.url "#{@request_client.get_url(request_options: request_options)}/media"
290
292
  end
291
- Ittybit::MediaResponse.from_json(json_object: response.body)
293
+ Ittybit::Media::MediaCreateResponse.from_json(json_object: response.body)
292
294
  end
293
295
  end
294
296
 
@@ -296,7 +298,7 @@ module Ittybit
296
298
  #
297
299
  # @param id [String]
298
300
  # @param request_options [Ittybit::RequestOptions]
299
- # @return [Ittybit::MediaResponse]
301
+ # @return [Ittybit::Media::MediaGetResponse]
300
302
  # @example
301
303
  # api = Ittybit::Client.new(
302
304
  # base_url: "https://api.example.com",
@@ -323,7 +325,7 @@ module Ittybit
323
325
  end
324
326
  req.url "#{@request_client.get_url(request_options: request_options)}/media/#{id}"
325
327
  end
326
- Ittybit::MediaResponse.from_json(json_object: response.body)
328
+ Ittybit::Media::MediaGetResponse.from_json(json_object: response.body)
327
329
  end
328
330
  end
329
331
 
@@ -332,7 +334,7 @@ module Ittybit
332
334
  #
333
335
  # @param id [String]
334
336
  # @param request_options [Ittybit::RequestOptions]
335
- # @return [Ittybit::ConfirmationResponse]
337
+ # @return [Ittybit::Media::MediaDeleteResponse]
336
338
  # @example
337
339
  # api = Ittybit::Client.new(
338
340
  # base_url: "https://api.example.com",
@@ -359,7 +361,7 @@ module Ittybit
359
361
  end
360
362
  req.url "#{@request_client.get_url(request_options: request_options)}/media/#{id}"
361
363
  end
362
- Ittybit::ConfirmationResponse.from_json(json_object: response.body)
364
+ Ittybit::Media::MediaDeleteResponse.from_json(json_object: response.body)
363
365
  end
364
366
  end
365
367
 
@@ -371,7 +373,7 @@ module Ittybit
371
373
  # @param alt [String]
372
374
  # @param metadata [Hash{String => Object}]
373
375
  # @param request_options [Ittybit::RequestOptions]
374
- # @return [Ittybit::MediaResponse]
376
+ # @return [Ittybit::Media::MediaUpdateResponse]
375
377
  # @example
376
378
  # api = Ittybit::Client.new(
377
379
  # base_url: "https://api.example.com",
@@ -406,7 +408,7 @@ module Ittybit
406
408
  }.compact
407
409
  req.url "#{@request_client.get_url(request_options: request_options)}/media/#{id}"
408
410
  end
409
- Ittybit::MediaResponse.from_json(json_object: response.body)
411
+ Ittybit::Media::MediaUpdateResponse.from_json(json_object: response.body)
410
412
  end
411
413
  end
412
414
  end
@@ -0,0 +1,107 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "media_create_response_meta"
4
+ require_relative "media_create_response_data"
5
+ require_relative "media_create_response_error"
6
+ require_relative "media_create_response_links"
7
+ require "ostruct"
8
+ require "json"
9
+
10
+ module Ittybit
11
+ class Media
12
+ class MediaCreateResponse
13
+ # @return [Ittybit::Media::MediaCreateResponseMeta]
14
+ attr_reader :meta
15
+ # @return [Ittybit::Media::MediaCreateResponseData]
16
+ attr_reader :data
17
+ # @return [Ittybit::Media::MediaCreateResponseError]
18
+ attr_reader :error
19
+ # @return [Ittybit::Media::MediaCreateResponseLinks]
20
+ attr_reader :links
21
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
22
+ attr_reader :additional_properties
23
+ # @return [Object]
24
+ attr_reader :_field_set
25
+ protected :_field_set
26
+
27
+ OMIT = Object.new
28
+
29
+ # @param meta [Ittybit::Media::MediaCreateResponseMeta]
30
+ # @param data [Ittybit::Media::MediaCreateResponseData]
31
+ # @param error [Ittybit::Media::MediaCreateResponseError]
32
+ # @param links [Ittybit::Media::MediaCreateResponseLinks]
33
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
34
+ # @return [Ittybit::Media::MediaCreateResponse]
35
+ def initialize(meta: OMIT, data: OMIT, error: OMIT, links: OMIT, additional_properties: nil)
36
+ @meta = meta if meta != OMIT
37
+ @data = data if data != OMIT
38
+ @error = error if error != OMIT
39
+ @links = links if links != OMIT
40
+ @additional_properties = additional_properties
41
+ @_field_set = { "meta": meta, "data": data, "error": error, "links": links }.reject do |_k, v|
42
+ v == OMIT
43
+ end
44
+ end
45
+
46
+ # Deserialize a JSON object to an instance of MediaCreateResponse
47
+ #
48
+ # @param json_object [String]
49
+ # @return [Ittybit::Media::MediaCreateResponse]
50
+ def self.from_json(json_object:)
51
+ struct = JSON.parse(json_object, object_class: OpenStruct)
52
+ parsed_json = JSON.parse(json_object)
53
+ if parsed_json["meta"].nil?
54
+ meta = nil
55
+ else
56
+ meta = parsed_json["meta"].to_json
57
+ meta = Ittybit::Media::MediaCreateResponseMeta.from_json(json_object: meta)
58
+ end
59
+ if parsed_json["data"].nil?
60
+ data = nil
61
+ else
62
+ data = parsed_json["data"].to_json
63
+ data = Ittybit::Media::MediaCreateResponseData.from_json(json_object: data)
64
+ end
65
+ if parsed_json["error"].nil?
66
+ error = nil
67
+ else
68
+ error = parsed_json["error"].to_json
69
+ error = Ittybit::Media::MediaCreateResponseError.from_json(json_object: error)
70
+ end
71
+ if parsed_json["links"].nil?
72
+ links = nil
73
+ else
74
+ links = parsed_json["links"].to_json
75
+ links = Ittybit::Media::MediaCreateResponseLinks.from_json(json_object: links)
76
+ end
77
+ new(
78
+ meta: meta,
79
+ data: data,
80
+ error: error,
81
+ links: links,
82
+ additional_properties: struct
83
+ )
84
+ end
85
+
86
+ # Serialize an instance of MediaCreateResponse to a JSON object
87
+ #
88
+ # @return [String]
89
+ def to_json(*_args)
90
+ @_field_set&.to_json
91
+ end
92
+
93
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
94
+ # hash and check each fields type against the current object's property
95
+ # definitions.
96
+ #
97
+ # @param obj [Object]
98
+ # @return [Void]
99
+ def self.validate_raw(obj:)
100
+ obj.meta.nil? || Ittybit::Media::MediaCreateResponseMeta.validate_raw(obj: obj.meta)
101
+ obj.data.nil? || Ittybit::Media::MediaCreateResponseData.validate_raw(obj: obj.data)
102
+ obj.error.nil? || Ittybit::Media::MediaCreateResponseError.validate_raw(obj: obj.error)
103
+ obj.links.nil? || Ittybit::Media::MediaCreateResponseLinks.validate_raw(obj: obj.links)
104
+ end
105
+ end
106
+ end
107
+ end
@@ -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