mailslurp_client 17.2.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 (176) hide show
  1. checksums.yaml +4 -4
  2. data/lib/mailslurp_client/api/campaign_probe_controller_api.rb +138 -0
  3. data/lib/mailslurp_client/api/domain_monitor_controller_api.rb +264 -0
  4. data/lib/mailslurp_client/api/email_audit_controller_api.rb +334 -0
  5. data/lib/mailslurp_client/api/email_controller_api.rb +124 -0
  6. data/lib/mailslurp_client/api/inbox_controller_api.rb +4 -4
  7. data/lib/mailslurp_client/api/phone_controller_api.rb +1312 -81
  8. data/lib/mailslurp_client/api/sms_controller_api.rb +125 -0
  9. data/lib/mailslurp_client/api/tools_controller_api.rb +806 -0
  10. data/lib/mailslurp_client/models/abstract_webhook_payload.rb +15 -15
  11. data/lib/mailslurp_client/models/acquire_phone_pool_lease_options.rb +233 -0
  12. data/lib/mailslurp_client/models/add_phone_pool_numbers_options.rb +213 -0
  13. data/lib/mailslurp_client/models/ai_transform_mapping_projection.rb +27 -27
  14. data/lib/mailslurp_client/models/ai_transform_projection.rb +28 -28
  15. data/lib/mailslurp_client/models/alias_projection.rb +45 -45
  16. data/lib/mailslurp_client/models/alias_thread_projection.rb +42 -42
  17. data/lib/mailslurp_client/models/analyze_dmarc_report_options.rb +248 -0
  18. data/lib/mailslurp_client/models/analyze_dmarc_report_results.rb +386 -0
  19. data/lib/mailslurp_client/models/analyze_email_headers_options.rb +240 -0
  20. data/lib/mailslurp_client/models/analyze_email_headers_results.rb +275 -0
  21. data/lib/mailslurp_client/models/attachment_projection.rb +50 -50
  22. data/lib/mailslurp_client/models/available_phone_number_dto.rb +325 -0
  23. data/lib/mailslurp_client/models/available_phone_numbers_result.rb +236 -0
  24. data/lib/mailslurp_client/models/bounce_projection.rb +28 -28
  25. data/lib/mailslurp_client/models/bounce_recipient_projection.rb +10 -10
  26. data/lib/mailslurp_client/models/campaign_probe_run_comparison_dto.rb +397 -0
  27. data/lib/mailslurp_client/models/check_campaign_probe_options.rb +371 -0
  28. data/lib/mailslurp_client/models/check_campaign_probe_results.rb +482 -0
  29. data/lib/mailslurp_client/models/check_dns_propagation_options.rb +297 -0
  30. data/lib/mailslurp_client/models/check_dns_propagation_results.rb +361 -0
  31. data/lib/mailslurp_client/models/check_domain_monitor_options.rb +243 -0
  32. data/lib/mailslurp_client/models/check_domain_monitor_results.rb +398 -0
  33. data/lib/mailslurp_client/models/check_email_audit_options.rb +405 -0
  34. data/lib/mailslurp_client/models/check_email_auth_stack_options.rb +248 -0
  35. data/lib/mailslurp_client/models/check_email_auth_stack_results.rb +462 -0
  36. data/lib/mailslurp_client/models/check_email_blacklist_options.rb +241 -0
  37. data/lib/mailslurp_client/models/check_email_blacklist_results.rb +366 -0
  38. data/lib/mailslurp_client/models/connector_event_projection.rb +42 -42
  39. data/lib/mailslurp_client/models/connector_projection.rb +42 -42
  40. data/lib/mailslurp_client/models/contact_projection.rb +15 -15
  41. data/lib/mailslurp_client/models/create_email_audit_options.rb +394 -0
  42. data/lib/mailslurp_client/models/create_phone_number_options.rb +25 -4
  43. data/lib/mailslurp_client/models/create_phone_pool_options.rb +220 -0
  44. data/lib/mailslurp_client/models/create_phone_provisioning_job_item_options.rb +256 -0
  45. data/lib/mailslurp_client/models/create_phone_provisioning_job_options.rb +284 -0
  46. data/lib/mailslurp_client/models/dmarc_report_metadata.rb +308 -0
  47. data/lib/mailslurp_client/models/dmarc_report_source_summary.rb +274 -0
  48. data/lib/mailslurp_client/models/dns_propagation_resolver_result.rb +252 -0
  49. data/lib/mailslurp_client/models/domain_monitor_run_comparison_dto.rb +369 -0
  50. data/lib/mailslurp_client/models/domain_monitor_summary_dto.rb +248 -0
  51. data/lib/mailslurp_client/models/email_audit_analysis_result.rb +620 -0
  52. data/lib/mailslurp_client/models/email_audit_comparison_dto.rb +411 -0
  53. data/lib/mailslurp_client/models/email_audit_dto.rb +308 -0
  54. data/lib/mailslurp_client/models/email_audit_spelling_issue.rb +276 -0
  55. data/lib/mailslurp_client/models/email_audit_url_issue.rb +236 -0
  56. data/lib/mailslurp_client/models/email_blacklist_ip_result.rb +242 -0
  57. data/lib/mailslurp_client/models/email_blacklist_listing_result.rb +258 -0
  58. data/lib/mailslurp_client/models/email_header_analysis_summary.rb +242 -0
  59. data/lib/mailslurp_client/models/email_header_received_hop.rb +242 -0
  60. data/lib/mailslurp_client/models/email_projection.rb +88 -88
  61. data/lib/mailslurp_client/models/email_thread_projection.rb +54 -54
  62. data/lib/mailslurp_client/models/entity_automation_item_projection.rb +33 -33
  63. data/lib/mailslurp_client/models/entity_event_item_projection.rb +42 -42
  64. data/lib/mailslurp_client/models/entity_favourite_item_projection.rb +29 -29
  65. data/lib/mailslurp_client/models/expired_inbox_record_projection.rb +27 -27
  66. data/lib/mailslurp_client/models/generate_spf_record_options.rb +357 -0
  67. data/lib/mailslurp_client/models/generate_spf_record_results.rb +318 -0
  68. data/lib/mailslurp_client/models/get_or_create_phone_pool_options.rb +220 -0
  69. data/lib/mailslurp_client/models/group_projection.rb +15 -15
  70. data/lib/mailslurp_client/models/guest_portal_user_projection.rb +47 -47
  71. data/lib/mailslurp_client/models/imap_email_projection.rb +18 -18
  72. data/lib/mailslurp_client/models/inbox_forwarder_event_projection.rb +21 -21
  73. data/lib/mailslurp_client/models/inbox_replier_event_projection.rb +33 -33
  74. data/lib/mailslurp_client/models/list_unsubscribe_recipient_projection.rb +19 -19
  75. data/lib/mailslurp_client/models/lookup_dkim_domain_options.rb +275 -0
  76. data/lib/mailslurp_client/models/lookup_dkim_domain_results.rb +304 -0
  77. data/lib/mailslurp_client/models/lookup_ptr_options.rb +241 -0
  78. data/lib/mailslurp_client/models/lookup_ptr_results.rb +305 -0
  79. data/lib/mailslurp_client/models/lookup_spf_domain_options.rb +240 -0
  80. data/lib/mailslurp_client/models/lookup_spf_domain_results.rb +305 -0
  81. data/lib/mailslurp_client/models/missed_email_projection.rb +28 -28
  82. data/lib/mailslurp_client/models/missed_sms_projection.rb +32 -32
  83. data/lib/mailslurp_client/models/opt_in_identity_projection.rb +18 -18
  84. data/lib/mailslurp_client/models/page_ai_transform_mapping_projection.rb +19 -19
  85. data/lib/mailslurp_client/models/page_ai_transform_projection.rb +19 -19
  86. data/lib/mailslurp_client/models/page_ai_transform_result_projection.rb +19 -19
  87. data/lib/mailslurp_client/models/page_alias.rb +19 -19
  88. data/lib/mailslurp_client/models/page_alias_thread_projection.rb +19 -19
  89. data/lib/mailslurp_client/models/page_attachment_entity.rb +19 -19
  90. data/lib/mailslurp_client/models/page_bounced_email.rb +19 -19
  91. data/lib/mailslurp_client/models/page_bounced_recipients.rb +19 -19
  92. data/lib/mailslurp_client/models/page_complaint.rb +19 -19
  93. data/lib/mailslurp_client/models/page_connector.rb +19 -19
  94. data/lib/mailslurp_client/models/page_connector_events.rb +19 -19
  95. data/lib/mailslurp_client/models/page_contact_projection.rb +19 -19
  96. data/lib/mailslurp_client/models/page_delivery_status.rb +19 -19
  97. data/lib/mailslurp_client/models/page_device_preview_run_projection.rb +19 -19
  98. data/lib/mailslurp_client/models/page_email_preview.rb +19 -19
  99. data/lib/mailslurp_client/models/page_email_projection.rb +19 -19
  100. data/lib/mailslurp_client/models/page_email_thread_projection.rb +19 -19
  101. data/lib/mailslurp_client/models/page_email_validation_request.rb +19 -19
  102. data/lib/mailslurp_client/models/page_entity_automation_items.rb +19 -19
  103. data/lib/mailslurp_client/models/page_entity_event_items.rb +19 -19
  104. data/lib/mailslurp_client/models/page_entity_favourite_items.rb +19 -19
  105. data/lib/mailslurp_client/models/page_expired_inbox_record_projection.rb +19 -19
  106. data/lib/mailslurp_client/models/page_group_projection.rb +19 -19
  107. data/lib/mailslurp_client/models/page_guest_portal_users.rb +19 -19
  108. data/lib/mailslurp_client/models/page_inbox_forwarder_dto.rb +19 -19
  109. data/lib/mailslurp_client/models/page_inbox_forwarder_events.rb +19 -19
  110. data/lib/mailslurp_client/models/page_inbox_projection.rb +19 -19
  111. data/lib/mailslurp_client/models/page_inbox_replier_dto.rb +19 -19
  112. data/lib/mailslurp_client/models/page_inbox_replier_events.rb +19 -19
  113. data/lib/mailslurp_client/models/page_inbox_tags.rb +19 -19
  114. data/lib/mailslurp_client/models/page_list_unsubscribe_recipients.rb +19 -19
  115. data/lib/mailslurp_client/models/page_missed_email_projection.rb +19 -19
  116. data/lib/mailslurp_client/models/page_missed_sms_projection.rb +19 -19
  117. data/lib/mailslurp_client/models/page_opt_in_identity_projection.rb +19 -19
  118. data/lib/mailslurp_client/models/page_organization_inbox_projection.rb +19 -19
  119. data/lib/mailslurp_client/models/page_phone_message_thread_item_projection.rb +19 -19
  120. data/lib/mailslurp_client/models/page_phone_message_thread_projection.rb +19 -19
  121. data/lib/mailslurp_client/models/page_phone_number_projection.rb +19 -19
  122. data/lib/mailslurp_client/models/page_phone_number_release_projection.rb +19 -19
  123. data/lib/mailslurp_client/models/page_plus_address_projection.rb +19 -19
  124. data/lib/mailslurp_client/models/page_reputation_items.rb +19 -19
  125. data/lib/mailslurp_client/models/page_ruleset_dto.rb +19 -19
  126. data/lib/mailslurp_client/models/page_scheduled_jobs.rb +19 -19
  127. data/lib/mailslurp_client/models/page_sent_email_projection.rb +19 -19
  128. data/lib/mailslurp_client/models/page_sent_email_with_queue_projection.rb +19 -19
  129. data/lib/mailslurp_client/models/page_sent_sms_projection.rb +19 -19
  130. data/lib/mailslurp_client/models/page_sms_projection.rb +19 -19
  131. data/lib/mailslurp_client/models/page_template_projection.rb +19 -19
  132. data/lib/mailslurp_client/models/page_tracking_pixel_projection.rb +19 -19
  133. data/lib/mailslurp_client/models/page_unknown_missed_email_projection.rb +19 -19
  134. data/lib/mailslurp_client/models/page_webhook_endpoint_projection.rb +19 -19
  135. data/lib/mailslurp_client/models/page_webhook_projection.rb +19 -19
  136. data/lib/mailslurp_client/models/page_webhook_result.rb +19 -19
  137. data/lib/mailslurp_client/models/pageable_object.rb +22 -22
  138. data/lib/mailslurp_client/models/phone_message_thread_item_projection.rb +18 -18
  139. data/lib/mailslurp_client/models/phone_number_dto.rb +49 -4
  140. data/lib/mailslurp_client/models/phone_number_line_type_intelligence_dto.rb +242 -0
  141. data/lib/mailslurp_client/models/phone_number_line_type_lookup_dto.rb +286 -0
  142. data/lib/mailslurp_client/models/phone_number_projection.rb +80 -35
  143. data/lib/mailslurp_client/models/phone_number_release_projection.rb +39 -39
  144. data/lib/mailslurp_client/models/phone_pool_detail_dto.rb +334 -0
  145. data/lib/mailslurp_client/models/phone_pool_dto.rb +318 -0
  146. data/lib/mailslurp_client/models/phone_pool_lease_dto.rb +351 -0
  147. data/lib/mailslurp_client/models/phone_pool_member_dto.rb +333 -0
  148. data/lib/mailslurp_client/models/phone_provider_capabilities_result.rb +284 -0
  149. data/lib/mailslurp_client/models/phone_provisioning_job_dto.rb +434 -0
  150. data/lib/mailslurp_client/models/phone_provisioning_job_item_dto.rb +336 -0
  151. data/lib/mailslurp_client/models/phone_sms_prepaid_credit_dto.rb +340 -0
  152. data/lib/mailslurp_client/models/phone_sms_prepaid_credits_dto.rb +241 -0
  153. data/lib/mailslurp_client/models/plus_address_projection.rb +27 -27
  154. data/lib/mailslurp_client/models/recipient_projection.rb +13 -13
  155. data/lib/mailslurp_client/models/reputation_item_projection.rb +41 -41
  156. data/lib/mailslurp_client/models/search_available_phone_numbers_options.rb +377 -0
  157. data/lib/mailslurp_client/models/sender_projection.rb +13 -13
  158. data/lib/mailslurp_client/models/sent_email_projection.rb +63 -63
  159. data/lib/mailslurp_client/models/sent_sms_projection.rb +18 -18
  160. data/lib/mailslurp_client/models/sms_projection.rb +18 -18
  161. data/lib/mailslurp_client/models/smtp_auth_diagnostic_result.rb +235 -0
  162. data/lib/mailslurp_client/models/smtp_diagnostic_step.rb +236 -0
  163. data/lib/mailslurp_client/models/smtp_tls_diagnostic_result.rb +245 -0
  164. data/lib/mailslurp_client/models/sort_object.rb +10 -10
  165. data/lib/mailslurp_client/models/spf_mechanism_result.rb +229 -0
  166. data/lib/mailslurp_client/models/template_projection.rb +41 -41
  167. data/lib/mailslurp_client/models/test_smtp_server_options.rb +337 -0
  168. data/lib/mailslurp_client/models/test_smtp_server_results.rb +297 -0
  169. data/lib/mailslurp_client/models/tracking_pixel_projection.rb +27 -27
  170. data/lib/mailslurp_client/models/unknown_missed_email_projection.rb +27 -27
  171. data/lib/mailslurp_client/models/update_phone_pool_options.rb +215 -0
  172. data/lib/mailslurp_client/models/validation_dto.rb +1 -5
  173. data/lib/mailslurp_client/models/webhook_projection.rb +45 -45
  174. data/lib/mailslurp_client/version.rb +1 -1
  175. data/lib/mailslurp_client.rb +67 -0
  176. metadata +69 -2
