sib-api-v3-sdk 5.2.5 → 5.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (420) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -1
  3. data/LICENSE.md +1 -1
  4. data/README.md +17 -1
  5. data/docs/AbTestCampaignResult.md +13 -0
  6. data/docs/AttributesApi.md +6 -6
  7. data/docs/ContactsApi.md +12 -12
  8. data/docs/CreateContact.md +1 -1
  9. data/docs/CreateEmailCampaign.md +3 -0
  10. data/docs/CreateEmailCampaignSender.md +1 -0
  11. data/docs/CreateSmtpTemplateSender.md +1 -0
  12. data/docs/CreateWebhook.md +1 -1
  13. data/docs/EmailCampaignsApi.md +127 -7
  14. data/docs/GetChildAccountCreationStatus.md +8 -0
  15. data/docs/GetChildrenList.md +1 -0
  16. data/docs/GetDeviceBrowserStats.md +11 -0
  17. data/docs/GetExtendedCampaignOverviewSender.md +1 -0
  18. data/docs/GetExtendedCampaignStats.md +2 -0
  19. data/docs/GetSharedTemplateUrl.md +8 -0
  20. data/docs/GetSmtpTemplateOverviewSender.md +1 -0
  21. data/docs/GetStatsByBrowser.md +7 -0
  22. data/docs/GetStatsByDevice.md +11 -0
  23. data/docs/GetTransacBlockedContacts.md +9 -0
  24. data/docs/GetTransacBlockedContactsContacts.md +11 -0
  25. data/docs/GetTransacBlockedContactsReason.md +9 -0
  26. data/docs/ListsApi.md +1 -1
  27. data/docs/RequestContactExport.md +2 -1
  28. data/docs/RequestContactExportCustomContactFilter.md +13 -0
  29. data/docs/ResellerApi.md +87 -20
  30. data/docs/SMSCampaignsApi.md +3 -3
  31. data/docs/SMTPApi.md +200 -19
  32. data/docs/SendReport.md +1 -1
  33. data/docs/SendReportEmail.md +1 -1
  34. data/docs/SendSmtpEmail.md +2 -2
  35. data/docs/SendSmtpEmailBcc.md +1 -1
  36. data/docs/SendSmtpEmailCc.md +1 -1
  37. data/docs/SendSmtpEmailReplyTo.md +1 -1
  38. data/docs/SendSmtpEmailSender.md +1 -1
  39. data/docs/SendSmtpEmailTo.md +1 -1
  40. data/docs/SendTransacSms.md +1 -1
  41. data/docs/SendersApi.md +2 -2
  42. data/docs/TransactionalSMSApi.md +11 -11
  43. data/docs/UpdateContact.md +1 -1
  44. data/docs/UpdateEmailCampaign.md +3 -0
  45. data/docs/UpdateEmailCampaignSender.md +1 -0
  46. data/docs/UpdateSmtpTemplateSender.md +1 -0
  47. data/docs/WebhooksApi.md +1 -1
  48. data/lib/sib-api-v3-sdk.rb +12 -2
  49. data/lib/sib-api-v3-sdk/api/account_api.rb +6 -9
  50. data/lib/sib-api-v3-sdk/api/attributes_api.rb +15 -27
  51. data/lib/sib-api-v3-sdk/api/contacts_api.rb +81 -155
  52. data/lib/sib-api-v3-sdk/api/email_campaigns_api.rb +141 -61
  53. data/lib/sib-api-v3-sdk/api/folders_api.rb +21 -39
  54. data/lib/sib-api-v3-sdk/api/lists_api.rb +30 -57
  55. data/lib/sib-api-v3-sdk/api/process_api.rb +9 -15
  56. data/lib/sib-api-v3-sdk/api/reseller_api.rb +111 -92
  57. data/lib/sib-api-v3-sdk/api/senders_api.rb +21 -39
  58. data/lib/sib-api-v3-sdk/api/sms_campaigns_api.rb +33 -59
  59. data/lib/sib-api-v3-sdk/api/smtp_api.rb +213 -82
  60. data/lib/sib-api-v3-sdk/api/transactional_sms_api.rb +15 -27
  61. data/lib/sib-api-v3-sdk/api/webhooks_api.rb +18 -33
  62. data/lib/sib-api-v3-sdk/api_client.rb +10 -10
  63. data/lib/sib-api-v3-sdk/api_error.rb +2 -2
  64. data/lib/sib-api-v3-sdk/configuration.rb +3 -3
  65. data/lib/sib-api-v3-sdk/models/ab_test_campaign_result.rb +280 -0
  66. data/lib/sib-api-v3-sdk/models/add_child_domain.rb +7 -12
  67. data/lib/sib-api-v3-sdk/models/add_contact_to_list.rb +7 -12
  68. data/lib/sib-api-v3-sdk/models/add_credits.rb +7 -12
  69. data/lib/sib-api-v3-sdk/models/create_attribute.rb +10 -14
  70. data/lib/sib-api-v3-sdk/models/create_attribute_enumeration.rb +9 -14
  71. data/lib/sib-api-v3-sdk/models/create_child.rb +12 -17
  72. data/lib/sib-api-v3-sdk/models/create_contact.rb +8 -13
  73. data/lib/sib-api-v3-sdk/models/create_email_campaign.rb +79 -29
  74. data/lib/sib-api-v3-sdk/models/create_email_campaign_recipients.rb +7 -11
  75. data/lib/sib-api-v3-sdk/models/create_email_campaign_sender.rb +21 -15
  76. data/lib/sib-api-v3-sdk/models/create_list.rb +9 -14
  77. data/lib/sib-api-v3-sdk/models/create_model.rb +8 -13
  78. data/lib/sib-api-v3-sdk/models/create_reseller.rb +8 -13
  79. data/lib/sib-api-v3-sdk/models/create_sender.rb +9 -14
  80. data/lib/sib-api-v3-sdk/models/create_sender_ips.rb +13 -19
  81. data/lib/sib-api-v3-sdk/models/create_sender_model.rb +8 -13
  82. data/lib/sib-api-v3-sdk/models/create_sms_campaign.rb +13 -18
  83. data/lib/sib-api-v3-sdk/models/create_sms_campaign_recipients.rb +8 -13
  84. data/lib/sib-api-v3-sdk/models/create_smtp_email.rb +8 -13
  85. data/lib/sib-api-v3-sdk/models/create_smtp_template.rb +10 -15
  86. data/lib/sib-api-v3-sdk/models/create_smtp_template_sender.rb +21 -15
  87. data/lib/sib-api-v3-sdk/models/create_update_contact_model.rb +7 -12
  88. data/lib/sib-api-v3-sdk/models/create_update_folder.rb +7 -12
  89. data/lib/sib-api-v3-sdk/models/create_webhook.rb +13 -17
  90. data/lib/sib-api-v3-sdk/models/created_process_id.rb +8 -13
  91. data/lib/sib-api-v3-sdk/models/delete_hardbounces.rb +7 -12
  92. data/lib/sib-api-v3-sdk/models/email_export_recipients.rb +11 -15
  93. data/lib/sib-api-v3-sdk/models/error_model.rb +12 -16
  94. data/lib/sib-api-v3-sdk/models/get_account.rb +14 -19
  95. data/lib/sib-api-v3-sdk/models/get_account_marketing_automation.rb +8 -13
  96. data/lib/sib-api-v3-sdk/models/get_account_plan.rb +16 -20
  97. data/lib/sib-api-v3-sdk/models/get_account_relay.rb +9 -13
  98. data/lib/sib-api-v3-sdk/models/get_account_relay_data.rb +10 -14
  99. data/lib/sib-api-v3-sdk/models/get_aggregated_report.rb +20 -25
  100. data/lib/sib-api-v3-sdk/models/get_attributes.rb +8 -13
  101. data/lib/sib-api-v3-sdk/models/get_attributes_attributes.rb +15 -19
  102. data/lib/sib-api-v3-sdk/models/get_attributes_enumeration.rb +9 -14
  103. data/lib/sib-api-v3-sdk/models/get_campaign_overview.rb +17 -21
  104. data/lib/sib-api-v3-sdk/models/get_campaign_recipients.rb +9 -14
  105. data/lib/sib-api-v3-sdk/models/get_campaign_stats.rb +17 -22
  106. data/lib/sib-api-v3-sdk/models/get_child_account_creation_status.rb +189 -0
  107. data/lib/sib-api-v3-sdk/models/get_child_domain.rb +9 -14
  108. data/lib/sib-api-v3-sdk/models/get_child_domains.rb +7 -12
  109. data/lib/sib-api-v3-sdk/models/get_child_info.rb +12 -17
  110. data/lib/sib-api-v3-sdk/models/get_child_info_api_keys.rb +8 -12
  111. data/lib/sib-api-v3-sdk/models/get_child_info_api_keys_v2.rb +9 -14
  112. data/lib/sib-api-v3-sdk/models/get_child_info_api_keys_v3.rb +9 -14
  113. data/lib/sib-api-v3-sdk/models/get_child_info_credits.rb +7 -11
  114. data/lib/sib-api-v3-sdk/models/get_child_info_statistics.rb +7 -11
  115. data/lib/sib-api-v3-sdk/models/get_children_list.rb +24 -14
  116. data/lib/sib-api-v3-sdk/models/get_client.rb +11 -16
  117. data/lib/sib-api-v3-sdk/models/get_contact_campaign_stats.rb +7 -11
  118. data/lib/sib-api-v3-sdk/models/get_contact_campaign_stats_clicked.rb +9 -14
  119. data/lib/sib-api-v3-sdk/models/get_contact_campaign_stats_opened.rb +11 -16
  120. data/lib/sib-api-v3-sdk/models/get_contact_campaign_stats_transac_attributes.rb +10 -15
  121. data/lib/sib-api-v3-sdk/models/get_contact_campaign_stats_unsubscriptions.rb +9 -14
  122. data/lib/sib-api-v3-sdk/models/get_contact_details.rb +15 -20
  123. data/lib/sib-api-v3-sdk/models/get_contacts.rb +9 -14
  124. data/lib/sib-api-v3-sdk/models/get_device_browser_stats.rb +234 -0
  125. data/lib/sib-api-v3-sdk/models/get_email_campaign.rb +29 -33
  126. data/lib/sib-api-v3-sdk/models/get_email_campaigns.rb +8 -13
  127. data/lib/sib-api-v3-sdk/models/get_email_event_report.rb +7 -12
  128. data/lib/sib-api-v3-sdk/models/get_email_event_report_events.rb +14 -18
  129. data/lib/sib-api-v3-sdk/models/get_extended_campaign_overview.rb +27 -31
  130. data/lib/sib-api-v3-sdk/models/get_extended_campaign_overview_sender.rb +19 -14
  131. data/lib/sib-api-v3-sdk/models/get_extended_campaign_stats.rb +45 -20
  132. data/lib/sib-api-v3-sdk/models/get_extended_client.rb +12 -17
  133. data/lib/sib-api-v3-sdk/models/get_extended_client_address.rb +11 -15
  134. data/lib/sib-api-v3-sdk/models/get_extended_contact_details.rb +16 -21
  135. data/lib/sib-api-v3-sdk/models/get_extended_contact_details_statistics.rb +7 -11
  136. data/lib/sib-api-v3-sdk/models/get_extended_contact_details_statistics_clicked.rb +9 -14
  137. data/lib/sib-api-v3-sdk/models/get_extended_contact_details_statistics_links.rb +11 -16
  138. data/lib/sib-api-v3-sdk/models/get_extended_contact_details_statistics_messages_sent.rb +9 -14
  139. data/lib/sib-api-v3-sdk/models/get_extended_contact_details_statistics_opened.rb +11 -16
  140. data/lib/sib-api-v3-sdk/models/get_extended_contact_details_statistics_unsubscriptions.rb +9 -13
  141. data/lib/sib-api-v3-sdk/models/get_extended_contact_details_statistics_unsubscriptions_admin_unsubscription.rb +9 -14
  142. data/lib/sib-api-v3-sdk/models/get_extended_contact_details_statistics_unsubscriptions_user_unsubscription.rb +10 -15
  143. data/lib/sib-api-v3-sdk/models/get_extended_list.rb +13 -18
  144. data/lib/sib-api-v3-sdk/models/get_extended_list_campaign_stats.rb +9 -14
  145. data/lib/sib-api-v3-sdk/models/get_folder.rb +12 -17
  146. data/lib/sib-api-v3-sdk/models/get_folder_lists.rb +9 -14
  147. data/lib/sib-api-v3-sdk/models/get_folders.rb +7 -12
  148. data/lib/sib-api-v3-sdk/models/get_ip.rb +11 -16
  149. data/lib/sib-api-v3-sdk/models/get_ip_from_sender.rb +11 -16
  150. data/lib/sib-api-v3-sdk/models/get_ips.rb +8 -13
  151. data/lib/sib-api-v3-sdk/models/get_ips_from_sender.rb +8 -13
  152. data/lib/sib-api-v3-sdk/models/get_list.rb +11 -16
  153. data/lib/sib-api-v3-sdk/models/get_lists.rb +9 -14
  154. data/lib/sib-api-v3-sdk/models/get_process.rb +13 -17
  155. data/lib/sib-api-v3-sdk/models/get_processes.rb +8 -13
  156. data/lib/sib-api-v3-sdk/models/get_reports.rb +7 -12
  157. data/lib/sib-api-v3-sdk/models/get_reports_reports.rb +20 -25
  158. data/lib/sib-api-v3-sdk/models/get_senders_list.rb +7 -12
  159. data/lib/sib-api-v3-sdk/models/get_senders_list_ips.rb +10 -15
  160. data/lib/sib-api-v3-sdk/models/get_senders_list_senders.rb +11 -16
  161. data/lib/sib-api-v3-sdk/models/get_shared_template_url.rb +189 -0
  162. data/lib/sib-api-v3-sdk/models/get_sms_campaign.rb +20 -24
  163. data/lib/sib-api-v3-sdk/models/get_sms_campaign_overview.rb +18 -22
  164. data/lib/sib-api-v3-sdk/models/get_sms_campaign_stats.rb +14 -19
  165. data/lib/sib-api-v3-sdk/models/get_sms_campaigns.rb +8 -13
  166. data/lib/sib-api-v3-sdk/models/get_sms_event_report.rb +7 -12
  167. data/lib/sib-api-v3-sdk/models/get_sms_event_report_events.rb +14 -18
  168. data/lib/sib-api-v3-sdk/models/get_smtp_template_overview.rb +19 -24
  169. data/lib/sib-api-v3-sdk/models/get_smtp_template_overview_sender.rb +19 -14
  170. data/lib/sib-api-v3-sdk/models/get_smtp_templates.rb +7 -12
  171. data/lib/sib-api-v3-sdk/models/get_sso_token.rb +8 -13
  172. data/lib/sib-api-v3-sdk/models/get_stats_by_browser.rb +174 -0
  173. data/lib/sib-api-v3-sdk/models/get_stats_by_device.rb +222 -0
  174. data/lib/sib-api-v3-sdk/models/get_stats_by_domain.rb +7 -12
  175. data/lib/sib-api-v3-sdk/models/get_transac_aggregated_sms_report.rb +17 -22
  176. data/lib/sib-api-v3-sdk/models/get_transac_blocked_contacts.rb +195 -0
  177. data/lib/sib-api-v3-sdk/models/get_transac_blocked_contacts_contacts.rb +233 -0
  178. data/lib/sib-api-v3-sdk/models/get_transac_blocked_contacts_reason.rb +229 -0
  179. data/lib/sib-api-v3-sdk/models/get_transac_email_content.rb +13 -18
  180. data/lib/sib-api-v3-sdk/models/get_transac_email_content_events.rb +9 -14
  181. data/lib/sib-api-v3-sdk/models/get_transac_emails_list.rb +7 -12
  182. data/lib/sib-api-v3-sdk/models/get_transac_emails_list_transactional_emails.rb +12 -17
  183. data/lib/sib-api-v3-sdk/models/get_transac_sms_report.rb +7 -12
  184. data/lib/sib-api-v3-sdk/models/get_transac_sms_report_reports.rb +17 -22
  185. data/lib/sib-api-v3-sdk/models/get_webhook.rb +17 -21
  186. data/lib/sib-api-v3-sdk/models/get_webhooks.rb +8 -13
  187. data/lib/sib-api-v3-sdk/models/manage_ip.rb +7 -12
  188. data/lib/sib-api-v3-sdk/models/post_contact_info.rb +8 -13
  189. data/lib/sib-api-v3-sdk/models/post_contact_info_contacts.rb +7 -12
  190. data/lib/sib-api-v3-sdk/models/post_send_failed.rb +9 -14
  191. data/lib/sib-api-v3-sdk/models/post_send_sms_test_failed.rb +9 -14
  192. data/lib/sib-api-v3-sdk/models/remaining_credit_model.rb +9 -14
  193. data/lib/sib-api-v3-sdk/models/remaining_credit_model_child.rb +9 -13
  194. data/lib/sib-api-v3-sdk/models/remaining_credit_model_reseller.rb +9 -14
  195. data/lib/sib-api-v3-sdk/models/remove_contact_from_list.rb +7 -12
  196. data/lib/sib-api-v3-sdk/models/remove_credits.rb +7 -12
  197. data/lib/sib-api-v3-sdk/models/request_contact_export.rb +18 -19
  198. data/lib/sib-api-v3-sdk/models/request_contact_export_custom_contact_filter.rb +293 -0
  199. data/lib/sib-api-v3-sdk/models/request_contact_import.rb +7 -12
  200. data/lib/sib-api-v3-sdk/models/request_contact_import_new_list.rb +7 -11
  201. data/lib/sib-api-v3-sdk/models/request_sms_recipient_export.rb +11 -15
  202. data/lib/sib-api-v3-sdk/models/send_email.rb +8 -13
  203. data/lib/sib-api-v3-sdk/models/send_email_attachment.rb +12 -17
  204. data/lib/sib-api-v3-sdk/models/send_report.rb +12 -16
  205. data/lib/sib-api-v3-sdk/models/send_report_email.rb +14 -17
  206. data/lib/sib-api-v3-sdk/models/send_sms.rb +9 -14
  207. data/lib/sib-api-v3-sdk/models/send_smtp_email.rb +10 -15
  208. data/lib/sib-api-v3-sdk/models/send_smtp_email_attachment.rb +9 -15
  209. data/lib/sib-api-v3-sdk/models/send_smtp_email_bcc.rb +9 -14
  210. data/lib/sib-api-v3-sdk/models/send_smtp_email_cc.rb +9 -14
  211. data/lib/sib-api-v3-sdk/models/send_smtp_email_reply_to.rb +9 -13
  212. data/lib/sib-api-v3-sdk/models/send_smtp_email_sender.rb +9 -13
  213. data/lib/sib-api-v3-sdk/models/send_smtp_email_to.rb +9 -14
  214. data/lib/sib-api-v3-sdk/models/send_template_email.rb +8 -13
  215. data/lib/sib-api-v3-sdk/models/send_test_email.rb +7 -12
  216. data/lib/sib-api-v3-sdk/models/send_test_sms.rb +7 -12
  217. data/lib/sib-api-v3-sdk/models/send_transac_sms.rb +17 -21
  218. data/lib/sib-api-v3-sdk/models/update_attribute.rb +7 -12
  219. data/lib/sib-api-v3-sdk/models/update_attribute_enumeration.rb +9 -14
  220. data/lib/sib-api-v3-sdk/models/update_campaign_status.rb +10 -13
  221. data/lib/sib-api-v3-sdk/models/update_child.rb +7 -12
  222. data/lib/sib-api-v3-sdk/models/update_child_account_status.rb +7 -12
  223. data/lib/sib-api-v3-sdk/models/update_child_domain.rb +7 -12
  224. data/lib/sib-api-v3-sdk/models/update_contact.rb +8 -13
  225. data/lib/sib-api-v3-sdk/models/update_email_campaign.rb +77 -27
  226. data/lib/sib-api-v3-sdk/models/update_email_campaign_recipients.rb +7 -11
  227. data/lib/sib-api-v3-sdk/models/update_email_campaign_sender.rb +20 -14
  228. data/lib/sib-api-v3-sdk/models/update_list.rb +7 -12
  229. data/lib/sib-api-v3-sdk/models/update_sender.rb +7 -12
  230. data/lib/sib-api-v3-sdk/models/update_sms_campaign.rb +9 -15
  231. data/lib/sib-api-v3-sdk/models/update_smtp_template.rb +7 -12
  232. data/lib/sib-api-v3-sdk/models/update_smtp_template_sender.rb +20 -14
  233. data/lib/sib-api-v3-sdk/models/update_webhook.rb +7 -11
  234. data/lib/sib-api-v3-sdk/version.rb +3 -3
  235. data/spec/api/account_api_spec.rb +3 -4
  236. data/spec/api/attributes_api_spec.rb +6 -10
  237. data/spec/api/contacts_api_spec.rb +28 -52
  238. data/spec/api/email_campaigns_api_spec.rb +37 -22
  239. data/spec/api/folders_api_spec.rb +8 -14
  240. data/spec/api/lists_api_spec.rb +11 -20
  241. data/spec/api/process_api_spec.rb +4 -6
  242. data/spec/api/reseller_api_spec.rb +31 -32
  243. data/spec/api/senders_api_spec.rb +8 -14
  244. data/spec/api/sms_campaigns_api_spec.rb +12 -20
  245. data/spec/api/smtp_api_spec.rb +53 -27
  246. data/spec/api/transactional_sms_api_spec.rb +6 -10
  247. data/spec/api/webhooks_api_spec.rb +7 -12
  248. data/spec/api_client_spec.rb +36 -36
  249. data/spec/configuration_spec.rb +10 -10
  250. data/spec/models/ab_test_campaign_result_spec.rb +79 -0
  251. data/spec/models/add_child_domain_spec.rb +3 -4
  252. data/spec/models/add_contact_to_list_spec.rb +3 -4
  253. data/spec/models/add_credits_spec.rb +4 -5
  254. data/spec/models/create_attribute_enumeration_spec.rb +4 -5
  255. data/spec/models/create_attribute_spec.rb +9 -10
  256. data/spec/models/create_child_spec.rb +7 -8
  257. data/spec/models/create_contact_spec.rb +9 -10
  258. data/spec/models/create_email_campaign_recipients_spec.rb +4 -5
  259. data/spec/models/create_email_campaign_sender_spec.rb +10 -5
  260. data/spec/models/create_email_campaign_spec.rb +49 -32
  261. data/spec/models/create_list_spec.rb +4 -5
  262. data/spec/models/create_model_spec.rb +3 -4
  263. data/spec/models/create_reseller_spec.rb +3 -4
  264. data/spec/models/create_sender_ips_spec.rb +5 -6
  265. data/spec/models/create_sender_model_spec.rb +5 -6
  266. data/spec/models/create_sender_spec.rb +5 -6
  267. data/spec/models/create_sms_campaign_recipients_spec.rb +4 -5
  268. data/spec/models/create_sms_campaign_spec.rb +7 -8
  269. data/spec/models/create_smtp_email_spec.rb +3 -4
  270. data/spec/models/create_smtp_template_sender_spec.rb +10 -5
  271. data/spec/models/create_smtp_template_spec.rb +12 -13
  272. data/spec/models/create_update_contact_model_spec.rb +3 -4
  273. data/spec/models/create_update_folder_spec.rb +3 -4
  274. data/spec/models/create_webhook_spec.rb +14 -15
  275. data/spec/models/created_process_id_spec.rb +3 -4
  276. data/spec/models/delete_hardbounces_spec.rb +5 -6
  277. data/spec/models/email_export_recipients_spec.rb +8 -9
  278. data/spec/models/error_model_spec.rb +8 -9
  279. data/spec/models/get_account_marketing_automation_spec.rb +4 -5
  280. data/spec/models/get_account_plan_spec.rb +16 -17
  281. data/spec/models/get_account_relay_data_spec.rb +5 -6
  282. data/spec/models/get_account_relay_spec.rb +4 -5
  283. data/spec/models/get_account_spec.rb +10 -11
  284. data/spec/models/get_aggregated_report_spec.rb +15 -16
  285. data/spec/models/get_attributes_attributes_spec.rb +15 -16
  286. data/spec/models/get_attributes_enumeration_spec.rb +4 -5
  287. data/spec/models/get_attributes_spec.rb +3 -4
  288. data/spec/models/get_campaign_overview_spec.rb +23 -24
  289. data/spec/models/get_campaign_recipients_spec.rb +4 -5
  290. data/spec/models/get_campaign_stats_spec.rb +14 -15
  291. data/spec/models/get_child_account_creation_status_spec.rb +41 -0
  292. data/spec/models/get_child_domain_spec.rb +4 -5
  293. data/spec/models/get_child_domains_spec.rb +2 -3
  294. data/spec/models/get_child_info_api_keys_spec.rb +4 -5
  295. data/spec/models/get_child_info_api_keys_v2_spec.rb +4 -5
  296. data/spec/models/get_child_info_api_keys_v3_spec.rb +4 -5
  297. data/spec/models/get_child_info_credits_spec.rb +4 -5
  298. data/spec/models/get_child_info_spec.rb +11 -12
  299. data/spec/models/get_child_info_statistics_spec.rb +5 -6
  300. data/spec/models/get_children_list_spec.rb +9 -4
  301. data/spec/models/get_client_spec.rb +6 -7
  302. data/spec/models/get_contact_campaign_stats_clicked_spec.rb +4 -5
  303. data/spec/models/get_contact_campaign_stats_opened_spec.rb +6 -7
  304. data/spec/models/get_contact_campaign_stats_spec.rb +10 -11
  305. data/spec/models/get_contact_campaign_stats_transac_attributes_spec.rb +5 -6
  306. data/spec/models/get_contact_campaign_stats_unsubscriptions_spec.rb +4 -5
  307. data/spec/models/get_contact_details_spec.rb +11 -12
  308. data/spec/models/get_contacts_spec.rb +4 -5
  309. data/spec/models/get_device_browser_stats_spec.rb +59 -0
  310. data/spec/models/get_email_campaign_spec.rb +40 -41
  311. data/spec/models/get_email_campaigns_spec.rb +4 -5
  312. data/spec/models/get_email_event_report_events_spec.rb +16 -17
  313. data/spec/models/get_email_event_report_spec.rb +3 -4
  314. data/spec/models/get_extended_campaign_overview_sender_spec.rb +10 -5
  315. data/spec/models/get_extended_campaign_overview_spec.rb +38 -39
  316. data/spec/models/get_extended_campaign_stats_spec.rb +20 -9
  317. data/spec/models/get_extended_client_address_spec.rb +6 -7
  318. data/spec/models/get_extended_client_spec.rb +7 -8
  319. data/spec/models/get_extended_contact_details_spec.rb +12 -13
  320. data/spec/models/get_extended_contact_details_statistics_clicked_spec.rb +4 -5
  321. data/spec/models/get_extended_contact_details_statistics_links_spec.rb +6 -7
  322. data/spec/models/get_extended_contact_details_statistics_messages_sent_spec.rb +4 -5
  323. data/spec/models/get_extended_contact_details_statistics_opened_spec.rb +6 -7
  324. data/spec/models/get_extended_contact_details_statistics_spec.rb +10 -11
  325. data/spec/models/get_extended_contact_details_statistics_unsubscriptions_admin_unsubscription_spec.rb +4 -5
  326. data/spec/models/get_extended_contact_details_statistics_unsubscriptions_spec.rb +4 -5
  327. data/spec/models/get_extended_contact_details_statistics_unsubscriptions_user_unsubscription_spec.rb +5 -6
  328. data/spec/models/get_extended_list_campaign_stats_spec.rb +4 -5
  329. data/spec/models/get_extended_list_spec.rb +10 -11
  330. data/spec/models/get_folder_lists_spec.rb +4 -5
  331. data/spec/models/get_folder_spec.rb +7 -8
  332. data/spec/models/get_folders_spec.rb +4 -5
  333. data/spec/models/get_ip_from_sender_spec.rb +6 -7
  334. data/spec/models/get_ip_spec.rb +6 -7
  335. data/spec/models/get_ips_from_sender_spec.rb +3 -4
  336. data/spec/models/get_ips_spec.rb +3 -4
  337. data/spec/models/get_list_spec.rb +6 -7
  338. data/spec/models/get_lists_spec.rb +4 -5
  339. data/spec/models/get_process_spec.rb +10 -11
  340. data/spec/models/get_processes_spec.rb +4 -5
  341. data/spec/models/get_reports_reports_spec.rb +15 -16
  342. data/spec/models/get_reports_spec.rb +3 -4
  343. data/spec/models/get_senders_list_ips_spec.rb +5 -6
  344. data/spec/models/get_senders_list_senders_spec.rb +7 -8
  345. data/spec/models/get_senders_list_spec.rb +3 -4
  346. data/spec/models/get_shared_template_url_spec.rb +41 -0
  347. data/spec/models/get_sms_campaign_overview_spec.rb +14 -15
  348. data/spec/models/get_sms_campaign_spec.rb +16 -17
  349. data/spec/models/get_sms_campaign_stats_spec.rb +9 -10
  350. data/spec/models/get_sms_campaigns_spec.rb +4 -5
  351. data/spec/models/get_sms_event_report_events_spec.rb +13 -14
  352. data/spec/models/get_sms_event_report_spec.rb +3 -4
  353. data/spec/models/get_smtp_template_overview_sender_spec.rb +10 -5
  354. data/spec/models/get_smtp_template_overview_spec.rb +14 -15
  355. data/spec/models/get_smtp_templates_spec.rb +4 -5
  356. data/spec/models/get_sso_token_spec.rb +3 -4
  357. data/spec/models/get_stats_by_browser_spec.rb +35 -0
  358. data/spec/models/get_stats_by_device_spec.rb +59 -0
  359. data/spec/models/get_stats_by_domain_spec.rb +2 -3
  360. data/spec/models/get_transac_aggregated_sms_report_spec.rb +12 -13
  361. data/spec/models/get_transac_blocked_contacts_contacts_spec.rb +59 -0
  362. data/spec/models/get_transac_blocked_contacts_reason_spec.rb +51 -0
  363. data/spec/models/get_transac_blocked_contacts_spec.rb +47 -0
  364. data/spec/models/get_transac_email_content_events_spec.rb +4 -5
  365. data/spec/models/get_transac_email_content_spec.rb +9 -10
  366. data/spec/models/get_transac_emails_list_spec.rb +3 -4
  367. data/spec/models/get_transac_emails_list_transactional_emails_spec.rb +8 -9
  368. data/spec/models/get_transac_sms_report_reports_spec.rb +12 -13
  369. data/spec/models/get_transac_sms_report_spec.rb +3 -4
  370. data/spec/models/get_webhook_spec.rb +13 -14
  371. data/spec/models/get_webhooks_spec.rb +3 -4
  372. data/spec/models/manage_ip_spec.rb +3 -4
  373. data/spec/models/post_contact_info_contacts_spec.rb +5 -6
  374. data/spec/models/post_contact_info_spec.rb +3 -4
  375. data/spec/models/post_send_failed_spec.rb +7 -8
  376. data/spec/models/post_send_sms_test_failed_spec.rb +6 -7
  377. data/spec/models/remaining_credit_model_child_spec.rb +4 -5
  378. data/spec/models/remaining_credit_model_reseller_spec.rb +4 -5
  379. data/spec/models/remaining_credit_model_spec.rb +4 -5
  380. data/spec/models/remove_contact_from_list_spec.rb +4 -5
  381. data/spec/models/remove_credits_spec.rb +4 -5
  382. data/spec/models/request_contact_export_custom_contact_filter_spec.rb +83 -0
  383. data/spec/models/request_contact_export_spec.rb +11 -6
  384. data/spec/models/request_contact_import_new_list_spec.rb +4 -5
  385. data/spec/models/request_contact_import_spec.rb +11 -12
  386. data/spec/models/request_sms_recipient_export_spec.rb +8 -9
  387. data/spec/models/send_email_attachment_spec.rb +4 -5
  388. data/spec/models/send_email_spec.rb +11 -12
  389. data/spec/models/send_report_email_spec.rb +12 -13
  390. data/spec/models/send_report_spec.rb +8 -9
  391. data/spec/models/send_sms_spec.rb +7 -8
  392. data/spec/models/send_smtp_email_attachment_spec.rb +5 -6
  393. data/spec/models/send_smtp_email_bcc_spec.rb +4 -5
  394. data/spec/models/send_smtp_email_cc_spec.rb +4 -5
  395. data/spec/models/send_smtp_email_reply_to_spec.rb +4 -5
  396. data/spec/models/send_smtp_email_sender_spec.rb +4 -5
  397. data/spec/models/send_smtp_email_spec.rb +15 -16
  398. data/spec/models/send_smtp_email_to_spec.rb +4 -5
  399. data/spec/models/send_template_email_spec.rb +3 -4
  400. data/spec/models/send_test_email_spec.rb +3 -4
  401. data/spec/models/send_test_sms_spec.rb +3 -4
  402. data/spec/models/send_transac_sms_spec.rb +12 -13
  403. data/spec/models/update_attribute_enumeration_spec.rb +4 -5
  404. data/spec/models/update_attribute_spec.rb +4 -5
  405. data/spec/models/update_campaign_status_spec.rb +7 -8
  406. data/spec/models/update_child_account_status_spec.rb +5 -6
  407. data/spec/models/update_child_domain_spec.rb +3 -4
  408. data/spec/models/update_child_spec.rb +7 -8
  409. data/spec/models/update_contact_spec.rb +8 -9
  410. data/spec/models/update_email_campaign_recipients_spec.rb +4 -5
  411. data/spec/models/update_email_campaign_sender_spec.rb +10 -5
  412. data/spec/models/update_email_campaign_spec.rb +49 -32
  413. data/spec/models/update_list_spec.rb +4 -5
  414. data/spec/models/update_sender_spec.rb +5 -6
  415. data/spec/models/update_sms_campaign_spec.rb +7 -8
  416. data/spec/models/update_smtp_template_sender_spec.rb +10 -5
  417. data/spec/models/update_smtp_template_spec.rb +12 -13
  418. data/spec/models/update_webhook_spec.rb +9 -10
  419. data/spec/spec_helper.rb +2 -2
  420. metadata +42 -2
