sunshine-conversations-client 16.0.0 → 17.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 (682) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG_RB.md +21 -10
  3. data/README.md +20 -72
  4. data/docs/AcceptControlBody.md +8 -7
  5. data/docs/Action.md +64 -34
  6. data/docs/ActionSubset.md +60 -32
  7. data/docs/ActivitiesApi.md +2 -2
  8. data/docs/Activity.md +12 -11
  9. data/docs/ActivityMessage.md +69 -9
  10. data/docs/ActivityPost.md +10 -9
  11. data/docs/ActivityTypes.md +8 -7
  12. data/docs/Android.md +28 -27
  13. data/docs/AndroidUpdate.md +24 -23
  14. data/docs/ApiKey.md +12 -11
  15. data/docs/App.md +14 -13
  16. data/docs/AppCreateBody.md +12 -11
  17. data/docs/AppKey.md +12 -11
  18. data/docs/AppKeyCreateBody.md +8 -7
  19. data/docs/AppKeyListResponse.md +8 -7
  20. data/docs/AppKeyResponse.md +8 -7
  21. data/docs/AppKeysApi.md +7 -7
  22. data/docs/AppListFilter.md +8 -7
  23. data/docs/AppListResponse.md +12 -11
  24. data/docs/AppResponse.md +8 -7
  25. data/docs/AppSettings.md +20 -19
  26. data/docs/AppSubSchema.md +8 -7
  27. data/docs/AppUpdateBody.md +12 -11
  28. data/docs/Apple.md +20 -19
  29. data/docs/AppleMessageOverridePayload.md +10 -9
  30. data/docs/AppleUpdate.md +12 -11
  31. data/docs/AppsApi.md +8 -8
  32. data/docs/AttachmentDeleteBody.md +8 -7
  33. data/docs/AttachmentResponse.md +8 -7
  34. data/docs/AttachmentSchema.md +10 -9
  35. data/docs/AttachmentsApi.md +9 -9
  36. data/docs/Author.md +18 -17
  37. data/docs/AuthorWebhook.md +12 -11
  38. data/docs/Buy.md +16 -15
  39. data/docs/Campaign.md +8 -7
  40. data/docs/CarouselMessage.md +16 -15
  41. data/docs/CarouselMessageDisplaySettings.md +8 -7
  42. data/docs/Client.md +28 -27
  43. data/docs/ClientAddEvent.md +14 -13
  44. data/docs/ClientAddEventAllOfPayload.md +16 -15
  45. data/docs/ClientAssociation.md +10 -9
  46. data/docs/ClientCreate.md +12 -11
  47. data/docs/ClientListResponse.md +12 -11
  48. data/docs/ClientRemoveEvent.md +14 -13
  49. data/docs/ClientRemoveEventAllOfPayload.md +18 -17
  50. data/docs/ClientResponse.md +8 -7
  51. data/docs/ClientType.md +4 -5
  52. data/docs/ClientUpdateEvent.md +14 -13
  53. data/docs/ClientUpdateEventAllOfPayload.md +14 -13
  54. data/docs/ClientsApi.md +11 -11
  55. data/docs/Confirmation.md +10 -9
  56. data/docs/Content.md +93 -48
  57. data/docs/Conversation.md +30 -29
  58. data/docs/ConversationCreateBody.md +18 -17
  59. data/docs/ConversationCreateEvent.md +14 -13
  60. data/docs/ConversationCreateEventAllOfPayload.md +16 -15
  61. data/docs/ConversationJoinEvent.md +14 -13
  62. data/docs/ConversationJoinEventAllOfPayload.md +10 -9
  63. data/docs/ConversationLeaveEvent.md +14 -13
  64. data/docs/ConversationLeaveEventAllOfPayload.md +10 -9
  65. data/docs/ConversationListFilter.md +10 -9
  66. data/docs/ConversationListResponse.md +12 -11
  67. data/docs/ConversationMessageDeliveryChannelEvent.md +14 -13
  68. data/docs/ConversationMessageDeliveryFailureEvent.md +14 -13
  69. data/docs/ConversationMessageDeliveryFailureEventAllOfPayload.md +30 -0
  70. data/docs/ConversationMessageDeliveryFailureEventAllOfPayloadAllOfError.md +20 -0
  71. data/docs/ConversationMessageDeliveryPayload.md +18 -17
  72. data/docs/ConversationMessageDeliveryPayloadDestination.md +10 -9
  73. data/docs/ConversationMessageDeliveryPayloadExternalMessagesInner.md +18 -0
  74. data/docs/ConversationMessageDeliveryPayloadMessage.md +8 -7
  75. data/docs/ConversationMessageDeliveryUserEvent.md +14 -13
  76. data/docs/ConversationMessageEvent.md +14 -13
  77. data/docs/ConversationMessageEventAllOfPayload.md +12 -11
  78. data/docs/ConversationPostbackEvent.md +14 -13
  79. data/docs/ConversationPostbackEventAllOfPayload.md +14 -13
  80. data/docs/ConversationReadEvent.md +14 -13
  81. data/docs/ConversationReadEventAllOfPayload.md +10 -9
  82. data/docs/ConversationReadEventAllOfPayloadActivity.md +22 -0
  83. data/docs/ConversationReferralEvent.md +14 -13
  84. data/docs/ConversationReferralEventAllOfPayload.md +14 -13
  85. data/docs/ConversationRemoveEvent.md +14 -13
  86. data/docs/ConversationRemoveEventAllOfPayload.md +8 -7
  87. data/docs/ConversationResponse.md +8 -7
  88. data/docs/ConversationTruncated.md +16 -15
  89. data/docs/ConversationType.md +4 -5
  90. data/docs/ConversationTypingEvent.md +14 -13
  91. data/docs/ConversationTypingEventAllOfPayload.md +10 -9
  92. data/docs/ConversationTypingEventAllOfPayloadActivity.md +22 -0
  93. data/docs/ConversationUpdateBody.md +14 -13
  94. data/docs/ConversationsApi.md +18 -18
  95. data/docs/ConversionEventsBody.md +41 -11
  96. data/docs/Custom.md +10 -9
  97. data/docs/CustomIntegrationApiKeysApi.md +11 -11
  98. data/docs/CustomUpdate.md +8 -7
  99. data/docs/DefaultResponder.md +8 -7
  100. data/docs/DefaultResponderDefaultResponder.md +20 -19
  101. data/docs/DefaultResponderId.md +8 -7
  102. data/docs/Destination.md +39 -9
  103. data/docs/Device.md +26 -25
  104. data/docs/DeviceListResponse.md +8 -7
  105. data/docs/DeviceResponse.md +8 -7
  106. data/docs/DevicesApi.md +5 -5
  107. data/docs/DownloadMessageRefBody.md +10 -6
  108. data/docs/DownloadMessageRefBodyAllOfApple.md +8 -7
  109. data/docs/DownloadMessageRefBodyAllOfAppleInteractiveDataRef.md +16 -15
  110. data/docs/Error.md +10 -9
  111. data/docs/ErrorResponse.md +8 -7
  112. data/docs/EventSubSchema.md +12 -11
  113. data/docs/ExtraChannelOptions.md +8 -7
  114. data/docs/ExtraChannelOptionsMessenger.md +10 -9
  115. data/docs/Field.md +18 -17
  116. data/docs/FileMessage.md +26 -25
  117. data/docs/FormMessage.md +14 -13
  118. data/docs/FormMessageField.md +26 -25
  119. data/docs/FormOptionsInner.md +20 -0
  120. data/docs/FormResponseMessage.md +12 -11
  121. data/docs/FormResponseMessageField.md +20 -19
  122. data/docs/GetToken200Response.md +20 -0
  123. data/docs/GetTokenRequest.md +24 -0
  124. data/docs/Identity.md +12 -11
  125. data/docs/ImageMessage.md +28 -27
  126. data/docs/Instagram.md +30 -29
  127. data/docs/InstagramConversionEventsBody.md +8 -7
  128. data/docs/InstagramUpdate.md +12 -11
  129. data/docs/Integration.md +14 -13
  130. data/docs/IntegrationApiKey.md +8 -7
  131. data/docs/IntegrationApiKeyListResponse.md +8 -7
  132. data/docs/IntegrationApiKeyResponse.md +8 -7
  133. data/docs/IntegrationId.md +8 -7
  134. data/docs/IntegrationListFilter.md +8 -7
  135. data/docs/IntegrationListResponse.md +12 -11
  136. data/docs/IntegrationResponse.md +8 -7
  137. data/docs/IntegrationType.md +8 -7
  138. data/docs/IntegrationUpdate.md +70 -76
  139. data/docs/IntegrationUpdateBase.md +10 -9
  140. data/docs/IntegrationsApi.md +12 -12
  141. data/docs/Ios.md +26 -25
  142. data/docs/IosUpdate.md +22 -21
  143. data/docs/Item.md +22 -21
  144. data/docs/Line.md +26 -25
  145. data/docs/LineUpdate.md +10 -6
  146. data/docs/Link.md +18 -17
  147. data/docs/Links.md +10 -9
  148. data/docs/ListMessage.md +14 -13
  149. data/docs/LocationMessage.md +16 -15
  150. data/docs/LocationMessageCoordinates.md +10 -9
  151. data/docs/LocationMessageLocation.md +10 -9
  152. data/docs/LocationRequest.md +12 -11
  153. data/docs/Mailgun.md +22 -21
  154. data/docs/MailgunUpdate.md +14 -13
  155. data/docs/MatchCriteria.md +76 -18
  156. data/docs/MatchCriteriaBase.md +12 -11
  157. data/docs/MatchCriteriaMailgun.md +16 -15
  158. data/docs/MatchCriteriaMessagebird.md +14 -13
  159. data/docs/MatchCriteriaTwilio.md +14 -13
  160. data/docs/MatchCriteriaWhatsapp.md +14 -13
  161. data/docs/Message.md +24 -23
  162. data/docs/MessageBirdUpdate.md +10 -6
  163. data/docs/MessageListResponse.md +12 -11
  164. data/docs/MessageOverride.md +14 -13
  165. data/docs/MessageOverrideApple.md +8 -7
  166. data/docs/MessageOverrideLine.md +8 -7
  167. data/docs/MessageOverrideMessenger.md +8 -7
  168. data/docs/MessageOverridePayload.md +8 -7
  169. data/docs/MessageOverrideWhatsapp.md +8 -7
  170. data/docs/MessagePost.md +18 -17
  171. data/docs/MessagePostResponse.md +8 -7
  172. data/docs/MessageWebhook.md +22 -21
  173. data/docs/MessageWebhookSource.md +30 -0
  174. data/docs/Messagebird.md +20 -19
  175. data/docs/MessagesApi.md +12 -12
  176. data/docs/Messenger.md +22 -21
  177. data/docs/MessengerConversionEventsBody.md +8 -7
  178. data/docs/MessengerUpdate.md +12 -11
  179. data/docs/Meta.md +12 -11
  180. data/docs/MetaConversionEvent.md +8 -7
  181. data/docs/MetaConversionEventPayload.md +8 -7
  182. data/docs/OAuthEndpointsApi.md +9 -9
  183. data/docs/OfferControlBody.md +10 -9
  184. data/docs/Page.md +12 -11
  185. data/docs/Participant.md +18 -17
  186. data/docs/ParticipantJoinBody.md +12 -6
  187. data/docs/ParticipantLeaveBody.md +41 -11
  188. data/docs/ParticipantLeaveBodyParticipantId.md +8 -7
  189. data/docs/ParticipantLeaveBodyUserExternalId.md +8 -7
  190. data/docs/ParticipantLeaveBodyUserId.md +8 -7
  191. data/docs/ParticipantListResponse.md +12 -11
  192. data/docs/ParticipantResponse.md +8 -7
  193. data/docs/ParticipantSubSchema.md +12 -11
  194. data/docs/ParticipantWithUserExternalId.md +10 -9
  195. data/docs/ParticipantWithUserId.md +10 -9
  196. data/docs/ParticipantsApi.md +8 -8
  197. data/docs/PassControlBody.md +12 -11
  198. data/docs/Postback.md +14 -13
  199. data/docs/PostbackWebhook.md +10 -9
  200. data/docs/PrechatCapture.md +14 -13
  201. data/docs/Profile.md +16 -15
  202. data/docs/QuotedMessage.md +69 -11
  203. data/docs/QuotedMessageExternalMessageId.md +10 -9
  204. data/docs/QuotedMessageMessage.md +10 -9
  205. data/docs/Referral.md +10 -9
  206. data/docs/ReferralDetails.md +12 -11
  207. data/docs/ReleaseControlBody.md +10 -9
  208. data/docs/Reply.md +16 -15
  209. data/docs/Source.md +18 -17
  210. data/docs/SourceWebhook.md +18 -17
  211. data/docs/SourceWithCampaignWebhook.md +20 -19
  212. data/docs/Status.md +4 -5
  213. data/docs/Switchboard.md +12 -11
  214. data/docs/SwitchboardAcceptControl.md +14 -13
  215. data/docs/SwitchboardAcceptControlAllOfPayload.md +10 -9
  216. data/docs/SwitchboardAcceptControlFailure.md +14 -13
  217. data/docs/SwitchboardAcceptControlFailureAllOfPayload.md +12 -11
  218. data/docs/SwitchboardActionsApi.md +13 -13
  219. data/docs/SwitchboardIntegration.md +20 -19
  220. data/docs/SwitchboardIntegrationCreateBody.md +18 -17
  221. data/docs/SwitchboardIntegrationListResponse.md +8 -7
  222. data/docs/SwitchboardIntegrationResponse.md +8 -7
  223. data/docs/SwitchboardIntegrationUpdateBody.md +18 -17
  224. data/docs/SwitchboardIntegrationWebhook.md +14 -13
  225. data/docs/SwitchboardIntegrationsApi.md +10 -10
  226. data/docs/SwitchboardListResponse.md +8 -7
  227. data/docs/SwitchboardOfferControl.md +14 -13
  228. data/docs/SwitchboardOfferControlAllOfPayload.md +10 -9
  229. data/docs/SwitchboardOfferControlFailure.md +14 -13
  230. data/docs/SwitchboardPassControl.md +14 -13
  231. data/docs/SwitchboardPassControlAllOfPayload.md +12 -11
  232. data/docs/SwitchboardPassControlFailure.md +14 -13
  233. data/docs/SwitchboardReleaseControl.md +14 -13
  234. data/docs/SwitchboardReleaseControlAllOfPayload.md +12 -11
  235. data/docs/SwitchboardResponse.md +8 -7
  236. data/docs/SwitchboardUpdateBody.md +10 -9
  237. data/docs/SwitchboardsApi.md +7 -7
  238. data/docs/SyncUserBody.md +8 -7
  239. data/docs/Target.md +8 -7
  240. data/docs/Telegram.md +18 -17
  241. data/docs/TelegramUpdate.md +10 -6
  242. data/docs/TemplateMessage.md +12 -11
  243. data/docs/TextMessage.md +20 -19
  244. data/docs/TicketClosed.md +10 -9
  245. data/docs/TransferToEmail.md +10 -9
  246. data/docs/Twilio.md +20 -19
  247. data/docs/TwilioUpdate.md +10 -6
  248. data/docs/Twitter.md +24 -23
  249. data/docs/TwitterUpdate.md +10 -6
  250. data/docs/Unity.md +18 -17
  251. data/docs/UnityUpdate.md +14 -13
  252. data/docs/User.md +24 -23
  253. data/docs/UserCreateBody.md +16 -15
  254. data/docs/UserMergeEvent.md +14 -13
  255. data/docs/UserMergeEventAllOfPayload.md +16 -15
  256. data/docs/UserMergeEventAllOfPayloadMergedClients.md +10 -9
  257. data/docs/UserMergeEventAllOfPayloadMergedConversations.md +10 -9
  258. data/docs/UserMergeEventAllOfPayloadMergedUsers.md +10 -9
  259. data/docs/UserRemoveEvent.md +14 -13
  260. data/docs/UserRemoveEventAllOfPayload.md +8 -7
  261. data/docs/UserResponse.md +8 -7
  262. data/docs/UserTruncated.md +14 -13
  263. data/docs/UserUpdateBody.md +14 -13
  264. data/docs/UserUpdateEvent.md +14 -13
  265. data/docs/UserUpdateEventAllOfPayload.md +12 -11
  266. data/docs/UsersApi.md +17 -17
  267. data/docs/Viber.md +18 -17
  268. data/docs/ViberUpdate.md +10 -6
  269. data/docs/Web.md +46 -45
  270. data/docs/WebUpdate.md +42 -41
  271. data/docs/Webhook.md +20 -19
  272. data/docs/WebhookBody.md +14 -13
  273. data/docs/WebhookCreateBody.md +14 -6
  274. data/docs/WebhookListResponse.md +8 -7
  275. data/docs/WebhookResponse.md +8 -7
  276. data/docs/WebhookSubSchema.md +10 -9
  277. data/docs/WebhooksApi.md +15 -15
  278. data/docs/Webview.md +24 -23
  279. data/docs/WhatsAppConversionEventsBody.md +8 -7
  280. data/docs/WhatsAppUpdate.md +16 -15
  281. data/docs/Whatsapp.md +20 -19
  282. data/lib/sunshine-conversations-client/api/activities_api.rb +11 -7
  283. data/lib/sunshine-conversations-client/api/app_keys_api.rb +26 -19
  284. data/lib/sunshine-conversations-client/api/apps_api.rb +37 -26
  285. data/lib/sunshine-conversations-client/api/attachments_api.rb +24 -16
  286. data/lib/sunshine-conversations-client/api/clients_api.rb +25 -19
  287. data/lib/sunshine-conversations-client/api/conversations_api.rb +57 -38
  288. data/lib/sunshine-conversations-client/api/custom_integration_api_keys_api.rb +26 -19
  289. data/lib/sunshine-conversations-client/api/devices_api.rb +12 -10
  290. data/lib/sunshine-conversations-client/api/integrations_api.rb +37 -26
  291. data/lib/sunshine-conversations-client/api/messages_api.rb +28 -21
  292. data/lib/sunshine-conversations-client/api/o_auth_endpoints_api.rb +36 -29
  293. data/lib/sunshine-conversations-client/api/participants_api.rb +27 -18
  294. data/lib/sunshine-conversations-client/api/switchboard_actions_api.rb +40 -24
  295. data/lib/sunshine-conversations-client/api/switchboard_integrations_api.rb +30 -20
  296. data/lib/sunshine-conversations-client/api/switchboards_api.rb +26 -19
  297. data/lib/sunshine-conversations-client/api/users_api.rb +50 -35
  298. data/lib/sunshine-conversations-client/api/webhooks_api.rb +35 -24
  299. data/lib/sunshine-conversations-client/api_client.rb +54 -9
  300. data/lib/sunshine-conversations-client/api_error.rb +3 -2
  301. data/lib/sunshine-conversations-client/configuration.rb +33 -31
  302. data/lib/sunshine-conversations-client/models/accept_control_body.rb +28 -25
  303. data/lib/sunshine-conversations-client/models/action.rb +30 -406
  304. data/lib/sunshine-conversations-client/models/action_subset.rb +24 -390
  305. data/lib/sunshine-conversations-client/models/activity.rb +24 -25
  306. data/lib/sunshine-conversations-client/models/activity_message.rb +30 -227
  307. data/lib/sunshine-conversations-client/models/activity_post.rb +42 -43
  308. data/lib/sunshine-conversations-client/models/activity_types.rb +23 -23
  309. data/lib/sunshine-conversations-client/models/android.rb +69 -48
  310. data/lib/sunshine-conversations-client/models/android_update.rb +24 -25
  311. data/lib/sunshine-conversations-client/models/api_key.rb +49 -24
  312. data/lib/sunshine-conversations-client/models/app.rb +52 -24
  313. data/lib/sunshine-conversations-client/models/app_create_body.rb +55 -24
  314. data/lib/sunshine-conversations-client/models/app_key.rb +24 -24
  315. data/lib/sunshine-conversations-client/models/app_key_create_body.rb +51 -23
  316. data/lib/sunshine-conversations-client/models/app_key_list_response.rb +26 -23
  317. data/lib/sunshine-conversations-client/models/app_key_response.rb +23 -23
  318. data/lib/sunshine-conversations-client/models/app_list_filter.rb +23 -23
  319. data/lib/sunshine-conversations-client/models/app_list_response.rb +27 -24
  320. data/lib/sunshine-conversations-client/models/app_response.rb +23 -23
  321. data/lib/sunshine-conversations-client/models/app_settings.rb +25 -25
  322. data/lib/sunshine-conversations-client/models/app_sub_schema.rb +23 -23
  323. data/lib/sunshine-conversations-client/models/app_update_body.rb +51 -24
  324. data/lib/sunshine-conversations-client/models/apple.rb +67 -46
  325. data/lib/sunshine-conversations-client/models/apple_message_override_payload.rb +27 -24
  326. data/lib/sunshine-conversations-client/models/apple_update.rb +24 -25
  327. data/lib/sunshine-conversations-client/models/attachment_delete_body.rb +23 -23
  328. data/lib/sunshine-conversations-client/models/attachment_response.rb +23 -23
  329. data/lib/sunshine-conversations-client/models/attachment_schema.rb +25 -25
  330. data/lib/sunshine-conversations-client/models/author.rb +51 -24
  331. data/lib/sunshine-conversations-client/models/author_webhook.rb +24 -24
  332. data/lib/sunshine-conversations-client/models/buy.rb +27 -24
  333. data/lib/sunshine-conversations-client/models/campaign.rb +23 -23
  334. data/lib/sunshine-conversations-client/models/carousel_message.rb +55 -24
  335. data/lib/sunshine-conversations-client/models/carousel_message_display_settings.rb +23 -23
  336. data/lib/sunshine-conversations-client/models/client.rb +24 -24
  337. data/lib/sunshine-conversations-client/models/client_add_event.rb +25 -26
  338. data/lib/sunshine-conversations-client/models/client_add_event_all_of_payload.rb +24 -24
  339. data/lib/sunshine-conversations-client/models/client_association.rb +46 -24
  340. data/lib/sunshine-conversations-client/models/client_create.rb +24 -24
  341. data/lib/sunshine-conversations-client/models/client_list_response.rb +27 -24
  342. data/lib/sunshine-conversations-client/models/client_remove_event.rb +25 -26
  343. data/lib/sunshine-conversations-client/models/client_remove_event_all_of_payload.rb +24 -24
  344. data/lib/sunshine-conversations-client/models/client_response.rb +23 -23
  345. data/lib/sunshine-conversations-client/models/client_type.rb +9 -5
  346. data/lib/sunshine-conversations-client/models/client_update_event.rb +25 -26
  347. data/lib/sunshine-conversations-client/models/client_update_event_all_of_payload.rb +24 -24
  348. data/lib/sunshine-conversations-client/models/confirmation.rb +24 -24
  349. data/lib/sunshine-conversations-client/models/content.rb +52 -502
  350. data/lib/sunshine-conversations-client/models/conversation.rb +74 -25
  351. data/lib/sunshine-conversations-client/models/conversation_create_body.rb +92 -24
  352. data/lib/sunshine-conversations-client/models/conversation_create_event.rb +25 -26
  353. data/lib/sunshine-conversations-client/models/conversation_create_event_all_of_payload.rb +24 -24
  354. data/lib/sunshine-conversations-client/models/conversation_join_event.rb +25 -26
  355. data/lib/sunshine-conversations-client/models/conversation_join_event_all_of_payload.rb +24 -24
  356. data/lib/sunshine-conversations-client/models/conversation_leave_event.rb +25 -26
  357. data/lib/sunshine-conversations-client/models/conversation_leave_event_all_of_payload.rb +24 -24
  358. data/lib/sunshine-conversations-client/models/conversation_list_filter.rb +24 -24
  359. data/lib/sunshine-conversations-client/models/conversation_list_response.rb +27 -24
  360. data/lib/sunshine-conversations-client/models/conversation_message_delivery_channel_event.rb +25 -26
  361. data/lib/sunshine-conversations-client/models/conversation_message_delivery_failure_event.rb +26 -27
  362. data/lib/sunshine-conversations-client/models/{conversation_message_delivery_channel_event_all_of.rb → conversation_message_delivery_failure_event_all_of_payload.rb} +101 -33
  363. data/lib/sunshine-conversations-client/models/{conversation_message_delivery_failure_event_all_of.rb → conversation_message_delivery_failure_event_all_of_payload_all_of_error.rb} +45 -33
  364. data/lib/sunshine-conversations-client/models/conversation_message_delivery_payload.rb +28 -25
  365. data/lib/sunshine-conversations-client/models/conversation_message_delivery_payload_destination.rb +24 -24
  366. data/lib/sunshine-conversations-client/models/{conversation_message_delivery_payload_external_messages.rb → conversation_message_delivery_payload_external_messages_inner.rb} +26 -26
  367. data/lib/sunshine-conversations-client/models/conversation_message_delivery_payload_message.rb +23 -23
  368. data/lib/sunshine-conversations-client/models/conversation_message_delivery_user_event.rb +25 -26
  369. data/lib/sunshine-conversations-client/models/conversation_message_event.rb +25 -26
  370. data/lib/sunshine-conversations-client/models/conversation_message_event_all_of_payload.rb +27 -24
  371. data/lib/sunshine-conversations-client/models/conversation_postback_event.rb +25 -26
  372. data/lib/sunshine-conversations-client/models/conversation_postback_event_all_of_payload.rb +24 -24
  373. data/lib/sunshine-conversations-client/models/conversation_read_event.rb +25 -26
  374. data/lib/sunshine-conversations-client/models/conversation_read_event_all_of_payload.rb +25 -26
  375. data/lib/sunshine-conversations-client/models/{custom_all_of.rb → conversation_read_event_all_of_payload_activity.rb} +53 -40
  376. data/lib/sunshine-conversations-client/models/conversation_referral_event.rb +25 -26
  377. data/lib/sunshine-conversations-client/models/conversation_referral_event_all_of_payload.rb +24 -24
  378. data/lib/sunshine-conversations-client/models/conversation_remove_event.rb +25 -26
  379. data/lib/sunshine-conversations-client/models/conversation_remove_event_all_of_payload.rb +23 -23
  380. data/lib/sunshine-conversations-client/models/conversation_response.rb +23 -23
  381. data/lib/sunshine-conversations-client/models/conversation_truncated.rb +49 -24
  382. data/lib/sunshine-conversations-client/models/conversation_type.rb +9 -5
  383. data/lib/sunshine-conversations-client/models/conversation_typing_event.rb +25 -26
  384. data/lib/sunshine-conversations-client/models/conversation_typing_event_all_of_payload.rb +25 -26
  385. data/lib/sunshine-conversations-client/models/{activity_all_of.rb → conversation_typing_event_all_of_payload_activity.rb} +45 -27
  386. data/lib/sunshine-conversations-client/models/conversation_update_body.rb +52 -24
  387. data/lib/sunshine-conversations-client/models/conversion_events_body.rb +78 -221
  388. data/lib/sunshine-conversations-client/models/custom.rb +77 -25
  389. data/lib/sunshine-conversations-client/models/custom_update.rb +23 -23
  390. data/lib/sunshine-conversations-client/models/default_responder.rb +23 -23
  391. data/lib/sunshine-conversations-client/models/default_responder_default_responder.rb +24 -24
  392. data/lib/sunshine-conversations-client/models/default_responder_id.rb +23 -23
  393. data/lib/sunshine-conversations-client/models/destination.rb +77 -213
  394. data/lib/sunshine-conversations-client/models/device.rb +27 -24
  395. data/lib/sunshine-conversations-client/models/device_list_response.rb +26 -23
  396. data/lib/sunshine-conversations-client/models/device_response.rb +23 -23
  397. data/lib/sunshine-conversations-client/models/download_message_ref_body.rb +52 -39
  398. data/lib/sunshine-conversations-client/models/download_message_ref_body_all_of_apple.rb +23 -23
  399. data/lib/sunshine-conversations-client/models/download_message_ref_body_all_of_apple_interactive_data_ref.rb +24 -24
  400. data/lib/sunshine-conversations-client/models/error.rb +24 -24
  401. data/lib/sunshine-conversations-client/models/error_response.rb +26 -23
  402. data/lib/sunshine-conversations-client/models/event_sub_schema.rb +25 -25
  403. data/lib/sunshine-conversations-client/models/extra_channel_options.rb +23 -23
  404. data/lib/sunshine-conversations-client/models/extra_channel_options_messenger.rb +24 -24
  405. data/lib/sunshine-conversations-client/models/field.rb +27 -24
  406. data/lib/sunshine-conversations-client/models/file_message.rb +25 -25
  407. data/lib/sunshine-conversations-client/models/form_message.rb +55 -24
  408. data/lib/sunshine-conversations-client/models/form_message_field.rb +47 -27
  409. data/lib/sunshine-conversations-client/models/{viber_all_of.rb → form_options_inner.rb} +82 -72
  410. data/lib/sunshine-conversations-client/models/form_response_message.rb +55 -24
  411. data/lib/sunshine-conversations-client/models/form_response_message_field.rb +28 -26
  412. data/lib/sunshine-conversations-client/models/{user_merge_event_all_of.rb → get_token200_response.rb} +44 -33
  413. data/lib/sunshine-conversations-client/models/{inline_object.rb → get_token_request.rb} +27 -27
  414. data/lib/sunshine-conversations-client/models/identity.rb +24 -24
  415. data/lib/sunshine-conversations-client/models/image_message.rb +28 -25
  416. data/lib/sunshine-conversations-client/models/instagram.rb +68 -47
  417. data/lib/sunshine-conversations-client/models/instagram_conversion_events_body.rb +23 -23
  418. data/lib/sunshine-conversations-client/models/instagram_update.rb +24 -25
  419. data/lib/sunshine-conversations-client/models/integration.rb +46 -24
  420. data/lib/sunshine-conversations-client/models/integration_api_key.rb +23 -23
  421. data/lib/sunshine-conversations-client/models/integration_api_key_list_response.rb +26 -23
  422. data/lib/sunshine-conversations-client/models/integration_api_key_response.rb +23 -23
  423. data/lib/sunshine-conversations-client/models/integration_id.rb +23 -23
  424. data/lib/sunshine-conversations-client/models/integration_list_filter.rb +23 -23
  425. data/lib/sunshine-conversations-client/models/integration_list_response.rb +27 -24
  426. data/lib/sunshine-conversations-client/models/integration_response.rb +23 -23
  427. data/lib/sunshine-conversations-client/models/integration_type.rb +23 -23
  428. data/lib/sunshine-conversations-client/models/integration_update.rb +95 -724
  429. data/lib/sunshine-conversations-client/models/integration_update_base.rb +24 -24
  430. data/lib/sunshine-conversations-client/models/ios.rb +69 -48
  431. data/lib/sunshine-conversations-client/models/ios_update.rb +25 -26
  432. data/lib/sunshine-conversations-client/models/item.rb +58 -24
  433. data/lib/sunshine-conversations-client/models/line.rb +68 -47
  434. data/lib/sunshine-conversations-client/models/line_update.rb +74 -32
  435. data/lib/sunshine-conversations-client/models/link.rb +27 -24
  436. data/lib/sunshine-conversations-client/models/links.rb +24 -24
  437. data/lib/sunshine-conversations-client/models/list_message.rb +82 -24
  438. data/lib/sunshine-conversations-client/models/location_message.rb +24 -24
  439. data/lib/sunshine-conversations-client/models/location_message_coordinates.rb +24 -24
  440. data/lib/sunshine-conversations-client/models/location_message_location.rb +24 -24
  441. data/lib/sunshine-conversations-client/models/location_request.rb +27 -24
  442. data/lib/sunshine-conversations-client/models/mailgun.rb +70 -49
  443. data/lib/sunshine-conversations-client/models/mailgun_update.rb +25 -26
  444. data/lib/sunshine-conversations-client/models/match_criteria.rb +34 -289
  445. data/lib/sunshine-conversations-client/models/match_criteria_base.rb +24 -24
  446. data/lib/sunshine-conversations-client/models/match_criteria_mailgun.rb +25 -26
  447. data/lib/sunshine-conversations-client/models/match_criteria_messagebird.rb +25 -26
  448. data/lib/sunshine-conversations-client/models/match_criteria_twilio.rb +25 -26
  449. data/lib/sunshine-conversations-client/models/match_criteria_whatsapp.rb +25 -26
  450. data/lib/sunshine-conversations-client/models/message.rb +29 -26
  451. data/lib/sunshine-conversations-client/models/message_bird_update.rb +74 -32
  452. data/lib/sunshine-conversations-client/models/message_list_response.rb +27 -24
  453. data/lib/sunshine-conversations-client/models/message_override.rb +79 -228
  454. data/lib/sunshine-conversations-client/models/message_override_apple.rb +23 -23
  455. data/lib/sunshine-conversations-client/models/message_override_line.rb +23 -23
  456. data/lib/sunshine-conversations-client/models/message_override_messenger.rb +23 -23
  457. data/lib/sunshine-conversations-client/models/message_override_payload.rb +23 -23
  458. data/lib/sunshine-conversations-client/models/message_override_whatsapp.rb +23 -23
  459. data/lib/sunshine-conversations-client/models/message_post.rb +27 -24
  460. data/lib/sunshine-conversations-client/models/message_post_response.rb +26 -23
  461. data/lib/sunshine-conversations-client/models/message_webhook.rb +30 -27
  462. data/lib/sunshine-conversations-client/models/{apple_all_of.rb → message_webhook_source.rb} +91 -86
  463. data/lib/sunshine-conversations-client/models/messagebird.rb +69 -48
  464. data/lib/sunshine-conversations-client/models/messenger.rb +69 -48
  465. data/lib/sunshine-conversations-client/models/messenger_conversion_events_body.rb +23 -23
  466. data/lib/sunshine-conversations-client/models/messenger_update.rb +24 -25
  467. data/lib/sunshine-conversations-client/models/meta.rb +24 -24
  468. data/lib/sunshine-conversations-client/models/meta_conversion_event.rb +23 -23
  469. data/lib/sunshine-conversations-client/models/meta_conversion_event_payload.rb +26 -23
  470. data/lib/sunshine-conversations-client/models/offer_control_body.rb +29 -26
  471. data/lib/sunshine-conversations-client/models/page.rb +24 -24
  472. data/lib/sunshine-conversations-client/models/participant.rb +27 -24
  473. data/lib/sunshine-conversations-client/models/participant_join_body.rb +58 -32
  474. data/lib/sunshine-conversations-client/models/participant_leave_body.rb +78 -224
  475. data/lib/sunshine-conversations-client/models/participant_leave_body_participant_id.rb +23 -23
  476. data/lib/sunshine-conversations-client/models/participant_leave_body_user_external_id.rb +23 -23
  477. data/lib/sunshine-conversations-client/models/participant_leave_body_user_id.rb +23 -23
  478. data/lib/sunshine-conversations-client/models/participant_list_response.rb +27 -24
  479. data/lib/sunshine-conversations-client/models/participant_response.rb +23 -23
  480. data/lib/sunshine-conversations-client/models/participant_sub_schema.rb +77 -220
  481. data/lib/sunshine-conversations-client/models/participant_with_user_external_id.rb +24 -24
  482. data/lib/sunshine-conversations-client/models/participant_with_user_id.rb +24 -24
  483. data/lib/sunshine-conversations-client/models/pass_control_body.rb +29 -26
  484. data/lib/sunshine-conversations-client/models/postback.rb +27 -24
  485. data/lib/sunshine-conversations-client/models/postback_webhook.rb +27 -24
  486. data/lib/sunshine-conversations-client/models/prechat_capture.rb +27 -24
  487. data/lib/sunshine-conversations-client/models/profile.rb +24 -24
  488. data/lib/sunshine-conversations-client/models/quoted_message.rb +30 -237
  489. data/lib/sunshine-conversations-client/models/quoted_message_external_message_id.rb +24 -24
  490. data/lib/sunshine-conversations-client/models/quoted_message_message.rb +24 -24
  491. data/lib/sunshine-conversations-client/models/referral.rb +24 -24
  492. data/lib/sunshine-conversations-client/models/referral_details.rb +24 -24
  493. data/lib/sunshine-conversations-client/models/release_control_body.rb +29 -26
  494. data/lib/sunshine-conversations-client/models/reply.rb +27 -24
  495. data/lib/sunshine-conversations-client/models/source.rb +24 -24
  496. data/lib/sunshine-conversations-client/models/source_webhook.rb +24 -24
  497. data/lib/sunshine-conversations-client/models/source_with_campaign_webhook.rb +25 -26
  498. data/lib/sunshine-conversations-client/models/status.rb +9 -5
  499. data/lib/sunshine-conversations-client/models/switchboard.rb +24 -24
  500. data/lib/sunshine-conversations-client/models/switchboard_accept_control.rb +26 -27
  501. data/lib/sunshine-conversations-client/models/switchboard_accept_control_all_of_payload.rb +27 -24
  502. data/lib/sunshine-conversations-client/models/switchboard_accept_control_failure.rb +26 -27
  503. data/lib/sunshine-conversations-client/models/switchboard_accept_control_failure_all_of_payload.rb +27 -24
  504. data/lib/sunshine-conversations-client/models/switchboard_integration.rb +24 -24
  505. data/lib/sunshine-conversations-client/models/switchboard_integration_create_body.rb +25 -24
  506. data/lib/sunshine-conversations-client/models/switchboard_integration_list_response.rb +26 -23
  507. data/lib/sunshine-conversations-client/models/switchboard_integration_response.rb +23 -23
  508. data/lib/sunshine-conversations-client/models/switchboard_integration_update_body.rb +24 -24
  509. data/lib/sunshine-conversations-client/models/switchboard_integration_webhook.rb +24 -24
  510. data/lib/sunshine-conversations-client/models/switchboard_list_response.rb +26 -23
  511. data/lib/sunshine-conversations-client/models/switchboard_offer_control.rb +26 -27
  512. data/lib/sunshine-conversations-client/models/switchboard_offer_control_all_of_payload.rb +27 -24
  513. data/lib/sunshine-conversations-client/models/switchboard_offer_control_failure.rb +26 -27
  514. data/lib/sunshine-conversations-client/models/switchboard_pass_control.rb +26 -27
  515. data/lib/sunshine-conversations-client/models/switchboard_pass_control_all_of_payload.rb +27 -24
  516. data/lib/sunshine-conversations-client/models/switchboard_pass_control_failure.rb +26 -27
  517. data/lib/sunshine-conversations-client/models/switchboard_release_control.rb +26 -27
  518. data/lib/sunshine-conversations-client/models/switchboard_release_control_all_of_payload.rb +27 -24
  519. data/lib/sunshine-conversations-client/models/switchboard_response.rb +23 -23
  520. data/lib/sunshine-conversations-client/models/switchboard_update_body.rb +24 -24
  521. data/lib/sunshine-conversations-client/models/sync_user_body.rb +23 -23
  522. data/lib/sunshine-conversations-client/models/target.rb +23 -23
  523. data/lib/sunshine-conversations-client/models/telegram.rb +69 -48
  524. data/lib/sunshine-conversations-client/models/telegram_update.rb +74 -32
  525. data/lib/sunshine-conversations-client/models/template_message.rb +24 -24
  526. data/lib/sunshine-conversations-client/models/text_message.rb +27 -24
  527. data/lib/sunshine-conversations-client/models/ticket_closed.rb +27 -24
  528. data/lib/sunshine-conversations-client/models/transfer_to_email.rb +27 -24
  529. data/lib/sunshine-conversations-client/models/twilio.rb +69 -48
  530. data/lib/sunshine-conversations-client/models/twilio_update.rb +74 -32
  531. data/lib/sunshine-conversations-client/models/twitter.rb +50 -51
  532. data/lib/sunshine-conversations-client/models/twitter_update.rb +74 -32
  533. data/lib/sunshine-conversations-client/models/unity.rb +68 -47
  534. data/lib/sunshine-conversations-client/models/unity_update.rb +25 -26
  535. data/lib/sunshine-conversations-client/models/user.rb +34 -27
  536. data/lib/sunshine-conversations-client/models/user_create_body.rb +27 -24
  537. data/lib/sunshine-conversations-client/models/user_merge_event.rb +26 -27
  538. data/lib/sunshine-conversations-client/models/user_merge_event_all_of_payload.rb +28 -26
  539. data/lib/sunshine-conversations-client/models/user_merge_event_all_of_payload_merged_clients.rb +24 -24
  540. data/lib/sunshine-conversations-client/models/user_merge_event_all_of_payload_merged_conversations.rb +24 -24
  541. data/lib/sunshine-conversations-client/models/user_merge_event_all_of_payload_merged_users.rb +24 -24
  542. data/lib/sunshine-conversations-client/models/user_remove_event.rb +26 -27
  543. data/lib/sunshine-conversations-client/models/user_remove_event_all_of_payload.rb +23 -23
  544. data/lib/sunshine-conversations-client/models/user_response.rb +23 -23
  545. data/lib/sunshine-conversations-client/models/user_truncated.rb +24 -24
  546. data/lib/sunshine-conversations-client/models/user_update_body.rb +29 -24
  547. data/lib/sunshine-conversations-client/models/user_update_event.rb +26 -27
  548. data/lib/sunshine-conversations-client/models/user_update_event_all_of_payload.rb +24 -24
  549. data/lib/sunshine-conversations-client/models/viber.rb +69 -48
  550. data/lib/sunshine-conversations-client/models/viber_update.rb +74 -32
  551. data/lib/sunshine-conversations-client/models/web.rb +75 -48
  552. data/lib/sunshine-conversations-client/models/web_update.rb +31 -26
  553. data/lib/sunshine-conversations-client/models/webhook.rb +28 -25
  554. data/lib/sunshine-conversations-client/models/webhook_body.rb +28 -25
  555. data/lib/sunshine-conversations-client/models/webhook_create_body.rb +84 -32
  556. data/lib/sunshine-conversations-client/models/webhook_list_response.rb +26 -23
  557. data/lib/sunshine-conversations-client/models/webhook_response.rb +23 -23
  558. data/lib/sunshine-conversations-client/models/webhook_sub_schema.rb +24 -24
  559. data/lib/sunshine-conversations-client/models/webview.rb +27 -24
  560. data/lib/sunshine-conversations-client/models/whats_app_conversion_events_body.rb +23 -23
  561. data/lib/sunshine-conversations-client/models/whats_app_update.rb +25 -26
  562. data/lib/sunshine-conversations-client/models/whatsapp.rb +70 -49
  563. data/lib/sunshine-conversations-client/version.rb +3 -3
  564. data/lib/sunshine-conversations-client.rb +11 -63
  565. data/spec/spec_helper.rb +2 -2
  566. data/sunshine-conversations-client.gemspec +5 -5
  567. metadata +21 -149
  568. data/docs/ActivityAllOf.md +0 -19
  569. data/docs/ActivityPostAllOf.md +0 -17
  570. data/docs/AndroidAllOf.md +0 -33
  571. data/docs/AndroidUpdateAllOf.md +0 -29
  572. data/docs/AppleAllOf.md +0 -25
  573. data/docs/AppleUpdateAllOf.md +0 -17
  574. data/docs/AttachmentUploadBody.md +0 -17
  575. data/docs/ClientAddEventAllOf.md +0 -17
  576. data/docs/ClientRemoveEventAllOf.md +0 -17
  577. data/docs/ClientUpdateEventAllOf.md +0 -17
  578. data/docs/ConversationAllOf.md +0 -29
  579. data/docs/ConversationCreateEventAllOf.md +0 -17
  580. data/docs/ConversationJoinEventAllOf.md +0 -17
  581. data/docs/ConversationLeaveEventAllOf.md +0 -17
  582. data/docs/ConversationMessageDeliveryChannelEventAllOf.md +0 -17
  583. data/docs/ConversationMessageDeliveryFailureEventAllOf.md +0 -17
  584. data/docs/ConversationMessageDeliveryPayloadExternalMessages.md +0 -17
  585. data/docs/ConversationMessageEventAllOf.md +0 -17
  586. data/docs/ConversationPostbackEventAllOf.md +0 -17
  587. data/docs/ConversationReadEventAllOf.md +0 -17
  588. data/docs/ConversationReferralEventAllOf.md +0 -17
  589. data/docs/ConversationRemoveEventAllOf.md +0 -17
  590. data/docs/ConversationTypingEventAllOf.md +0 -17
  591. data/docs/CustomAllOf.md +0 -19
  592. data/docs/DownloadMessageRefBodyAllOf.md +0 -19
  593. data/docs/FormMessageFieldAllOf.md +0 -23
  594. data/docs/FormResponseMessageFieldAllOf.md +0 -17
  595. data/docs/InlineObject.md +0 -23
  596. data/docs/InstagramAllOf.md +0 -35
  597. data/docs/InstagramUpdateAllOf.md +0 -17
  598. data/docs/IosAllOf.md +0 -31
  599. data/docs/IosUpdateAllOf.md +0 -27
  600. data/docs/LineAllOf.md +0 -31
  601. data/docs/MailgunAllOf.md +0 -27
  602. data/docs/MailgunUpdateAllOf.md +0 -19
  603. data/docs/MatchCriteriaMailgunAllOf.md +0 -21
  604. data/docs/MatchCriteriaMessagebirdAllOf.md +0 -19
  605. data/docs/MatchCriteriaTwilioAllOf.md +0 -19
  606. data/docs/MatchCriteriaWhatsappAllOf.md +0 -19
  607. data/docs/MessagebirdAllOf.md +0 -25
  608. data/docs/MessengerAllOf.md +0 -27
  609. data/docs/SourceWithCampaignWebhookAllOf.md +0 -17
  610. data/docs/SwitchboardAcceptControlAllOf.md +0 -17
  611. data/docs/SwitchboardAcceptControlFailureAllOf.md +0 -17
  612. data/docs/SwitchboardOfferControlAllOf.md +0 -17
  613. data/docs/SwitchboardPassControlAllOf.md +0 -17
  614. data/docs/SwitchboardReleaseControlAllOf.md +0 -17
  615. data/docs/TelegramAllOf.md +0 -23
  616. data/docs/TwilioAllOf.md +0 -25
  617. data/docs/TwitterAllOf.md +0 -29
  618. data/docs/UnityAllOf.md +0 -23
  619. data/docs/UnityUpdateAllOf.md +0 -19
  620. data/docs/UserAllOf.md +0 -25
  621. data/docs/UserMergeEventAllOf.md +0 -17
  622. data/docs/UserRemoveEventAllOf.md +0 -17
  623. data/docs/UserUpdateEventAllOf.md +0 -17
  624. data/docs/ViberAllOf.md +0 -23
  625. data/docs/WebAllOf.md +0 -51
  626. data/docs/WebUpdateAllOf.md +0 -47
  627. data/docs/WhatsAppUpdateAllOf.md +0 -21
  628. data/docs/WhatsappAllOf.md +0 -25
  629. data/lib/sunshine-conversations-client/models/activity_post_all_of.rb +0 -204
  630. data/lib/sunshine-conversations-client/models/android_all_of.rb +0 -366
  631. data/lib/sunshine-conversations-client/models/android_update_all_of.rb +0 -344
  632. data/lib/sunshine-conversations-client/models/apple_update_all_of.rb +0 -219
  633. data/lib/sunshine-conversations-client/models/attachment_upload_body.rb +0 -208
  634. data/lib/sunshine-conversations-client/models/client_add_event_all_of.rb +0 -203
  635. data/lib/sunshine-conversations-client/models/client_remove_event_all_of.rb +0 -203
  636. data/lib/sunshine-conversations-client/models/client_update_event_all_of.rb +0 -203
  637. data/lib/sunshine-conversations-client/models/conversation_all_of.rb +0 -316
  638. data/lib/sunshine-conversations-client/models/conversation_create_event_all_of.rb +0 -203
  639. data/lib/sunshine-conversations-client/models/conversation_join_event_all_of.rb +0 -203
  640. data/lib/sunshine-conversations-client/models/conversation_leave_event_all_of.rb +0 -203
  641. data/lib/sunshine-conversations-client/models/conversation_message_event_all_of.rb +0 -203
  642. data/lib/sunshine-conversations-client/models/conversation_postback_event_all_of.rb +0 -203
  643. data/lib/sunshine-conversations-client/models/conversation_read_event_all_of.rb +0 -203
  644. data/lib/sunshine-conversations-client/models/conversation_referral_event_all_of.rb +0 -203
  645. data/lib/sunshine-conversations-client/models/conversation_remove_event_all_of.rb +0 -203
  646. data/lib/sunshine-conversations-client/models/conversation_typing_event_all_of.rb +0 -203
  647. data/lib/sunshine-conversations-client/models/download_message_ref_body_all_of.rb +0 -213
  648. data/lib/sunshine-conversations-client/models/form_message_field_all_of.rb +0 -310
  649. data/lib/sunshine-conversations-client/models/form_response_message_field_all_of.rb +0 -205
  650. data/lib/sunshine-conversations-client/models/instagram_all_of.rb +0 -303
  651. data/lib/sunshine-conversations-client/models/instagram_update_all_of.rb +0 -204
  652. data/lib/sunshine-conversations-client/models/ios_all_of.rb +0 -292
  653. data/lib/sunshine-conversations-client/models/ios_update_all_of.rb +0 -270
  654. data/lib/sunshine-conversations-client/models/line_all_of.rb +0 -291
  655. data/lib/sunshine-conversations-client/models/mailgun_all_of.rb +0 -336
  656. data/lib/sunshine-conversations-client/models/mailgun_update_all_of.rb +0 -230
  657. data/lib/sunshine-conversations-client/models/match_criteria_mailgun_all_of.rb +0 -234
  658. data/lib/sunshine-conversations-client/models/match_criteria_messagebird_all_of.rb +0 -222
  659. data/lib/sunshine-conversations-client/models/match_criteria_twilio_all_of.rb +0 -222
  660. data/lib/sunshine-conversations-client/models/match_criteria_whatsapp_all_of.rb +0 -222
  661. data/lib/sunshine-conversations-client/models/messagebird_all_of.rb +0 -302
  662. data/lib/sunshine-conversations-client/models/messenger_all_of.rb +0 -263
  663. data/lib/sunshine-conversations-client/models/source_with_campaign_webhook_all_of.rb +0 -204
  664. data/lib/sunshine-conversations-client/models/switchboard_accept_control_all_of.rb +0 -203
  665. data/lib/sunshine-conversations-client/models/switchboard_accept_control_failure_all_of.rb +0 -203
  666. data/lib/sunshine-conversations-client/models/switchboard_offer_control_all_of.rb +0 -203
  667. data/lib/sunshine-conversations-client/models/switchboard_pass_control_all_of.rb +0 -203
  668. data/lib/sunshine-conversations-client/models/switchboard_release_control_all_of.rb +0 -203
  669. data/lib/sunshine-conversations-client/models/telegram_all_of.rb +0 -252
  670. data/lib/sunshine-conversations-client/models/twilio_all_of.rb +0 -297
  671. data/lib/sunshine-conversations-client/models/twitter_all_of.rb +0 -400
  672. data/lib/sunshine-conversations-client/models/unity_all_of.rb +0 -236
  673. data/lib/sunshine-conversations-client/models/unity_update_all_of.rb +0 -214
  674. data/lib/sunshine-conversations-client/models/user_all_of.rb +0 -239
  675. data/lib/sunshine-conversations-client/models/user_remove_event_all_of.rb +0 -203
  676. data/lib/sunshine-conversations-client/models/user_update_event_all_of.rb +0 -203
  677. data/lib/sunshine-conversations-client/models/web_all_of.rb +0 -391
  678. data/lib/sunshine-conversations-client/models/web_update_all_of.rb +0 -370
  679. data/lib/sunshine-conversations-client/models/whats_app_update_all_of.rb +0 -229
  680. data/lib/sunshine-conversations-client/models/whatsapp_all_of.rb +0 -252
  681. data/spec/api_client_spec.rb +0 -223
  682. data/spec/configuration_spec.rb +0 -39