@@ -0,0 +1,366 @@
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
+ # Public blacklist lookup results for a domain or IP address
17
+ class CheckEmailBlacklistResults
18
+ attr_accessor :domain
19
+
20
+ attr_accessor :requested_ip_address
21
+
22
+ attr_accessor :requested_mx_host
23
+
24
+ attr_accessor :status
25
+
26
+ attr_accessor :listed
27
+
28
+ attr_accessor :checked_ip_addresses
29
+
30
+ attr_accessor :checked_zone_count
31
+
32
+ attr_accessor :total_listings
33
+
34
+ attr_accessor :warnings
35
+
36
+ attr_accessor :errors
37
+
38
+ class EnumAttributeValidator
39
+ attr_reader :datatype
40
+ attr_reader :allowable_values
41
+
42
+ def initialize(datatype, allowable_values)
43
+ @allowable_values = allowable_values.map do |value|
44
+ case datatype.to_s
45
+ when /Integer/i
46
+ value.to_i
47
+ when /Float/i
48
+ value.to_f
49
+ else
50
+ value
51
+ end
52
+ end
53
+ end
54
+
55
+ def valid?(value)
56
+ !value || allowable_values.include?(value)
57
+ end
58
+ end
59
+
60
+ # Attribute mapping from ruby-style variable name to JSON key.
61
+ def self.attribute_map
62
+ {
63
+ :'domain' => :'domain',
64
+ :'requested_ip_address' => :'requestedIpAddress',
65
+ :'requested_mx_host' => :'requestedMxHost',
66
+ :'status' => :'status',
67
+ :'listed' => :'listed',
68
+ :'checked_ip_addresses' => :'checkedIpAddresses',
69
+ :'checked_zone_count' => :'checkedZoneCount',
70
+ :'total_listings' => :'totalListings',
71
+ :'warnings' => :'warnings',
72
+ :'errors' => :'errors'
73
+ }
74
+ end
75
+
76
+ # Attribute type mapping.
77
+ def self.openapi_types
78
+ {
79
+ :'domain' => :'String',
80
+ :'requested_ip_address' => :'String',
81
+ :'requested_mx_host' => :'String',
82
+ :'status' => :'String',
83
+ :'listed' => :'Boolean',
84
+ :'checked_ip_addresses' => :'Array<EmailBlacklistIpResult>',
85
+ :'checked_zone_count' => :'Integer',
86
+ :'total_listings' => :'Integer',
87
+ :'warnings' => :'Array<String>',
88
+ :'errors' => :'Array<String>'
89
+ }
90
+ end
91
+
92
+ # List of attributes with nullable: true
93
+ def self.openapi_nullable
94
+ Set.new([
95
+ :'domain',
96
+ :'requested_ip_address',
97
+ :'requested_mx_host',
98
+ ])
99
+ end
100
+
101
+ # Initializes the object
102
+ # @param [Hash] attributes Model attributes in the form of hash
103
+ def initialize(attributes = {})
104
+ if (!attributes.is_a?(Hash))
105
+ fail ArgumentError, "The input argument (attributes) must be a hash in `MailSlurpClient::CheckEmailBlacklistResults` initialize method"
106
+ end
107
+
108
+ # check to see if the attribute exists and convert string to symbol for hash key
109
+ attributes = attributes.each_with_object({}) { |(k, v), h|
110
+ if (!self.class.attribute_map.key?(k.to_sym))
111
+ fail ArgumentError, "`#{k}` is not a valid attribute in `MailSlurpClient::CheckEmailBlacklistResults`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
112
+ end
113
+ h[k.to_sym] = v
114
+ }
115
+
116
+ if attributes.key?(:'domain')
117
+ self.domain = attributes[:'domain']
118
+ end
119
+
120
+ if attributes.key?(:'requested_ip_address')
121
+ self.requested_ip_address = attributes[:'requested_ip_address']
122
+ end
123
+
124
+ if attributes.key?(:'requested_mx_host')
125
+ self.requested_mx_host = attributes[:'requested_mx_host']
126
+ end
127
+
128
+ if attributes.key?(:'status')
129
+ self.status = attributes[:'status']
130
+ end
131
+
132
+ if attributes.key?(:'listed')
133
+ self.listed = attributes[:'listed']
134
+ end
135
+
136
+ if attributes.key?(:'checked_ip_addresses')
137
+ if (value = attributes[:'checked_ip_addresses']).is_a?(Array)
138
+ self.checked_ip_addresses = value
139
+ end
140
+ end
141
+
142
+ if attributes.key?(:'checked_zone_count')
143
+ self.checked_zone_count = attributes[:'checked_zone_count']
144
+ end
145
+
146
+ if attributes.key?(:'total_listings')
147
+ self.total_listings = attributes[:'total_listings']
148
+ end
149
+
150
+ if attributes.key?(:'warnings')
151
+ if (value = attributes[:'warnings']).is_a?(Array)
152
+ self.warnings = value
153
+ end
154
+ end
155
+
156
+ if attributes.key?(:'errors')
157
+ if (value = attributes[:'errors']).is_a?(Array)
158
+ self.errors = value
159
+ end
160
+ end
161
+ end
162
+
163
+ # Show invalid properties with the reasons. Usually used together with valid?
164
+ # @return Array for valid properties with the reasons
165
+ def list_invalid_properties
166
+ invalid_properties = Array.new
167
+ if @status.nil?
168
+ invalid_properties.push('invalid value for "status", status cannot be nil.')
169
+ end
170
+
171
+ if @listed.nil?
172
+ invalid_properties.push('invalid value for "listed", listed cannot be nil.')
173
+ end
174
+
175
+ if @checked_ip_addresses.nil?
176
+ invalid_properties.push('invalid value for "checked_ip_addresses", checked_ip_addresses cannot be nil.')
177
+ end
178
+
179
+ if @checked_zone_count.nil?
180
+ invalid_properties.push('invalid value for "checked_zone_count", checked_zone_count cannot be nil.')
181
+ end
182
+
183
+ if @total_listings.nil?
184
+ invalid_properties.push('invalid value for "total_listings", total_listings cannot be nil.')
185
+ end
186
+
187
+ if @warnings.nil?
188
+ invalid_properties.push('invalid value for "warnings", warnings cannot be nil.')
189
+ end
190
+
191
+ if @errors.nil?
192
+ invalid_properties.push('invalid value for "errors", errors cannot be nil.')
193
+ end
194
+
195
+ invalid_properties
196
+ end
197
+
198
+ # Check to see if the all the properties in the model are valid
199
+ # @return true if the model is valid
200
+ def valid?
201
+ return false if @status.nil?
202
+ status_validator = EnumAttributeValidator.new('String', ["HEALTHY", "DEGRADED", "CRITICAL", "FAILED"])
203
+ return false unless status_validator.valid?(@status)
204
+ return false if @listed.nil?
205
+ return false if @checked_ip_addresses.nil?
206
+ return false if @checked_zone_count.nil?
207
+ return false if @total_listings.nil?
208
+ return false if @warnings.nil?
209
+ return false if @errors.nil?
210
+ true
211
+ end
212
+
213
+ # Custom attribute writer method checking allowed values (enum).
214
+ # @param [Object] status Object to be assigned
215
+ def status=(status)
216
+ validator = EnumAttributeValidator.new('String', ["HEALTHY", "DEGRADED", "CRITICAL", "FAILED"])
217
+ unless validator.valid?(status)
218
+ fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
219
+ end
220
+ @status = status
221
+ end
222
+
223
+ # Checks equality by comparing each attribute.
224
+ # @param [Object] Object to be compared
225
+ def ==(o)
226
+ return true if self.equal?(o)
227
+ self.class == o.class &&
228
+ domain == o.domain &&
229
+ requested_ip_address == o.requested_ip_address &&
230
+ requested_mx_host == o.requested_mx_host &&
231
+ status == o.status &&
232
+ listed == o.listed &&
233
+ checked_ip_addresses == o.checked_ip_addresses &&
234
+ checked_zone_count == o.checked_zone_count &&
235
+ total_listings == o.total_listings &&
236
+ warnings == o.warnings &&
237
+ errors == o.errors
238
+ end
239
+
240
+ # @see the `==` method
241
+ # @param [Object] Object to be compared
242
+ def eql?(o)
243
+ self == o
244
+ end
245
+
246
+ # Calculates hash code according to all attributes.
247
+ # @return [Integer] Hash code
248
+ def hash
249
+ [domain, requested_ip_address, requested_mx_host, status, listed, checked_ip_addresses, checked_zone_count, total_listings, warnings, errors].hash
250
+ end
251
+
252
+ # Builds the object from hash
253
+ # @param [Hash] attributes Model attributes in the form of hash
254
+ # @return [Object] Returns the model itself
255
+ def self.build_from_hash(attributes)
256
+ new.build_from_hash(attributes)
257
+ end
258
+
259
+ # Builds the object from hash
260
+ # @param [Hash] attributes Model attributes in the form of hash
261
+ # @return [Object] Returns the model itself
262
+ def build_from_hash(attributes)
263
+ return nil unless attributes.is_a?(Hash)
264
+ self.class.openapi_types.each_pair do |key, type|
265
+ if type =~ /\AArray<(.*)>/i
266
+ # check to ensure the input is an array given that the attribute
267
+ # is documented as an array but the input is not
268
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
269
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
270
+ end
271
+ elsif !attributes[self.class.attribute_map[key]].nil?
272
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
273
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
274
+ end
275
+
276
+ self
277
+ end
278
+
279
+ # Deserializes the data based on type
280
+ # @param string type Data type
281
+ # @param string value Value to be deserialized
282
+ # @return [Object] Deserialized data
283
+ def _deserialize(type, value)
284
+ case type.to_sym
285
+ when :DateTime
286
+ DateTime.parse(value)
287
+ when :Date
288
+ Date.parse(value)
289
+ when :String
290
+ value.to_s
291
+ when :Integer
292
+ value.to_i
293
+ when :Float
294
+ value.to_f
295
+ when :Boolean
296
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
297
+ true
298
+ else
299
+ false
300
+ end
301
+ when :Object
302
+ # generic object (usually a Hash), return directly
303
+ value
304
+ when /\AArray<(?<inner_type>.+)>\z/
305
+ inner_type = Regexp.last_match[:inner_type]
306
+ value.map { |v| _deserialize(inner_type, v) }
307
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
308
+ k_type = Regexp.last_match[:k_type]
309
+ v_type = Regexp.last_match[:v_type]
310
+ {}.tap do |hash|
311
+ value.each do |k, v|
312
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
313
+ end
314
+ end
315
+ else # model
316
+ MailSlurpClient.const_get(type).build_from_hash(value)
317
+ end
318
+ end
319
+
320
+ # Returns the string representation of the object
321
+ # @return [String] String presentation of the object
322
+ def to_s
323
+ to_hash.to_s
324
+ end
325
+
326
+ # to_body is an alias to to_hash (backward compatibility)
327
+ # @return [Hash] Returns the object in the form of hash
328
+ def to_body
329
+ to_hash
330
+ end
331
+
332
+ # Returns the object in the form of hash
333
+ # @return [Hash] Returns the object in the form of hash
334
+ def to_hash
335
+ hash = {}
336
+ self.class.attribute_map.each_pair do |attr, param|
337
+ value = self.send(attr)
338
+ if value.nil?
339
+ is_nullable = self.class.openapi_nullable.include?(attr)
340
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
341
+ end
342
+
343
+ hash[param] = _to_hash(value)
344
+ end
345
+ hash
346
+ end
347
+
348
+ # Outputs non-array value in the form of hash
349
+ # For object, use to_hash. Otherwise, just return the value
350
+ # @param [Object] value Any valid value
351
+ # @return [Hash] Returns the value in the form of hash
352
+ def _to_hash(value)
353
+ if value.is_a?(Array)
354
+ value.compact.map { |v| _to_hash(v) }
355
+ elsif value.is_a?(Hash)
356
+ {}.tap do |hash|
357
+ value.each { |k, v| hash[k] = _to_hash(v) }
358
+ end
359
+ elsif value.respond_to? :to_hash
360
+ value.to_hash
361
+ else
362
+ value
363
+ end
364
+ end
365
+ end
366
+ end
@@ -15,19 +15,19 @@ require 'date'
15
15
  module MailSlurpClient
