mailslurp_client 15.19.22 → 15.20.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 (385) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +1 -1
  4. data/lib/mailslurp_client/api/alias_controller_api.rb +10 -10
  5. data/lib/mailslurp_client/api/attachment_controller_api.rb +22 -6
  6. data/lib/mailslurp_client/api/bounce_controller_api.rb +1 -1
  7. data/lib/mailslurp_client/api/bulk_actions_controller_api.rb +1 -1
  8. data/lib/mailslurp_client/api/common_actions_controller_api.rb +5 -5
  9. data/lib/mailslurp_client/api/connector_controller_api.rb +1250 -122
  10. data/lib/mailslurp_client/api/consent_controller_api.rb +269 -0
  11. data/lib/mailslurp_client/api/contact_controller_api.rb +1 -1
  12. data/lib/mailslurp_client/api/domain_controller_api.rb +1 -1
  13. data/lib/mailslurp_client/api/email_controller_api.rb +471 -12
  14. data/lib/mailslurp_client/api/email_verification_controller_api.rb +9 -1
  15. data/lib/mailslurp_client/api/expired_controller_api.rb +4 -1
  16. data/lib/mailslurp_client/api/export_controller_api.rb +1 -1
  17. data/lib/mailslurp_client/api/form_controller_api.rb +1 -1
  18. data/lib/mailslurp_client/api/group_controller_api.rb +1 -1
  19. data/lib/mailslurp_client/api/guest_portal_controller_api.rb +569 -0
  20. data/lib/mailslurp_client/api/imap_controller_api.rb +1 -1
  21. data/lib/mailslurp_client/api/inbox_controller_api.rb +886 -126
  22. data/lib/mailslurp_client/api/inbox_forwarder_controller_api.rb +13 -11
  23. data/lib/mailslurp_client/api/inbox_replier_controller_api.rb +82 -1
  24. data/lib/mailslurp_client/api/inbox_ruleset_controller_api.rb +1 -1
  25. data/lib/mailslurp_client/api/mail_server_controller_api.rb +1 -1
  26. data/lib/mailslurp_client/api/missed_email_controller_api.rb +1 -1
  27. data/lib/mailslurp_client/api/phone_controller_api.rb +675 -1
  28. data/lib/mailslurp_client/api/sent_emails_controller_api.rb +1 -1
  29. data/lib/mailslurp_client/api/sms_controller_api.rb +494 -44
  30. data/lib/mailslurp_client/api/sse_controller_api.rb +81 -0
  31. data/lib/mailslurp_client/api/template_controller_api.rb +1 -1
  32. data/lib/mailslurp_client/api/tools_controller_api.rb +192 -1
  33. data/lib/mailslurp_client/api/tracking_controller_api.rb +1 -1
  34. data/lib/mailslurp_client/api/user_controller_api.rb +1 -1
  35. data/lib/mailslurp_client/api/wait_for_controller_api.rb +1 -1
  36. data/lib/mailslurp_client/api/webhook_controller_api.rb +274 -12
  37. data/lib/mailslurp_client/api_client.rb +1 -1
  38. data/lib/mailslurp_client/api_error.rb +1 -1
  39. data/lib/mailslurp_client/configuration.rb +1 -1
  40. data/lib/mailslurp_client/models/abstract_webhook_payload.rb +3 -3
  41. data/lib/mailslurp_client/models/account_bounce_block_dto.rb +16 -2
  42. data/lib/mailslurp_client/models/alias_dto.rb +1 -1
  43. data/lib/mailslurp_client/models/alias_projection.rb +20 -20
  44. data/lib/mailslurp_client/models/{thread_projection.rb → alias_thread_projection.rb} +42 -42
  45. data/lib/mailslurp_client/models/{attachment_entity.rb → attachment_entity_dto.rb} +26 -14
  46. data/lib/mailslurp_client/models/attachment_meta_data.rb +1 -1
  47. data/lib/mailslurp_client/models/attachment_projection.rb +27 -2
  48. data/lib/mailslurp_client/models/basic_auth_options.rb +1 -1
  49. data/lib/mailslurp_client/models/bounce_projection.rb +12 -12
  50. data/lib/mailslurp_client/models/bounce_recipient_projection.rb +1 -1
  51. data/lib/mailslurp_client/models/bounced_email_dto.rb +1 -1
  52. data/lib/mailslurp_client/models/bounced_recipient_dto.rb +1 -1
  53. data/lib/mailslurp_client/models/bulk_send_email_options.rb +1 -1
  54. data/lib/mailslurp_client/models/can_send_email_results.rb +1 -1
  55. data/lib/mailslurp_client/models/check_email_body_feature_support_results.rb +1 -1
  56. data/lib/mailslurp_client/models/check_email_body_results.rb +1 -1
  57. data/lib/mailslurp_client/models/check_email_client_support_options.rb +1 -1
  58. data/lib/mailslurp_client/models/check_email_client_support_results.rb +1 -1
  59. data/lib/mailslurp_client/models/check_email_features_client_support_options.rb +1 -1
  60. data/lib/mailslurp_client/models/check_email_features_client_support_results.rb +1 -1
  61. data/lib/mailslurp_client/models/complaint.rb +1 -1
  62. data/lib/mailslurp_client/models/condition_option.rb +1 -1
  63. data/lib/mailslurp_client/models/connector_dto.rb +12 -98
  64. data/lib/mailslurp_client/models/connector_event_dto.rb +354 -0
  65. data/lib/mailslurp_client/models/{connector_sync_event_projection.rb → connector_event_projection.rb} +72 -37
  66. data/lib/mailslurp_client/models/connector_imap_connection_dto.rb +83 -2
  67. data/lib/mailslurp_client/models/{connector_sync_request_result_exception_cause.rb → connector_imap_connection_test_result.rb} +33 -19
  68. data/lib/mailslurp_client/models/connector_projection.rb +22 -83
  69. data/lib/mailslurp_client/models/connector_provider_settings_dto.rb +225 -0
  70. data/lib/mailslurp_client/models/connector_smtp_connection_dto.rb +96 -2
  71. data/lib/mailslurp_client/models/{connector_sync_request_result_exception.rb → connector_smtp_connection_test_result.rb} +29 -35
  72. data/lib/mailslurp_client/models/connector_sync_request_result.rb +2 -2
  73. data/lib/mailslurp_client/models/connector_sync_result.rb +20 -9
  74. data/lib/mailslurp_client/models/{connector_sync_event_dto.rb → connector_sync_settings_dto.rb} +50 -53
  75. data/lib/mailslurp_client/models/consent_status_dto.rb +211 -0
  76. data/lib/mailslurp_client/models/contact_dto.rb +1 -1
  77. data/lib/mailslurp_client/models/contact_projection.rb +1 -1
  78. data/lib/mailslurp_client/models/content_match_options.rb +1 -1
  79. data/lib/mailslurp_client/models/count_dto.rb +1 -1
  80. data/lib/mailslurp_client/models/create_alias_options.rb +1 -1
  81. data/lib/mailslurp_client/models/create_connector_imap_connection_options.rb +93 -7
  82. data/lib/mailslurp_client/models/create_connector_options.rb +2 -69
  83. data/lib/mailslurp_client/models/create_connector_smtp_connection_options.rb +94 -5
  84. data/lib/mailslurp_client/models/create_connector_sync_settings_options.rb +265 -0
  85. data/lib/mailslurp_client/models/create_connector_with_options.rb +239 -0
  86. data/lib/mailslurp_client/models/create_contact_options.rb +1 -1
  87. data/lib/mailslurp_client/models/create_domain_options.rb +1 -1
  88. data/lib/mailslurp_client/models/create_emergency_address_options.rb +1 -1
  89. data/lib/mailslurp_client/models/create_group_options.rb +1 -1
  90. data/lib/mailslurp_client/models/create_inbox_dto.rb +1 -1
  91. data/lib/mailslurp_client/models/create_inbox_forwarder_options.rb +1 -1
  92. data/lib/mailslurp_client/models/create_inbox_replier_options.rb +2 -6
  93. data/lib/mailslurp_client/models/create_inbox_ruleset_options.rb +1 -1
  94. data/lib/mailslurp_client/models/create_portal_options.rb +233 -0
  95. data/lib/mailslurp_client/models/create_portal_user_options.rb +251 -0
  96. data/lib/mailslurp_client/models/create_template_options.rb +1 -1
  97. data/lib/mailslurp_client/models/create_tracking_pixel_options.rb +1 -1
  98. data/lib/mailslurp_client/models/create_webhook_options.rb +21 -8
  99. data/lib/mailslurp_client/models/delivery_status_dto.rb +1 -1
  100. data/lib/mailslurp_client/models/describe_domain_options.rb +1 -1
  101. data/lib/mailslurp_client/models/describe_mail_server_domain_result.rb +1 -1
  102. data/lib/mailslurp_client/models/dns_lookup_options.rb +1 -1
  103. data/lib/mailslurp_client/models/dns_lookup_result.rb +1 -1
  104. data/lib/mailslurp_client/models/dns_lookup_results.rb +1 -1
  105. data/lib/mailslurp_client/models/dns_lookups_options.rb +1 -1
  106. data/lib/mailslurp_client/models/domain_dto.rb +1 -1
  107. data/lib/mailslurp_client/models/domain_group.rb +1 -1
  108. data/lib/mailslurp_client/models/domain_groups_dto.rb +1 -1
  109. data/lib/mailslurp_client/models/domain_information.rb +1 -1
  110. data/lib/mailslurp_client/models/domain_issues_dto.rb +1 -1
  111. data/lib/mailslurp_client/models/domain_name_record.rb +1 -1
  112. data/lib/mailslurp_client/models/domain_preview.rb +1 -1
  113. data/lib/mailslurp_client/models/download_attachment_dto.rb +1 -1
  114. data/lib/mailslurp_client/models/email.rb +57 -2
  115. data/lib/mailslurp_client/models/email_analysis.rb +1 -1
  116. data/lib/mailslurp_client/models/email_available_result.rb +1 -1
  117. data/lib/mailslurp_client/models/email_content_match_result.rb +1 -1
  118. data/lib/mailslurp_client/models/email_content_part_result.rb +1 -1
  119. data/lib/mailslurp_client/models/email_feature_category_name.rb +1 -1
  120. data/lib/mailslurp_client/models/email_feature_family_name.rb +1 -1
  121. data/lib/mailslurp_client/models/email_feature_family_statistics.rb +1 -1
  122. data/lib/mailslurp_client/models/email_feature_names.rb +1 -1
  123. data/lib/mailslurp_client/models/email_feature_overview.rb +1 -1
  124. data/lib/mailslurp_client/models/email_feature_platform_name.rb +1 -1
  125. data/lib/mailslurp_client/models/email_feature_platform_statistics.rb +1 -1
  126. data/lib/mailslurp_client/models/email_feature_support_flags.rb +1 -1
  127. data/lib/mailslurp_client/models/email_feature_support_result.rb +1 -1
  128. data/lib/mailslurp_client/models/email_feature_support_status_percentage.rb +1 -1
  129. data/lib/mailslurp_client/models/email_feature_version_statistics.rb +1 -1
  130. data/lib/mailslurp_client/models/email_html_dto.rb +1 -1
  131. data/lib/mailslurp_client/models/email_links_result.rb +1 -1
  132. data/lib/mailslurp_client/models/email_preview.rb +102 -6
  133. data/lib/mailslurp_client/models/email_preview_urls.rb +1 -1
  134. data/lib/mailslurp_client/models/email_projection.rb +123 -41
  135. data/lib/mailslurp_client/models/email_recipients.rb +1 -1
  136. data/lib/mailslurp_client/models/email_recipients_projection.rb +231 -0
  137. data/lib/mailslurp_client/models/email_screenshot_result.rb +1 -1
  138. data/lib/mailslurp_client/models/email_text_lines_result.rb +1 -1
  139. data/lib/mailslurp_client/models/email_thread_dto.rb +348 -0
  140. data/lib/mailslurp_client/models/email_thread_item.rb +429 -0
  141. data/lib/mailslurp_client/models/email_thread_items_dto.rb +213 -0
  142. data/lib/mailslurp_client/models/email_thread_projection.rb +441 -0
  143. data/lib/mailslurp_client/models/email_validation_request_dto.rb +1 -1
  144. data/lib/mailslurp_client/models/email_verification_result.rb +1 -1
  145. data/lib/mailslurp_client/models/emergency_address.rb +6 -1
  146. data/lib/mailslurp_client/models/emergency_address_dto.rb +1 -1
  147. data/lib/mailslurp_client/models/empty_response_dto.rb +1 -1
  148. data/lib/mailslurp_client/models/expiration_defaults.rb +1 -1
  149. data/lib/mailslurp_client/models/expired_inbox_dto.rb +1 -1
  150. data/lib/mailslurp_client/models/expired_inbox_record_projection.rb +16 -16
  151. data/lib/mailslurp_client/models/export_link.rb +1 -1
  152. data/lib/mailslurp_client/models/export_options.rb +1 -1
  153. data/lib/mailslurp_client/models/fake_email_dto.rb +49 -5
  154. data/lib/mailslurp_client/models/fake_email_preview.rb +16 -2
  155. data/lib/mailslurp_client/models/fake_email_result.rb +1 -1
  156. data/lib/mailslurp_client/models/filter_bounced_recipients_options.rb +1 -1
  157. data/lib/mailslurp_client/models/filter_bounced_recipients_result.rb +1 -1
  158. data/lib/mailslurp_client/models/flush_expired_inboxes_result.rb +1 -1
  159. data/lib/mailslurp_client/models/forward_email_options.rb +1 -1
  160. data/lib/mailslurp_client/models/generate_bimi_record_options.rb +1 -1
  161. data/lib/mailslurp_client/models/generate_bimi_record_results.rb +1 -1
  162. data/lib/mailslurp_client/models/generate_dmarc_record_options.rb +1 -1
  163. data/lib/mailslurp_client/models/generate_dmarc_record_results.rb +1 -1
  164. data/lib/mailslurp_client/models/generate_mta_sts_record_options.rb +1 -1
  165. data/lib/mailslurp_client/models/generate_mta_sts_record_results.rb +1 -1
  166. data/lib/mailslurp_client/models/generate_tls_reporting_record_options.rb +1 -1
  167. data/lib/mailslurp_client/models/generate_tls_reporting_record_results.rb +1 -1
  168. data/lib/mailslurp_client/models/get_email_screenshot_options.rb +1 -1
  169. data/lib/mailslurp_client/models/gravatar_url.rb +1 -1
  170. data/lib/mailslurp_client/models/group_contacts_dto.rb +1 -1
  171. data/lib/mailslurp_client/models/group_dto.rb +1 -1
  172. data/lib/mailslurp_client/models/group_projection.rb +1 -1
  173. data/lib/mailslurp_client/models/guest_portal_dto.rb +303 -0
  174. data/lib/mailslurp_client/models/guest_portal_user_create_dto.rb +225 -0
  175. data/lib/mailslurp_client/models/guest_portal_user_dto.rb +322 -0
  176. data/lib/mailslurp_client/models/guest_portal_user_projection.rb +309 -0
  177. data/lib/mailslurp_client/models/html_validation_result.rb +1 -1
  178. data/lib/mailslurp_client/models/image_issue.rb +1 -1
  179. data/lib/mailslurp_client/models/imap_access_details.rb +1 -1
  180. data/lib/mailslurp_client/models/imap_email_projection.rb +1 -1
  181. data/lib/mailslurp_client/models/imap_flag_operation_options.rb +1 -1
  182. data/lib/mailslurp_client/models/imap_mailbox_status.rb +1 -1
  183. data/lib/mailslurp_client/models/imap_server_fetch_item.rb +1 -1
  184. data/lib/mailslurp_client/models/imap_server_fetch_result.rb +1 -1
  185. data/lib/mailslurp_client/models/imap_server_get_result.rb +1 -1
  186. data/lib/mailslurp_client/models/imap_server_list_options.rb +1 -1
  187. data/lib/mailslurp_client/models/imap_server_list_result.rb +1 -1
  188. data/lib/mailslurp_client/models/imap_server_mailbox_result.rb +1 -1
  189. data/lib/mailslurp_client/models/imap_server_search_options.rb +1 -1
  190. data/lib/mailslurp_client/models/imap_server_search_result.rb +1 -1
  191. data/lib/mailslurp_client/models/imap_server_status_options.rb +1 -1
  192. data/lib/mailslurp_client/models/imap_server_status_result.rb +1 -1
  193. data/lib/mailslurp_client/models/imap_smtp_access_details.rb +17 -2
  194. data/lib/mailslurp_client/models/imap_smtp_access_servers.rb +1 -1
  195. data/lib/mailslurp_client/models/imap_update_flags_options.rb +1 -1
  196. data/lib/mailslurp_client/models/inbox_by_email_address_result.rb +1 -1
  197. data/lib/mailslurp_client/models/inbox_by_name_result.rb +1 -1
  198. data/lib/mailslurp_client/models/inbox_dto.rb +54 -9
  199. data/lib/mailslurp_client/models/inbox_exists_dto.rb +1 -1
  200. data/lib/mailslurp_client/models/inbox_forwarder_dto.rb +2 -6
  201. data/lib/mailslurp_client/models/inbox_forwarder_event_dto.rb +12 -2
  202. data/lib/mailslurp_client/models/inbox_forwarder_event_projection.rb +19 -9
  203. data/lib/mailslurp_client/models/inbox_forwarder_test_options.rb +1 -1
  204. data/lib/mailslurp_client/models/inbox_forwarder_test_result.rb +1 -1
  205. data/lib/mailslurp_client/models/inbox_id_item.rb +1 -1
  206. data/lib/mailslurp_client/models/inbox_ids_result.rb +1 -1
  207. data/lib/mailslurp_client/models/inbox_preview.rb +54 -9
  208. data/lib/mailslurp_client/models/inbox_replier_dto.rb +2 -6
  209. data/lib/mailslurp_client/models/inbox_replier_event_projection.rb +22 -22
  210. data/lib/mailslurp_client/models/inbox_ruleset_dto.rb +1 -1
  211. data/lib/mailslurp_client/models/inbox_ruleset_test_options.rb +1 -1
  212. data/lib/mailslurp_client/models/inbox_ruleset_test_result.rb +1 -1
  213. data/lib/mailslurp_client/models/inline_object.rb +2 -12
  214. data/lib/mailslurp_client/models/ip_address_result.rb +1 -1
  215. data/lib/mailslurp_client/models/json_schema_dto.rb +1 -1
  216. data/lib/mailslurp_client/models/link_issue.rb +1 -1
  217. data/lib/mailslurp_client/models/list_unsubscribe_recipient_projection.rb +1 -1
  218. data/lib/mailslurp_client/models/lookup_bimi_domain_options.rb +1 -1
  219. data/lib/mailslurp_client/models/lookup_bimi_domain_results.rb +1 -1
  220. data/lib/mailslurp_client/models/lookup_dmarc_domain_options.rb +1 -1
  221. data/lib/mailslurp_client/models/lookup_dmarc_domain_results.rb +1 -1
  222. data/lib/mailslurp_client/models/lookup_mta_sts_domain_options.rb +1 -1
  223. data/lib/mailslurp_client/models/lookup_mta_sts_domain_results.rb +1 -1
  224. data/lib/mailslurp_client/models/lookup_tls_reporting_domain_options.rb +1 -1
  225. data/lib/mailslurp_client/models/lookup_tls_reporting_domain_results.rb +1 -1
  226. data/lib/mailslurp_client/models/match_option.rb +1 -1
  227. data/lib/mailslurp_client/models/match_options.rb +1 -1
  228. data/lib/mailslurp_client/models/missed_email_dto.rb +1 -1
  229. data/lib/mailslurp_client/models/missed_email_projection.rb +12 -12
  230. data/lib/mailslurp_client/models/name_server_record.rb +1 -1
  231. data/lib/mailslurp_client/models/new_fake_email_address_result.rb +1 -1
  232. data/lib/mailslurp_client/models/opt_in_consent_options.rb +229 -0
  233. data/lib/mailslurp_client/models/opt_in_consent_send_result.rb +211 -0
  234. data/lib/mailslurp_client/models/{connector_sync_request_result_exception_cause_stack_trace.rb → opt_in_identity_projection.rb} +54 -61
  235. data/lib/mailslurp_client/models/opt_in_sending_consent_dto.rb +239 -0
  236. data/lib/mailslurp_client/models/optional_connector_dto.rb +220 -0
  237. data/lib/mailslurp_client/models/optional_connector_imap_connection_dto.rb +220 -0
  238. data/lib/mailslurp_client/models/optional_connector_smtp_connection_dto.rb +220 -0
  239. data/lib/mailslurp_client/models/optional_connector_sync_settings_dto.rb +220 -0
  240. data/lib/mailslurp_client/models/organization_inbox_projection.rb +68 -8
  241. data/lib/mailslurp_client/models/page_alias.rb +16 -16
  242. data/lib/mailslurp_client/models/{page_connector_sync_events.rb → page_alias_thread_projection.rb} +21 -21
  243. data/lib/mailslurp_client/models/page_attachment_entity.rb +16 -16
  244. data/lib/mailslurp_client/models/page_bounced_email.rb +16 -16
  245. data/lib/mailslurp_client/models/page_bounced_recipients.rb +16 -16
  246. data/lib/mailslurp_client/models/page_complaint.rb +16 -16
  247. data/lib/mailslurp_client/models/page_connector.rb +16 -16
  248. data/lib/mailslurp_client/models/page_connector_events.rb +309 -0
  249. data/lib/mailslurp_client/models/page_contact_projection.rb +16 -16
  250. data/lib/mailslurp_client/models/page_delivery_status.rb +16 -16
  251. data/lib/mailslurp_client/models/page_email_preview.rb +16 -16
  252. data/lib/mailslurp_client/models/page_email_projection.rb +16 -16
  253. data/lib/mailslurp_client/models/page_email_thread_projection.rb +309 -0
  254. data/lib/mailslurp_client/models/page_email_validation_request.rb +16 -16
  255. data/lib/mailslurp_client/models/page_expired_inbox_record_projection.rb +16 -16
  256. data/lib/mailslurp_client/models/page_group_projection.rb +16 -16
  257. data/lib/mailslurp_client/models/{page_thread_projection.rb → page_guest_portal_users.rb} +21 -21
  258. data/lib/mailslurp_client/models/page_inbox_forwarder_dto.rb +16 -16
  259. data/lib/mailslurp_client/models/page_inbox_forwarder_events.rb +16 -16
  260. data/lib/mailslurp_client/models/page_inbox_projection.rb +16 -16
  261. data/lib/mailslurp_client/models/page_inbox_replier_dto.rb +16 -16
  262. data/lib/mailslurp_client/models/page_inbox_replier_events.rb +16 -16
  263. data/lib/mailslurp_client/models/page_inbox_ruleset_dto.rb +16 -16
  264. data/lib/mailslurp_client/models/page_inbox_tags.rb +309 -0
  265. data/lib/mailslurp_client/models/page_list_unsubscribe_recipients.rb +16 -16
  266. data/lib/mailslurp_client/models/page_missed_email_projection.rb +16 -16
  267. data/lib/mailslurp_client/models/page_opt_in_identity_projection.rb +309 -0
  268. data/lib/mailslurp_client/models/page_organization_inbox_projection.rb +16 -16
  269. data/lib/mailslurp_client/models/page_phone_number_projection.rb +16 -16
  270. data/lib/mailslurp_client/models/page_plus_address_projection.rb +309 -0
  271. data/lib/mailslurp_client/models/page_scheduled_jobs.rb +16 -16
  272. data/lib/mailslurp_client/models/page_sent_email_projection.rb +16 -16
  273. data/lib/mailslurp_client/models/page_sent_email_with_queue_projection.rb +16 -16
  274. data/lib/mailslurp_client/models/page_sent_sms_projection.rb +309 -0
  275. data/lib/mailslurp_client/models/page_sms_projection.rb +16 -16
  276. data/lib/mailslurp_client/models/page_template_projection.rb +16 -16
  277. data/lib/mailslurp_client/models/page_tracking_pixel_projection.rb +16 -16
  278. data/lib/mailslurp_client/models/page_unknown_missed_email_projection.rb +16 -16
  279. data/lib/mailslurp_client/models/page_webhook_endpoint_projection.rb +309 -0
  280. data/lib/mailslurp_client/models/page_webhook_projection.rb +16 -16
  281. data/lib/mailslurp_client/models/page_webhook_result.rb +16 -16
  282. data/lib/mailslurp_client/models/pageable_object.rb +20 -20
  283. data/lib/mailslurp_client/models/phone_number_dto.rb +37 -5
  284. data/lib/mailslurp_client/models/phone_number_projection.rb +11 -2
  285. data/lib/mailslurp_client/models/phone_number_validation_dto.rb +254 -0
  286. data/lib/mailslurp_client/models/phone_plan_availability.rb +213 -0
  287. data/lib/mailslurp_client/models/phone_plan_availability_item.rb +271 -0
  288. data/lib/mailslurp_client/models/phone_plan_dto.rb +1 -1
  289. data/lib/mailslurp_client/models/plus_address_dto.rb +295 -0
  290. data/lib/mailslurp_client/models/plus_address_projection.rb +295 -0
  291. data/lib/mailslurp_client/models/provider_settings.rb +347 -0
  292. data/lib/mailslurp_client/models/raw_email_json.rb +1 -1
  293. data/lib/mailslurp_client/models/recipient.rb +1 -1
  294. data/lib/mailslurp_client/models/recipient_projection.rb +234 -0
  295. data/lib/mailslurp_client/models/reply_for_sms.rb +1 -1
  296. data/lib/mailslurp_client/models/reply_to_alias_email_options.rb +1 -1
  297. data/lib/mailslurp_client/models/reply_to_email_options.rb +1 -1
  298. data/lib/mailslurp_client/models/scheduled_job.rb +1 -1
  299. data/lib/mailslurp_client/models/scheduled_job_dto.rb +1 -1
  300. data/lib/mailslurp_client/models/search_emails_options.rb +1 -1
  301. data/lib/mailslurp_client/models/search_inboxes_options.rb +3 -3
  302. data/lib/mailslurp_client/models/send_email_body_part.rb +1 -1
  303. data/lib/mailslurp_client/models/send_email_options.rb +13 -2
  304. data/lib/mailslurp_client/models/send_opt_in_consent_email_options.rb +234 -0
  305. data/lib/mailslurp_client/models/send_smtp_envelope_options.rb +1 -1
  306. data/lib/mailslurp_client/models/send_with_queue_result.rb +1 -1
  307. data/lib/mailslurp_client/models/sender.rb +1 -1
  308. data/lib/mailslurp_client/models/sender_projection.rb +235 -0
  309. data/lib/mailslurp_client/models/sent_email_dto.rb +92 -2
  310. data/lib/mailslurp_client/models/sent_email_projection.rb +110 -41
  311. data/lib/mailslurp_client/models/sent_sms_dto.rb +1 -11
  312. data/lib/mailslurp_client/models/sent_sms_projection.rb +305 -0
  313. data/lib/mailslurp_client/models/server_endpoints.rb +1 -1
  314. data/lib/mailslurp_client/models/set_inbox_favourited_options.rb +1 -1
  315. data/lib/mailslurp_client/models/set_phone_favourited_options.rb +213 -0
  316. data/lib/mailslurp_client/models/simple_send_email_options.rb +1 -1
  317. data/lib/mailslurp_client/models/sms_dto.rb +25 -2
  318. data/lib/mailslurp_client/models/sms_match_option.rb +1 -1
  319. data/lib/mailslurp_client/models/sms_preview.rb +1 -1
  320. data/lib/mailslurp_client/models/sms_projection.rb +1 -1
  321. data/lib/mailslurp_client/models/sms_reply_options.rb +1 -1
  322. data/lib/mailslurp_client/models/sms_send_options.rb +225 -0
  323. data/lib/mailslurp_client/models/smtp_access_details.rb +1 -1
  324. data/lib/mailslurp_client/models/sort_object.rb +1 -1
  325. data/lib/mailslurp_client/models/spelling_issue.rb +1 -1
  326. data/lib/mailslurp_client/models/template_dto.rb +1 -1
  327. data/lib/mailslurp_client/models/template_preview.rb +1 -1
  328. data/lib/mailslurp_client/models/template_projection.rb +1 -1
  329. data/lib/mailslurp_client/models/template_variable.rb +1 -1
  330. data/lib/mailslurp_client/models/test_inbox_ruleset_receiving_options.rb +1 -1
  331. data/lib/mailslurp_client/models/test_inbox_ruleset_receiving_result.rb +1 -1
  332. data/lib/mailslurp_client/models/test_inbox_ruleset_sending_options.rb +1 -1
  333. data/lib/mailslurp_client/models/test_inbox_ruleset_sending_result.rb +1 -1
  334. data/lib/mailslurp_client/models/test_new_inbox_forwarder_options.rb +1 -1
  335. data/lib/mailslurp_client/models/test_new_inbox_ruleset_options.rb +1 -1
  336. data/lib/mailslurp_client/models/test_phone_number_options.rb +1 -1
  337. data/lib/mailslurp_client/models/tracking_pixel_dto.rb +1 -1
  338. data/lib/mailslurp_client/models/tracking_pixel_projection.rb +11 -11
  339. data/lib/mailslurp_client/models/unknown_missed_email_projection.rb +11 -11
  340. data/lib/mailslurp_client/models/unread_count.rb +1 -1
  341. data/lib/mailslurp_client/models/unseen_error_count_dto.rb +1 -1
  342. data/lib/mailslurp_client/models/update_alias_options.rb +1 -1
  343. data/lib/mailslurp_client/models/update_domain_options.rb +1 -1
  344. data/lib/mailslurp_client/models/update_group_contacts.rb +1 -1
  345. data/lib/mailslurp_client/models/update_imap_access_options.rb +1 -1
  346. data/lib/mailslurp_client/models/update_inbox_options.rb +1 -1
  347. data/lib/mailslurp_client/models/update_inbox_replier_options.rb +1 -1
  348. data/lib/mailslurp_client/models/update_phone_number_options.rb +215 -0
  349. data/lib/mailslurp_client/models/update_smtp_access_options.rb +1 -1
  350. data/lib/mailslurp_client/models/upload_attachment_options.rb +1 -1
  351. data/lib/mailslurp_client/models/user_info_dto.rb +1 -1
  352. data/lib/mailslurp_client/models/validate_email_address_list_options.rb +1 -1
  353. data/lib/mailslurp_client/models/validate_email_address_list_result.rb +1 -1
  354. data/lib/mailslurp_client/models/validate_phone_number_options.rb +211 -0
  355. data/lib/mailslurp_client/models/validation_dto.rb +1 -1
  356. data/lib/mailslurp_client/models/validation_message.rb +1 -1
  357. data/lib/mailslurp_client/models/verify_email_address_options.rb +1 -1
  358. data/lib/mailslurp_client/models/verify_webhook_signature_options.rb +1 -1
  359. data/lib/mailslurp_client/models/verify_webhook_signature_results.rb +1 -1
  360. data/lib/mailslurp_client/models/wait_for_conditions.rb +1 -1
  361. data/lib/mailslurp_client/models/wait_for_single_sms_options.rb +1 -1
  362. data/lib/mailslurp_client/models/wait_for_sms_conditions.rb +1 -1
  363. data/lib/mailslurp_client/models/webhook_bounce_payload.rb +3 -3
  364. data/lib/mailslurp_client/models/webhook_bounce_recipient_payload.rb +3 -3
  365. data/lib/mailslurp_client/models/webhook_delivery_status_payload.rb +3 -3
  366. data/lib/mailslurp_client/models/webhook_dto.rb +31 -8
  367. data/lib/mailslurp_client/models/webhook_email_opened_payload.rb +3 -3
  368. data/lib/mailslurp_client/models/webhook_email_read_payload.rb +3 -3
  369. data/lib/mailslurp_client/models/webhook_endpoint_projection.rb +259 -0
  370. data/lib/mailslurp_client/models/webhook_header_name_value.rb +1 -1
  371. data/lib/mailslurp_client/models/webhook_headers.rb +1 -1
  372. data/lib/mailslurp_client/models/webhook_new_attachment_payload.rb +3 -3
  373. data/lib/mailslurp_client/models/webhook_new_contact_payload.rb +3 -3
  374. data/lib/mailslurp_client/models/webhook_new_email_payload.rb +3 -3
  375. data/lib/mailslurp_client/models/webhook_new_sms_payload.rb +3 -3
  376. data/lib/mailslurp_client/models/webhook_projection.rb +60 -7
  377. data/lib/mailslurp_client/models/webhook_redrive_all_result.rb +1 -1
  378. data/lib/mailslurp_client/models/webhook_redrive_result.rb +1 -1
  379. data/lib/mailslurp_client/models/webhook_result_dto.rb +3 -3
  380. data/lib/mailslurp_client/models/webhook_test_request.rb +1 -1
  381. data/lib/mailslurp_client/models/webhook_test_response.rb +1 -1
  382. data/lib/mailslurp_client/models/webhook_test_result.rb +1 -1
  383. data/lib/mailslurp_client/version.rb +2 -2
  384. data/lib/mailslurp_client.rb +58 -10
  385. metadata +59 -11
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #MailSlurp API
3
3
 
