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