sunshine-conversations-client 15.5.1 → 16.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (359) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG_RB.md +11 -1
  3. data/README.md +18 -8
  4. data/docs/AttachmentsApi.md +1 -1
  5. data/docs/Content.md +1 -1
  6. data/docs/ConversationsApi.md +63 -0
  7. data/docs/ConversionEventsBody.md +21 -0
  8. data/docs/InstagramConversionEventsBody.md +17 -0
  9. data/docs/MessagePost.md +1 -1
  10. data/docs/MessengerConversionEventsBody.md +17 -0
  11. data/docs/MetaConversionEvent.md +17 -0
  12. data/docs/MetaConversionEventPayload.md +17 -0
  13. data/docs/SwitchboardActionsApi.md +1 -1
  14. data/docs/SwitchboardPassControlAllOfPayload.md +3 -1
  15. data/docs/SwitchboardReleaseControl.md +23 -0
  16. data/docs/SwitchboardReleaseControlAllOf.md +17 -0
  17. data/docs/SwitchboardReleaseControlAllOfPayload.md +21 -0
  18. data/docs/TemplateMessage.md +1 -1
  19. data/docs/WhatsAppConversionEventsBody.md +17 -0
  20. data/lib/sunshine-conversations-client/api/activities_api.rb +1 -1
  21. data/lib/sunshine-conversations-client/api/app_keys_api.rb +1 -1
  22. data/lib/sunshine-conversations-client/api/apps_api.rb +1 -1
  23. data/lib/sunshine-conversations-client/api/attachments_api.rb +3 -3
  24. data/lib/sunshine-conversations-client/api/clients_api.rb +1 -1
  25. data/lib/sunshine-conversations-client/api/conversations_api.rb +77 -1
  26. data/lib/sunshine-conversations-client/api/custom_integration_api_keys_api.rb +1 -1
  27. data/lib/sunshine-conversations-client/api/devices_api.rb +1 -1
  28. data/lib/sunshine-conversations-client/api/integrations_api.rb +1 -1
  29. data/lib/sunshine-conversations-client/api/messages_api.rb +1 -1
  30. data/lib/sunshine-conversations-client/api/o_auth_endpoints_api.rb +1 -1
  31. data/lib/sunshine-conversations-client/api/participants_api.rb +1 -1
  32. data/lib/sunshine-conversations-client/api/switchboard_actions_api.rb +3 -3
  33. data/lib/sunshine-conversations-client/api/switchboard_integrations_api.rb +1 -1
  34. data/lib/sunshine-conversations-client/api/switchboards_api.rb +1 -1
  35. data/lib/sunshine-conversations-client/api/users_api.rb +1 -1
  36. data/lib/sunshine-conversations-client/api/webhooks_api.rb +1 -1
  37. data/lib/sunshine-conversations-client/api_client.rb +1 -1
  38. data/lib/sunshine-conversations-client/api_error.rb +1 -1
  39. data/lib/sunshine-conversations-client/configuration.rb +1 -1
  40. data/lib/sunshine-conversations-client/models/accept_control_body.rb +1 -1
  41. data/lib/sunshine-conversations-client/models/action.rb +1 -1
  42. data/lib/sunshine-conversations-client/models/action_subset.rb +1 -1
  43. data/lib/sunshine-conversations-client/models/activity.rb +1 -1
  44. data/lib/sunshine-conversations-client/models/activity_all_of.rb +1 -1
  45. data/lib/sunshine-conversations-client/models/activity_message.rb +1 -1
  46. data/lib/sunshine-conversations-client/models/activity_post.rb +1 -1
  47. data/lib/sunshine-conversations-client/models/activity_post_all_of.rb +1 -1
  48. data/lib/sunshine-conversations-client/models/activity_types.rb +1 -1
  49. data/lib/sunshine-conversations-client/models/android.rb +1 -1
  50. data/lib/sunshine-conversations-client/models/android_all_of.rb +1 -1
  51. data/lib/sunshine-conversations-client/models/android_update.rb +1 -1
  52. data/lib/sunshine-conversations-client/models/android_update_all_of.rb +1 -1
  53. data/lib/sunshine-conversations-client/models/api_key.rb +1 -1
  54. data/lib/sunshine-conversations-client/models/app.rb +1 -1
  55. data/lib/sunshine-conversations-client/models/app_create_body.rb +1 -1
  56. data/lib/sunshine-conversations-client/models/app_key.rb +1 -1
  57. data/lib/sunshine-conversations-client/models/app_key_create_body.rb +1 -1
  58. data/lib/sunshine-conversations-client/models/app_key_list_response.rb +1 -1
  59. data/lib/sunshine-conversations-client/models/app_key_response.rb +1 -1
  60. data/lib/sunshine-conversations-client/models/app_list_filter.rb +1 -1
  61. data/lib/sunshine-conversations-client/models/app_list_response.rb +1 -1
  62. data/lib/sunshine-conversations-client/models/app_response.rb +1 -1
  63. data/lib/sunshine-conversations-client/models/app_settings.rb +1 -1
  64. data/lib/sunshine-conversations-client/models/app_sub_schema.rb +1 -1
  65. data/lib/sunshine-conversations-client/models/app_update_body.rb +1 -1
  66. data/lib/sunshine-conversations-client/models/apple.rb +1 -1
  67. data/lib/sunshine-conversations-client/models/apple_all_of.rb +1 -1
  68. data/lib/sunshine-conversations-client/models/apple_message_override_payload.rb +1 -1
  69. data/lib/sunshine-conversations-client/models/apple_update.rb +1 -1
  70. data/lib/sunshine-conversations-client/models/apple_update_all_of.rb +1 -1
  71. data/lib/sunshine-conversations-client/models/attachment_delete_body.rb +1 -1
  72. data/lib/sunshine-conversations-client/models/attachment_response.rb +1 -1
  73. data/lib/sunshine-conversations-client/models/attachment_schema.rb +1 -1
  74. data/lib/sunshine-conversations-client/models/attachment_upload_body.rb +1 -1
  75. data/lib/sunshine-conversations-client/models/author.rb +1 -1
  76. data/lib/sunshine-conversations-client/models/author_webhook.rb +1 -1
  77. data/lib/sunshine-conversations-client/models/buy.rb +1 -1
  78. data/lib/sunshine-conversations-client/models/campaign.rb +1 -1
  79. data/lib/sunshine-conversations-client/models/carousel_message.rb +1 -1
  80. data/lib/sunshine-conversations-client/models/carousel_message_display_settings.rb +1 -1
  81. data/lib/sunshine-conversations-client/models/client.rb +1 -1
  82. data/lib/sunshine-conversations-client/models/client_add_event.rb +1 -1
  83. data/lib/sunshine-conversations-client/models/client_add_event_all_of.rb +1 -1
  84. data/lib/sunshine-conversations-client/models/client_add_event_all_of_payload.rb +1 -1
  85. data/lib/sunshine-conversations-client/models/client_association.rb +1 -1
  86. data/lib/sunshine-conversations-client/models/client_create.rb +1 -1
  87. data/lib/sunshine-conversations-client/models/client_list_response.rb +1 -1
  88. data/lib/sunshine-conversations-client/models/client_remove_event.rb +1 -1
  89. data/lib/sunshine-conversations-client/models/client_remove_event_all_of.rb +1 -1
  90. data/lib/sunshine-conversations-client/models/client_remove_event_all_of_payload.rb +1 -1
  91. data/lib/sunshine-conversations-client/models/client_response.rb +1 -1
  92. data/lib/sunshine-conversations-client/models/client_type.rb +1 -1
  93. data/lib/sunshine-conversations-client/models/client_update_event.rb +1 -1
  94. data/lib/sunshine-conversations-client/models/client_update_event_all_of.rb +1 -1
  95. data/lib/sunshine-conversations-client/models/client_update_event_all_of_payload.rb +1 -1
  96. data/lib/sunshine-conversations-client/models/confirmation.rb +1 -1
  97. data/lib/sunshine-conversations-client/models/content.rb +2 -2
  98. data/lib/sunshine-conversations-client/models/conversation.rb +1 -1
  99. data/lib/sunshine-conversations-client/models/conversation_all_of.rb +1 -1
  100. data/lib/sunshine-conversations-client/models/conversation_create_body.rb +1 -1
  101. data/lib/sunshine-conversations-client/models/conversation_create_event.rb +1 -1
  102. data/lib/sunshine-conversations-client/models/conversation_create_event_all_of.rb +1 -1
  103. data/lib/sunshine-conversations-client/models/conversation_create_event_all_of_payload.rb +1 -1
  104. data/lib/sunshine-conversations-client/models/conversation_join_event.rb +1 -1
  105. data/lib/sunshine-conversations-client/models/conversation_join_event_all_of.rb +1 -1
  106. data/lib/sunshine-conversations-client/models/conversation_join_event_all_of_payload.rb +1 -1
  107. data/lib/sunshine-conversations-client/models/conversation_leave_event.rb +1 -1
  108. data/lib/sunshine-conversations-client/models/conversation_leave_event_all_of.rb +1 -1
  109. data/lib/sunshine-conversations-client/models/conversation_leave_event_all_of_payload.rb +1 -1
  110. data/lib/sunshine-conversations-client/models/conversation_list_filter.rb +1 -1
  111. data/lib/sunshine-conversations-client/models/conversation_list_response.rb +1 -1
  112. data/lib/sunshine-conversations-client/models/conversation_message_delivery_channel_event.rb +1 -1
  113. data/lib/sunshine-conversations-client/models/conversation_message_delivery_channel_event_all_of.rb +1 -1
  114. data/lib/sunshine-conversations-client/models/conversation_message_delivery_failure_event.rb +1 -1
  115. data/lib/sunshine-conversations-client/models/conversation_message_delivery_failure_event_all_of.rb +1 -1
  116. data/lib/sunshine-conversations-client/models/conversation_message_delivery_payload.rb +1 -1
  117. data/lib/sunshine-conversations-client/models/conversation_message_delivery_payload_destination.rb +1 -1
  118. data/lib/sunshine-conversations-client/models/conversation_message_delivery_payload_external_messages.rb +1 -1
  119. data/lib/sunshine-conversations-client/models/conversation_message_delivery_payload_message.rb +1 -1
  120. data/lib/sunshine-conversations-client/models/conversation_message_delivery_user_event.rb +1 -1
  121. data/lib/sunshine-conversations-client/models/conversation_message_event.rb +1 -1
  122. data/lib/sunshine-conversations-client/models/conversation_message_event_all_of.rb +1 -1
  123. data/lib/sunshine-conversations-client/models/conversation_message_event_all_of_payload.rb +1 -1
  124. data/lib/sunshine-conversations-client/models/conversation_postback_event.rb +1 -1
  125. data/lib/sunshine-conversations-client/models/conversation_postback_event_all_of.rb +1 -1
  126. data/lib/sunshine-conversations-client/models/conversation_postback_event_all_of_payload.rb +1 -1
  127. data/lib/sunshine-conversations-client/models/conversation_read_event.rb +1 -1
  128. data/lib/sunshine-conversations-client/models/conversation_read_event_all_of.rb +1 -1
  129. data/lib/sunshine-conversations-client/models/conversation_read_event_all_of_payload.rb +1 -1
  130. data/lib/sunshine-conversations-client/models/conversation_referral_event.rb +1 -1
  131. data/lib/sunshine-conversations-client/models/conversation_referral_event_all_of.rb +1 -1
  132. data/lib/sunshine-conversations-client/models/conversation_referral_event_all_of_payload.rb +1 -1
  133. data/lib/sunshine-conversations-client/models/conversation_remove_event.rb +1 -1
  134. data/lib/sunshine-conversations-client/models/conversation_remove_event_all_of.rb +1 -1
  135. data/lib/sunshine-conversations-client/models/conversation_remove_event_all_of_payload.rb +1 -1
  136. data/lib/sunshine-conversations-client/models/conversation_response.rb +1 -1
  137. data/lib/sunshine-conversations-client/models/conversation_truncated.rb +1 -1
  138. data/lib/sunshine-conversations-client/models/conversation_type.rb +1 -1
  139. data/lib/sunshine-conversations-client/models/conversation_typing_event.rb +1 -1
  140. data/lib/sunshine-conversations-client/models/conversation_typing_event_all_of.rb +1 -1
  141. data/lib/sunshine-conversations-client/models/conversation_typing_event_all_of_payload.rb +1 -1
  142. data/lib/sunshine-conversations-client/models/conversation_update_body.rb +1 -1
  143. data/lib/sunshine-conversations-client/models/conversion_events_body.rb +246 -0
  144. data/lib/sunshine-conversations-client/models/custom.rb +1 -1
  145. data/lib/sunshine-conversations-client/models/custom_all_of.rb +1 -1
  146. data/lib/sunshine-conversations-client/models/custom_update.rb +1 -1
  147. data/lib/sunshine-conversations-client/models/default_responder.rb +1 -1
  148. data/lib/sunshine-conversations-client/models/default_responder_default_responder.rb +1 -1
  149. data/lib/sunshine-conversations-client/models/default_responder_id.rb +1 -1
  150. data/lib/sunshine-conversations-client/models/destination.rb +1 -1
  151. data/lib/sunshine-conversations-client/models/device.rb +1 -1
  152. data/lib/sunshine-conversations-client/models/device_list_response.rb +1 -1
  153. data/lib/sunshine-conversations-client/models/device_response.rb +1 -1
  154. data/lib/sunshine-conversations-client/models/download_message_ref_body.rb +1 -1
  155. data/lib/sunshine-conversations-client/models/download_message_ref_body_all_of.rb +1 -1
  156. data/lib/sunshine-conversations-client/models/download_message_ref_body_all_of_apple.rb +1 -1
  157. data/lib/sunshine-conversations-client/models/download_message_ref_body_all_of_apple_interactive_data_ref.rb +1 -1
  158. data/lib/sunshine-conversations-client/models/error.rb +1 -1
  159. data/lib/sunshine-conversations-client/models/error_response.rb +1 -1
  160. data/lib/sunshine-conversations-client/models/event_sub_schema.rb +1 -1
  161. data/lib/sunshine-conversations-client/models/extra_channel_options.rb +1 -1
  162. data/lib/sunshine-conversations-client/models/extra_channel_options_messenger.rb +1 -1
  163. data/lib/sunshine-conversations-client/models/field.rb +1 -1
  164. data/lib/sunshine-conversations-client/models/file_message.rb +1 -1
  165. data/lib/sunshine-conversations-client/models/form_message.rb +1 -1
  166. data/lib/sunshine-conversations-client/models/form_message_field.rb +1 -1
  167. data/lib/sunshine-conversations-client/models/form_message_field_all_of.rb +1 -1
  168. data/lib/sunshine-conversations-client/models/form_response_message.rb +1 -1
  169. data/lib/sunshine-conversations-client/models/form_response_message_field.rb +1 -1
  170. data/lib/sunshine-conversations-client/models/form_response_message_field_all_of.rb +1 -1
  171. data/lib/sunshine-conversations-client/models/identity.rb +1 -1
  172. data/lib/sunshine-conversations-client/models/image_message.rb +1 -1
  173. data/lib/sunshine-conversations-client/models/inline_object.rb +1 -1
  174. data/lib/sunshine-conversations-client/models/instagram.rb +1 -1
  175. data/lib/sunshine-conversations-client/models/instagram_all_of.rb +1 -1
  176. data/lib/sunshine-conversations-client/models/instagram_conversion_events_body.rb +203 -0
  177. data/lib/sunshine-conversations-client/models/instagram_update.rb +1 -1
  178. data/lib/sunshine-conversations-client/models/instagram_update_all_of.rb +1 -1
  179. data/lib/sunshine-conversations-client/models/integration.rb +1 -1
  180. data/lib/sunshine-conversations-client/models/integration_api_key.rb +1 -1
  181. data/lib/sunshine-conversations-client/models/integration_api_key_list_response.rb +1 -1
  182. data/lib/sunshine-conversations-client/models/integration_api_key_response.rb +1 -1
  183. data/lib/sunshine-conversations-client/models/integration_id.rb +1 -1
  184. data/lib/sunshine-conversations-client/models/integration_list_filter.rb +1 -1
  185. data/lib/sunshine-conversations-client/models/integration_list_response.rb +1 -1
  186. data/lib/sunshine-conversations-client/models/integration_response.rb +1 -1
  187. data/lib/sunshine-conversations-client/models/integration_type.rb +1 -1
  188. data/lib/sunshine-conversations-client/models/integration_update.rb +1 -1
  189. data/lib/sunshine-conversations-client/models/integration_update_base.rb +1 -1
  190. data/lib/sunshine-conversations-client/models/ios.rb +1 -1
  191. data/lib/sunshine-conversations-client/models/ios_all_of.rb +1 -1
  192. data/lib/sunshine-conversations-client/models/ios_update.rb +1 -1
  193. data/lib/sunshine-conversations-client/models/ios_update_all_of.rb +1 -1
  194. data/lib/sunshine-conversations-client/models/item.rb +1 -1
  195. data/lib/sunshine-conversations-client/models/line.rb +1 -1
  196. data/lib/sunshine-conversations-client/models/line_all_of.rb +1 -1
  197. data/lib/sunshine-conversations-client/models/line_update.rb +1 -1
  198. data/lib/sunshine-conversations-client/models/link.rb +1 -1
  199. data/lib/sunshine-conversations-client/models/links.rb +1 -1
  200. data/lib/sunshine-conversations-client/models/list_message.rb +1 -1
  201. data/lib/sunshine-conversations-client/models/location_message.rb +1 -1
  202. data/lib/sunshine-conversations-client/models/location_message_coordinates.rb +1 -1
  203. data/lib/sunshine-conversations-client/models/location_message_location.rb +1 -1
  204. data/lib/sunshine-conversations-client/models/location_request.rb +1 -1
  205. data/lib/sunshine-conversations-client/models/mailgun.rb +1 -1
  206. data/lib/sunshine-conversations-client/models/mailgun_all_of.rb +1 -1
  207. data/lib/sunshine-conversations-client/models/mailgun_update.rb +1 -1
  208. data/lib/sunshine-conversations-client/models/mailgun_update_all_of.rb +1 -1
  209. data/lib/sunshine-conversations-client/models/match_criteria.rb +1 -1
  210. data/lib/sunshine-conversations-client/models/match_criteria_base.rb +1 -1
  211. data/lib/sunshine-conversations-client/models/match_criteria_mailgun.rb +1 -1
  212. data/lib/sunshine-conversations-client/models/match_criteria_mailgun_all_of.rb +1 -1
  213. data/lib/sunshine-conversations-client/models/match_criteria_messagebird.rb +1 -1
  214. data/lib/sunshine-conversations-client/models/match_criteria_messagebird_all_of.rb +1 -1
  215. data/lib/sunshine-conversations-client/models/match_criteria_twilio.rb +1 -1
  216. data/lib/sunshine-conversations-client/models/match_criteria_twilio_all_of.rb +1 -1
  217. data/lib/sunshine-conversations-client/models/match_criteria_whatsapp.rb +1 -1
  218. data/lib/sunshine-conversations-client/models/match_criteria_whatsapp_all_of.rb +1 -1
  219. data/lib/sunshine-conversations-client/models/message.rb +1 -1
  220. data/lib/sunshine-conversations-client/models/message_bird_update.rb +1 -1
  221. data/lib/sunshine-conversations-client/models/message_list_response.rb +1 -1
  222. data/lib/sunshine-conversations-client/models/message_override.rb +2 -2
  223. data/lib/sunshine-conversations-client/models/message_override_apple.rb +1 -1
  224. data/lib/sunshine-conversations-client/models/message_override_line.rb +1 -1
  225. data/lib/sunshine-conversations-client/models/message_override_messenger.rb +1 -1
  226. data/lib/sunshine-conversations-client/models/message_override_payload.rb +1 -1
  227. data/lib/sunshine-conversations-client/models/message_override_whatsapp.rb +1 -1
  228. data/lib/sunshine-conversations-client/models/message_post.rb +2 -2
  229. data/lib/sunshine-conversations-client/models/message_post_response.rb +1 -1
  230. data/lib/sunshine-conversations-client/models/message_webhook.rb +1 -1
  231. data/lib/sunshine-conversations-client/models/messagebird.rb +1 -1
  232. data/lib/sunshine-conversations-client/models/messagebird_all_of.rb +1 -1
  233. data/lib/sunshine-conversations-client/models/messenger.rb +1 -1
  234. data/lib/sunshine-conversations-client/models/messenger_all_of.rb +1 -1
  235. data/lib/sunshine-conversations-client/models/messenger_conversion_events_body.rb +203 -0
  236. data/lib/sunshine-conversations-client/models/messenger_update.rb +1 -1
  237. data/lib/sunshine-conversations-client/models/meta.rb +1 -1
  238. data/lib/sunshine-conversations-client/models/meta_conversion_event.rb +209 -0
  239. data/lib/sunshine-conversations-client/models/meta_conversion_event_payload.rb +209 -0
  240. data/lib/sunshine-conversations-client/models/offer_control_body.rb +1 -1
  241. data/lib/sunshine-conversations-client/models/page.rb +1 -1
  242. data/lib/sunshine-conversations-client/models/participant.rb +1 -1
  243. data/lib/sunshine-conversations-client/models/participant_join_body.rb +1 -1
  244. data/lib/sunshine-conversations-client/models/participant_leave_body.rb +1 -1
  245. data/lib/sunshine-conversations-client/models/participant_leave_body_participant_id.rb +1 -1
  246. data/lib/sunshine-conversations-client/models/participant_leave_body_user_external_id.rb +1 -1
  247. data/lib/sunshine-conversations-client/models/participant_leave_body_user_id.rb +1 -1
  248. data/lib/sunshine-conversations-client/models/participant_list_response.rb +1 -1
  249. data/lib/sunshine-conversations-client/models/participant_response.rb +1 -1
  250. data/lib/sunshine-conversations-client/models/participant_sub_schema.rb +1 -1
  251. data/lib/sunshine-conversations-client/models/participant_with_user_external_id.rb +1 -1
  252. data/lib/sunshine-conversations-client/models/participant_with_user_id.rb +1 -1
  253. data/lib/sunshine-conversations-client/models/pass_control_body.rb +1 -1
  254. data/lib/sunshine-conversations-client/models/postback.rb +1 -1
  255. data/lib/sunshine-conversations-client/models/postback_webhook.rb +1 -1
  256. data/lib/sunshine-conversations-client/models/prechat_capture.rb +1 -1
  257. data/lib/sunshine-conversations-client/models/profile.rb +1 -1
  258. data/lib/sunshine-conversations-client/models/quoted_message.rb +1 -1
  259. data/lib/sunshine-conversations-client/models/quoted_message_external_message_id.rb +1 -1
  260. data/lib/sunshine-conversations-client/models/quoted_message_message.rb +1 -1
  261. data/lib/sunshine-conversations-client/models/referral.rb +1 -1
  262. data/lib/sunshine-conversations-client/models/referral_details.rb +1 -1
  263. data/lib/sunshine-conversations-client/models/release_control_body.rb +1 -1
  264. data/lib/sunshine-conversations-client/models/reply.rb +1 -1
  265. data/lib/sunshine-conversations-client/models/source.rb +1 -1
  266. data/lib/sunshine-conversations-client/models/source_webhook.rb +1 -1
  267. data/lib/sunshine-conversations-client/models/source_with_campaign_webhook.rb +1 -1
  268. data/lib/sunshine-conversations-client/models/source_with_campaign_webhook_all_of.rb +1 -1
  269. data/lib/sunshine-conversations-client/models/status.rb +1 -1
  270. data/lib/sunshine-conversations-client/models/switchboard.rb +1 -1
  271. data/lib/sunshine-conversations-client/models/switchboard_accept_control.rb +1 -1
  272. data/lib/sunshine-conversations-client/models/switchboard_accept_control_all_of.rb +1 -1
  273. data/lib/sunshine-conversations-client/models/switchboard_accept_control_all_of_payload.rb +1 -1
  274. data/lib/sunshine-conversations-client/models/switchboard_accept_control_failure.rb +1 -1
  275. data/lib/sunshine-conversations-client/models/switchboard_accept_control_failure_all_of.rb +1 -1
  276. data/lib/sunshine-conversations-client/models/switchboard_accept_control_failure_all_of_payload.rb +1 -1
  277. data/lib/sunshine-conversations-client/models/switchboard_integration.rb +1 -1
  278. data/lib/sunshine-conversations-client/models/switchboard_integration_create_body.rb +1 -1
  279. data/lib/sunshine-conversations-client/models/switchboard_integration_list_response.rb +1 -1
  280. data/lib/sunshine-conversations-client/models/switchboard_integration_response.rb +1 -1
  281. data/lib/sunshine-conversations-client/models/switchboard_integration_update_body.rb +1 -1
  282. data/lib/sunshine-conversations-client/models/switchboard_integration_webhook.rb +1 -1
  283. data/lib/sunshine-conversations-client/models/switchboard_list_response.rb +1 -1
  284. data/lib/sunshine-conversations-client/models/switchboard_offer_control.rb +1 -1
  285. data/lib/sunshine-conversations-client/models/switchboard_offer_control_all_of.rb +1 -1
  286. data/lib/sunshine-conversations-client/models/switchboard_offer_control_all_of_payload.rb +1 -1
  287. data/lib/sunshine-conversations-client/models/switchboard_offer_control_failure.rb +1 -1
  288. data/lib/sunshine-conversations-client/models/switchboard_pass_control.rb +1 -1
  289. data/lib/sunshine-conversations-client/models/switchboard_pass_control_all_of.rb +1 -1
  290. data/lib/sunshine-conversations-client/models/switchboard_pass_control_all_of_payload.rb +50 -6
  291. data/lib/sunshine-conversations-client/models/switchboard_pass_control_failure.rb +1 -1
  292. data/lib/sunshine-conversations-client/models/switchboard_release_control.rb +241 -0
  293. data/lib/sunshine-conversations-client/models/switchboard_release_control_all_of.rb +203 -0
  294. data/lib/sunshine-conversations-client/models/switchboard_release_control_all_of_payload.rb +259 -0
  295. data/lib/sunshine-conversations-client/models/switchboard_response.rb +1 -1
  296. data/lib/sunshine-conversations-client/models/switchboard_update_body.rb +1 -1
  297. data/lib/sunshine-conversations-client/models/sync_user_body.rb +1 -1
  298. data/lib/sunshine-conversations-client/models/target.rb +1 -1
  299. data/lib/sunshine-conversations-client/models/telegram.rb +1 -1
  300. data/lib/sunshine-conversations-client/models/telegram_all_of.rb +1 -1
  301. data/lib/sunshine-conversations-client/models/telegram_update.rb +1 -1
  302. data/lib/sunshine-conversations-client/models/template_message.rb +2 -2
  303. data/lib/sunshine-conversations-client/models/text_message.rb +1 -1
  304. data/lib/sunshine-conversations-client/models/ticket_closed.rb +1 -1
  305. data/lib/sunshine-conversations-client/models/transfer_to_email.rb +1 -1
  306. data/lib/sunshine-conversations-client/models/twilio.rb +1 -1
  307. data/lib/sunshine-conversations-client/models/twilio_all_of.rb +1 -1
  308. data/lib/sunshine-conversations-client/models/twilio_update.rb +1 -1
  309. data/lib/sunshine-conversations-client/models/twitter.rb +1 -1
  310. data/lib/sunshine-conversations-client/models/twitter_all_of.rb +1 -1
  311. data/lib/sunshine-conversations-client/models/twitter_update.rb +1 -1
  312. data/lib/sunshine-conversations-client/models/unity.rb +1 -1
  313. data/lib/sunshine-conversations-client/models/unity_all_of.rb +1 -1
  314. data/lib/sunshine-conversations-client/models/unity_update.rb +1 -1
  315. data/lib/sunshine-conversations-client/models/unity_update_all_of.rb +1 -1
  316. data/lib/sunshine-conversations-client/models/user.rb +1 -1
  317. data/lib/sunshine-conversations-client/models/user_all_of.rb +1 -1
  318. data/lib/sunshine-conversations-client/models/user_create_body.rb +1 -1
  319. data/lib/sunshine-conversations-client/models/user_merge_event.rb +1 -1
  320. data/lib/sunshine-conversations-client/models/user_merge_event_all_of.rb +1 -1
  321. data/lib/sunshine-conversations-client/models/user_merge_event_all_of_payload.rb +1 -1
  322. data/lib/sunshine-conversations-client/models/user_merge_event_all_of_payload_merged_clients.rb +1 -1
  323. data/lib/sunshine-conversations-client/models/user_merge_event_all_of_payload_merged_conversations.rb +1 -1
  324. data/lib/sunshine-conversations-client/models/user_merge_event_all_of_payload_merged_users.rb +1 -1
  325. data/lib/sunshine-conversations-client/models/user_remove_event.rb +1 -1
  326. data/lib/sunshine-conversations-client/models/user_remove_event_all_of.rb +1 -1
  327. data/lib/sunshine-conversations-client/models/user_remove_event_all_of_payload.rb +1 -1
  328. data/lib/sunshine-conversations-client/models/user_response.rb +1 -1
  329. data/lib/sunshine-conversations-client/models/user_truncated.rb +1 -1
  330. data/lib/sunshine-conversations-client/models/user_update_body.rb +1 -1
  331. data/lib/sunshine-conversations-client/models/user_update_event.rb +1 -1
  332. data/lib/sunshine-conversations-client/models/user_update_event_all_of.rb +1 -1
  333. data/lib/sunshine-conversations-client/models/user_update_event_all_of_payload.rb +1 -1
  334. data/lib/sunshine-conversations-client/models/viber.rb +1 -1
  335. data/lib/sunshine-conversations-client/models/viber_all_of.rb +1 -1
  336. data/lib/sunshine-conversations-client/models/viber_update.rb +1 -1
  337. data/lib/sunshine-conversations-client/models/web.rb +1 -1
  338. data/lib/sunshine-conversations-client/models/web_all_of.rb +1 -1
  339. data/lib/sunshine-conversations-client/models/web_update.rb +1 -1
  340. data/lib/sunshine-conversations-client/models/web_update_all_of.rb +1 -1
  341. data/lib/sunshine-conversations-client/models/webhook.rb +1 -1
  342. data/lib/sunshine-conversations-client/models/webhook_body.rb +1 -1
  343. data/lib/sunshine-conversations-client/models/webhook_create_body.rb +1 -1
  344. data/lib/sunshine-conversations-client/models/webhook_list_response.rb +1 -1
  345. data/lib/sunshine-conversations-client/models/webhook_response.rb +1 -1
  346. data/lib/sunshine-conversations-client/models/webhook_sub_schema.rb +1 -1
  347. data/lib/sunshine-conversations-client/models/webview.rb +1 -1
  348. data/lib/sunshine-conversations-client/models/whats_app_conversion_events_body.rb +203 -0
  349. data/lib/sunshine-conversations-client/models/whats_app_update.rb +1 -1
  350. data/lib/sunshine-conversations-client/models/whats_app_update_all_of.rb +1 -1
  351. data/lib/sunshine-conversations-client/models/whatsapp.rb +1 -1
  352. data/lib/sunshine-conversations-client/models/whatsapp_all_of.rb +1 -1
  353. data/lib/sunshine-conversations-client/version.rb +2 -2
  354. data/lib/sunshine-conversations-client.rb +10 -1
  355. data/spec/api_client_spec.rb +1 -1
  356. data/spec/configuration_spec.rb +1 -1
  357. data/spec/spec_helper.rb +1 -1
  358. data/sunshine-conversations-client.gemspec +1 -1
  359. metadata +20 -2
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.5.1
4
+ The version of the OpenAPI document: 15.6.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
7
  OpenAPI Generator version: 4.3.1