4
- #MailSlurp is an API for sending and receiving emails from dynamically allocated email addresses. It's designed for developers and QA teams to test applications, process inbound emails, send templated notifications, attachments, and more. ## Resources - [Homepage](https://www.mailslurp.com) - Get an [API KEY](https://app.mailslurp.com/sign-up/) - Generated [SDK Clients](https://docs.mailslurp.com/) - [Examples](https://github.com/mailslurp/examples) repository
4
+ #MailSlurp is an API for sending and receiving emails and SMS from dynamically allocated email addresses and phone numbers. It's designed for developers and QA teams to test applications, process inbound emails, send templated notifications, attachments, and more. ## Resources - [Homepage](https://www.mailslurp.com) - Get an [API KEY](https://app.mailslurp.com/sign-up/) - Generated [SDK Clients](https://docs.mailslurp.com/) - [Examples](https://github.com/mailslurp/examples) repository
5
5
 
6
6
  The version of the OpenAPI document: 6.5.2
7
7
  Contact: contact@mailslurp.dev
@@ -15,12 +15,12 @@ require 'date'
15
15
  module MailSlurpClient
16
16
  # Missed email data
17
17
  class MissedEmailProjection
18
+ attr_accessor :subject
19
+
18
20
  attr_accessor :created_at
19
21
 