@@ -1,16 +1,21 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.6.0
4
+ The version of the OpenAPI document: 17.0.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
- OpenAPI Generator version: 4.3.1
7
+ OpenAPI Generator version: 7.12.0
8
8
  =end
9
9
 
10
10
  require 'date'
11
+ require 'time'
11
12
 
12
13
  module SunshineConversationsClient
13
- class ActivityAllOf
14
+ # The activity that was sent.
15
+ class ConversationTypingEventAllOfPayloadActivity
16
+ # The type of activity.
17
+ attr_accessor :type
18
+
14
19
  # The source of the activity.
15
20
  attr_accessor :source
16
21
 
@@ -19,6 +24,7 @@ module SunshineConversationsClient
19
24
  # Attribute mapping from ruby-style variable name to JSON key.
20
25
  def self.attribute_map
21
26
  {
27
+ :'type' => :'type',
22
28
  :'source' => :'source',
23
29
  :'author' => :'author'
24
30
  }
@@ -27,6 +33,7 @@ module SunshineConversationsClient
27
33
  # Attribute type mapping.
28
34
  def self.openapi_types
29
35
  {
36
+ :'type' => :'String',
30
37
  :'source' => :'SourceWebhook',
31
38
  :'author' => :'AuthorWebhook'
32
39
  }
