sendmux-management 1.1.0 → 1.2.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 (26) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +23 -0
  3. data/lib/sendmux/management/client.rb +4 -0
  4. data/lib/sendmux/management/version.rb +1 -1
  5. data/lib/sendmux_management_generated/api/billing_api.rb +2 -2
  6. data/lib/sendmux_management_generated/api/connection_api.rb +82 -0
  7. data/lib/sendmux_management_generated/api/domains_api.rb +2 -2
  8. data/lib/sendmux_management_generated/models/balance.rb +1 -1
  9. data/lib/sendmux_management_generated/models/connection.rb +273 -0
  10. data/lib/sendmux_management_generated/models/connection_credential.rb +226 -0
  11. data/lib/sendmux_management_generated/models/connection_mailboxes_inner.rb +190 -0
  12. data/lib/sendmux_management_generated/models/connection_response.rb +223 -0
  13. data/lib/sendmux_management_generated/models/connection_team.rb +190 -0
  14. data/lib/sendmux_management_generated/models/delivery_log_detail.rb +534 -0
  15. data/lib/sendmux_management_generated/models/delivery_log_item.rb +112 -1
  16. data/lib/sendmux_management_generated/models/delivery_log_item_response.rb +1 -1
  17. data/lib/sendmux_management_generated/models/delivery_log_recipient.rb +254 -0
  18. data/lib/sendmux_management_generated/models/mailbox_domain.rb +53 -1
  19. data/lib/sendmux_management_generated/models/mailbox_domain_verify_checks.rb +3 -3
  20. data/lib/sendmux_management_generated/models/mailbox_domain_verify_result.rb +111 -3
  21. data/lib/sendmux_management_generated/models/management_create_mailbox_request.rb +11 -0
  22. data/lib/sendmux_management_generated/models/provider_create_body.rb +1 -0
  23. data/lib/sendmux_management_generated/models/provider_item.rb +1 -1
  24. data/lib/sendmux_management_generated/models/provider_update_body.rb +1 -0
  25. data/lib/sendmux_management_generated.rb +8 -0
  26. metadata +20 -6
@@ -17,12 +17,24 @@ module Sendmux::Management::Generated
17
17
  class MailboxDomainVerifyResult < ApiModelBase
18
18
  attr_accessor :checks
19
19
 
20
+ # Whether Amazon SES DKIM signing is enabled
21
+ attr_accessor :ses_dkim_signing_enabled
22
+
20
23
  # Latest Amazon SES DKIM status
21
24
  attr_accessor :ses_dkim_status
22
25
 
26
+ # ISO 8601 time of this SES identity check
27
+ attr_accessor :ses_identity_checked_at
28
+
29
+ # Latest Amazon SES identity status
30
+ attr_accessor :ses_identity_verification_status
31
+
23
32
  # Latest Amazon SES MAIL FROM status
24
33
  attr_accessor :ses_mail_from_status
25
34
 
35
+ # Whether Amazon SES permits identity sending
36
+ attr_accessor :ses_verified_for_sending
37
+
26
38
  # Post-check verification status
27
39
  attr_accessor :status
28
40
 
@@ -52,8 +64,12 @@ module Sendmux::Management::Generated
52
64
  def self.attribute_map
53
65
  {
54
66
  :'checks' => :'checks',
67
+ :'ses_dkim_signing_enabled' => :'ses_dkim_signing_enabled',
55
68
  :'ses_dkim_status' => :'ses_dkim_status',
69
+ :'ses_identity_checked_at' => :'ses_identity_checked_at',
70
+ :'ses_identity_verification_status' => :'ses_identity_verification_status',
56
71
  :'ses_mail_from_status' => :'ses_mail_from_status',
72
+ :'ses_verified_for_sending' => :'ses_verified_for_sending',
57
73
  :'status' => :'status'
58
74
  }
59
75
  end
@@ -72,8 +88,12 @@ module Sendmux::Management::Generated
72
88
  def self.openapi_types
73
89
  {
74
90
  :'checks' => :'MailboxDomainVerifyChecks',
91
+ :'ses_dkim_signing_enabled' => :'Boolean',
75
92
  :'ses_dkim_status' => :'String',
93
+ :'ses_identity_checked_at' => :'String',
94
+ :'ses_identity_verification_status' => :'String',
76
95
  :'ses_mail_from_status' => :'String',
96
+ :'ses_verified_for_sending' => :'Boolean',
77
97
  :'status' => :'String'
78
98
  }
