mailslurp_client 17.1.0 → 17.3.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 (267) hide show
  1. checksums.yaml +4 -4
  2. data/lib/mailslurp_client/api/api_audit_log_controller_api.rb +237 -0
  3. data/lib/mailslurp_client/api/attachment_controller_api.rb +66 -0
  4. data/lib/mailslurp_client/api/bounce_controller_api.rb +126 -0
  5. data/lib/mailslurp_client/api/campaign_probe_controller_api.rb +802 -0
  6. data/lib/mailslurp_client/api/deliverability_test_controller_api.rb +1496 -0
  7. data/lib/mailslurp_client/api/device_previews_controller_api.rb +1012 -0
  8. data/lib/mailslurp_client/api/domain_controller_api.rb +63 -0
  9. data/lib/mailslurp_client/api/domain_monitor_controller_api.rb +1112 -0
  10. data/lib/mailslurp_client/api/email_audit_controller_api.rb +334 -0
  11. data/lib/mailslurp_client/api/email_controller_api.rb +394 -138
  12. data/lib/mailslurp_client/api/inbox_controller_api.rb +144 -4
  13. data/lib/mailslurp_client/api/missed_sms_controller_api.rb +221 -0
  14. data/lib/mailslurp_client/api/phone_controller_api.rb +1314 -83
  15. data/lib/mailslurp_client/api/sms_controller_api.rb +191 -0
  16. data/lib/mailslurp_client/api/tools_controller_api.rb +806 -0
  17. data/lib/mailslurp_client/models/abstract_webhook_payload.rb +15 -15
  18. data/lib/mailslurp_client/models/acquire_phone_pool_lease_options.rb +233 -0
  19. data/lib/mailslurp_client/models/add_phone_pool_numbers_options.rb +213 -0
  20. data/lib/mailslurp_client/models/ai_transform_mapping_projection.rb +39 -39
  21. data/lib/mailslurp_client/models/ai_transform_projection.rb +28 -28
  22. data/lib/mailslurp_client/models/alias_projection.rb +48 -48
  23. data/lib/mailslurp_client/models/alias_thread_projection.rb +44 -44
  24. data/lib/mailslurp_client/models/analyze_dmarc_report_options.rb +248 -0
  25. data/lib/mailslurp_client/models/analyze_dmarc_report_results.rb +386 -0
  26. data/lib/mailslurp_client/models/analyze_email_headers_options.rb +240 -0
  27. data/lib/mailslurp_client/models/analyze_email_headers_results.rb +275 -0
  28. data/lib/mailslurp_client/models/attachment_projection.rb +50 -50
  29. data/lib/mailslurp_client/models/audit_log_event_dto.rb +343 -0
  30. data/lib/mailslurp_client/models/audit_log_page_dto.rb +222 -0
  31. data/lib/mailslurp_client/models/audit_log_search_options.rb +323 -0
  32. data/lib/mailslurp_client/models/available_phone_number_dto.rb +325 -0
  33. data/lib/mailslurp_client/models/available_phone_numbers_result.rb +236 -0
  34. data/lib/mailslurp_client/models/bounce_projection.rb +14 -14
  35. data/lib/mailslurp_client/models/bounce_recipient_projection.rb +10 -10
  36. data/lib/mailslurp_client/models/campaign_probe_dto.rb +411 -0
  37. data/lib/mailslurp_client/models/campaign_probe_insights_dto.rb +408 -0
  38. data/lib/mailslurp_client/models/campaign_probe_run_comparison_dto.rb +397 -0
  39. data/lib/mailslurp_client/models/campaign_probe_run_dto.rb +644 -0
  40. data/lib/mailslurp_client/models/campaign_probe_run_due_result.rb +315 -0
  41. data/lib/mailslurp_client/models/campaign_probe_run_now_result.rb +225 -0
  42. data/lib/mailslurp_client/models/campaign_probe_series_dto.rb +303 -0
  43. data/lib/mailslurp_client/models/campaign_probe_series_point_dto.rb +295 -0
  44. data/lib/mailslurp_client/models/cancel_device_preview_run_options.rb +206 -0
  45. data/lib/mailslurp_client/models/cancel_device_preview_run_result.rb +248 -0
  46. data/lib/mailslurp_client/models/check_campaign_probe_options.rb +371 -0
  47. data/lib/mailslurp_client/models/check_campaign_probe_results.rb +482 -0
  48. data/lib/mailslurp_client/models/check_dns_propagation_options.rb +297 -0
  49. data/lib/mailslurp_client/models/check_dns_propagation_results.rb +361 -0
  50. data/lib/mailslurp_client/models/check_domain_monitor_options.rb +243 -0
  51. data/lib/mailslurp_client/models/check_domain_monitor_results.rb +398 -0
  52. data/lib/mailslurp_client/models/check_email_audit_options.rb +405 -0
  53. data/lib/mailslurp_client/models/check_email_auth_stack_options.rb +248 -0
  54. data/lib/mailslurp_client/models/check_email_auth_stack_results.rb +462 -0
  55. data/lib/mailslurp_client/models/check_email_blacklist_options.rb +241 -0
  56. data/lib/mailslurp_client/models/check_email_blacklist_results.rb +366 -0
  57. data/lib/mailslurp_client/models/code_candidate.rb +303 -0
  58. data/lib/mailslurp_client/models/connector_event_projection.rb +33 -33
  59. data/lib/mailslurp_client/models/connector_projection.rb +42 -42
  60. data/lib/mailslurp_client/models/contact_projection.rb +24 -24
  61. data/lib/mailslurp_client/models/create_campaign_probe_options.rb +290 -0
  62. data/lib/mailslurp_client/models/create_campaign_probe_run_options.rb +264 -0
  63. data/lib/mailslurp_client/models/create_deliverability_simulation_job_options.rb +345 -0
  64. data/lib/mailslurp_client/models/create_deliverability_test_options.rb +372 -0
  65. data/lib/mailslurp_client/models/create_device_preview_feedback_options.rb +405 -0
  66. data/lib/mailslurp_client/models/create_device_preview_options.rb +241 -0
  67. data/lib/mailslurp_client/models/create_device_preview_run_result.rb +225 -0
  68. data/lib/mailslurp_client/models/create_domain_monitor_alert_sink_options.rb +308 -0
  69. data/lib/mailslurp_client/models/create_domain_monitor_options.rb +299 -0
  70. data/lib/mailslurp_client/models/create_email_audit_options.rb +394 -0
  71. data/lib/mailslurp_client/models/create_phone_number_options.rb +25 -4
  72. data/lib/mailslurp_client/models/create_phone_pool_options.rb +220 -0
  73. data/lib/mailslurp_client/models/create_phone_provisioning_job_item_options.rb +256 -0
  74. data/lib/mailslurp_client/models/create_phone_provisioning_job_options.rb +284 -0
  75. data/lib/mailslurp_client/models/delete_device_preview_run_result.rb +253 -0
  76. data/lib/mailslurp_client/models/delete_result.rb +245 -0
  77. data/lib/mailslurp_client/models/deliverability_analytics_run_dto.rb +426 -0
  78. data/lib/mailslurp_client/models/deliverability_analytics_series_dto.rb +342 -0
  79. data/lib/mailslurp_client/models/deliverability_analytics_series_point_dto.rb +240 -0
  80. data/lib/mailslurp_client/models/deliverability_analytics_summary_dto.rb +380 -0
  81. data/lib/mailslurp_client/models/deliverability_entity_result_dto.rb +360 -0
  82. data/lib/mailslurp_client/models/deliverability_entity_result_page_dto.rb +318 -0
  83. data/lib/mailslurp_client/models/deliverability_expectation.rb +276 -0
  84. data/lib/mailslurp_client/models/deliverability_expectation_result_dto.rb +294 -0
  85. data/lib/mailslurp_client/models/deliverability_failure_entity_hotspot_dto.rb +360 -0
  86. data/lib/mailslurp_client/models/deliverability_failure_hotspots_dto.rb +302 -0
  87. data/lib/mailslurp_client/models/deliverability_failure_phone_dimension_hotspot_dto.rb +306 -0
  88. data/lib/mailslurp_client/models/deliverability_poll_status_result_dto.rb +250 -0
  89. data/lib/mailslurp_client/models/deliverability_selector_options.rb +307 -0
  90. data/lib/mailslurp_client/models/deliverability_simulation_email_options.rb +231 -0
  91. data/lib/mailslurp_client/models/deliverability_simulation_job_config_dto.rb +300 -0
  92. data/lib/mailslurp_client/models/deliverability_simulation_job_dto.rb +494 -0
  93. data/lib/mailslurp_client/models/deliverability_simulation_job_error_summary_dto.rb +224 -0
  94. data/lib/mailslurp_client/models/deliverability_simulation_job_event_dto.rb +344 -0
  95. data/lib/mailslurp_client/models/deliverability_simulation_job_event_page_dto.rb +284 -0
  96. data/lib/mailslurp_client/models/deliverability_simulation_job_top_error_dto.rb +226 -0
  97. data/lib/mailslurp_client/models/deliverability_simulation_sms_options.rb +209 -0
  98. data/lib/mailslurp_client/models/deliverability_test_dto.rb +558 -0
  99. data/lib/mailslurp_client/models/deliverability_test_page_dto.rb +270 -0
  100. data/lib/mailslurp_client/models/device_preview_feedback_dto.rb +456 -0
  101. data/lib/mailslurp_client/models/device_preview_feedback_list_dto.rb +255 -0
  102. data/lib/mailslurp_client/models/device_preview_provider_progress_dto.rb +387 -0
  103. data/lib/mailslurp_client/models/device_preview_run_dto.rb +382 -0
  104. data/lib/mailslurp_client/models/device_preview_run_results_dto.rb +243 -0
  105. data/lib/mailslurp_client/models/device_preview_screenshot_dto.rb +389 -0
  106. data/lib/mailslurp_client/models/device_preview_target_dto.rb +368 -0
  107. data/lib/mailslurp_client/models/dmarc_report_metadata.rb +308 -0
  108. data/lib/mailslurp_client/models/dmarc_report_source_summary.rb +274 -0
  109. data/lib/mailslurp_client/models/dns_propagation_resolver_result.rb +252 -0
  110. data/lib/mailslurp_client/models/domain_monitor_alert_sink_dto.rb +369 -0
  111. data/lib/mailslurp_client/models/domain_monitor_dto.rb +383 -0
  112. data/lib/mailslurp_client/models/domain_monitor_insights_dto.rb +422 -0
  113. data/lib/mailslurp_client/models/domain_monitor_run_comparison_dto.rb +369 -0
  114. data/lib/mailslurp_client/models/domain_monitor_run_dto.rb +492 -0
  115. data/lib/mailslurp_client/models/domain_monitor_run_due_result.rb +287 -0
  116. data/lib/mailslurp_client/models/domain_monitor_run_now_result.rb +225 -0
  117. data/lib/mailslurp_client/models/domain_monitor_series_dto.rb +303 -0
  118. data/lib/mailslurp_client/models/domain_monitor_series_point_dto.rb +309 -0
  119. data/lib/mailslurp_client/models/domain_monitor_summary_dto.rb +248 -0
  120. data/lib/mailslurp_client/models/domain_region_group.rb +261 -0
  121. data/lib/mailslurp_client/models/domain_region_groups_dto.rb +214 -0
  122. data/lib/mailslurp_client/models/domain_region_information.rb +338 -0
  123. data/lib/mailslurp_client/models/email_audit_analysis_result.rb +620 -0
  124. data/lib/mailslurp_client/models/email_audit_comparison_dto.rb +411 -0
  125. data/lib/mailslurp_client/models/email_audit_dto.rb +308 -0
  126. data/lib/mailslurp_client/models/email_audit_spelling_issue.rb +276 -0
  127. data/lib/mailslurp_client/models/email_audit_url_issue.rb +236 -0
  128. data/lib/mailslurp_client/models/email_blacklist_ip_result.rb +242 -0
  129. data/lib/mailslurp_client/models/email_blacklist_listing_result.rb +258 -0
  130. data/lib/mailslurp_client/models/email_header_analysis_summary.rb +242 -0
  131. data/lib/mailslurp_client/models/email_header_received_hop.rb +242 -0
  132. data/lib/mailslurp_client/models/email_projection.rb +66 -66
  133. data/lib/mailslurp_client/models/email_signature.rb +254 -0
  134. data/lib/mailslurp_client/models/email_signature_parse_result.rb +223 -0
  135. data/lib/mailslurp_client/models/email_thread_projection.rb +78 -78
  136. data/lib/mailslurp_client/models/entity_automation_item_projection.rb +27 -27
  137. data/lib/mailslurp_client/models/entity_event_item_projection.rb +45 -45
  138. data/lib/mailslurp_client/models/entity_favourite_item_projection.rb +29 -29
  139. data/lib/mailslurp_client/models/expired_inbox_record_projection.rb +27 -27
  140. data/lib/mailslurp_client/models/extract_attachment_text_options.rb +268 -0
  141. data/lib/mailslurp_client/models/extract_attachment_text_result.rb +297 -0
  142. data/lib/mailslurp_client/models/extract_codes_options.rb +304 -0
  143. data/lib/mailslurp_client/models/extract_codes_result.rb +303 -0
  144. data/lib/mailslurp_client/models/generate_spf_record_options.rb +357 -0
  145. data/lib/mailslurp_client/models/generate_spf_record_results.rb +318 -0
  146. data/lib/mailslurp_client/models/get_or_create_phone_pool_options.rb +220 -0
  147. data/lib/mailslurp_client/models/group_projection.rb +15 -15
  148. data/lib/mailslurp_client/models/guest_portal_user_projection.rb +50 -50
  149. data/lib/mailslurp_client/models/imap_email_projection.rb +18 -18
  150. data/lib/mailslurp_client/models/inbox_dto.rb +2 -2
  151. data/lib/mailslurp_client/models/inbox_forwarder_event_projection.rb +21 -21
  152. data/lib/mailslurp_client/models/inbox_preview.rb +2 -2
  153. data/lib/mailslurp_client/models/inbox_replier_event_projection.rb +33 -33
  154. data/lib/mailslurp_client/models/list_unsubscribe_recipient_projection.rb +19 -19
  155. data/lib/mailslurp_client/models/lookup_dkim_domain_options.rb +275 -0
  156. data/lib/mailslurp_client/models/lookup_dkim_domain_results.rb +304 -0
  157. data/lib/mailslurp_client/models/lookup_ptr_options.rb +241 -0
  158. data/lib/mailslurp_client/models/lookup_ptr_results.rb +305 -0
  159. data/lib/mailslurp_client/models/lookup_spf_domain_options.rb +240 -0
  160. data/lib/mailslurp_client/models/lookup_spf_domain_results.rb +305 -0
  161. data/lib/mailslurp_client/models/missed_email_projection.rb +28 -28
  162. data/lib/mailslurp_client/models/missed_sms_dto.rb +320 -0
  163. data/lib/mailslurp_client/models/missed_sms_projection.rb +282 -0
  164. data/lib/mailslurp_client/models/opt_in_identity_projection.rb +24 -24
  165. data/lib/mailslurp_client/models/organization_inbox_projection.rb +2 -2
  166. data/lib/mailslurp_client/models/page_ai_transform_mapping_projection.rb +19 -19
  167. data/lib/mailslurp_client/models/page_ai_transform_projection.rb +19 -19
  168. data/lib/mailslurp_client/models/page_ai_transform_result_projection.rb +19 -19
  169. data/lib/mailslurp_client/models/page_alias.rb +19 -19
  170. data/lib/mailslurp_client/models/page_alias_thread_projection.rb +19 -19
  171. data/lib/mailslurp_client/models/page_attachment_entity.rb +19 -19
  172. data/lib/mailslurp_client/models/page_bounced_email.rb +19 -19
  173. data/lib/mailslurp_client/models/page_bounced_recipients.rb +19 -19
  174. data/lib/mailslurp_client/models/page_complaint.rb +19 -19
  175. data/lib/mailslurp_client/models/page_connector.rb +19 -19
  176. data/lib/mailslurp_client/models/page_connector_events.rb +19 -19
  177. data/lib/mailslurp_client/models/page_contact_projection.rb +19 -19
  178. data/lib/mailslurp_client/models/page_delivery_status.rb +19 -19
  179. data/lib/mailslurp_client/models/page_device_preview_run_projection.rb +309 -0
  180. data/lib/mailslurp_client/models/page_email_preview.rb +19 -19
  181. data/lib/mailslurp_client/models/page_email_projection.rb +19 -19
  182. data/lib/mailslurp_client/models/page_email_thread_projection.rb +19 -19
  183. data/lib/mailslurp_client/models/page_email_validation_request.rb +19 -19
  184. data/lib/mailslurp_client/models/page_entity_automation_items.rb +19 -19
  185. data/lib/mailslurp_client/models/page_entity_event_items.rb +19 -19
  186. data/lib/mailslurp_client/models/page_entity_favourite_items.rb +19 -19
  187. data/lib/mailslurp_client/models/page_expired_inbox_record_projection.rb +19 -19
  188. data/lib/mailslurp_client/models/page_group_projection.rb +19 -19
  189. data/lib/mailslurp_client/models/page_guest_portal_users.rb +19 -19
  190. data/lib/mailslurp_client/models/page_inbox_forwarder_dto.rb +19 -19
  191. data/lib/mailslurp_client/models/page_inbox_forwarder_events.rb +19 -19
  192. data/lib/mailslurp_client/models/page_inbox_projection.rb +19 -19
  193. data/lib/mailslurp_client/models/page_inbox_replier_dto.rb +19 -19
  194. data/lib/mailslurp_client/models/page_inbox_replier_events.rb +19 -19
  195. data/lib/mailslurp_client/models/page_inbox_tags.rb +19 -19
  196. data/lib/mailslurp_client/models/page_list_unsubscribe_recipients.rb +19 -19
  197. data/lib/mailslurp_client/models/page_missed_email_projection.rb +19 -19
  198. data/lib/mailslurp_client/models/page_missed_sms_projection.rb +309 -0
  199. data/lib/mailslurp_client/models/page_opt_in_identity_projection.rb +19 -19
  200. data/lib/mailslurp_client/models/page_organization_inbox_projection.rb +19 -19
  201. data/lib/mailslurp_client/models/page_phone_message_thread_item_projection.rb +19 -19
  202. data/lib/mailslurp_client/models/page_phone_message_thread_projection.rb +19 -19
  203. data/lib/mailslurp_client/models/page_phone_number_projection.rb +19 -19
  204. data/lib/mailslurp_client/models/page_phone_number_release_projection.rb +19 -19
  205. data/lib/mailslurp_client/models/page_plus_address_projection.rb +19 -19
  206. data/lib/mailslurp_client/models/page_reputation_items.rb +19 -19
  207. data/lib/mailslurp_client/models/page_ruleset_dto.rb +19 -19
  208. data/lib/mailslurp_client/models/page_scheduled_jobs.rb +19 -19
  209. data/lib/mailslurp_client/models/page_sent_email_projection.rb +19 -19
  210. data/lib/mailslurp_client/models/page_sent_email_with_queue_projection.rb +19 -19
  211. data/lib/mailslurp_client/models/page_sent_sms_projection.rb +19 -19
  212. data/lib/mailslurp_client/models/page_sms_projection.rb +19 -19
  213. data/lib/mailslurp_client/models/page_template_projection.rb +19 -19
  214. data/lib/mailslurp_client/models/page_tracking_pixel_projection.rb +19 -19
  215. data/lib/mailslurp_client/models/page_unknown_missed_email_projection.rb +19 -19
  216. data/lib/mailslurp_client/models/page_webhook_endpoint_projection.rb +19 -19
  217. data/lib/mailslurp_client/models/page_webhook_projection.rb +19 -19
  218. data/lib/mailslurp_client/models/page_webhook_result.rb +19 -19
  219. data/lib/mailslurp_client/models/pageable_object.rb +22 -22
  220. data/lib/mailslurp_client/models/phone_message_thread_item_projection.rb +18 -18
  221. data/lib/mailslurp_client/models/phone_number_dto.rb +49 -4
  222. data/lib/mailslurp_client/models/phone_number_line_type_intelligence_dto.rb +242 -0
  223. data/lib/mailslurp_client/models/phone_number_line_type_lookup_dto.rb +286 -0
  224. data/lib/mailslurp_client/models/phone_number_projection.rb +81 -36
  225. data/lib/mailslurp_client/models/phone_number_release_projection.rb +39 -39
  226. data/lib/mailslurp_client/models/phone_pool_detail_dto.rb +334 -0
  227. data/lib/mailslurp_client/models/phone_pool_dto.rb +318 -0
  228. data/lib/mailslurp_client/models/phone_pool_lease_dto.rb +351 -0
  229. data/lib/mailslurp_client/models/phone_pool_member_dto.rb +333 -0
  230. data/lib/mailslurp_client/models/phone_provider_capabilities_result.rb +284 -0
  231. data/lib/mailslurp_client/models/phone_provisioning_job_dto.rb +434 -0
  232. data/lib/mailslurp_client/models/phone_provisioning_job_item_dto.rb +336 -0
  233. data/lib/mailslurp_client/models/phone_sms_prepaid_credit_dto.rb +340 -0
  234. data/lib/mailslurp_client/models/phone_sms_prepaid_credits_dto.rb +241 -0
  235. data/lib/mailslurp_client/models/plus_address_projection.rb +32 -32
  236. data/lib/mailslurp_client/models/recipient_projection.rb +13 -13
  237. data/lib/mailslurp_client/models/reputation_item_projection.rb +41 -41
  238. data/lib/mailslurp_client/models/search_available_phone_numbers_options.rb +377 -0
  239. data/lib/mailslurp_client/models/search_inboxes_options.rb +1 -1
  240. data/lib/mailslurp_client/models/sender_projection.rb +13 -13
  241. data/lib/mailslurp_client/models/sent_email_projection.rb +50 -50
  242. data/lib/mailslurp_client/models/sent_sms_projection.rb +18 -18
  243. data/lib/mailslurp_client/models/sms_projection.rb +18 -18
  244. data/lib/mailslurp_client/models/smtp_auth_diagnostic_result.rb +235 -0
  245. data/lib/mailslurp_client/models/smtp_diagnostic_step.rb +236 -0
  246. data/lib/mailslurp_client/models/smtp_tls_diagnostic_result.rb +245 -0
  247. data/lib/mailslurp_client/models/sort_object.rb +10 -10
  248. data/lib/mailslurp_client/models/spf_mechanism_result.rb +229 -0
  249. data/lib/mailslurp_client/models/template_projection.rb +41 -41
  250. data/lib/mailslurp_client/models/tenant_reputation_finding_dto.rb +322 -0
  251. data/lib/mailslurp_client/models/tenant_reputation_findings_dto.rb +241 -0
  252. data/lib/mailslurp_client/models/tenant_reputation_status_row_dto.rb +372 -0
  253. data/lib/mailslurp_client/models/tenant_reputation_status_summary_dto.rb +241 -0
  254. data/lib/mailslurp_client/models/test_smtp_server_options.rb +337 -0
  255. data/lib/mailslurp_client/models/test_smtp_server_results.rb +297 -0
  256. data/lib/mailslurp_client/models/tracking_pixel_projection.rb +27 -27
  257. data/lib/mailslurp_client/models/unknown_missed_email_projection.rb +27 -27
  258. data/lib/mailslurp_client/models/update_campaign_probe_options.rb +290 -0
  259. data/lib/mailslurp_client/models/update_deliverability_test_options.rb +327 -0
  260. data/lib/mailslurp_client/models/update_device_preview_feedback_options.rb +314 -0
  261. data/lib/mailslurp_client/models/update_domain_monitor_options.rb +266 -0
  262. data/lib/mailslurp_client/models/update_phone_pool_options.rb +215 -0
  263. data/lib/mailslurp_client/models/validation_dto.rb +1 -5
  264. data/lib/mailslurp_client/models/webhook_projection.rb +39 -39
  265. data/lib/mailslurp_client/version.rb +1 -1
  266. data/lib/mailslurp_client.rb +156 -0
  267. metadata +158 -2