16
16
  # ConnectorEventProjection
17
17
  class ConnectorEventProjection
18
- attr_accessor :created_at
18
+ attr_accessor :message
19
19
 
20
- attr_accessor :event_type
20
+ attr_accessor :id
21
21
 
22
- attr_accessor :connector_id
22
+ attr_accessor :size
23
23
 
24
- attr_accessor :seen
24
+ attr_accessor :event_type
25
25
 
26
- attr_accessor :message
26
+ attr_accessor :created_at
27
27
 
28
- attr_accessor :id
28
+ attr_accessor :connector_id
29
29
 
30
- attr_accessor :size
30
+ attr_accessor :seen
31
31
 
32
32
  attr_accessor :status
33
33
 
@@ -56,13 +56,13 @@ module MailSlurpClient
56
56
  # Attribute mapping from ruby-style variable name to JSON key.
57
57
  def self.attribute_map
58
58
  {
59
- :'created_at' => :'createdAt',
60
- :'event_type' => :'eventType',
61
- :'connector_id' => :'connectorId',
62
- :'seen' => :'seen',
63
59
  :'message' => :'message',
64
60
  :'id' => :'id',
65
61
  :'size' => :'size',
62
+ :'event_type' => :'eventType',
63
+ :'created_at' => :'createdAt',
64
+ :'connector_id' => :'connectorId',
65
+ :'seen' => :'seen',
66
66
  :'status' => :'status'
67
67
  }