@@ -0,0 +1,233 @@
1
+ =begin
2
+ #SendinBlue API
3
+
4
+ #SendinBlue provide a RESTFul API that can be used with any languages. With this API, you will be able to : - Manage your campaigns and get the statistics - Manage your contacts - Send transactional Emails and SMS - and much more... You can download our wrappers at https://github.com/orgs/sendinblue **Possible responses** | Code | Message | | :-------------: | ------------- | | 200 | OK. Successful Request | | 201 | OK. Successful Creation | | 202 | OK. Request accepted | | 204 | OK. Successful Update/Deletion | | 400 | Error. Bad Request | | 401 | Error. Authentication Needed | | 402 | Error. Not enough credit, plan upgrade needed | | 403 | Error. Permission denied | | 404 | Error. Object does not exist | | 405 | Error. Method not allowed | | 406 | Error. Not Acceptable |
5
+
6
+ OpenAPI spec version: 3.0.0
7
+ Contact: contact@sendinblue.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.12
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module SibApiV3Sdk
16
+ class GetTransacBlockedContactsContacts
17
+ # Email address of the blocked or unsubscribed contact
18
+ attr_accessor :email
19
+
20
+ # Sender email address of the blocked or unsubscribed contact
21
+ attr_accessor :sender_email
22
+
23
+ attr_accessor :reason
24
+
25
+ # Date when the contact was blocked or unsubscribed on
26
+ attr_accessor :blocked_at
27
+
28
+ # Attribute mapping from ruby-style variable name to JSON key.
29
+ def self.attribute_map
30
+ {
31
+ :'email' => :'email',
32
+ :'sender_email' => :'senderEmail',
33
+ :'reason' => :'reason',
34
+ :'blocked_at' => :'blockedAt'
35
+ }
36
+ end
37
+
38
+ # Attribute type mapping.
39
+ def self.swagger_types
40
+ {
41
+ :'email' => :'String',
42
+ :'sender_email' => :'String',
43
+ :'reason' => :'GetTransacBlockedContactsReason',
44
+ :'blocked_at' => :'Date'
45
+ }
46
+ end
47
+
48
+ # Initializes the object
49
+ # @param [Hash] attributes Model attributes in the form of hash
50
+ def initialize(attributes = {})
51
+ return unless attributes.is_a?(Hash)
52
+
53
+ # convert string to symbol for hash key
54
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
55
+
56
+ if attributes.has_key?(:'email')
57
+ self.email = attributes[:'email']
58
+ end
59
+
60
+ if attributes.has_key?(:'senderEmail')
61
+ self.sender_email = attributes[:'senderEmail']
62
+ end
63
+
64
+ if attributes.has_key?(:'reason')
65
+ self.reason = attributes[:'reason']
66
+ end
67
+
68
+ if attributes.has_key?(:'blockedAt')
69
+ self.blocked_at = attributes[:'blockedAt']
70
+ end
71
+ end
72
+
73
+ # Show invalid properties with the reasons. Usually used together with valid?
74
+ # @return Array for valid properties with the reasons
75
+ def list_invalid_properties
76
+ invalid_properties = Array.new
77
+ if @email.nil?
78
+ invalid_properties.push('invalid value for "email", email cannot be nil.')
79
+ end
80
+
81
+ if @sender_email.nil?
82
+ invalid_properties.push('invalid value for "sender_email", sender_email cannot be nil.')
83
+ end
84
+
85
+ if @reason.nil?
86
+ invalid_properties.push('invalid value for "reason", reason cannot be nil.')
87
+ end
88
+
89
+ if @blocked_at.nil?
90
+ invalid_properties.push('invalid value for "blocked_at", blocked_at cannot be nil.')
91
+ end
92
+
93
+ invalid_properties
94
+ end
95
+
96
+ # Check to see if the all the properties in the model are valid
97
+ # @return true if the model is valid
98
+ def valid?
99
+ return false if @email.nil?
100
+ return false if @sender_email.nil?
101
+ return false if @reason.nil?
102
+ return false if @blocked_at.nil?
103
+ true
104
+ end
105
+
106
+ # Checks equality by comparing each attribute.
107
+ # @param [Object] Object to be compared
108
+ def ==(o)
109
+ return true if self.equal?(o)
110
+ self.class == o.class &&
111
+ email == o.email &&
112
+ sender_email == o.sender_email &&
113
+ reason == o.reason &&
114
+ blocked_at == o.blocked_at
115
+ end
116
+
117
+ # @see the `==` method
118
+ # @param [Object] Object to be compared
119
+ def eql?(o)
120
+ self == o
121
+ end
122
+
123
+ # Calculates hash code according to all attributes.
124
+ # @return [Fixnum] Hash code
125
+ def hash
126
+ [email, sender_email, reason, blocked_at].hash
127
+ end
128
+
129
+ # Builds the object from hash
130
+ # @param [Hash] attributes Model attributes in the form of hash
131
+ # @return [Object] Returns the model itself
132
+ def build_from_hash(attributes)
133
+ return nil unless attributes.is_a?(Hash)
134
+ self.class.swagger_types.each_pair do |key, type|
135
+ if type =~ /\AArray<(.*)>/i
136
+ # check to ensure the input is an array given that the the attribute
137
+ # is documented as an array but the input is not
138
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
139
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
140
+ end
141
+ elsif !attributes[self.class.attribute_map[key]].nil?
142
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
143
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
144
+ end
145
+
146
+ self
147
+ end
148
+
149
+ # Deserializes the data based on type
150
+ # @param string type Data type
151
+ # @param string value Value to be deserialized
152
+ # @return [Object] Deserialized data
153
+ def _deserialize(type, value)
154
+ case type.to_sym
155
+ when :DateTime
156
+ DateTime.parse(value)
157
+ when :Date
158
+ Date.parse(value)
159
+ when :String
160
+ value.to_s
161
+ when :Integer
162
+ value.to_i
163
+ when :Float
164
+ value.to_f
165
+ when :BOOLEAN
166
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
167
+ true
168
+ else
169
+ false
170
+ end
171
+ when :Object
172
+ # generic object (usually a Hash), return directly
173
+ value
174
+ when /\AArray<(?<inner_type>.+)>\z/
175
+ inner_type = Regexp.last_match[:inner_type]
176
+ value.map { |v| _deserialize(inner_type, v) }
177
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
178
+ k_type = Regexp.last_match[:k_type]
179
+ v_type = Regexp.last_match[:v_type]
180
+ {}.tap do |hash|
181
+ value.each do |k, v|
182
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
183
+ end
184
+ end
185
+ else # model
186
+ temp_model = SibApiV3Sdk.const_get(type).new
187
+ temp_model.build_from_hash(value)
188
+ end
189
+ end
190
+
191
+ # Returns the string representation of the object
192
+ # @return [String] String presentation of the object
193
+ def to_s
194
+ to_hash.to_s
195
+ end
196
+
197
+ # to_body is an alias to to_hash (backward compatibility)
198
+ # @return [Hash] Returns the object in the form of hash
199
+ def to_body
200
+ to_hash
201
+ end
202
+
203
+ # Returns the object in the form of hash
204
+ # @return [Hash] Returns the object in the form of hash
205
+ def to_hash
206
+ hash = {}
207
+ self.class.attribute_map.each_pair do |attr, param|
208
+ value = self.send(attr)
209
+ next if value.nil?
210
+ hash[param] = _to_hash(value)
211
+ end
212
+ hash
213
+ end
214
+
215
+ # Outputs non-array value in the form of hash
216
+ # For object, use to_hash. Otherwise, just return the value
217
+ # @param [Object] value Any valid value
218
+ # @return [Hash] Returns the value in the form of hash
219
+ def _to_hash(value)
220
+ if value.is_a?(Array)
221
+ value.compact.map { |v| _to_hash(v) }
222
+ elsif value.is_a?(Hash)
223
+ {}.tap do |hash|
224
+ value.each { |k, v| hash[k] = _to_hash(v) }
225
+ end
226
+ elsif value.respond_to? :to_hash
227
+ value.to_hash
228
+ else
229
+ value
230
+ end
231
+ end
232
+ end
233
+ end
@@ -0,0 +1,229 @@
1
+ =begin
2
+ #SendinBlue API
3
+
4
+ #SendinBlue provide a RESTFul API that can be used with any languages. With this API, you will be able to : - Manage your campaigns and get the statistics - Manage your contacts - Send transactional Emails and SMS - and much more... You can download our wrappers at https://github.com/orgs/sendinblue **Possible responses** | Code | Message | | :-------------: | ------------- | | 200 | OK. Successful Request | | 201 | OK. Successful Creation | | 202 | OK. Request accepted | | 204 | OK. Successful Update/Deletion | | 400 | Error. Bad Request | | 401 | Error. Authentication Needed | | 402 | Error. Not enough credit, plan upgrade needed | | 403 | Error. Permission denied | | 404 | Error. Object does not exist | | 405 | Error. Method not allowed | | 406 | Error. Not Acceptable |
5
+
6
+ OpenAPI spec version: 3.0.0
7
+ Contact: contact@sendinblue.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.12
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module SibApiV3Sdk
16
+ # Reason for blocking / unsubscribing
17
+ class GetTransacBlockedContactsReason
18
+ # Reason code for blocking / unsubscribing (This code is safe for comparison)
19
+ attr_accessor :code
20
+
21
+ # Reason for blocking / unsubscribing (This string is not safe for comparison)
22
+ attr_accessor :message
23
+
24
+ class EnumAttributeValidator
25
+ attr_reader :datatype
26
+ attr_reader :allowable_values
27
+
28
+ def initialize(datatype, allowable_values)
29
+ @allowable_values = allowable_values.map do |value|
30
+ case datatype.to_s
31
+ when /Integer/i
32
+ value.to_i
33
+ when /Float/i
34
+ value.to_f
35
+ else
36
+ value
37
+ end
38
+ end
39
+ end
40
+
41
+ def valid?(value)
42
+ !value || allowable_values.include?(value)
43
+ end
44
+ end
45
+
46
+ # Attribute mapping from ruby-style variable name to JSON key.
47
+ def self.attribute_map
48
+ {
49
+ :'code' => :'code',
50
+ :'message' => :'message'
51
+ }
52
+ end
53
+
54
+ # Attribute type mapping.
55
+ def self.swagger_types
56
+ {
57
+ :'code' => :'String',
58
+ :'message' => :'String'
59
+ }
60
+ end
61
+
62
+ # Initializes the object
63
+ # @param [Hash] attributes Model attributes in the form of hash
64
+ def initialize(attributes = {})
65
+ return unless attributes.is_a?(Hash)
66
+
67
+ # convert string to symbol for hash key
68
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
69
+
70
+ if attributes.has_key?(:'code')
71
+ self.code = attributes[:'code']
72
+ end
73
+
74
+ if attributes.has_key?(:'message')
75
+ self.message = attributes[:'message']
76
+ end
77
+ end
78
+
79
+ # Show invalid properties with the reasons. Usually used together with valid?
80
+ # @return Array for valid properties with the reasons
81
+ def list_invalid_properties
82
+ invalid_properties = Array.new
83
+ invalid_properties
84
+ end
85
+
86
+ # Check to see if the all the properties in the model are valid
87
+ # @return true if the model is valid
88
+ def valid?
89
+ code_validator = EnumAttributeValidator.new('String', ['unsubscribedViaMA', 'unsubscribedViaEmail', 'adminBlocked', 'unsubscribedViaApi', 'hardBounce', 'contactFlaggedAsSpam'])
90
+ return false unless code_validator.valid?(@code)
91
+ true
92
+ end
93
+
94
+ # Custom attribute writer method checking allowed values (enum).
95
+ # @param [Object] code Object to be assigned
96
+ def code=(code)
97
+ validator = EnumAttributeValidator.new('String', ['unsubscribedViaMA', 'unsubscribedViaEmail', 'adminBlocked', 'unsubscribedViaApi', 'hardBounce', 'contactFlaggedAsSpam'])
98
+ unless validator.valid?(code)
99
+ fail ArgumentError, 'invalid value for "code", must be one of #{validator.allowable_values}.'
100
+ end
101
+ @code = code
102
+ end
103
+
104
+ # Checks equality by comparing each attribute.
105
+ # @param [Object] Object to be compared
106
+ def ==(o)
107
+ return true if self.equal?(o)
108
+ self.class == o.class &&
109
+ code == o.code &&
110
+ message == o.message
111
+ end
112
+
113
+ # @see the `==` method
114
+ # @param [Object] Object to be compared
115
+ def eql?(o)
116
+ self == o
117
+ end
118
+
119
+ # Calculates hash code according to all attributes.
120
+ # @return [Fixnum] Hash code
121
+ def hash
122
+ [code, message].hash
123
+ end
124
+
125
+ # Builds the object from hash
126
+ # @param [Hash] attributes Model attributes in the form of hash
127
+ # @return [Object] Returns the model itself
128
+ def build_from_hash(attributes)
129
+ return nil unless attributes.is_a?(Hash)
130
+ self.class.swagger_types.each_pair do |key, type|
131
+ if type =~ /\AArray<(.*)>/i
132
+ # check to ensure the input is an array given that the the attribute
133
+ # is documented as an array but the input is not
134
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
135
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
136
+ end
137
+ elsif !attributes[self.class.attribute_map[key]].nil?
138
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
139
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
140
+ end
141
+
142
+ self
143
+ end
144
+
145
+ # Deserializes the data based on type
146
+ # @param string type Data type
147
+ # @param string value Value to be deserialized
148
+ # @return [Object] Deserialized data
149
+ def _deserialize(type, value)
150
+ case type.to_sym
151
+ when :DateTime
152
+ DateTime.parse(value)
153
+ when :Date
154
+ Date.parse(value)
155
+ when :String
156
+ value.to_s
157
+ when :Integer
158
+ value.to_i
159
+ when :Float
160
+ value.to_f
161
+ when :BOOLEAN
162
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
163
+ true
164
+ else
165
+ false
166
+ end
167
+ when :Object
168
+ # generic object (usually a Hash), return directly
169
+ value
170
+ when /\AArray<(?<inner_type>.+)>\z/
171
+ inner_type = Regexp.last_match[:inner_type]
172
+ value.map { |v| _deserialize(inner_type, v) }
173
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
174
+ k_type = Regexp.last_match[:k_type]
175
+ v_type = Regexp.last_match[:v_type]
176
+ {}.tap do |hash|
177
+ value.each do |k, v|
178
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
179
+ end
180
+ end
181
+ else # model
182
+ temp_model = SibApiV3Sdk.const_get(type).new
183
+ temp_model.build_from_hash(value)
184
+ end
185
+ end
186
+
187
+ # Returns the string representation of the object
188
+ # @return [String] String presentation of the object
189
+ def to_s
190
+ to_hash.to_s
191
+ end
192
+
193
+ # to_body is an alias to to_hash (backward compatibility)
194
+ # @return [Hash] Returns the object in the form of hash
195
+ def to_body
196
+ to_hash
197
+ end
198
+
199
+ # Returns the object in the form of hash
200
+ # @return [Hash] Returns the object in the form of hash
201
+ def to_hash
202
+ hash = {}
203
+ self.class.attribute_map.each_pair do |attr, param|
204
+ value = self.send(attr)
205
+ next if value.nil?
206
+ hash[param] = _to_hash(value)
207
+ end
208
+ hash
209
+ end
210
+
211
+ # Outputs non-array value in the form of hash
212
+ # For object, use to_hash. Otherwise, just return the value
213
+ # @param [Object] value Any valid value
214
+ # @return [Hash] Returns the value in the form of hash
215
+ def _to_hash(value)
216
+ if value.is_a?(Array)
217
+ value.compact.map { |v| _to_hash(v) }
218
+ elsif value.is_a?(Hash)
219
+ {}.tap do |hash|
220
+ value.each { |k, v| hash[k] = _to_hash(v) }
221
+ end
222
+ elsif value.respond_to? :to_hash
223
+ value.to_hash
224
+ else
225
+ value
226
+ end
227
+ end
228
+ end
229
+ end