@@ -38,21 +45,32 @@ module SunshineConversationsClient
38
45
  ])
39
46
  end
40
47
 
48
+ # List of class defined in allOf (OpenAPI v3)
49
+ def self.openapi_all_of
50
+ [
51
+ :'Activity'
52
+ ]
53
+ end
54
+
41
55
  # Initializes the object
42
56
  # @param [Hash] attributes Model attributes in the form of hash
43
57
  def initialize(attributes = {})
44
58
  if (!attributes.is_a?(Hash))
45
- fail ArgumentError, "The input argument (attributes) must be a hash in `SunshineConversationsClient::ActivityAllOf` initialize method"
59
+ fail ArgumentError, "The input argument (attributes) must be a hash in `SunshineConversationsClient::ConversationTypingEventAllOfPayloadActivity` initialize method"
46
60
  end
47
61
 
48
62
  # check to see if the attribute exists and convert string to symbol for hash key
49
63
  attributes = attributes.each_with_object({}) { |(k, v), h|
50
64
  if (!self.class.attribute_map.key?(k.to_sym))
51
- fail ArgumentError, "`#{k}` is not a valid attribute in `SunshineConversationsClient::ActivityAllOf`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
65
+ fail ArgumentError, "`#{k}` is not a valid attribute in `SunshineConversationsClient::ConversationTypingEventAllOfPayloadActivity`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
52
66
  end
53
67
  h[k.to_sym] = v
54
68
  }