20
22
  attr_accessor :user_id
21
23
 
22
- attr_accessor :subject
23
-
24
24
  attr_accessor :id
25
25
 
26
26
  attr_accessor :from
@@ -28,9 +28,9 @@ module MailSlurpClient
28
28
  # Attribute mapping from ruby-style variable name to JSON key.
29
29
  def self.attribute_map
30
30
  {
31
+ :'subject' => :'subject',
31
32
  :'created_at' => :'createdAt',
32
33
  :'user_id' => :'userId',
33
- :'subject' => :'subject',
34
34
  :'id' => :'id',
35
35
  :'from' => :'from'
36
36
  }
@@ -39,9 +39,9 @@ module MailSlurpClient
39
39
  # Attribute type mapping.
40
40
  def self.openapi_types
41
41
  {
42
+ :'subject' => :'String',
42
43
  :'created_at' => :'DateTime',
43
44
  :'user_id' => :'String',
44
- :'subject' => :'String',
45
45
  :'id' => :'String',
46
46
  :'from' => :'String'
47
47
  }
@@ -50,8 +50,8 @@ module MailSlurpClient
50
50
  # List of attributes with nullable: true
51
51
  def self.openapi_nullable
52
52
  Set.new([
53
- :'user_id',
54
53
  :'subject',
54
+ :'user_id',
55
55
  :'from'
56
56
  ])