@@ -0,0 +1,306 @@
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
+ # Most common failing phone country/variant dimensions
17
+ class DeliverabilityFailurePhoneDimensionHotspotDto
18
+ attr_accessor :phone_country
19
+
20
+ attr_accessor :phone_variant
21
+
22
+ attr_accessor :failed_run_count
23
+
24
+ attr_accessor :total_run_count
25
+
26
+ attr_accessor :failure_rate_percentage
27
+
28
+ class EnumAttributeValidator
29
+ attr_reader :datatype
30
+ attr_reader :allowable_values
31
+
32
+ def initialize(datatype, allowable_values)
33
+ @allowable_values = allowable_values.map do |value|
34
+ case datatype.to_s
35
+ when /Integer/i
36
+ value.to_i
37
+ when /Float/i
38
+ value.to_f
39
+ else
40
+ value
41
+ end
42
+ end
43
+ end
44
+
45
+ def valid?(value)
46
+ !value || allowable_values.include?(value)
47
+ end
48
+ end
49
+
50
+ # Attribute mapping from ruby-style variable name to JSON key.
51
+ def self.attribute_map
52
+ {
53
+ :'phone_country' => :'phoneCountry',
54
+ :'phone_variant' => :'phoneVariant',
55
+ :'failed_run_count' => :'failedRunCount',
56
+ :'total_run_count' => :'totalRunCount',
57
+ :'failure_rate_percentage' => :'failureRatePercentage'
58
+ }
59
+ end
60
+
61
+ # Attribute type mapping.
62
+ def self.openapi_types
63
+ {
64
+ :'phone_country' => :'String',
65
+ :'phone_variant' => :'String',
66
+ :'failed_run_count' => :'Integer',
67
+ :'total_run_count' => :'Integer',
68
+ :'failure_rate_percentage' => :'Float'
69
+ }
70
+ end
71
+
72
+ # List of attributes with nullable: true
73
+ def self.openapi_nullable
74
+ Set.new([
75
+ :'phone_country',
76
+ :'phone_variant',
77
+ ])
78
+ end
79
+
80
+ # Initializes the object
81
+ # @param [Hash] attributes Model attributes in the form of hash
82
+ def initialize(attributes = {})
83
+ if (!attributes.is_a?(Hash))
84
+ fail ArgumentError, "The input argument (attributes) must be a hash in `MailSlurpClient::DeliverabilityFailurePhoneDimensionHotspotDto` initialize method"
85
+ end
86
+
87
+ # check to see if the attribute exists and convert string to symbol for hash key
88
+ attributes = attributes.each_with_object({}) { |(k, v), h|
89
+ if (!self.class.attribute_map.key?(k.to_sym))
90
+ fail ArgumentError, "`#{k}` is not a valid attribute in `MailSlurpClient::DeliverabilityFailurePhoneDimensionHotspotDto`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
91
+ end
92
+ h[k.to_sym] = v
93
+ }
94
+
95
+ if attributes.key?(:'phone_country')
96
+ self.phone_country = attributes[:'phone_country']
97
+ end
98
+
99
+ if attributes.key?(:'phone_variant')
100
+ self.phone_variant = attributes[:'phone_variant']
101
+ end
102
+
103
+ if attributes.key?(:'failed_run_count')
104
+ self.failed_run_count = attributes[:'failed_run_count']
105
+ end
106
+
107
+ if attributes.key?(:'total_run_count')
108
+ self.total_run_count = attributes[:'total_run_count']
109
+ end
110
+
111
+ if attributes.key?(:'failure_rate_percentage')
112
+ self.failure_rate_percentage = attributes[:'failure_rate_percentage']
113
+ end
114
+ end
115
+
116
+ # Show invalid properties with the reasons. Usually used together with valid?
117
+ # @return Array for valid properties with the reasons
118
+ def list_invalid_properties
119
+ invalid_properties = Array.new
120
+ if @failed_run_count.nil?
121
+ invalid_properties.push('invalid value for "failed_run_count", failed_run_count cannot be nil.')
122
+ end
123
+
124
+ if @total_run_count.nil?
125
+ invalid_properties.push('invalid value for "total_run_count", total_run_count cannot be nil.')
126
+ end
127
+
128
+ if @failure_rate_percentage.nil?
129
+ invalid_properties.push('invalid value for "failure_rate_percentage", failure_rate_percentage cannot be nil.')
130
+ end
131
+
132
+ invalid_properties
133
+ end
134
+
135
+ # Check to see if the all the properties in the model are valid
136
+ # @return true if the model is valid
137
+ def valid?
138
+ phone_country_validator = EnumAttributeValidator.new('String', ["US", "GB", "AU", "CA", "EE", "HK", "PL", "PT", "NL", "IL", "FI", "SE"])
139
+ return false unless phone_country_validator.valid?(@phone_country)
140
+ phone_variant_validator = EnumAttributeValidator.new('String', ["LOCAL", "MOBILE", "TOLL_FREE"])
141
+ return false unless phone_variant_validator.valid?(@phone_variant)
142
+ return false if @failed_run_count.nil?
143
+ return false if @total_run_count.nil?
144
+ return false if @failure_rate_percentage.nil?
145
+ true
146
+ end
147
+
148
+ # Custom attribute writer method checking allowed values (enum).
149
+ # @param [Object] phone_country Object to be assigned
150
+ def phone_country=(phone_country)
151
+ validator = EnumAttributeValidator.new('String', ["US", "GB", "AU", "CA", "EE", "HK", "PL", "PT", "NL", "IL", "FI", "SE"])
152
+ unless validator.valid?(phone_country)
153
+ fail ArgumentError, "invalid value for \"phone_country\", must be one of #{validator.allowable_values}."
154
+ end
155
+ @phone_country = phone_country
156
+ end
157
+
158
+ # Custom attribute writer method checking allowed values (enum).
159
+ # @param [Object] phone_variant Object to be assigned
160
+ def phone_variant=(phone_variant)
161
+ validator = EnumAttributeValidator.new('String', ["LOCAL", "MOBILE", "TOLL_FREE"])
162
+ unless validator.valid?(phone_variant)
163
+ fail ArgumentError, "invalid value for \"phone_variant\", must be one of #{validator.allowable_values}."
164
+ end
165
+ @phone_variant = phone_variant
166
+ end
167
+
168
+ # Checks equality by comparing each attribute.
169
+ # @param [Object] Object to be compared
170
+ def ==(o)
171
+ return true if self.equal?(o)
172
+ self.class == o.class &&
173
+ phone_country == o.phone_country &&
174
+ phone_variant == o.phone_variant &&
175
+ failed_run_count == o.failed_run_count &&
176
+ total_run_count == o.total_run_count &&
177
+ failure_rate_percentage == o.failure_rate_percentage
178
+ end
179
+
180
+ # @see the `==` method
181
+ # @param [Object] Object to be compared
182
+ def eql?(o)
183
+ self == o
184
+ end
185
+
186
+ # Calculates hash code according to all attributes.
187
+ # @return [Integer] Hash code
188
+ def hash
189
+ [phone_country, phone_variant, failed_run_count, total_run_count, failure_rate_percentage].hash
190
+ end
191
+
192
+ # Builds the object from hash
193
+ # @param [Hash] attributes Model attributes in the form of hash
194
+ # @return [Object] Returns the model itself
195
+ def self.build_from_hash(attributes)
196
+ new.build_from_hash(attributes)
197
+ end
198
+
199
+ # Builds the object from hash
200
+ # @param [Hash] attributes Model attributes in the form of hash
201
+ # @return [Object] Returns the model itself
202
+ def build_from_hash(attributes)
203
+ return nil unless attributes.is_a?(Hash)
204
+ self.class.openapi_types.each_pair do |key, type|
205
+ if type =~ /\AArray<(.*)>/i
206
+ # check to ensure the input is an array given that the attribute
207
+ # is documented as an array but the input is not
208
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
209
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
210
+ end
211
+ elsif !attributes[self.class.attribute_map[key]].nil?
212
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
213
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
214
+ end
215
+
216
+ self
217
+ end
218
+
219
+ # Deserializes the data based on type
220
+ # @param string type Data type
221
+ # @param string value Value to be deserialized
222
+ # @return [Object] Deserialized data
223
+ def _deserialize(type, value)
224
+ case type.to_sym
225
+ when :DateTime
226
+ DateTime.parse(value)
227
+ when :Date
228
+ Date.parse(value)
229
+ when :String
230
+ value.to_s
231
+ when :Integer
232
+ value.to_i
233
+ when :Float
234
+ value.to_f
235
+ when :Boolean
236
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
237
+ true
238
+ else
239
+ false
240
+ end
241
+ when :Object
242
+ # generic object (usually a Hash), return directly
243
+ value
244
+ when /\AArray<(?<inner_type>.+)>\z/
245
+ inner_type = Regexp.last_match[:inner_type]
246
+ value.map { |v| _deserialize(inner_type, v) }
247
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
248
+ k_type = Regexp.last_match[:k_type]
249
+ v_type = Regexp.last_match[:v_type]
250
+ {}.tap do |hash|
251
+ value.each do |k, v|
252
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
253
+ end
254
+ end
255
+ else # model
256
+ MailSlurpClient.const_get(type).build_from_hash(value)
257
+ end
258
+ end
259
+
260
+ # Returns the string representation of the object
261
+ # @return [String] String presentation of the object
262
+ def to_s
263
+ to_hash.to_s
264
+ end
265
+
266
+ # to_body is an alias to to_hash (backward compatibility)
267
+ # @return [Hash] Returns the object in the form of hash
268
+ def to_body
269
+ to_hash
270
+ end
271
+
272
+ # Returns the object in the form of hash
273
+ # @return [Hash] Returns the object in the form of hash
274
+ def to_hash
275
+ hash = {}
276
+ self.class.attribute_map.each_pair do |attr, param|
277
+ value = self.send(attr)
278
+ if value.nil?
279
+ is_nullable = self.class.openapi_nullable.include?(attr)
280
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
281
+ end
282
+
283
+ hash[param] = _to_hash(value)
284
+ end
285
+ hash
286
+ end
287
+
288
+ # Outputs non-array value in the form of hash
289
+ # For object, use to_hash. Otherwise, just return the value
290
+ # @param [Object] value Any valid value
291
+ # @return [Hash] Returns the value in the form of hash
292
+ def _to_hash(value)
293
+ if value.is_a?(Array)
294
+ value.compact.map { |v| _to_hash(v) }
295
+ elsif value.is_a?(Hash)
296
+ {}.tap do |hash|
297
+ value.each { |k, v| hash[k] = _to_hash(v) }
298
+ end
299
+ elsif value.respond_to? :to_hash
300
+ value.to_hash
301
+ else
302
+ value
303
+ end
304
+ end
305
+ end
306
+ end
@@ -0,0 +1,250 @@
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
+ # Polling response for deliverability test progress
17
+ class DeliverabilityPollStatusResultDto
18
+ attr_accessor :test
19
+
20
+ attr_accessor :cached
21
+
22
+ attr_accessor :cache_window_seconds
23
+
24
+ attr_accessor :next_refresh_at
25
+
26
+ # Attribute mapping from ruby-style variable name to JSON key.
27
+ def self.attribute_map
28
+ {
29
+ :'test' => :'test',
30
+ :'cached' => :'cached',
31
+ :'cache_window_seconds' => :'cacheWindowSeconds',
32
+ :'next_refresh_at' => :'nextRefreshAt'
33
+ }
34
+ end
35
+
36
+ # Attribute type mapping.
37
+ def self.openapi_types
38
+ {
39
+ :'test' => :'DeliverabilityTestDto',
40
+ :'cached' => :'Boolean',
41
+ :'cache_window_seconds' => :'Integer',
42
+ :'next_refresh_at' => :'DateTime'
43
+ }
44
+ end
45
+
46
+ # List of attributes with nullable: true
47
+ def self.openapi_nullable
48
+ Set.new([
49
+ :'next_refresh_at'
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 `MailSlurpClient::DeliverabilityPollStatusResultDto` 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 `MailSlurpClient::DeliverabilityPollStatusResultDto`. 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?(:'test')
69
+ self.test = attributes[:'test']
70
+ end
71
+
72
+ if attributes.key?(:'cached')
73
+ self.cached = attributes[:'cached']
74
+ end
75
+
76
+ if attributes.key?(:'cache_window_seconds')
77
+ self.cache_window_seconds = attributes[:'cache_window_seconds']
78
+ end
79
+
80
+ if attributes.key?(:'next_refresh_at')
81
+ self.next_refresh_at = attributes[:'next_refresh_at']
82
+ end
83
+ end
84
+
85
+ # Show invalid properties with the reasons. Usually used together with valid?
86
+ # @return Array for valid properties with the reasons
87
+ def list_invalid_properties
88
+ invalid_properties = Array.new
89
+ if @test.nil?
90
+ invalid_properties.push('invalid value for "test", test cannot be nil.')
91
+ end
92
+
93
+ if @cached.nil?
94
+ invalid_properties.push('invalid value for "cached", cached cannot be nil.')
95
+ end
96
+
97
+ if @cache_window_seconds.nil?
98
+ invalid_properties.push('invalid value for "cache_window_seconds", cache_window_seconds cannot be nil.')
99
+ end
100
+
101
+ invalid_properties
102
+ end
103
+
104
+ # Check to see if the all the properties in the model are valid
105
+ # @return true if the model is valid
106
+ def valid?
107
+ return false if @test.nil?
108
+ return false if @cached.nil?
109
+ return false if @cache_window_seconds.nil?
110
+ true
111
+ end
112
+
113
+ # Checks equality by comparing each attribute.
114
+ # @param [Object] Object to be compared
115
+ def ==(o)
116
+ return true if self.equal?(o)
117
+ self.class == o.class &&
118
+ test == o.test &&
119
+ cached == o.cached &&
120
+ cache_window_seconds == o.cache_window_seconds &&
121
+ next_refresh_at == o.next_refresh_at
122
+ end
123
+
124
+ # @see the `==` method
125
+ # @param [Object] Object to be compared
126
+ def eql?(o)
127
+ self == o
128
+ end
129
+
130
+ # Calculates hash code according to all attributes.
131
+ # @return [Integer] Hash code
132
+ def hash
133
+ [test, cached, cache_window_seconds, next_refresh_at].hash
134
+ end
135
+
136
+ # Builds the object from hash
137
+ # @param [Hash] attributes Model attributes in the form of hash
138
+ # @return [Object] Returns the model itself
139
+ def self.build_from_hash(attributes)
140
+ new.build_from_hash(attributes)
141
+ end
142
+
143
+ # Builds the object from hash
144
+ # @param [Hash] attributes Model attributes in the form of hash
145
+ # @return [Object] Returns the model itself
146
+ def build_from_hash(attributes)
147
+ return nil unless attributes.is_a?(Hash)
148
+ self.class.openapi_types.each_pair do |key, type|
149
+ if type =~ /\AArray<(.*)>/i
150
+ # check to ensure the input is an array given that the attribute
151
+ # is documented as an array but the input is not
152
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
153
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
154
+ end
155
+ elsif !attributes[self.class.attribute_map[key]].nil?
156
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
157
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
158
+ end
159
+
160
+ self
161
+ end
162
+
163
+ # Deserializes the data based on type
164
+ # @param string type Data type
165
+ # @param string value Value to be deserialized
166
+ # @return [Object] Deserialized data
167
+ def _deserialize(type, value)
168
+ case type.to_sym
169
+ when :DateTime
170
+ DateTime.parse(value)
171
+ when :Date
172
+ Date.parse(value)
173
+ when :String
174
+ value.to_s
175
+ when :Integer
176
+ value.to_i
177
+ when :Float
178
+ value.to_f
179
+ when :Boolean
180
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
181
+ true
182
+ else
183
+ false
184
+ end
185
+ when :Object
186
+ # generic object (usually a Hash), return directly
187
+ value
188
+ when /\AArray<(?<inner_type>.+)>\z/
189
+ inner_type = Regexp.last_match[:inner_type]
190
+ value.map { |v| _deserialize(inner_type, v) }
191
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
192
+ k_type = Regexp.last_match[:k_type]
193
+ v_type = Regexp.last_match[:v_type]
194
+ {}.tap do |hash|
195
+ value.each do |k, v|
196
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
197
+ end
198
+ end
199
+ else # model
200
+ MailSlurpClient.const_get(type).build_from_hash(value)
201
+ end
202
+ end
203
+
204
+ # Returns the string representation of the object
205
+ # @return [String] String presentation of the object
206
+ def to_s
207
+ to_hash.to_s
208
+ end
209
+
210
+ # to_body is an alias to to_hash (backward compatibility)
211
+ # @return [Hash] Returns the object in the form of hash
212
+ def to_body
213
+ to_hash
214
+ end
215
+
216
+ # Returns the object in the form of hash
217
+ # @return [Hash] Returns the object in the form of hash
218
+ def to_hash
219
+ hash = {}
220
+ self.class.attribute_map.each_pair do |attr, param|
221
+ value = self.send(attr)
222
+ if value.nil?
223
+ is_nullable = self.class.openapi_nullable.include?(attr)
224
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
225
+ end
226
+
227
+ hash[param] = _to_hash(value)
228
+ end
229
+ hash
230
+ end
231
+
232
+ # Outputs non-array value in the form of hash
233
+ # For object, use to_hash. Otherwise, just return the value
234
+ # @param [Object] value Any valid value
235
+ # @return [Hash] Returns the value in the form of hash
236
+ def _to_hash(value)
237
+ if value.is_a?(Array)
238
+ value.compact.map { |v| _to_hash(v) }
239
+ elsif value.is_a?(Hash)
240
+ {}.tap do |hash|
241
+ value.each { |k, v| hash[k] = _to_hash(v) }
242
+ end
243
+ elsif value.respond_to? :to_hash
244
+ value.to_hash
245
+ else
246
+ value
247
+ end
248
+ end
249
+ end
250
+ end