55
69
 
70
+ if attributes.key?(:'type')
71
+ self.type = attributes[:'type']
72
+ end
73
+
56
74
  if attributes.key?(:'source')
57
75
  self.source = attributes[:'source']
58
76
  end
@@ -80,6 +98,7 @@ module SunshineConversationsClient
80
98
  def ==(o)
81
99
  return true if self.equal?(o)
82
100
  self.class == o.class &&
101
+ type == o.type &&
83
102
  source == o.source &&
84
103
  author == o.author
85
104
  end
@@ -93,44 +112,40 @@ module SunshineConversationsClient
93
112
  # Calculates hash code according to all attributes.
94
113
  # @return [Integer] Hash code
95
114
  def hash
96
- [source, author].hash
115
+ [typesourceauthor].hash
97
116
  end
98
117
 
99
118
  # Builds the object from hash
100
119
  # @param [Hash] attributes Model attributes in the form of hash
101
120
  # @return [Object] Returns the model itself
102
121
  def self.build_from_hash(attributes)
103
- new.build_from_hash(attributes)
104
- end
105
-
106
- # Builds the object from hash
107
- # @param [Hash] attributes Model attributes in the form of hash
108
- # @return [Object] Returns the model itself
109
- def build_from_hash(attributes)
110
122
  return nil unless attributes.is_a?(Hash)