57
57
  end
@@ -71,6 +71,10 @@ module MailSlurpClient
71
71
  h[k.to_sym] = v
72
72
  }
73
73
 
74
+ if attributes.key?(:'subject')
75
+ self.subject = attributes[:'subject']
76
+ end
77
+
74
78
  if attributes.key?(:'created_at')
75
79
  self.created_at = attributes[:'created_at']
76
80
  end
@@ -79,10 +83,6 @@ module MailSlurpClient
79
83
  self.user_id = attributes[:'user_id']
80
84
  end
81
85
 
82
- if attributes.key?(:'subject')
83
- self.subject = attributes[:'subject']
84
- end
85
-
86
86
  if attributes.key?(:'id')
87
87
  self.id = attributes[:'id']
88
88
  end
@@ -120,9 +120,9 @@ module MailSlurpClient
120
120
  def ==(o)
121
121
  return true if self.equal?(o)
122
122
  self.class == o.class &&
123
+ subject == o.subject &&
123
124
  created_at == o.created_at &&
124
125
  user_id == o.user_id &&
125
- subject == o.subject &&
126
126
  id == o.id &&
127
127
  from == o.from
128
128
  end
@@ -136,7 +136,7 @@ module MailSlurpClient
136
136
  # Calculates hash code according to all attributes.