79
99
  end
@@ -106,18 +126,42 @@ module Sendmux::Management::Generated
106
126
  self.checks = nil
107
127
  end
108
128
 
129
+ if attributes.key?(:'ses_dkim_signing_enabled')
130
+ self.ses_dkim_signing_enabled = attributes[:'ses_dkim_signing_enabled']
131
+ else
132
+ self.ses_dkim_signing_enabled = nil
133
+ end
134
+
109
135
  if attributes.key?(:'ses_dkim_status')
110
136
  self.ses_dkim_status = attributes[:'ses_dkim_status']
111
137
  else
112
138
  self.ses_dkim_status = nil
113
139
  end
114
140
 
141
+ if attributes.key?(:'ses_identity_checked_at')
142
+ self.ses_identity_checked_at = attributes[:'ses_identity_checked_at']
143
+ else
144
+ self.ses_identity_checked_at = nil
145
+ end
146
+
147
+ if attributes.key?(:'ses_identity_verification_status')
148
+ self.ses_identity_verification_status = attributes[:'ses_identity_verification_status']
149
+ else
150
+ self.ses_identity_verification_status = nil
151
+ end
152
+
115
153
  if attributes.key?(:'ses_mail_from_status')
116
154
  self.ses_mail_from_status = attributes[:'ses_mail_from_status']
117
155
  else
118
156
  self.ses_mail_from_status = nil
119
157
  end
120
158
 
159
+ if attributes.key?(:'ses_verified_for_sending')
160
+ self.ses_verified_for_sending = attributes[:'ses_verified_for_sending']
161
+ else
162
+ self.ses_verified_for_sending = nil
163
+ end
164
+
121
165
  if attributes.key?(:'status')
122
166
  self.status = attributes[:'status']
123
167
  else
@@ -134,14 +178,30 @@ module Sendmux::Management::Generated
134
178
  invalid_properties.push('invalid value for "checks", checks cannot be nil.')
135
179
  end
136
180
 
181
+ if @ses_dkim_signing_enabled.nil?
182
+ invalid_properties.push('invalid value for "ses_dkim_signing_enabled", ses_dkim_signing_enabled cannot be nil.')
183
+ end
184
+
137
185
  if @ses_dkim_status.nil?
138
186
  invalid_properties.push('invalid value for "ses_dkim_status", ses_dkim_status cannot be nil.')
139
187
  end
140
188
 
189
+ if @ses_identity_checked_at.nil?
190
+ invalid_properties.push('invalid value for "ses_identity_checked_at", ses_identity_checked_at cannot be nil.')
191
+ end
192
+
193
+ if @ses_identity_verification_status.nil?
194
+ invalid_properties.push('invalid value for "ses_identity_verification_status", ses_identity_verification_status cannot be nil.')
195
+ end
196
+
141
197
  if @ses_mail_from_status.nil?
142
198
  invalid_properties.push('invalid value for "ses_mail_from_status", ses_mail_from_status cannot be nil.')
143
199
  end
144
200
 
201
+ if @ses_verified_for_sending.nil?
202
+ invalid_properties.push('invalid value for "ses_verified_for_sending", ses_verified_for_sending cannot be nil.')
203
+ end
204
+
145
205
  if @status.nil?
146
206
  invalid_properties.push('invalid value for "status", status cannot be nil.')
147
207
  end
@@ -154,10 +214,14 @@ module Sendmux::Management::Generated
154
214
  def valid?
155
215
  warn '[DEPRECATED] the `valid?` method is obsolete'
156
216
  return false if @checks.nil?
217
+ return false if @ses_dkim_signing_enabled.nil?
157
218
  return false if @ses_dkim_status.nil?
219
+ return false if @ses_identity_checked_at.nil?
220
+ return false if @ses_identity_verification_status.nil?
158
221
  return false if @ses_mail_from_status.nil?
222
+ return false if @ses_verified_for_sending.nil?
159
223
  return false if @status.nil?