68
68
  end
@@ -70,13 +70,13 @@ module MailSlurpClient
70
70
  # Attribute type mapping.
71
71
  def self.openapi_types
72
72
  {
73
- :'created_at' => :'DateTime',
74
- :'event_type' => :'String',
75
- :'connector_id' => :'String',
76
- :'seen' => :'Boolean',
77
73
  :'message' => :'String',
78
74
  :'id' => :'String',
79
75
  :'size' => :'Integer',
76
+ :'event_type' => :'String',
77
+ :'created_at' => :'DateTime',
78
+ :'connector_id' => :'String',
79
+ :'seen' => :'Boolean',
80
80
  :'status' => :'String'
81
81
  }
82
82
  end
@@ -102,32 +102,32 @@ module MailSlurpClient
102
102
  h[k.to_sym] = v
103
103
  }
104
104
 
105
- if attributes.key?(:'created_at')
106
- self.created_at = attributes[:'created_at']
105
+ if attributes.key?(:'message')
106
+ self.message = attributes[:'message']
107
107
  end
108
108
 
109
- if attributes.key?(:'event_type')
110
- self.event_type = attributes[:'event_type']
109
+ if attributes.key?(:'id')
110
+ self.id = attributes[:'id']
111
111
  end
112
112
 
113
- if attributes.key?(:'connector_id')
114
- self.connector_id = attributes[:'connector_id']
113
+ if attributes.key?(:'size')
114
+ self.size = attributes[:'size']
115
115
  end