111
- self.class.openapi_types.each_pair do |key, type|
112
- if type =~ /\AArray<(.*)>/i
123
+ attributes = attributes.transform_keys(&:to_sym)
124
+ transformed_hash = {}
125
+ openapi_types.each_pair do |key, type|
126
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
127
+ transformed_hash["#{key}"] = nil
128
+ elsif type =~ /\AArray<(.*)>/i
113
129
  # check to ensure the input is an array given that the attribute
114
130
  # is documented as an array but the input is not
115
- if attributes[self.class.attribute_map[key]].is_a?(Array)
116
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
131
+ if attributes[attribute_map[key]].is_a?(Array)
132
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
117
133
  end
118
- elsif !attributes[self.class.attribute_map[key]].nil?
119
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
120
- end # or else data not found in attributes(hash), not an issue as the data can be optional
134
+ elsif !attributes[attribute_map[key]].nil?
135
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
136
+ end
121
137
  end
122
-
123
- self
138
+ new(transformed_hash)
124
139
  end
125
140
 
126
141
  # Deserializes the data based on type
127
142
  # @param string type Data type
128
143
  # @param string value Value to be deserialized
129
144
  # @return [Object] Deserialized data
130
- def _deserialize(type, value)
145
+ def self._deserialize(type, value)
131
146
  case type.to_sym