137
137
  # @return [Integer] Hash code
138
138
  def hash
139
- [created_at, user_id, subject, id, from].hash
139
+ [subject, created_at, user_id, id, from].hash
140
140
  end
141
141
 
142
142
  # Builds the object from hash
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #MailSlurp API
3
3
 
4
- #MailSlurp is an API for sending and receiving emails from dynamically allocated email addresses. It's designed for developers and QA teams to test applications, process inbound emails, send templated notifications, attachments, and more. ## Resources - [Homepage](https://www.mailslurp.com) - Get an [API KEY](https://app.mailslurp.com/sign-up/) - Generated [SDK Clients](https://docs.mailslurp.com/) - [Examples](https://github.com/mailslurp/examples) repository
4
+ #MailSlurp is an API for sending and receiving emails and SMS from dynamically allocated email addresses and phone numbers. It's designed for developers and QA teams to test applications, process inbound emails, send templated notifications, attachments, and more. ## Resources - [Homepage](https://www.mailslurp.com) - Get an [API KEY](https://app.mailslurp.com/sign-up/) - Generated [SDK Clients](https://docs.mailslurp.com/) - [Examples](https://github.com/mailslurp/examples) repository
5
5
 
6
6
  The version of the OpenAPI document: 6.5.2
7
7
  Contact: contact@mailslurp.dev
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #MailSlurp API
3
3
 