116
116
 
117
- if attributes.key?(:'seen')
118
- self.seen = attributes[:'seen']
117
+ if attributes.key?(:'event_type')
118
+ self.event_type = attributes[:'event_type']
119
119
  end
120
120
 
121
- if attributes.key?(:'message')
122
- self.message = attributes[:'message']
121
+ if attributes.key?(:'created_at')
122
+ self.created_at = attributes[:'created_at']
123
123
  end
124
124
 
125
- if attributes.key?(:'id')
126
- self.id = attributes[:'id']
125
+ if attributes.key?(:'connector_id')
126
+ self.connector_id = attributes[:'connector_id']
127
127
  end
128
128
 
129
- if attributes.key?(:'size')
130
- self.size = attributes[:'size']
129
+ if attributes.key?(:'seen')
130
+ self.seen = attributes[:'seen']
131
131
  end
132
132
 
133
133
  if attributes.key?(:'status')
@@ -139,20 +139,20 @@ module MailSlurpClient
139
139
  # @return Array for valid properties with the reasons
140
140
  def list_invalid_properties
141
141
  invalid_properties = Array.new
142
- if @created_at.nil?
143
- invalid_properties.push('invalid value for "created_at", created_at cannot be nil.')
142
+ if @size.nil?
143
+ invalid_properties.push('invalid value for "size", size cannot be nil.')
144
144
  end