@@ -10,7 +10,7 @@ OpenAPI Generator version: 4.3.1
10
10
  require 'date'
11
11
 
12
12
  module SunshineConversationsClient
13
- # A raw payload containing a message that is sent directly to a channel. Messages for [Apple Messages for Business](https://docs.smooch.io/guide/apple-messages-for-business/#passthrough-api), [Line](https://docs.smooch.io/guide/line/#passthrough-api), [Messenger](https://docs.smooch.io/guide/facebook-messenger/#passthrough-api), [Whatsapp](https://docs.smooch.io/guide/whatsapp/#passthrough-api) channels are supported.
13
+ # A raw payload containing a message that is sent directly to a channel. See [message overrides](https://developer.zendesk.com/documentation/conversations/messaging-platform/programmable-conversations/message-overrides/) for more information.
14
14
  class MessageOverride
15
15
  attr_accessor :apple
16
16
 
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.5.1
4
+ The version of the OpenAPI document: 15.6.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
7
  OpenAPI Generator version: 4.3.1
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.5.1
4
+ The version of the OpenAPI document: 15.6.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
7
  OpenAPI Generator version: 4.3.1
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.5.1
4
+ The version of the OpenAPI document: 15.6.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
7
  OpenAPI Generator version: 4.3.1
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.5.1
4
+ The version of the OpenAPI document: 15.6.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
7
  OpenAPI Generator version: 4.3.1
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.5.1
4
+ The version of the OpenAPI document: 15.6.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
7
  OpenAPI Generator version: 4.3.1
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.5.1
4
+ The version of the OpenAPI document: 15.6.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
7
  OpenAPI Generator version: 4.3.1