160
- status_validator = EnumAttributeValidator.new('String', ["verified", "pending", "unknown_default_open_api"])
224
+ status_validator = EnumAttributeValidator.new('String', ["verified", "pending", "failed", "unknown_default_open_api"])
161
225
  return false unless status_validator.valid?(@status)
162
226
  true
163
227
  end
@@ -172,6 +236,16 @@ module Sendmux::Management::Generated
172
236
  @checks = checks
173
237
  end
174
238
 
239
+ # Custom attribute writer method with validation
240
+ # @param [Object] ses_dkim_signing_enabled Value to be assigned
241
+ def ses_dkim_signing_enabled=(ses_dkim_signing_enabled)
242
+ if ses_dkim_signing_enabled.nil?
243
+ fail ArgumentError, 'ses_dkim_signing_enabled cannot be nil'
244
+ end
245
+
246
+ @ses_dkim_signing_enabled = ses_dkim_signing_enabled
247
+ end
248
+
175
249
  # Custom attribute writer method with validation
176
250
  # @param [Object] ses_dkim_status Value to be assigned
177
251
  def ses_dkim_status=(ses_dkim_status)
@@ -182,6 +256,26 @@ module Sendmux::Management::Generated
182
256
  @ses_dkim_status = ses_dkim_status
183
257
  end
184
258
 
259
+ # Custom attribute writer method with validation
260
+ # @param [Object] ses_identity_checked_at Value to be assigned
261
+ def ses_identity_checked_at=(ses_identity_checked_at)
262
+ if ses_identity_checked_at.nil?
263
+ fail ArgumentError, 'ses_identity_checked_at cannot be nil'
264
+ end
265
+
266
+ @ses_identity_checked_at = ses_identity_checked_at
267
+ end
268
+
269
+ # Custom attribute writer method with validation
270
+ # @param [Object] ses_identity_verification_status Value to be assigned
271
+ def ses_identity_verification_status=(ses_identity_verification_status)
272
+ if ses_identity_verification_status.nil?
273
+ fail ArgumentError, 'ses_identity_verification_status cannot be nil'
274
+ end
275
+
276
+ @ses_identity_verification_status = ses_identity_verification_status
277
+ end
278
+
185
279
  # Custom attribute writer method with validation
186
280
  # @param [Object] ses_mail_from_status Value to be assigned
187
281
  def ses_mail_from_status=(ses_mail_from_status)
@@ -192,10 +286,20 @@ module Sendmux::Management::Generated
192
286
  @ses_mail_from_status = ses_mail_from_status
193
287
  end
194
288
 
289
+ # Custom attribute writer method with validation
290
+ # @param [Object] ses_verified_for_sending Value to be assigned
291
+ def ses_verified_for_sending=(ses_verified_for_sending)
292
+ if ses_verified_for_sending.nil?
293
+ fail ArgumentError, 'ses_verified_for_sending cannot be nil'
294
+ end
295
+
296
+ @ses_verified_for_sending = ses_verified_for_sending
297
+ end
298
+
195
299
  # Custom attribute writer method checking allowed values (enum).
196
300
  # @param [Object] status Object to be assigned
197
301
  def status=(status)
198
- validator = EnumAttributeValidator.new('String', ["verified", "pending", "unknown_default_open_api"])
302
+ validator = EnumAttributeValidator.new('String', ["verified", "pending", "failed", "unknown_default_open_api"])
199
303
  unless validator.valid?(status)
200
304
  fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
201
305
  end
@@ -208,8 +312,12 @@ module Sendmux::Management::Generated
208
312
  return true if self.equal?(o)
209
313
  self.class == o.class &&
210
314
  checks == o.checks &&
315
+ ses_dkim_signing_enabled == o.ses_dkim_signing_enabled &&
211
316
  ses_dkim_status == o.ses_dkim_status &&
317
+ ses_identity_checked_at == o.ses_identity_checked_at &&
318
+ ses_identity_verification_status == o.ses_identity_verification_status &&
212
319
  ses_mail_from_status == o.ses_mail_from_status &&
320
+ ses_verified_for_sending == o.ses_verified_for_sending &&
213
321
  status == o.status
214
322
  end
215
323
 
@@ -222,7 +330,7 @@ module Sendmux::Management::Generated
222
330
  # Calculates hash code according to all attributes.