4
- #MailSlurp is an API for sending and receiving emails from dynamically allocated email addresses. It's designed for developers and QA teams to test applications, process inbound emails, send templated notifications, attachments, and more. ## Resources - [Homepage](https://www.mailslurp.com) - Get an [API KEY](https://app.mailslurp.com/sign-up/) - Generated [SDK Clients](https://docs.mailslurp.com/) - [Examples](https://github.com/mailslurp/examples) repository
4
+ #MailSlurp is an API for sending and receiving emails and SMS from dynamically allocated email addresses and phone numbers. It's designed for developers and QA teams to test applications, process inbound emails, send templated notifications, attachments, and more. ## Resources - [Homepage](https://www.mailslurp.com) - Get an [API KEY](https://app.mailslurp.com/sign-up/) - Generated [SDK Clients](https://docs.mailslurp.com/) - [Examples](https://github.com/mailslurp/examples) repository
5
5
 
6
6
  The version of the OpenAPI document: 6.5.2
7
7
  Contact: contact@mailslurp.dev
@@ -0,0 +1,229 @@
1
+ =begin
2
+ #MailSlurp API
3
+
4
+ #MailSlurp is an API for sending and receiving emails and SMS from dynamically allocated email addresses and phone numbers. It's designed for developers and QA teams to test applications, process inbound emails, send templated notifications, attachments, and more. ## Resources - [Homepage](https://www.mailslurp.com) - Get an [API KEY](https://app.mailslurp.com/sign-up/) - Generated [SDK Clients](https://docs.mailslurp.com/) - [Examples](https://github.com/mailslurp/examples) repository
5
+
6
+ The version of the OpenAPI document: 6.5.2
7
+ Contact: contact@mailslurp.dev
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module MailSlurpClient
16
+ class OptInConsentOptions
17
+ attr_accessor :email_address
18
+
19
+ attr_accessor :company_name
20
+
21
+ attr_accessor :send_opt_in_options
22
+
23
+ # Attribute mapping from ruby-style variable name to JSON key.
24
+ def self.attribute_map
25
+ {
26
+ :'email_address' => :'emailAddress',
27
+ :'company_name' => :'companyName',
28
+ :'send_opt_in_options' => :'sendOptInOptions'
29
+ }
30
+ end
31
+
32
+ # Attribute type mapping.
33
+ def self.openapi_types
34
+ {
35
+ :'email_address' => :'String',
36
+ :'company_name' => :'String',
37
+ :'send_opt_in_options' => :'SendOptInConsentEmailOptions'
38
+ }
39
+ end
40
+
41
+ # List of attributes with nullable: true
42
+ def self.openapi_nullable
43
+ Set.new([
44
+ ])
45
+ end
46
+
47
+ # Initializes the object
48
+ # @param [Hash] attributes Model attributes in the form of hash
49
+ def initialize(attributes = {})
50
+ if (!attributes.is_a?(Hash))
51
+ fail ArgumentError, "The input argument (attributes) must be a hash in `MailSlurpClient::OptInConsentOptions` initialize method"
52
+ end
53
+
54
+ # check to see if the attribute exists and convert string to symbol for hash key
55
+ attributes = attributes.each_with_object({}) { |(k, v), h|
56
+ if (!self.class.attribute_map.key?(k.to_sym))
57
+ fail ArgumentError, "`#{k}` is not a valid attribute in `MailSlurpClient::OptInConsentOptions`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
58
+ end
59
+ h[k.to_sym] = v
60
+ }
61
+
62
+ if attributes.key?(:'email_address')
63
+ self.email_address = attributes[:'email_address']
64
+ end
65
+
66
+ if attributes.key?(:'company_name')
67
+ self.company_name = attributes[:'company_name']
68
+ end
69
+
70
+ if attributes.key?(:'send_opt_in_options')
71
+ self.send_opt_in_options = attributes[:'send_opt_in_options']
72
+ end
73
+ end
74
+
75
+ # Show invalid properties with the reasons. Usually used together with valid?
76
+ # @return Array for valid properties with the reasons
77
+ def list_invalid_properties
78
+ invalid_properties = Array.new
79
+ if @email_address.nil?
80
+ invalid_properties.push('invalid value for "email_address", email_address cannot be nil.')
81
+ end
82
+
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
+ return false if @email_address.nil?
90
+ true
91
+ end
92
+
93
+ # Checks equality by comparing each attribute.
94
+ # @param [Object] Object to be compared
95
+ def ==(o)
96
+ return true if self.equal?(o)
97
+ self.class == o.class &&
98
+ email_address == o.email_address &&
99
+ company_name == o.company_name &&
100
+ send_opt_in_options == o.send_opt_in_options
101
+ end
102
+
103
+ # @see the `==` method
104
+ # @param [Object] Object to be compared
105
+ def eql?(o)
106
+ self == o
107
+ end
108
+
109
+ # Calculates hash code according to all attributes.
110
+ # @return [Integer] Hash code
111
+ def hash
112
+ [email_address, company_name, send_opt_in_options].hash
113
+ end
114
+
115
+ # Builds the object from hash
116
+ # @param [Hash] attributes Model attributes in the form of hash
117
+ # @return [Object] Returns the model itself
118
+ def self.build_from_hash(attributes)
119
+ new.build_from_hash(attributes)
120
+ end
121
+
122
+ # Builds the object from hash
123
+ # @param [Hash] attributes Model attributes in the form of hash
124
+ # @return [Object] Returns the model itself
125
+ def build_from_hash(attributes)
126
+ return nil unless attributes.is_a?(Hash)
127
+ self.class.openapi_types.each_pair do |key, type|
128
+ if type =~ /\AArray<(.*)>/i
129
+ # check to ensure the input is an array given that the attribute
130
+ # is documented as an array but the input is not
131
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
132
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
133
+ end
134
+ elsif !attributes[self.class.attribute_map[key]].nil?
135
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
136
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
137
+ end
138
+
139
+ self
140
+ end
141
+
142
+ # Deserializes the data based on type
143
+ # @param string type Data type
144
+ # @param string value Value to be deserialized
145
+ # @return [Object] Deserialized data
146
+ def _deserialize(type, value)
147
+ case type.to_sym
148
+ when :DateTime
149
+ DateTime.parse(value)
150
+ when :Date
151
+ Date.parse(value)
152
+ when :String
153
+ value.to_s
154
+ when :Integer
155
+ value.to_i
156
+ when :Float
157
+ value.to_f
158
+ when :Boolean
159
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
160
+ true
161
+ else
162
+ false
163
+ end
164
+ when :Object
165
+ # generic object (usually a Hash), return directly
166
+ value
167
+ when /\AArray<(?<inner_type>.+)>\z/
168
+ inner_type = Regexp.last_match[:inner_type]
169
+ value.map { |v| _deserialize(inner_type, v) }
170
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
171
+ k_type = Regexp.last_match[:k_type]
172
+ v_type = Regexp.last_match[:v_type]
173
+ {}.tap do |hash|
174
+ value.each do |k, v|
175
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
176
+ end
177
+ end
178
+ else # model
179
+ MailSlurpClient.const_get(type).build_from_hash(value)
180
+ end
181
+ end
182
+
183
+ # Returns the string representation of the object
184
+ # @return [String] String presentation of the object
185
+ def to_s
186
+ to_hash.to_s
187
+ end
188
+
189
+ # to_body is an alias to to_hash (backward compatibility)
190
+ # @return [Hash] Returns the object in the form of hash
191
+ def to_body
192
+ to_hash
193
+ end
194
+
195
+ # Returns the object in the form of hash
196
+ # @return [Hash] Returns the object in the form of hash
197
+ def to_hash
198
+ hash = {}
199
+ self.class.attribute_map.each_pair do |attr, param|
200
+ value = self.send(attr)
201
+ if value.nil?
202
+ is_nullable = self.class.openapi_nullable.include?(attr)
203
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
204
+ end
205
+
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
@@ -0,0 +1,211 @@
1
+ =begin
2
+ #MailSlurp API
3
+
4
+ #MailSlurp is an API for sending and receiving emails and SMS from dynamically allocated email addresses and phone numbers. It's designed for developers and QA teams to test applications, process inbound emails, send templated notifications, attachments, and more. ## Resources - [Homepage](https://www.mailslurp.com) - Get an [API KEY](https://app.mailslurp.com/sign-up/) - Generated [SDK Clients](https://docs.mailslurp.com/) - [Examples](https://github.com/mailslurp/examples) repository
5
+
6
+ The version of the OpenAPI document: 6.5.2
7
+ Contact: contact@mailslurp.dev
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module MailSlurpClient
16
+ class OptInConsentSendResult
17
+ attr_accessor :sent
18
+
19
+ # Attribute mapping from ruby-style variable name to JSON key.
20
+ def self.attribute_map
21
+ {
22
+ :'sent' => :'sent'
23
+ }
24
+ end
25
+
26
+ # Attribute type mapping.
27
+ def self.openapi_types
28
+ {
29
+ :'sent' => :'Boolean'
30
+ }
31
+ end
32
+
33
+ # List of attributes with nullable: true
34
+ def self.openapi_nullable
35
+ Set.new([
36
+ ])
37
+ end
38
+
39
+ # Initializes the object
40
+ # @param [Hash] attributes Model attributes in the form of hash
41
+ def initialize(attributes = {})
42
+ if (!attributes.is_a?(Hash))
43
+ fail ArgumentError, "The input argument (attributes) must be a hash in `MailSlurpClient::OptInConsentSendResult` initialize method"
44
+ end
45
+
46
+ # check to see if the attribute exists and convert string to symbol for hash key
47
+ attributes = attributes.each_with_object({}) { |(k, v), h|
48
+ if (!self.class.attribute_map.key?(k.to_sym))
49
+ fail ArgumentError, "`#{k}` is not a valid attribute in `MailSlurpClient::OptInConsentSendResult`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
50
+ end
51
+ h[k.to_sym] = v
52
+ }
53
+
54
+ if attributes.key?(:'sent')
55
+ self.sent = attributes[:'sent']
56
+ end
57
+ end
58
+
59
+ # Show invalid properties with the reasons. Usually used together with valid?
60
+ # @return Array for valid properties with the reasons
61
+ def list_invalid_properties
62
+ invalid_properties = Array.new
63
+ if @sent.nil?
64
+ invalid_properties.push('invalid value for "sent", sent cannot be nil.')
65
+ end
66
+
67
+ invalid_properties
68
+ end
69
+
70
+ # Check to see if the all the properties in the model are valid
71
+ # @return true if the model is valid
72
+ def valid?
73
+ return false if @sent.nil?
74
+ true
75
+ end
76
+
77
+ # Checks equality by comparing each attribute.
78
+ # @param [Object] Object to be compared
79
+ def ==(o)
80
+ return true if self.equal?(o)
81
+ self.class == o.class &&
82
+ sent == o.sent
83
+ end
84
+
85
+ # @see the `==` method
86
+ # @param [Object] Object to be compared
87
+ def eql?(o)
88
+ self == o
89
+ end
90
+
91
+ # Calculates hash code according to all attributes.
92
+ # @return [Integer] Hash code
93
+ def hash
94
+ [sent].hash
95
+ end
96
+
97
+ # Builds the object from hash
98
+ # @param [Hash] attributes Model attributes in the form of hash
99
+ # @return [Object] Returns the model itself
100
+ def self.build_from_hash(attributes)
101
+ new.build_from_hash(attributes)
102
+ end
103
+
104
+ # Builds the object from hash
105
+ # @param [Hash] attributes Model attributes in the form of hash
106
+ # @return [Object] Returns the model itself
107
+ def build_from_hash(attributes)
108
+ return nil unless attributes.is_a?(Hash)
109
+ self.class.openapi_types.each_pair do |key, type|
110
+ if type =~ /\AArray<(.*)>/i
111
+ # check to ensure the input is an array given that the attribute
112
+ # is documented as an array but the input is not
113
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
114
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
115
+ end
116
+ elsif !attributes[self.class.attribute_map[key]].nil?
117
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
118
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
119
+ end
120
+
121
+ self
122
+ end
123
+
124
+ # Deserializes the data based on type
125
+ # @param string type Data type
126
+ # @param string value Value to be deserialized
127
+ # @return [Object] Deserialized data
128
+ def _deserialize(type, value)
129
+ case type.to_sym
130
+ when :DateTime
131
+ DateTime.parse(value)
132
+ when :Date
133
+ Date.parse(value)
134
+ when :String
135
+ value.to_s
136
+ when :Integer
137
+ value.to_i
138
+ when :Float
139
+ value.to_f
140
+ when :Boolean
141
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
142
+ true
143
+ else
144
+ false
145
+ end
146
+ when :Object
147
+ # generic object (usually a Hash), return directly
148
+ value
149
+ when /\AArray<(?<inner_type>.+)>\z/
150
+ inner_type = Regexp.last_match[:inner_type]
151
+ value.map { |v| _deserialize(inner_type, v) }
152
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
153
+ k_type = Regexp.last_match[:k_type]
154
+ v_type = Regexp.last_match[:v_type]
155
+ {}.tap do |hash|
156
+ value.each do |k, v|
157
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
158
+ end
159
+ end
160
+ else # model
161
+ MailSlurpClient.const_get(type).build_from_hash(value)
162
+ end
163
+ end
164
+
165
+ # Returns the string representation of the object
166
+ # @return [String] String presentation of the object
167
+ def to_s
168
+ to_hash.to_s
169
+ end
170
+
171
+ # to_body is an alias to to_hash (backward compatibility)
172
+ # @return [Hash] Returns the object in the form of hash
173
+ def to_body
174
+ to_hash
175
+ end
176
+
177
+ # Returns the object in the form of hash
178
+ # @return [Hash] Returns the object in the form of hash
179
+ def to_hash
180
+ hash = {}
181
+ self.class.attribute_map.each_pair do |attr, param|
182
+ value = self.send(attr)
183
+ if value.nil?
184
+ is_nullable = self.class.openapi_nullable.include?(attr)
185
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
186
+ end
187
+
188
+ hash[param] = _to_hash(value)
189
+ end
190
+ hash
191
+ end
192
+
193
+ # Outputs non-array value in the form of hash
194
+ # For object, use to_hash. Otherwise, just return the value
195
+ # @param [Object] value Any valid value
196
+ # @return [Hash] Returns the value in the form of hash
197
+ def _to_hash(value)
198
+ if value.is_a?(Array)
199
+ value.compact.map { |v| _to_hash(v) }
200
+ elsif value.is_a?(Hash)
201
+ {}.tap do |hash|
202
+ value.each { |k, v| hash[k] = _to_hash(v) }
203
+ end
204
+ elsif value.respond_to? :to_hash
205
+ value.to_hash
206
+ else
207
+ value
208
+ end
209
+ end
210
+ end
211
+ end