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,408 @@
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 CampaignProbeInsightsDto
17
+ attr_accessor :probe_id
18
+
19
+ attr_accessor :since
20
+
21
+ attr_accessor :before
22
+
23
+ attr_accessor :total_runs
24
+
25
+ attr_accessor :healthy_runs
26
+
27
+ attr_accessor :warning_runs
28
+
29
+ attr_accessor :failed_runs
30
+
31
+ attr_accessor :success_rate
32
+
33
+ attr_accessor :average_health_score
34
+
35
+ attr_accessor :current_healthy_streak
36
+
37
+ attr_accessor :best_healthy_streak
38
+
39
+ attr_accessor :good_performance_signals
40
+
41
+ attr_accessor :attention_signals
42
+
43
+ attr_accessor :top_findings
44
+
45
+ attr_accessor :latest_run
46
+
47
+ # Attribute mapping from ruby-style variable name to JSON key.
48
+ def self.attribute_map
49
+ {
50
+ :'probe_id' => :'probeId',
51
+ :'since' => :'since',
52
+ :'before' => :'before',
53
+ :'total_runs' => :'totalRuns',
54
+ :'healthy_runs' => :'healthyRuns',
55
+ :'warning_runs' => :'warningRuns',
56
+ :'failed_runs' => :'failedRuns',
57
+ :'success_rate' => :'successRate',
58
+ :'average_health_score' => :'averageHealthScore',
59
+ :'current_healthy_streak' => :'currentHealthyStreak',
60
+ :'best_healthy_streak' => :'bestHealthyStreak',
61
+ :'good_performance_signals' => :'goodPerformanceSignals',
62
+ :'attention_signals' => :'attentionSignals',
63
+ :'top_findings' => :'topFindings',
64
+ :'latest_run' => :'latestRun'
65
+ }
66
+ end
67
+
68
+ # Attribute type mapping.
69
+ def self.openapi_types
70
+ {
71
+ :'probe_id' => :'String',
72
+ :'since' => :'DateTime',
73
+ :'before' => :'DateTime',
74
+ :'total_runs' => :'Integer',
75
+ :'healthy_runs' => :'Integer',
76
+ :'warning_runs' => :'Integer',
77
+ :'failed_runs' => :'Integer',
78
+ :'success_rate' => :'Float',
79
+ :'average_health_score' => :'Float',
80
+ :'current_healthy_streak' => :'Integer',
81
+ :'best_healthy_streak' => :'Integer',
82
+ :'good_performance_signals' => :'Array<String>',
83
+ :'attention_signals' => :'Array<String>',
84
+ :'top_findings' => :'Array<String>',
85
+ :'latest_run' => :'CampaignProbeRunDto'
86
+ }
87
+ end
88
+
89
+ # List of attributes with nullable: true
90
+ def self.openapi_nullable
91
+ Set.new([
92
+ ])
93
+ end
94
+
95
+ # Initializes the object
96
+ # @param [Hash] attributes Model attributes in the form of hash
97
+ def initialize(attributes = {})
98
+ if (!attributes.is_a?(Hash))
99
+ fail ArgumentError, "The input argument (attributes) must be a hash in `MailSlurpClient::CampaignProbeInsightsDto` initialize method"
100
+ end
101
+
102
+ # check to see if the attribute exists and convert string to symbol for hash key
103
+ attributes = attributes.each_with_object({}) { |(k, v), h|
104
+ if (!self.class.attribute_map.key?(k.to_sym))
105
+ fail ArgumentError, "`#{k}` is not a valid attribute in `MailSlurpClient::CampaignProbeInsightsDto`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
106
+ end
107
+ h[k.to_sym] = v
108
+ }
109
+
110
+ if attributes.key?(:'probe_id')
111
+ self.probe_id = attributes[:'probe_id']
112
+ end
113
+
114
+ if attributes.key?(:'since')
115
+ self.since = attributes[:'since']
116
+ end
117
+
118
+ if attributes.key?(:'before')
119
+ self.before = attributes[:'before']
120
+ end
121
+
122
+ if attributes.key?(:'total_runs')
123
+ self.total_runs = attributes[:'total_runs']
124
+ end
125
+
126
+ if attributes.key?(:'healthy_runs')
127
+ self.healthy_runs = attributes[:'healthy_runs']
128
+ end
129
+
130
+ if attributes.key?(:'warning_runs')
131
+ self.warning_runs = attributes[:'warning_runs']
132
+ end
133
+
134
+ if attributes.key?(:'failed_runs')
135
+ self.failed_runs = attributes[:'failed_runs']
136
+ end
137
+
138
+ if attributes.key?(:'success_rate')
139
+ self.success_rate = attributes[:'success_rate']
140
+ end
141
+
142
+ if attributes.key?(:'average_health_score')
143
+ self.average_health_score = attributes[:'average_health_score']
144
+ end
145
+
146
+ if attributes.key?(:'current_healthy_streak')
147
+ self.current_healthy_streak = attributes[:'current_healthy_streak']
148
+ end
149
+
150
+ if attributes.key?(:'best_healthy_streak')
151
+ self.best_healthy_streak = attributes[:'best_healthy_streak']
152
+ end
153
+
154
+ if attributes.key?(:'good_performance_signals')
155
+ if (value = attributes[:'good_performance_signals']).is_a?(Array)
156
+ self.good_performance_signals = value
157
+ end
158
+ end
159
+
160
+ if attributes.key?(:'attention_signals')
161
+ if (value = attributes[:'attention_signals']).is_a?(Array)
162
+ self.attention_signals = value
163
+ end
164
+ end
165
+
166
+ if attributes.key?(:'top_findings')
167
+ if (value = attributes[:'top_findings']).is_a?(Array)
168
+ self.top_findings = value
169
+ end
170
+ end
171
+
172
+ if attributes.key?(:'latest_run')
173
+ self.latest_run = attributes[:'latest_run']
174
+ end
175
+ end
176
+
177
+ # Show invalid properties with the reasons. Usually used together with valid?
178
+ # @return Array for valid properties with the reasons
179
+ def list_invalid_properties
180
+ invalid_properties = Array.new
181
+ if @probe_id.nil?
182
+ invalid_properties.push('invalid value for "probe_id", probe_id cannot be nil.')
183
+ end
184
+
185
+ if @since.nil?
186
+ invalid_properties.push('invalid value for "since", since cannot be nil.')
187
+ end
188
+
189
+ if @before.nil?
190
+ invalid_properties.push('invalid value for "before", before cannot be nil.')
191
+ end
192
+
193
+ if @total_runs.nil?
194
+ invalid_properties.push('invalid value for "total_runs", total_runs cannot be nil.')
195
+ end
196
+
197
+ if @healthy_runs.nil?
198
+ invalid_properties.push('invalid value for "healthy_runs", healthy_runs cannot be nil.')
199
+ end
200
+
201
+ if @warning_runs.nil?
202
+ invalid_properties.push('invalid value for "warning_runs", warning_runs cannot be nil.')
203
+ end
204
+
205
+ if @failed_runs.nil?
206
+ invalid_properties.push('invalid value for "failed_runs", failed_runs cannot be nil.')
207
+ end
208
+
209
+ if @success_rate.nil?
210
+ invalid_properties.push('invalid value for "success_rate", success_rate cannot be nil.')
211
+ end
212
+
213
+ if @average_health_score.nil?
214
+ invalid_properties.push('invalid value for "average_health_score", average_health_score cannot be nil.')
215
+ end
216
+
217
+ if @current_healthy_streak.nil?
218
+ invalid_properties.push('invalid value for "current_healthy_streak", current_healthy_streak cannot be nil.')
219
+ end
220
+
221
+ if @best_healthy_streak.nil?
222
+ invalid_properties.push('invalid value for "best_healthy_streak", best_healthy_streak cannot be nil.')
223
+ end
224
+
225
+ if @good_performance_signals.nil?
226
+ invalid_properties.push('invalid value for "good_performance_signals", good_performance_signals cannot be nil.')
227
+ end
228
+
229
+ if @attention_signals.nil?
230
+ invalid_properties.push('invalid value for "attention_signals", attention_signals cannot be nil.')
231
+ end
232
+
233
+ if @top_findings.nil?
234
+ invalid_properties.push('invalid value for "top_findings", top_findings cannot be nil.')
235
+ end
236
+
237
+ invalid_properties
238
+ end
239
+
240
+ # Check to see if the all the properties in the model are valid
241
+ # @return true if the model is valid
242
+ def valid?
243
+ return false if @probe_id.nil?
244
+ return false if @since.nil?
245
+ return false if @before.nil?
246
+ return false if @total_runs.nil?
247
+ return false if @healthy_runs.nil?
248
+ return false if @warning_runs.nil?
249
+ return false if @failed_runs.nil?
250
+ return false if @success_rate.nil?
251
+ return false if @average_health_score.nil?
252
+ return false if @current_healthy_streak.nil?
253
+ return false if @best_healthy_streak.nil?
254
+ return false if @good_performance_signals.nil?
255
+ return false if @attention_signals.nil?
256
+ return false if @top_findings.nil?
257
+ true
258
+ end
259
+
260
+ # Checks equality by comparing each attribute.
261
+ # @param [Object] Object to be compared
262
+ def ==(o)
263
+ return true if self.equal?(o)
264
+ self.class == o.class &&
265
+ probe_id == o.probe_id &&
266
+ since == o.since &&
267
+ before == o.before &&
268
+ total_runs == o.total_runs &&
269
+ healthy_runs == o.healthy_runs &&
270
+ warning_runs == o.warning_runs &&
271
+ failed_runs == o.failed_runs &&
272
+ success_rate == o.success_rate &&
273
+ average_health_score == o.average_health_score &&
274
+ current_healthy_streak == o.current_healthy_streak &&
275
+ best_healthy_streak == o.best_healthy_streak &&
276
+ good_performance_signals == o.good_performance_signals &&
277
+ attention_signals == o.attention_signals &&
278
+ top_findings == o.top_findings &&
279
+ latest_run == o.latest_run
280
+ end
281
+
282
+ # @see the `==` method
283
+ # @param [Object] Object to be compared
284
+ def eql?(o)
285
+ self == o
286
+ end
287
+
288
+ # Calculates hash code according to all attributes.
289
+ # @return [Integer] Hash code
290
+ def hash
291
+ [probe_id, since, before, total_runs, healthy_runs, warning_runs, failed_runs, success_rate, average_health_score, current_healthy_streak, best_healthy_streak, good_performance_signals, attention_signals, top_findings, latest_run].hash
292
+ end
293
+
294
+ # Builds the object from hash
295
+ # @param [Hash] attributes Model attributes in the form of hash
296
+ # @return [Object] Returns the model itself
297
+ def self.build_from_hash(attributes)
298
+ new.build_from_hash(attributes)
299
+ end
300
+
301
+ # Builds the object from hash
302
+ # @param [Hash] attributes Model attributes in the form of hash
303
+ # @return [Object] Returns the model itself
304
+ def build_from_hash(attributes)
305
+ return nil unless attributes.is_a?(Hash)
306
+ self.class.openapi_types.each_pair do |key, type|
307
+ if type =~ /\AArray<(.*)>/i
308
+ # check to ensure the input is an array given that the attribute
309
+ # is documented as an array but the input is not
310
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
311
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
312
+ end
313
+ elsif !attributes[self.class.attribute_map[key]].nil?
314
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
315
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
316
+ end
317
+
318
+ self
319
+ end
320
+
321
+ # Deserializes the data based on type
322
+ # @param string type Data type
323
+ # @param string value Value to be deserialized
324
+ # @return [Object] Deserialized data
325
+ def _deserialize(type, value)
326
+ case type.to_sym
327
+ when :DateTime
328
+ DateTime.parse(value)
329
+ when :Date
330
+ Date.parse(value)
331
+ when :String
332
+ value.to_s
333
+ when :Integer
334
+ value.to_i
335
+ when :Float
336
+ value.to_f
337
+ when :Boolean
338
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
339
+ true
340
+ else
341
+ false
342
+ end
343
+ when :Object
344
+ # generic object (usually a Hash), return directly
345
+ value
346
+ when /\AArray<(?<inner_type>.+)>\z/
347
+ inner_type = Regexp.last_match[:inner_type]
348
+ value.map { |v| _deserialize(inner_type, v) }
349
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
350
+ k_type = Regexp.last_match[:k_type]
351
+ v_type = Regexp.last_match[:v_type]
352
+ {}.tap do |hash|
353
+ value.each do |k, v|
354
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
355
+ end
356
+ end
357
+ else # model
358
+ MailSlurpClient.const_get(type).build_from_hash(value)
359
+ end
360
+ end
361
+
362
+ # Returns the string representation of the object
363
+ # @return [String] String presentation of the object
364
+ def to_s
365
+ to_hash.to_s
366
+ end
367
+
368
+ # to_body is an alias to to_hash (backward compatibility)
369
+ # @return [Hash] Returns the object in the form of hash
370
+ def to_body
371
+ to_hash
372
+ end
373
+
374
+ # Returns the object in the form of hash
375
+ # @return [Hash] Returns the object in the form of hash
376
+ def to_hash
377
+ hash = {}
378
+ self.class.attribute_map.each_pair do |attr, param|
379
+ value = self.send(attr)
380
+ if value.nil?
381
+ is_nullable = self.class.openapi_nullable.include?(attr)
382
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
383
+ end
384
+
385
+ hash[param] = _to_hash(value)
386
+ end
387
+ hash
388
+ end
389
+
390
+ # Outputs non-array value in the form of hash
391
+ # For object, use to_hash. Otherwise, just return the value
392
+ # @param [Object] value Any valid value
393
+ # @return [Hash] Returns the value in the form of hash
394
+ def _to_hash(value)
395
+ if value.is_a?(Array)
396
+ value.compact.map { |v| _to_hash(v) }
397
+ elsif value.is_a?(Hash)
398
+ {}.tap do |hash|
399
+ value.each { |k, v| hash[k] = _to_hash(v) }
400
+ end
401
+ elsif value.respond_to? :to_hash
402
+ value.to_hash
403
+ else
404
+ value
405
+ end
406
+ end
407
+ end
408
+ end