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,644 @@
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 CampaignProbeRunDto
17
+ attr_accessor :id
18
+
19
+ attr_accessor :probe_id
20
+
21
+ attr_accessor :user_id
22
+
23
+ attr_accessor :status
24
+
25
+ attr_accessor :source
26
+
27
+ attr_accessor :health_score
28
+
29
+ attr_accessor :total_checks
30
+
31
+ attr_accessor :passing_checks
32
+
33
+ attr_accessor :failing_checks
34
+
35
+ attr_accessor :checked_links
36
+
37
+ attr_accessor :checked_images
38
+
39
+ attr_accessor :link_issue_count
40
+
41
+ attr_accessor :image_issue_count
42
+
43
+ attr_accessor :compatibility_warning_count
44
+
45
+ attr_accessor :compatibility_not_supported_count
46
+
47
+ attr_accessor :compatibility_unknown_count
48
+
49
+ attr_accessor :html_error_count
50
+
51
+ attr_accessor :html_warning_count
52
+
53
+ attr_accessor :html_info_count
54
+
55
+ attr_accessor :reputation_failure_count
56
+
57
+ attr_accessor :attachment_mention_issue_count
58
+
59
+ attr_accessor :insights
60
+
61
+ attr_accessor :error_message
62
+
63
+ attr_accessor :from_address
64
+
65
+ attr_accessor :recipient
66
+
67
+ attr_accessor :subject
68
+
69
+ attr_accessor :message_id
70
+
71
+ attr_accessor :source_message_id
72
+
73
+ attr_accessor :processing_ms
74
+
75
+ attr_accessor :created_at
76
+
77
+ attr_accessor :updated_at
78
+
79
+ class EnumAttributeValidator
80
+ attr_reader :datatype
81
+ attr_reader :allowable_values
82
+
83
+ def initialize(datatype, allowable_values)
84
+ @allowable_values = allowable_values.map do |value|
85
+ case datatype.to_s
86
+ when /Integer/i
87
+ value.to_i
88
+ when /Float/i
89
+ value.to_f
90
+ else
91
+ value
92
+ end
93
+ end
94
+ end
95
+
96
+ def valid?(value)
97
+ !value || allowable_values.include?(value)
98
+ end
99
+ end
100
+
101
+ # Attribute mapping from ruby-style variable name to JSON key.
102
+ def self.attribute_map
103
+ {
104
+ :'id' => :'id',
105
+ :'probe_id' => :'probeId',
106
+ :'user_id' => :'userId',
107
+ :'status' => :'status',
108
+ :'source' => :'source',
109
+ :'health_score' => :'healthScore',
110
+ :'total_checks' => :'totalChecks',
111
+ :'passing_checks' => :'passingChecks',
112
+ :'failing_checks' => :'failingChecks',
113
+ :'checked_links' => :'checkedLinks',
114
+ :'checked_images' => :'checkedImages',
115
+ :'link_issue_count' => :'linkIssueCount',
116
+ :'image_issue_count' => :'imageIssueCount',
117
+ :'compatibility_warning_count' => :'compatibilityWarningCount',
118
+ :'compatibility_not_supported_count' => :'compatibilityNotSupportedCount',
119
+ :'compatibility_unknown_count' => :'compatibilityUnknownCount',
120
+ :'html_error_count' => :'htmlErrorCount',
121
+ :'html_warning_count' => :'htmlWarningCount',
122
+ :'html_info_count' => :'htmlInfoCount',
123
+ :'reputation_failure_count' => :'reputationFailureCount',
124
+ :'attachment_mention_issue_count' => :'attachmentMentionIssueCount',
125
+ :'insights' => :'insights',
126
+ :'error_message' => :'errorMessage',
127
+ :'from_address' => :'fromAddress',
128
+ :'recipient' => :'recipient',
129
+ :'subject' => :'subject',
130
+ :'message_id' => :'messageId',
131
+ :'source_message_id' => :'sourceMessageId',
132
+ :'processing_ms' => :'processingMs',
133
+ :'created_at' => :'createdAt',
134
+ :'updated_at' => :'updatedAt'
135
+ }
136
+ end
137
+
138
+ # Attribute type mapping.
139
+ def self.openapi_types
140
+ {
141
+ :'id' => :'String',
142
+ :'probe_id' => :'String',
143
+ :'user_id' => :'String',
144
+ :'status' => :'String',
145
+ :'source' => :'String',
146
+ :'health_score' => :'Integer',
147
+ :'total_checks' => :'Integer',
148
+ :'passing_checks' => :'Integer',
149
+ :'failing_checks' => :'Integer',
150
+ :'checked_links' => :'Integer',
151
+ :'checked_images' => :'Integer',
152
+ :'link_issue_count' => :'Integer',
153
+ :'image_issue_count' => :'Integer',
154
+ :'compatibility_warning_count' => :'Integer',
155
+ :'compatibility_not_supported_count' => :'Integer',
156
+ :'compatibility_unknown_count' => :'Integer',
157
+ :'html_error_count' => :'Integer',
158
+ :'html_warning_count' => :'Integer',
159
+ :'html_info_count' => :'Integer',
160
+ :'reputation_failure_count' => :'Integer',
161
+ :'attachment_mention_issue_count' => :'Integer',
162
+ :'insights' => :'Array<String>',
163
+ :'error_message' => :'String',
164
+ :'from_address' => :'String',
165
+ :'recipient' => :'String',
166
+ :'subject' => :'String',
167
+ :'message_id' => :'String',
168
+ :'source_message_id' => :'String',
169
+ :'processing_ms' => :'Integer',
170
+ :'created_at' => :'DateTime',
171
+ :'updated_at' => :'DateTime'
172
+ }
173
+ end
174
+
175
+ # List of attributes with nullable: true
176
+ def self.openapi_nullable
177
+ Set.new([
178
+ ])
179
+ end
180
+
181
+ # Initializes the object
182
+ # @param [Hash] attributes Model attributes in the form of hash
183
+ def initialize(attributes = {})
184
+ if (!attributes.is_a?(Hash))
185
+ fail ArgumentError, "The input argument (attributes) must be a hash in `MailSlurpClient::CampaignProbeRunDto` initialize method"
186
+ end
187
+
188
+ # check to see if the attribute exists and convert string to symbol for hash key
189
+ attributes = attributes.each_with_object({}) { |(k, v), h|
190
+ if (!self.class.attribute_map.key?(k.to_sym))
191
+ fail ArgumentError, "`#{k}` is not a valid attribute in `MailSlurpClient::CampaignProbeRunDto`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
192
+ end
193
+ h[k.to_sym] = v
194
+ }
195
+
196
+ if attributes.key?(:'id')
197
+ self.id = attributes[:'id']
198
+ end
199
+
200
+ if attributes.key?(:'probe_id')
201
+ self.probe_id = attributes[:'probe_id']
202
+ end
203
+
204
+ if attributes.key?(:'user_id')
205
+ self.user_id = attributes[:'user_id']
206
+ end
207
+
208
+ if attributes.key?(:'status')
209
+ self.status = attributes[:'status']
210
+ end
211
+
212
+ if attributes.key?(:'source')
213
+ self.source = attributes[:'source']
214
+ end
215
+
216
+ if attributes.key?(:'health_score')
217
+ self.health_score = attributes[:'health_score']
218
+ end
219
+
220
+ if attributes.key?(:'total_checks')
221
+ self.total_checks = attributes[:'total_checks']
222
+ end
223
+
224
+ if attributes.key?(:'passing_checks')
225
+ self.passing_checks = attributes[:'passing_checks']
226
+ end
227
+
228
+ if attributes.key?(:'failing_checks')
229
+ self.failing_checks = attributes[:'failing_checks']
230
+ end
231
+
232
+ if attributes.key?(:'checked_links')
233
+ self.checked_links = attributes[:'checked_links']
234
+ end
235
+
236
+ if attributes.key?(:'checked_images')
237
+ self.checked_images = attributes[:'checked_images']
238
+ end
239
+
240
+ if attributes.key?(:'link_issue_count')
241
+ self.link_issue_count = attributes[:'link_issue_count']
242
+ end
243
+
244
+ if attributes.key?(:'image_issue_count')
245
+ self.image_issue_count = attributes[:'image_issue_count']
246
+ end
247
+
248
+ if attributes.key?(:'compatibility_warning_count')
249
+ self.compatibility_warning_count = attributes[:'compatibility_warning_count']
250
+ end
251
+
252
+ if attributes.key?(:'compatibility_not_supported_count')
253
+ self.compatibility_not_supported_count = attributes[:'compatibility_not_supported_count']
254
+ end
255
+
256
+ if attributes.key?(:'compatibility_unknown_count')
257
+ self.compatibility_unknown_count = attributes[:'compatibility_unknown_count']
258
+ end
259
+
260
+ if attributes.key?(:'html_error_count')
261
+ self.html_error_count = attributes[:'html_error_count']
262
+ end
263
+
264
+ if attributes.key?(:'html_warning_count')
265
+ self.html_warning_count = attributes[:'html_warning_count']
266
+ end
267
+
268
+ if attributes.key?(:'html_info_count')
269
+ self.html_info_count = attributes[:'html_info_count']
270
+ end
271
+
272
+ if attributes.key?(:'reputation_failure_count')
273
+ self.reputation_failure_count = attributes[:'reputation_failure_count']
274
+ end
275
+
276
+ if attributes.key?(:'attachment_mention_issue_count')
277
+ self.attachment_mention_issue_count = attributes[:'attachment_mention_issue_count']
278
+ end
279
+
280
+ if attributes.key?(:'insights')
281
+ if (value = attributes[:'insights']).is_a?(Array)
282
+ self.insights = value
283
+ end
284
+ end
285
+
286
+ if attributes.key?(:'error_message')
287
+ self.error_message = attributes[:'error_message']
288
+ end
289
+
290
+ if attributes.key?(:'from_address')
291
+ self.from_address = attributes[:'from_address']
292
+ end
293
+
294
+ if attributes.key?(:'recipient')
295
+ self.recipient = attributes[:'recipient']
296
+ end
297
+
298
+ if attributes.key?(:'subject')
299
+ self.subject = attributes[:'subject']
300
+ end
301
+
302
+ if attributes.key?(:'message_id')
303
+ self.message_id = attributes[:'message_id']
304
+ end
305
+
306
+ if attributes.key?(:'source_message_id')
307
+ self.source_message_id = attributes[:'source_message_id']
308
+ end
309
+
310
+ if attributes.key?(:'processing_ms')
311
+ self.processing_ms = attributes[:'processing_ms']
312
+ end
313
+
314
+ if attributes.key?(:'created_at')
315
+ self.created_at = attributes[:'created_at']
316
+ end
317
+
318
+ if attributes.key?(:'updated_at')
319
+ self.updated_at = attributes[:'updated_at']
320
+ end
321
+ end
322
+
323
+ # Show invalid properties with the reasons. Usually used together with valid?
324
+ # @return Array for valid properties with the reasons
325
+ def list_invalid_properties
326
+ invalid_properties = Array.new
327
+ if @id.nil?
328
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
329
+ end
330
+
331
+ if @probe_id.nil?
332
+ invalid_properties.push('invalid value for "probe_id", probe_id cannot be nil.')
333
+ end
334
+
335
+ if @user_id.nil?
336
+ invalid_properties.push('invalid value for "user_id", user_id cannot be nil.')
337
+ end
338
+
339
+ if @status.nil?
340
+ invalid_properties.push('invalid value for "status", status cannot be nil.')
341
+ end
342
+
343
+ if @source.nil?
344
+ invalid_properties.push('invalid value for "source", source cannot be nil.')
345
+ end
346
+
347
+ if @health_score.nil?
348
+ invalid_properties.push('invalid value for "health_score", health_score cannot be nil.')
349
+ end
350
+
351
+ if @total_checks.nil?
352
+ invalid_properties.push('invalid value for "total_checks", total_checks cannot be nil.')
353
+ end
354
+
355
+ if @passing_checks.nil?
356
+ invalid_properties.push('invalid value for "passing_checks", passing_checks cannot be nil.')
357
+ end
358
+
359
+ if @failing_checks.nil?
360
+ invalid_properties.push('invalid value for "failing_checks", failing_checks cannot be nil.')
361
+ end
362
+
363
+ if @checked_links.nil?
364
+ invalid_properties.push('invalid value for "checked_links", checked_links cannot be nil.')
365
+ end
366
+
367
+ if @checked_images.nil?
368
+ invalid_properties.push('invalid value for "checked_images", checked_images cannot be nil.')
369
+ end
370
+
371
+ if @link_issue_count.nil?
372
+ invalid_properties.push('invalid value for "link_issue_count", link_issue_count cannot be nil.')
373
+ end
374
+
375
+ if @image_issue_count.nil?
376
+ invalid_properties.push('invalid value for "image_issue_count", image_issue_count cannot be nil.')
377
+ end
378
+
379
+ if @compatibility_warning_count.nil?
380
+ invalid_properties.push('invalid value for "compatibility_warning_count", compatibility_warning_count cannot be nil.')
381
+ end
382
+
383
+ if @compatibility_not_supported_count.nil?
384
+ invalid_properties.push('invalid value for "compatibility_not_supported_count", compatibility_not_supported_count cannot be nil.')
385
+ end
386
+
387
+ if @compatibility_unknown_count.nil?
388
+ invalid_properties.push('invalid value for "compatibility_unknown_count", compatibility_unknown_count cannot be nil.')
389
+ end
390
+
391
+ if @html_error_count.nil?
392
+ invalid_properties.push('invalid value for "html_error_count", html_error_count cannot be nil.')
393
+ end
394
+
395
+ if @html_warning_count.nil?
396
+ invalid_properties.push('invalid value for "html_warning_count", html_warning_count cannot be nil.')
397
+ end
398
+
399
+ if @html_info_count.nil?
400
+ invalid_properties.push('invalid value for "html_info_count", html_info_count cannot be nil.')
401
+ end
402
+
403
+ if @reputation_failure_count.nil?
404
+ invalid_properties.push('invalid value for "reputation_failure_count", reputation_failure_count cannot be nil.')
405
+ end
406
+
407
+ if @attachment_mention_issue_count.nil?
408
+ invalid_properties.push('invalid value for "attachment_mention_issue_count", attachment_mention_issue_count cannot be nil.')
409
+ end
410
+
411
+ if @insights.nil?
412
+ invalid_properties.push('invalid value for "insights", insights cannot be nil.')
413
+ end
414
+
415
+ if @created_at.nil?
416
+ invalid_properties.push('invalid value for "created_at", created_at cannot be nil.')
417
+ end
418
+
419
+ if @updated_at.nil?
420
+ invalid_properties.push('invalid value for "updated_at", updated_at cannot be nil.')
421
+ end
422
+
423
+ invalid_properties
424
+ end
425
+
426
+ # Check to see if the all the properties in the model are valid
427
+ # @return true if the model is valid
428
+ def valid?
429
+ return false if @id.nil?
430
+ return false if @probe_id.nil?
431
+ return false if @user_id.nil?
432
+ return false if @status.nil?
433
+ status_validator = EnumAttributeValidator.new('String', ["HEALTHY", "WARNING", "FAILED"])
434
+ return false unless status_validator.valid?(@status)
435
+ return false if @source.nil?
436
+ source_validator = EnumAttributeValidator.new('String', ["DIRECT_API", "SES_MONITOR", "USER_SCHEDULE", "CRON", "SCHEDULER"])
437
+ return false unless source_validator.valid?(@source)
438
+ return false if @health_score.nil?
439
+ return false if @total_checks.nil?
440
+ return false if @passing_checks.nil?
441
+ return false if @failing_checks.nil?
442
+ return false if @checked_links.nil?
443
+ return false if @checked_images.nil?
444
+ return false if @link_issue_count.nil?
445
+ return false if @image_issue_count.nil?
446
+ return false if @compatibility_warning_count.nil?
447
+ return false if @compatibility_not_supported_count.nil?
448
+ return false if @compatibility_unknown_count.nil?
449
+ return false if @html_error_count.nil?
450
+ return false if @html_warning_count.nil?
451
+ return false if @html_info_count.nil?
452
+ return false if @reputation_failure_count.nil?
453
+ return false if @attachment_mention_issue_count.nil?
454
+ return false if @insights.nil?
455
+ return false if @created_at.nil?
456
+ return false if @updated_at.nil?
457
+ true
458
+ end
459
+
460
+ # Custom attribute writer method checking allowed values (enum).
461
+ # @param [Object] status Object to be assigned
462
+ def status=(status)
463
+ validator = EnumAttributeValidator.new('String', ["HEALTHY", "WARNING", "FAILED"])
464
+ unless validator.valid?(status)
465
+ fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
466
+ end
467
+ @status = status
468
+ end
469
+
470
+ # Custom attribute writer method checking allowed values (enum).
471
+ # @param [Object] source Object to be assigned
472
+ def source=(source)
473
+ validator = EnumAttributeValidator.new('String', ["DIRECT_API", "SES_MONITOR", "USER_SCHEDULE", "CRON", "SCHEDULER"])
474
+ unless validator.valid?(source)
475
+ fail ArgumentError, "invalid value for \"source\", must be one of #{validator.allowable_values}."
476
+ end
477
+ @source = source
478
+ end
479
+
480
+ # Checks equality by comparing each attribute.
481
+ # @param [Object] Object to be compared
482
+ def ==(o)
483
+ return true if self.equal?(o)
484
+ self.class == o.class &&
485
+ id == o.id &&
486
+ probe_id == o.probe_id &&
487
+ user_id == o.user_id &&
488
+ status == o.status &&
489
+ source == o.source &&
490
+ health_score == o.health_score &&
491
+ total_checks == o.total_checks &&
492
+ passing_checks == o.passing_checks &&
493
+ failing_checks == o.failing_checks &&
494
+ checked_links == o.checked_links &&
495
+ checked_images == o.checked_images &&
496
+ link_issue_count == o.link_issue_count &&
497
+ image_issue_count == o.image_issue_count &&
498
+ compatibility_warning_count == o.compatibility_warning_count &&
499
+ compatibility_not_supported_count == o.compatibility_not_supported_count &&
500
+ compatibility_unknown_count == o.compatibility_unknown_count &&
501
+ html_error_count == o.html_error_count &&
502
+ html_warning_count == o.html_warning_count &&
503
+ html_info_count == o.html_info_count &&
504
+ reputation_failure_count == o.reputation_failure_count &&
505
+ attachment_mention_issue_count == o.attachment_mention_issue_count &&
506
+ insights == o.insights &&
507
+ error_message == o.error_message &&
508
+ from_address == o.from_address &&
509
+ recipient == o.recipient &&
510
+ subject == o.subject &&
511
+ message_id == o.message_id &&
512
+ source_message_id == o.source_message_id &&
513
+ processing_ms == o.processing_ms &&
514
+ created_at == o.created_at &&
515
+ updated_at == o.updated_at
516
+ end
517
+
518
+ # @see the `==` method
519
+ # @param [Object] Object to be compared
520
+ def eql?(o)
521
+ self == o
522
+ end
523
+
524
+ # Calculates hash code according to all attributes.
525
+ # @return [Integer] Hash code
526
+ def hash
527
+ [id, probe_id, user_id, status, source, health_score, total_checks, passing_checks, failing_checks, checked_links, checked_images, link_issue_count, image_issue_count, compatibility_warning_count, compatibility_not_supported_count, compatibility_unknown_count, html_error_count, html_warning_count, html_info_count, reputation_failure_count, attachment_mention_issue_count, insights, error_message, from_address, recipient, subject, message_id, source_message_id, processing_ms, created_at, updated_at].hash
528
+ end
529
+
530
+ # Builds the object from hash
531
+ # @param [Hash] attributes Model attributes in the form of hash
532
+ # @return [Object] Returns the model itself
533
+ def self.build_from_hash(attributes)
534
+ new.build_from_hash(attributes)
535
+ end
536
+
537
+ # Builds the object from hash
538
+ # @param [Hash] attributes Model attributes in the form of hash
539
+ # @return [Object] Returns the model itself
540
+ def build_from_hash(attributes)
541
+ return nil unless attributes.is_a?(Hash)
542
+ self.class.openapi_types.each_pair do |key, type|
543
+ if type =~ /\AArray<(.*)>/i
544
+ # check to ensure the input is an array given that the attribute
545
+ # is documented as an array but the input is not
546
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
547
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
548
+ end
549
+ elsif !attributes[self.class.attribute_map[key]].nil?
550
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
551
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
552
+ end
553
+
554
+ self
555
+ end
556
+
557
+ # Deserializes the data based on type
558
+ # @param string type Data type
559
+ # @param string value Value to be deserialized
560
+ # @return [Object] Deserialized data
561
+ def _deserialize(type, value)
562
+ case type.to_sym
563
+ when :DateTime
564
+ DateTime.parse(value)
565
+ when :Date
566
+ Date.parse(value)
567
+ when :String
568
+ value.to_s
569
+ when :Integer
570
+ value.to_i
571
+ when :Float
572
+ value.to_f
573
+ when :Boolean
574
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
575
+ true
576
+ else
577
+ false
578
+ end
579
+ when :Object
580
+ # generic object (usually a Hash), return directly
581
+ value
582
+ when /\AArray<(?<inner_type>.+)>\z/
583
+ inner_type = Regexp.last_match[:inner_type]
584
+ value.map { |v| _deserialize(inner_type, v) }
585
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
586
+ k_type = Regexp.last_match[:k_type]
587
+ v_type = Regexp.last_match[:v_type]
588
+ {}.tap do |hash|
589
+ value.each do |k, v|
590
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
591
+ end
592
+ end
593
+ else # model
594
+ MailSlurpClient.const_get(type).build_from_hash(value)
595
+ end
596
+ end
597
+
598
+ # Returns the string representation of the object
599
+ # @return [String] String presentation of the object
600
+ def to_s
601
+ to_hash.to_s
602
+ end
603
+
604
+ # to_body is an alias to to_hash (backward compatibility)
605
+ # @return [Hash] Returns the object in the form of hash
606
+ def to_body
607
+ to_hash
608
+ end
609
+
610
+ # Returns the object in the form of hash
611
+ # @return [Hash] Returns the object in the form of hash
612
+ def to_hash
613
+ hash = {}
614
+ self.class.attribute_map.each_pair do |attr, param|
615
+ value = self.send(attr)
616
+ if value.nil?
617
+ is_nullable = self.class.openapi_nullable.include?(attr)
618
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
619
+ end
620
+
621
+ hash[param] = _to_hash(value)
622
+ end
623
+ hash
624
+ end
625
+
626
+ # Outputs non-array value in the form of hash
627
+ # For object, use to_hash. Otherwise, just return the value
628
+ # @param [Object] value Any valid value
629
+ # @return [Hash] Returns the value in the form of hash
630
+ def _to_hash(value)
631
+ if value.is_a?(Array)
632
+ value.compact.map { |v| _to_hash(v) }
633
+ elsif value.is_a?(Hash)
634
+ {}.tap do |hash|
635
+ value.each { |k, v| hash[k] = _to_hash(v) }
636
+ end
637
+ elsif value.respond_to? :to_hash
638
+ value.to_hash
639
+ else
640
+ value
641
+ end
642
+ end
643
+ end
644
+ end