@@ -24,7 +24,7 @@ module SunshineConversationsClient
24
24
 
25
25
  attr_accessor :override
26
26
 
27
- # When `schema` is set to `\"whatsapp\"`, the `content` key is expected to conform to the [native WhatsApp schema](https://developers.facebook.com/docs/whatsapp/api/messages/message-templates) for sending message templates. For more details, consult the documentation for [sending message templates on WhatsApp](https://docs.smooch.io/guide/whatsapp/#sending-message-templates).
27
+ # When `schema` is set to `\"whatsapp\"`, the `content` key is expected to conform to the [native WhatsApp schema](https://developers.facebook.com/docs/whatsapp/api/messages/message-templates) for sending message templates. For more details, consult the documentation for [sending message templates on WhatsApp](https://developer.zendesk.com/documentation/conversations/messaging-platform/programmable-conversations/message-overrides/#template-messages).
28
28
  attr_accessor :schema
29
29
 
30
30
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.5.1
4
+ The version of the OpenAPI document: 15.6.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
7
  OpenAPI Generator version: 4.3.1
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.5.1
4
+ The version of the OpenAPI document: 15.6.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
7
  OpenAPI Generator version: 4.3.1
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.5.1
4
+ The version of the OpenAPI document: 15.6.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
7
  OpenAPI Generator version: 4.3.1
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.5.1
4
+ The version of the OpenAPI document: 15.6.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
7
  OpenAPI Generator version: 4.3.1
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.5.1
4
+ The version of the OpenAPI document: 15.6.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
7
  OpenAPI Generator version: 4.3.1
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.5.1
4
+ The version of the OpenAPI document: 15.6.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
7
  OpenAPI Generator version: 4.3.1