145
145
 
146
146
  if @event_type.nil?
147
147
  invalid_properties.push('invalid value for "event_type", event_type cannot be nil.')
148
148
  end
149
149
 
150
- if @connector_id.nil?
151
- invalid_properties.push('invalid value for "connector_id", connector_id cannot be nil.')
150
+ if @created_at.nil?
151
+ invalid_properties.push('invalid value for "created_at", created_at cannot be nil.')
152
152
  end
153
153
 
154
- if @size.nil?
155
- invalid_properties.push('invalid value for "size", size cannot be nil.')
154
+ if @connector_id.nil?
155
+ invalid_properties.push('invalid value for "connector_id", connector_id cannot be nil.')
156
156
  end
157
157
 
158
158
  if @status.nil?
@@ -165,12 +165,12 @@ module MailSlurpClient
165
165
  # Check to see if the all the properties in the model are valid
166
166
  # @return true if the model is valid
167
167
  def valid?
168
- return false if @created_at.nil?
168
+ return false if @size.nil?
169
169
  return false if @event_type.nil?
170
170
  event_type_validator = EnumAttributeValidator.new('String', ["SEND", "SYNC"])
171
171
  return false unless event_type_validator.valid?(@event_type)
172
+ return false if @created_at.nil?
172
173
  return false if @connector_id.nil?