223
331
  # @return [Integer] Hash code
224
332
  def hash
225
- [checks, ses_dkim_status, ses_mail_from_status, status].hash
333
+ [checks, ses_dkim_signing_enabled, ses_dkim_status, ses_identity_checked_at, ses_identity_verification_status, ses_mail_from_status, ses_verified_for_sending, status].hash
226
334
  end
227
335
 
228
336
  # Builds the object from hash
@@ -122,6 +122,11 @@ module Sendmux::Management::Generated
122
122
  invalid_properties.push('invalid value for "email", the character length must be greater than or equal to 5.')
123
123
  end
124
124
 
125
+ pattern = Regexp.new(/\A(?![^\r\n]*[\r\n])(?![^@]*\.\.)[a-zA-Z0-9_%+-](?:[a-zA-Z0-9._%+-]*[a-zA-Z0-9_%+-])?@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,63}\z/)
126
+ if @email !~ pattern
127
+ invalid_properties.push("invalid value for \"email\", must conform to the pattern #{pattern}.")
128
+ end
129
+
125
130
  if !@quota_bytes.nil? && @quota_bytes < 1
126
131
  invalid_properties.push('invalid value for "quota_bytes", must be greater than or equal to 1.')
127
132
  end
@@ -138,6 +143,7 @@ module Sendmux::Management::Generated
138
143
  return false if @email.nil?
139
144
  return false if @email.to_s.length > 254
140
145
  return false if @email.to_s.length < 5
146
+ return false if @email !~ Regexp.new(/\A(?![^\r\n]*[\r\n])(?![^@]*\.\.)[a-zA-Z0-9_%+-](?:[a-zA-Z0-9._%+-]*[a-zA-Z0-9_%+-])?@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,63}\z/)
141
147
  return false if !@quota_bytes.nil? && @quota_bytes < 1
142
148
  true
143
149
  end
@@ -175,6 +181,11 @@ module Sendmux::Management::Generated
175
181
  fail ArgumentError, 'invalid value for "email", the character length must be greater than or equal to 5.'
176
182
  end
177
183
 
184
+ pattern = Regexp.new(/\A(?![^\r\n]*[\r\n])(?![^@]*\.\.)[a-zA-Z0-9_%+-](?:[a-zA-Z0-9._%+-]*[a-zA-Z0-9_%+-])?@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,63}\z/)
185
+ if email !~ pattern
186
+ fail ArgumentError, "invalid value for \"email\", must conform to the pattern #{pattern}."
187
+ end
188
+
178
189
  @email = email
179
190
  end
180
191
 
@@ -15,6 +15,7 @@ require 'time'
15
15
 
16
16
  module Sendmux::Management::Generated
17
17
  class ProviderCreateBody < ApiModelBase
18
+ # Default From email address for an SMTP account.
18
19
  attr_accessor :from_email
19
20
 
20
21
  attr_accessor :from_name
@@ -20,7 +20,7 @@ module Sendmux::Management::Generated
20
20
  # ISO 8601 creation timestamp
21
21
  attr_accessor :created_at
22
22
 
23
- # Default From email address.
23
+ # Default From email address. Connected Google and Microsoft accounts always use their authorised account address.
24
24
  attr_accessor :from_email
25
25
 
26
26
  # Default From display name.
@@ -15,6 +15,7 @@ require 'time'
15
15
 
16
16
  module Sendmux::Management::Generated
17
17
  class ProviderUpdateBody < ApiModelBase
18
+ # Default From email address for an SMTP account. Connected Google and Microsoft accounts keep their authorised account address.
18
19
  attr_accessor :from_email
19
20
 
20
21
  attr_accessor :from_name
@@ -25,10 +25,17 @@ require 'sendmux_management_generated/models/api_error_response'
25
25
  require 'sendmux_management_generated/models/balance'
26
26
  require 'sendmux_management_generated/models/balance_auto_topup'
27
27
  require 'sendmux_management_generated/models/balance_response'
28
+ require 'sendmux_management_generated/models/connection'
29
+ require 'sendmux_management_generated/models/connection_credential'
30
+ require 'sendmux_management_generated/models/connection_mailboxes_inner'
31
+ require 'sendmux_management_generated/models/connection_response'
32
+ require 'sendmux_management_generated/models/connection_team'
28
33
  require 'sendmux_management_generated/models/cursor_pagination'