@@ -0,0 +1,203 @@
1
+ =begin
2
+ #Sunshine Conversations API
3
+
4
+ The version of the OpenAPI document: 15.6.0
5
+
6
+ Generated by: https://openapi-generator.tech
7
+ OpenAPI Generator version: 4.3.1
8
+ =end
9
+
10
+ require 'date'
11
+
12
+ module SunshineConversationsClient
13
+ class MessengerConversionEventsBody
14
+ attr_accessor :messenger
15
+
16
+ # Attribute mapping from ruby-style variable name to JSON key.
17
+ def self.attribute_map
18
+ {
19
+ :'messenger' => :'messenger'
20
+ }
21
+ end
22
+
23
+ # Attribute type mapping.
24
+ def self.openapi_types
25
+ {
26
+ :'messenger' => :'MetaConversionEvent'
27
+ }
28
+ end
29
+
30
+ # List of attributes with nullable: true
31
+ def self.openapi_nullable
32
+ Set.new([
33
+ ])
34
+ end
35
+
36
+ # Initializes the object
37
+ # @param [Hash] attributes Model attributes in the form of hash
38
+ def initialize(attributes = {})
39
+ if (!attributes.is_a?(Hash))
40
+ fail ArgumentError, "The input argument (attributes) must be a hash in `SunshineConversationsClient::MessengerConversionEventsBody` initialize method"
41
+ end
42
+
43
+ # check to see if the attribute exists and convert string to symbol for hash key
44
+ attributes = attributes.each_with_object({}) { |(k, v), h|
45
+ if (!self.class.attribute_map.key?(k.to_sym))
46
+ fail ArgumentError, "`#{k}` is not a valid attribute in `SunshineConversationsClient::MessengerConversionEventsBody`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
47
+ end
48
+ h[k.to_sym] = v
49
+ }
50
+
51
+ if attributes.key?(:'messenger')
52
+ self.messenger = attributes[:'messenger']
53
+ end
54
+ end
55
+
56
+ # Show invalid properties with the reasons. Usually used together with valid?
57
+ # @return Array for valid properties with the reasons
58
+ def list_invalid_properties
59
+ invalid_properties = Array.new
60
+ invalid_properties
61
+ end
62
+
63
+ # Check to see if the all the properties in the model are valid
64
+ # @return true if the model is valid
65
+ def valid?
66
+ true
67
+ end
68
+
69
+ # Checks equality by comparing each attribute.
70
+ # @param [Object] Object to be compared
71
+ def ==(o)
72
+ return true if self.equal?(o)
73
+ self.class == o.class &&
74
+ messenger == o.messenger
75
+ end
76
+
77
+ # @see the `==` method
78
+ # @param [Object] Object to be compared
79
+ def eql?(o)
80
+ self == o
81
+ end
82
+
83
+ # Calculates hash code according to all attributes.
84
+ # @return [Integer] Hash code
85
+ def hash
86
+ [messenger].hash
87
+ end
88
+
89
+ # Builds the object from hash
90
+ # @param [Hash] attributes Model attributes in the form of hash
91
+ # @return [Object] Returns the model itself
92
+ def self.build_from_hash(attributes)
93
+ new.build_from_hash(attributes)
94
+ end
95
+
96
+ # Builds the object from hash
97
+ # @param [Hash] attributes Model attributes in the form of hash
98
+ # @return [Object] Returns the model itself
99
+ def build_from_hash(attributes)
100
+ return nil unless attributes.is_a?(Hash)
101
+ self.class.openapi_types.each_pair do |key, type|
102
+ if type =~ /\AArray<(.*)>/i
103
+ # check to ensure the input is an array given that the attribute
104
+ # is documented as an array but the input is not
105
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
106
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
107
+ end
108
+ elsif !attributes[self.class.attribute_map[key]].nil?
109
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
110
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
111
+ end
112
+
113
+ self
114
+ end
115
+
116
+ # Deserializes the data based on type
117
+ # @param string type Data type
118
+ # @param string value Value to be deserialized
119
+ # @return [Object] Deserialized data
120
+ def _deserialize(type, value)
121
+ case type.to_sym
122
+ when :DateTime
123
+ DateTime.parse(value)
124
+ when :Date
125
+ Date.parse(value)
126
+ when :String
127
+ value.to_s
128
+ when :Integer
129
+ value.to_i
130
+ when :Float
131
+ value.to_f
132
+ when :Boolean
133
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
134
+ true
135
+ else
136
+ false
137
+ end
138
+ when :Object
139
+ # generic object (usually a Hash), return directly
140
+ value
141
+ when /\AArray<(?<inner_type>.+)>\z/
142
+ inner_type = Regexp.last_match[:inner_type]
143
+ value.map { |v| _deserialize(inner_type, v) }
144
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
145
+ k_type = Regexp.last_match[:k_type]
146
+ v_type = Regexp.last_match[:v_type]
147
+ {}.tap do |hash|
148
+ value.each do |k, v|
149
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
150
+ end
151
+ end
152
+ else # model
153
+ SunshineConversationsClient.const_get(type).build_from_hash(value)
154
+ end
155
+ end
156
+
157
+ # Returns the string representation of the object
158
+ # @return [String] String presentation of the object
159
+ def to_s
160
+ to_hash.to_s
161
+ end
162
+
163
+ # to_body is an alias to to_hash (backward compatibility)
164
+ # @return [Hash] Returns the object in the form of hash
165
+ def to_body
166
+ to_hash
167
+ end
168
+
169
+ # Returns the object in the form of hash
170
+ # @return [Hash] Returns the object in the form of hash
171
+ def to_hash
172
+ hash = {}
173
+ self.class.attribute_map.each_pair do |attr, param|
174
+ value = self.send(attr)
175
+ if value.nil?
176
+ is_nullable = self.class.openapi_nullable.include?(attr)
177
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
178
+ end
179
+
180
+ hash[param] = _to_hash(value)
181
+ end
182
+ hash
183
+ end
184
+
185
+ # Outputs non-array value in the form of hash
186
+ # For object, use to_hash. Otherwise, just return the value
187
+ # @param [Object] value Any valid value
188
+ # @return [Hash] Returns the value in the form of hash
189
+ def _to_hash(value)
190
+ if value.is_a?(Array)
191
+ value.compact.map { |v| _to_hash(v) }
192
+ elsif value.is_a?(Hash)
193
+ {}.tap do |hash|
194
+ value.each { |k, v| hash[k] = _to_hash(v) }
195
+ end
196
+ elsif value.respond_to? :to_hash
197
+ value.to_hash
198
+ else
199
+ value
200
+ end
201
+ end
202
+ end
203
+ end
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.5.1
4
+ The version of the OpenAPI document: 15.6.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
7
  OpenAPI Generator version: 4.3.1
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.5.1
4
+ The version of the OpenAPI document: 15.6.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
7
  OpenAPI Generator version: 4.3.1