132
- when :DateTime
133
- DateTime.parse(value)
147
+ when :Time
148
+ Time.parse(value)
134
149
  when :Date
135
150
  Date.parse(value)
136
151
  when :String
@@ -160,7 +175,9 @@ module SunshineConversationsClient
160
175
  end
161
176
  end
162
177
  else # model
163
- SunshineConversationsClient.const_get(type).build_from_hash(value)
178
+ # models (e.g. Pet) or oneOf
179
+ klass = SunshineConversationsClient.const_get(type)
180
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
164
181
  end
165
182
  end
166
183
 
@@ -186,7 +203,7 @@ module SunshineConversationsClient
186
203
  is_nullable = self.class.openapi_nullable.include?(attr)
187
204
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
188
205
  end
189
-
206
+
190
207
  hash[param] = _to_hash(value)
191
208
  end
192
209
  hash
@@ -209,5 +226,6 @@ module SunshineConversationsClient
209
226
  value
210
227
  end
211
228
  end
229
+
212
230
  end
213
231
  end
@@ -1,13 +1,14 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.6.0
4
+ The version of the OpenAPI document: 17.0.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
- OpenAPI Generator version: 4.3.1
7
+ OpenAPI Generator version: 7.12.0
8
8
  =end
9
9
 
10
10
  require 'date'