173
- return false if @size.nil?
174
174
  return false if @status.nil?
175
175
  status_validator = EnumAttributeValidator.new('String', ["SUCCESS", "INTERNAL_ERROR", "SUBSCRIPTION_ERROR", "CONNECTION_ERROR", "NOT_FOUND"])
176
176
  return false unless status_validator.valid?(@status)
@@ -202,13 +202,13 @@ module MailSlurpClient
202
202
  def ==(o)
203
203
  return true if self.equal?(o)
204
204
  self.class == o.class &&
205
- created_at == o.created_at &&
206
- event_type == o.event_type &&
207
- connector_id == o.connector_id &&
208
- seen == o.seen &&
209
205
  message == o.message &&
210
206
  id == o.id &&
211
207
  size == o.size &&
208
+ event_type == o.event_type &&
209
+ created_at == o.created_at &&
210
+ connector_id == o.connector_id &&
211
+ seen == o.seen &&
212
212
  status == o.status
213
213
  end
214
214
 
@@ -221,7 +221,7 @@ module MailSlurpClient
221
221
  # Calculates hash code according to all attributes.
222
222
  # @return [Integer] Hash code
223
223
  def hash
224
- [created_at, event_type, connector_id, seen, message, id, size, status].hash
224
+ [message, id, size, event_type, created_at, connector_id, seen, status].hash
225
225
  end
226
226
 
227
227
  # Builds the object from hash