@@ -0,0 +1,209 @@
1
+ =begin
2
+ #Sunshine Conversations API
3
+
4
+ The version of the OpenAPI document: 15.6.0
5
+
6
+ Generated by: https://openapi-generator.tech
7
+ OpenAPI Generator version: 4.3.1
8
+ =end
9
+
10
+ require 'date'
11
+
12
+ module SunshineConversationsClient
13
+ # The conversion event data expected by Meta.
14
+ class MetaConversionEvent
15
+ attr_accessor :payload
16
+
17
+ # Attribute mapping from ruby-style variable name to JSON key.
18
+ def self.attribute_map
19
+ {
20
+ :'payload' => :'payload'
21
+ }
22
+ end
23
+
24
+ # Attribute type mapping.
25
+ def self.openapi_types
26
+ {
27
+ :'payload' => :'MetaConversionEventPayload'
28
+ }
29
+ end
30
+
31
+ # List of attributes with nullable: true
32
+ def self.openapi_nullable
33
+ Set.new([
34
+ ])
35
+ end
36
+
37
+ # Initializes the object
38
+ # @param [Hash] attributes Model attributes in the form of hash
39
+ def initialize(attributes = {})
40
+ if (!attributes.is_a?(Hash))
41
+ fail ArgumentError, "The input argument (attributes) must be a hash in `SunshineConversationsClient::MetaConversionEvent` initialize method"
42
+ end
43
+
44
+ # check to see if the attribute exists and convert string to symbol for hash key
45
+ attributes = attributes.each_with_object({}) { |(k, v), h|
46
+ if (!self.class.attribute_map.key?(k.to_sym))
47
+ fail ArgumentError, "`#{k}` is not a valid attribute in `SunshineConversationsClient::MetaConversionEvent`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
48
+ end
49
+ h[k.to_sym] = v
50
+ }
51
+
52
+ if attributes.key?(:'payload')
53
+ self.payload = attributes[:'payload']
54
+ end
55
+ end
56
+
57
+ # Show invalid properties with the reasons. Usually used together with valid?
58
+ # @return Array for valid properties with the reasons
59
+ def list_invalid_properties
60
+ invalid_properties = Array.new
61
+ if @payload.nil?
62
+ invalid_properties.push('invalid value for "payload", payload cannot be nil.')
63
+ end
64
+
65
+ invalid_properties
66
+ end
67
+
68
+ # Check to see if the all the properties in the model are valid
69
+ # @return true if the model is valid
70
+ def valid?
71
+ return false if @payload.nil?
72
+ true
73
+ end
74
+
75
+ # Checks equality by comparing each attribute.
76
+ # @param [Object] Object to be compared
77
+ def ==(o)
78
+ return true if self.equal?(o)
79
+ self.class == o.class &&
80
+ payload == o.payload
81
+ end
82
+
83
+ # @see the `==` method
84
+ # @param [Object] Object to be compared
85
+ def eql?(o)
86
+ self == o
87
+ end
88
+
89
+ # Calculates hash code according to all attributes.
90
+ # @return [Integer] Hash code
91
+ def hash
92
+ [payload].hash
93
+ end
94
+
95
+ # Builds the object from hash
96
+ # @param [Hash] attributes Model attributes in the form of hash
97
+ # @return [Object] Returns the model itself
98
+ def self.build_from_hash(attributes)
99
+ new.build_from_hash(attributes)
100
+ end
101
+
102
+ # Builds the object from hash
103
+ # @param [Hash] attributes Model attributes in the form of hash
104
+ # @return [Object] Returns the model itself
105
+ def build_from_hash(attributes)
106
+ return nil unless attributes.is_a?(Hash)
107
+ self.class.openapi_types.each_pair do |key, type|
108
+ if type =~ /\AArray<(.*)>/i
109
+ # check to ensure the input is an array given that the attribute
110
+ # is documented as an array but the input is not
111
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
112
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
113
+ end
114
+ elsif !attributes[self.class.attribute_map[key]].nil?
115
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
116
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
117
+ end
118
+
119
+ self
120
+ end
121
+
122
+ # Deserializes the data based on type
123
+ # @param string type Data type
124
+ # @param string value Value to be deserialized
125
+ # @return [Object] Deserialized data
126
+ def _deserialize(type, value)
127
+ case type.to_sym
128
+ when :DateTime
129
+ DateTime.parse(value)
130
+ when :Date
131
+ Date.parse(value)
132
+ when :String
133
+ value.to_s
134
+ when :Integer
135
+ value.to_i
136
+ when :Float
137
+ value.to_f
138
+ when :Boolean
139
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
140
+ true
141
+ else
142
+ false
143
+ end
144
+ when :Object
145
+ # generic object (usually a Hash), return directly
146
+ value
147
+ when /\AArray<(?<inner_type>.+)>\z/
148
+ inner_type = Regexp.last_match[:inner_type]
149
+ value.map { |v| _deserialize(inner_type, v) }
150
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
151
+ k_type = Regexp.last_match[:k_type]
152
+ v_type = Regexp.last_match[:v_type]
153
+ {}.tap do |hash|
154
+ value.each do |k, v|
155
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
156
+ end
157
+ end
158
+ else # model
159
+ SunshineConversationsClient.const_get(type).build_from_hash(value)
160
+ end
161
+ end
162
+
163
+ # Returns the string representation of the object
164
+ # @return [String] String presentation of the object
165
+ def to_s
166
+ to_hash.to_s
167
+ end
168
+
169
+ # to_body is an alias to to_hash (backward compatibility)
170
+ # @return [Hash] Returns the object in the form of hash
171
+ def to_body
172
+ to_hash
173
+ end
174
+
175
+ # Returns the object in the form of hash
176
+ # @return [Hash] Returns the object in the form of hash
177
+ def to_hash
178
+ hash = {}
179
+ self.class.attribute_map.each_pair do |attr, param|
180
+ value = self.send(attr)
181
+ if value.nil?
182
+ is_nullable = self.class.openapi_nullable.include?(attr)
183
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
184
+ end
185
+
186
+ hash[param] = _to_hash(value)
187
+ end
188
+ hash
189
+ end
190
+
191
+ # Outputs non-array value in the form of hash
192
+ # For object, use to_hash. Otherwise, just return the value
193
+ # @param [Object] value Any valid value
194
+ # @return [Hash] Returns the value in the form of hash
195
+ def _to_hash(value)
196
+ if value.is_a?(Array)
197
+ value.compact.map { |v| _to_hash(v) }
198
+ elsif value.is_a?(Hash)
199
+ {}.tap do |hash|
200
+ value.each { |k, v| hash[k] = _to_hash(v) }
201
+ end
202
+ elsif value.respond_to? :to_hash
203
+ value.to_hash
204
+ else
205
+ value
206
+ end
207
+ end
208
+ end
209
+ end