11
+ require 'time'
11
12
 
12
13
  module SunshineConversationsClient
13
14
  class ConversationUpdateBody
@@ -46,6 +47,7 @@ module SunshineConversationsClient
46
47
  # List of attributes with nullable: true
47
48
  def self.openapi_nullable
48
49
  Set.new([
50
+ :'display_name',
49
51
  :'description',
50
52
  :'icon_url',
51
53
  :'metadata'
@@ -80,6 +82,9 @@ module SunshineConversationsClient
80
82
  end
81
83
 
82
84
  if attributes.key?(:'metadata')
85
+ if (value = attributes[:'metadata']).is_a?(Hash)
86
+ self.metadata = value
87
+ end
83
88
  end
84
89
  end
85
90
 
@@ -87,6 +92,14 @@ module SunshineConversationsClient
87
92
  # @return Array for valid properties with the reasons
88
93
  def list_invalid_properties
89
94
  invalid_properties = Array.new
95
+ if !@display_name.nil? && @display_name.to_s.length > 100
96
+ invalid_properties.push('invalid value for "display_name", the character length must be smaller than or equal to 100.')
97
+ end
98
+
99
+ if !@display_name.nil? && @display_name.to_s.length < 1
100
+ invalid_properties.push('invalid value for "display_name", the character length must be great than or equal to 1.')
101
+ end
102
+
90
103
  if !@description.nil? && @description.to_s.length > 100
91
104
  invalid_properties.push('invalid value for "description", the character length must be smaller than or equal to 100.')
92
105
  end
@@ -109,6 +122,8 @@ module SunshineConversationsClient
109
122
  # Check to see if the all the properties in the model are valid
110
123
  # @return true if the model is valid
111
124
  def valid?
125
+ return false if !@display_name.nil? && @display_name.to_s.length > 100
126
+ return false if !@display_name.nil? && @display_name.to_s.length < 1
112
127
  return false if !@description.nil? && @description.to_s.length > 100
113
128
  return false if !@description.nil? && @description.to_s.length < 1
114
129
  return false if !@icon_url.nil? && @icon_url.to_s.length > 2048
@@ -116,6 +131,20 @@ module SunshineConversationsClient
116
131
  true
117
132
  end
118
133
 
134
+ # Custom attribute writer method with validation
135
+ # @param [Object] display_name Value to be assigned
136
+ def display_name=(display_name)
137
+ if !display_name.nil? && display_name.to_s.length > 100
138
+ fail ArgumentError, 'invalid value for "display_name", the character length must be smaller than or equal to 100.'
139
+ end
140
+
141
+ if !display_name.nil? && display_name.to_s.length < 1
142
+ fail ArgumentError, 'invalid value for "display_name", the character length must be great than or equal to 1.'
143
+ end
144
+
145
+ @display_name = display_name
146
+ end
147
+
119
148
  # Custom attribute writer method with validation
120
149
  # @param [Object] description Value to be assigned
121
150
  def description=(description)
@@ -164,44 +193,40 @@ module SunshineConversationsClient
164
193
  # Calculates hash code according to all attributes.
165
194
  # @return [Integer] Hash code
166
195
  def hash
167
- [display_name, description, icon_url, metadata].hash
196
+ [display_namedescriptionicon_urlmetadata].hash
168
197
  end
169
198
 
170
199
  # Builds the object from hash
171
200
  # @param [Hash] attributes Model attributes in the form of hash
172
201
  # @return [Object] Returns the model itself
173
202
  def self.build_from_hash(attributes)
174
- new.build_from_hash(attributes)
175
- end
176
-
177
- # Builds the object from hash
178
- # @param [Hash] attributes Model attributes in the form of hash
179
- # @return [Object] Returns the model itself
180
- def build_from_hash(attributes)
181
203
  return nil unless attributes.is_a?(Hash)
182
- self.class.openapi_types.each_pair do |key, type|
183
- if type =~ /\AArray<(.*)>/i
204
+ attributes = attributes.transform_keys(&:to_sym)
205
+ transformed_hash = {}
206
+ openapi_types.each_pair do |key, type|
207
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
208
+ transformed_hash["#{key}"] = nil
209
+ elsif type =~ /\AArray<(.*)>/i
184
210
  # check to ensure the input is an array given that the attribute
185
211
  # is documented as an array but the input is not
186
- if attributes[self.class.attribute_map[key]].is_a?(Array)
187
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
212
+ if attributes[attribute_map[key]].is_a?(Array)
213
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
188
214
  end
189
- elsif !attributes[self.class.attribute_map[key]].nil?
190
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
191
- end # or else data not found in attributes(hash), not an issue as the data can be optional
215
+ elsif !attributes[attribute_map[key]].nil?
216
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
217
+ end
192
218
  end
193
-
194
- self
219
+ new(transformed_hash)
195
220
  end
196
221
 
197
222
  # Deserializes the data based on type
198
223
  # @param string type Data type
199
224
  # @param string value Value to be deserialized
200
225
  # @return [Object] Deserialized data
201
- def _deserialize(type, value)
226
+ def self._deserialize(type, value)
202
227
  case type.to_sym
203
- when :DateTime
204
- DateTime.parse(value)
228
+ when :Time
229
+ Time.parse(value)
205
230
  when :Date
206
231
  Date.parse(value)
207
232
  when :String
@@ -231,7 +256,9 @@ module SunshineConversationsClient
231
256
  end
232
257
  end
233
258
  else # model
234
- SunshineConversationsClient.const_get(type).build_from_hash(value)
259
+ # models (e.g. Pet) or oneOf
260
+ klass = SunshineConversationsClient.const_get(type)
261
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
235
262
  end
236
263
  end
237
264
 
@@ -257,7 +284,7 @@ module SunshineConversationsClient
257
284
  is_nullable = self.class.openapi_nullable.include?(attr)
258
285
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
259
286
  end
260
-
287
+
261
288
  hash[param] = _to_hash(value)
262
289
  end
263
290
  hash
@@ -280,5 +307,6 @@ module SunshineConversationsClient
280
307
  value
281
308
  end
282
309
  end
310
+
283
311
  end
284
312
  end
@@ -1,246 +1,103 @@
1
1
  =begin
2
2
  #Sunshine Conversations API
3
3
 
4
- The version of the OpenAPI document: 15.6.0
4
+ The version of the OpenAPI document: 17.0.0
5
5
 
6
6
  Generated by: https://openapi-generator.tech
7
- OpenAPI Generator version: 4.3.1
7
+ OpenAPI Generator version: 7.12.0
8
8
  =end
9
9
 
10
10
  require 'date'
11
+ require 'time'
11
12
 
12
13
  module SunshineConversationsClient
13
- class ConversionEventsBody
14
- attr_accessor :messenger
15
-
16
- attr_accessor :instagram
17
-
18
- attr_accessor :whatsapp
19
-
20
- # Attribute mapping from ruby-style variable name to JSON key.
21
- def self.attribute_map
22
- {
23
- :'messenger' => :'messenger',
24
- :'instagram' => :'instagram',
25
- :'whatsapp' => :'whatsapp'
26
- }
27
- end
28
-
29
- # Attribute type mapping.
30
- def self.openapi_types
31
- {
32
- :'messenger' => :'MetaConversionEvent',
33
- :'instagram' => :'MetaConversionEvent',
34
- :'whatsapp' => :'MetaConversionEvent'
35
- }
36
- end
37
-
38
- # List of attributes with nullable: true
39
- def self.openapi_nullable
40
- Set.new([
41
- ])
42
- end
43
-
44
- # List of class defined in oneOf (OpenAPI v3)
45
- def self.openapi_one_of
46
- [
47
- :'InstagramConversionEventsBody',
48
- :'MessengerConversionEventsBody',
49
- :'WhatsAppConversionEventsBody'
50
- ]
51
- end
52
-
53
- # Initializes the object
54
- # @param [Hash] attributes Model attributes in the form of hash
55
- def initialize(attributes = {})
56
- if (!attributes.is_a?(Hash))
57
- fail ArgumentError, "The input argument (attributes) must be a hash in `SunshineConversationsClient::ConversionEventsBody` initialize method"
58
- end
59
-
60
- # check to see if the attribute exists and convert string to symbol for hash key
61
- attributes = attributes.each_with_object({}) { |(k, v), h|
62
- if (!self.class.attribute_map.key?(k.to_sym))
63
- fail ArgumentError, "`#{k}` is not a valid attribute in `SunshineConversationsClient::ConversionEventsBody`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
64
- end
65
- h[k.to_sym] = v
66
- }
67
-
68
- if attributes.key?(:'messenger')
69
- self.messenger = attributes[:'messenger']
70
- end
71
-
72
- if attributes.key?(:'instagram')
73
- self.instagram = attributes[:'instagram']
14
+ module ConversionEventsBody
15
+ class << self
16
+ # List of class defined in oneOf (OpenAPI v3)
17
+ def openapi_one_of
18
+ [
19
+ :'InstagramConversionEventsBody',
20
+ :'MessengerConversionEventsBody',
21
+ :'WhatsAppConversionEventsBody'
22
+ ]
74
23
  end
75
24
 
76
- if attributes.key?(:'whatsapp')
77
- self.whatsapp = attributes[:'whatsapp']
78
- end
79
- end
80
-
81
- # Show invalid properties with the reasons. Usually used together with valid?
82
- # @return Array for valid properties with the reasons
83
- def list_invalid_properties
84
- invalid_properties = Array.new
85
- invalid_properties
86
- end
87
-
88
- # Check to see if the all the properties in the model are valid
89
- # @return true if the model is valid
90
- def valid?
91
- _one_of_found = false
92
- self.class.openapi_one_of.each do |_class|
93
- _one_of = SunshineConversationsClient.const_get(_class).build_from_hash(self.to_hash)
94
- if _one_of.valid?
95
- if _one_of_found
96
- return false
97
- else
98
- _one_of_found = true
25
+ # Builds the object
26
+ # @param [Mixed] Data to be matched against the list of oneOf items
27
+ # @return [Object] Returns the model or the data itself
28
+ def build(data)
29
+ # Go through the list of oneOf items and attempt to identify the appropriate one.
30
+ # Note:
31
+ # - We do not attempt to check whether exactly one item matches.
32
+ # - No advanced validation of types in some cases (e.g. "x: { type: string }" will happily match { x: 123 })
33
+ # due to the way the deserialization is made in the base_object template (it just casts without verifying).
34
+ # - TODO: scalar values are de facto behaving as if they were nullable.
35
+ # - TODO: logging when debugging is set.
36
+ openapi_one_of.each do |klass|
37
+ begin
38
+ next if klass == :AnyType # "nullable: true"
39
+ typed_data = find_and_cast_into_type(klass, data)
40
+ return typed_data if typed_data
41
+ rescue # rescue all errors so we keep iterating even if the current item lookup raises
99
42
  end
100
43
  end
101
- end
102
44
 
103
- if !_one_of_found
104
- return false
45
+ openapi_one_of.include?(:AnyType) ? data : nil
105
46
  end
106
47
 
107
- true
108
- end
109
-
110
- # Checks equality by comparing each attribute.
111
- # @param [Object] Object to be compared
112
- def ==(o)
113
- return true if self.equal?(o)
114
- self.class == o.class &&
115
- messenger == o.messenger &&
116
- instagram == o.instagram &&
117
- whatsapp == o.whatsapp
118
- end
119
-
120
- # @see the `==` method
121
- # @param [Object] Object to be compared
122
- def eql?(o)
123
- self == o
124
- end
125
-
126
- # Calculates hash code according to all attributes.
127
- # @return [Integer] Hash code
128
- def hash
129
- [messenger, instagram, whatsapp].hash
130
- end
131
-
132
- # Builds the object from hash
133
- # @param [Hash] attributes Model attributes in the form of hash
134
- # @return [Object] Returns the model itself
135
- def self.build_from_hash(attributes)
136
- new.build_from_hash(attributes)
137
- end
138
-
139
- # Builds the object from hash
140
- # @param [Hash] attributes Model attributes in the form of hash
141
- # @return [Object] Returns the model itself
142
- def build_from_hash(attributes)
143
- return nil unless attributes.is_a?(Hash)
144
- self.class.openapi_types.each_pair do |key, type|
145
- if type =~ /\AArray<(.*)>/i
146
- # check to ensure the input is an array given that the attribute
147
- # is documented as an array but the input is not
148
- if attributes[self.class.attribute_map[key]].is_a?(Array)
149
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
48
+ private
49
+
50
+ SchemaMismatchError = Class.new(StandardError)
51
+
52
+ # Note: 'File' is missing here because in the regular case we get the data _after_ a call to JSON.parse.
53
+ def find_and_cast_into_type(klass, data)
54
+ return if data.nil?
55
+
56
+ case klass.to_s
57
+ when 'Boolean'
58
+ return data if data.instance_of?(TrueClass) || data.instance_of?(FalseClass)
59
+ when 'Float'
60
+ return data if data.instance_of?(Float)
61
+ when 'Integer'
62
+ return data if data.instance_of?(Integer)
63
+ when 'Time'
64
+ return Time.parse(data)
65
+ when 'Date'
66
+ return Date.parse(data)
67
+ when 'String'
68
+ return data if data.instance_of?(String)
69
+ when 'Object' # "type: object"
70
+ return data if data.instance_of?(Hash)
71
+ when /\AArray<(?<sub_type>.+)>\z/ # "type: array"
72
+ if data.instance_of?(Array)
73
+ sub_type = Regexp.last_match[:sub_type]
74
+ return data.map { |item| find_and_cast_into_type(sub_type, item) }
150
75
  end
151
- elsif !attributes[self.class.attribute_map[key]].nil?
152
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
153
- end # or else data not found in attributes(hash), not an issue as the data can be optional
154
- end
155
-
156
- self
157
- end
158
-
159
- # Deserializes the data based on type
160
- # @param string type Data type
161
- # @param string value Value to be deserialized
162
- # @return [Object] Deserialized data
163
- def _deserialize(type, value)
164
- case type.to_sym
165
- when :DateTime
166
- DateTime.parse(value)
167
- when :Date
168
- Date.parse(value)
169
- when :String
170
- value.to_s
171
- when :Integer
172
- value.to_i
173
- when :Float
174
- value.to_f
175
- when :Boolean
176
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
177
- true
178
- else
179
- false
180
- end
181
- when :Object
182
- # generic object (usually a Hash), return directly
183
- value
184
- when /\AArray<(?<inner_type>.+)>\z/
185
- inner_type = Regexp.last_match[:inner_type]
186
- value.map { |v| _deserialize(inner_type, v) }
187
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
188
- k_type = Regexp.last_match[:k_type]
189
- v_type = Regexp.last_match[:v_type]
190
- {}.tap do |hash|
191
- value.each do |k, v|
192
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
76
+ when /\AHash<String, (?<sub_type>.+)>\z/ # "type: object" with "additionalProperties: { ... }"
77
+ if data.instance_of?(Hash) && data.keys.all? { |k| k.instance_of?(Symbol) || k.instance_of?(String) }
78
+ sub_type = Regexp.last_match[:sub_type]
79
+ return data.each_with_object({}) { |(k, v), hsh| hsh[k] = find_and_cast_into_type(sub_type, v) }
80
+ end
81
+ else # model
82
+ const = SunshineConversationsClient.const_get(klass)
83
+ if const
84
+ if const.respond_to?(:openapi_one_of) # nested oneOf model
85
+ model = const.build(data)
86
+ return model if model
87
+ else
88
+ # raise if data contains keys that are not known to the model
89
+ raise if const.respond_to?(:acceptable_attributes) && !(data.keys - const.acceptable_attributes).empty?
90
+ model = const.build_from_hash(data)
91
+ return model if model
92
+ end
193
93
  end
194
94
  end
195
- else # model
196
- SunshineConversationsClient.const_get(type).build_from_hash(value)
197
- end
198
- end
199
-
200
- # Returns the string representation of the object
201
- # @return [String] String presentation of the object
202
- def to_s
203
- to_hash.to_s
204
- end
205
-
206
- # to_body is an alias to to_hash (backward compatibility)
207
- # @return [Hash] Returns the object in the form of hash
208
- def to_body
209
- to_hash
210
- end
211
-
212
- # Returns the object in the form of hash
213
- # @return [Hash] Returns the object in the form of hash
214
- def to_hash
215
- hash = {}
216
- self.class.attribute_map.each_pair do |attr, param|
217
- value = self.send(attr)
218
- if value.nil?
219
- is_nullable = self.class.openapi_nullable.include?(attr)
220
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
221
- end
222
-
223
- hash[param] = _to_hash(value)
224
- end
225
- hash
226
- end
227
95
 
228
- # Outputs non-array value in the form of hash
229
- # For object, use to_hash. Otherwise, just return the value
230
- # @param [Object] value Any valid value
231
- # @return [Hash] Returns the value in the form of hash
232
- def _to_hash(value)
233
- if value.is_a?(Array)
234
- value.compact.map { |v| _to_hash(v) }
235
- elsif value.is_a?(Hash)
236
- {}.tap do |hash|
237
- value.each { |k, v| hash[k] = _to_hash(v) }
238
- end
239
- elsif value.respond_to? :to_hash
240
- value.to_hash
241
- else
242
- value
96
+ raise # if no match by now, raise
97
+ rescue
98
+ raise SchemaMismatchError, "#{data} doesn't match the #{klass} type"
243
99
  end
244
100
  end
245
101
  end
102
+
246
103
  end