34
+ require 'sendmux_management_generated/models/delivery_log_detail'
29
35
  require 'sendmux_management_generated/models/delivery_log_item'
30
36
  require 'sendmux_management_generated/models/delivery_log_item_cursor_list_response'
31
37
  require 'sendmux_management_generated/models/delivery_log_item_response'
38
+ require 'sendmux_management_generated/models/delivery_log_recipient'
32
39
  require 'sendmux_management_generated/models/domain_deleted_response'
33
40
  require 'sendmux_management_generated/models/domain_deleted_response_all_of_data'
34
41
  require 'sendmux_management_generated/models/domain_item_cursor_list_response'
@@ -138,6 +145,7 @@ require 'sendmux_management_generated/models/webhook_update_body'
138
145
 
139
146
  # APIs
140
147
  require 'sendmux_management_generated/api/billing_api'
148
+ require 'sendmux_management_generated/api/connection_api'
141
149
  require 'sendmux_management_generated/api/domain_filters_api'
142
150
  require 'sendmux_management_generated/api/domains_api'
143
151
  require 'sendmux_management_generated/api/emails_api'
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sendmux-management
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sendmux
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2026-07-08 00:00:00.000000000 Z
10
+ date: 2026-09-08 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: faraday
@@ -75,16 +75,22 @@ dependencies:
75
75
  name: sendmux-core
76
76
  requirement: !ruby/object:Gem::Requirement
77
77
  requirements:
78
- - - "~>"
78
+ - - ">="
79
79
  - !ruby/object:Gem::Version
80
- version: '1.0'
80
+ version: 1.2.0
81
+ - - "<"
82
+ - !ruby/object:Gem::Version
83
+ version: '2.0'
81
84
  type: :runtime
82
85
  prerelease: false
83
86
  version_requirements: !ruby/object:Gem::Requirement
84
87
  requirements:
85
- - - "~>"
88
+ - - ">="
86
89
  - !ruby/object:Gem::Version
87
- version: '1.0'
90
+ version: 1.2.0
91
+ - - "<"
92
+ - !ruby/object:Gem::Version
93
+ version: '2.0'
88
94
  email:
89
95
  - contact@sendmux.ai
90
96
  executables: []
@@ -99,6 +105,7 @@ files:
99
105
  - lib/sendmux/management/version.rb
100
106
  - lib/sendmux_management_generated.rb
101
107
  - lib/sendmux_management_generated/api/billing_api.rb
108
+ - lib/sendmux_management_generated/api/connection_api.rb
102
109
  - lib/sendmux_management_generated/api/domain_filters_api.rb
103
110
  - lib/sendmux_management_generated/api/domains_api.rb
104
111
  - lib/sendmux_management_generated/api/emails_api.rb
@@ -118,10 +125,17 @@ files:
118
125
  - lib/sendmux_management_generated/models/balance.rb
119
126
  - lib/sendmux_management_generated/models/balance_auto_topup.rb
120
127
  - lib/sendmux_management_generated/models/balance_response.rb
128
+ - lib/sendmux_management_generated/models/connection.rb
129
+ - lib/sendmux_management_generated/models/connection_credential.rb
130
+ - lib/sendmux_management_generated/models/connection_mailboxes_inner.rb
131
+ - lib/sendmux_management_generated/models/connection_response.rb
132
+ - lib/sendmux_management_generated/models/connection_team.rb
121
133
  - lib/sendmux_management_generated/models/cursor_pagination.rb
134
+ - lib/sendmux_management_generated/models/delivery_log_detail.rb
122
135
  - lib/sendmux_management_generated/models/delivery_log_item.rb
123
136
  - lib/sendmux_management_generated/models/delivery_log_item_cursor_list_response.rb
124
137
  - lib/sendmux_management_generated/models/delivery_log_item_response.rb
138
+ - lib/sendmux_management_generated/models/delivery_log_recipient.rb
125
139
  - lib/sendmux_management_generated/models/domain_deleted_response.rb
126
140
  - lib/sendmux_management_generated/models/domain_deleted_response_all_of_data.rb
127
141
  - lib/sendmux_management_generated/models/domain_item_cursor_list_response.rb