zavudev 0.15.0 → 0.17.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 (95) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -0
  3. data/README.md +7 -7
  4. data/lib/zavudev/client.rb +0 -12
  5. data/lib/zavudev/models/broadcast_channel.rb +0 -3
  6. data/lib/zavudev/models/channel.rb +5 -1
  7. data/lib/zavudev/models/contact_channel.rb +1 -0
  8. data/lib/zavudev/models/contact_create_params.rb +1 -0
  9. data/lib/zavudev/models/contacts/channel_add_params.rb +1 -0
  10. data/lib/zavudev/models/message.rb +12 -8
  11. data/lib/zavudev/models/message_list_params.rb +40 -7
  12. data/lib/zavudev/models/phone_number_type.rb +1 -1
  13. data/lib/zavudev/models/sender.rb +23 -1
  14. data/lib/zavudev/models/sender_create_params.rb +45 -4
  15. data/lib/zavudev/models/sender_update_params.rb +40 -1
  16. data/lib/zavudev/models/url_list_verified_params.rb +1 -0
  17. data/lib/zavudev/models/verified_url.rb +1 -0
  18. data/lib/zavudev/models.rb +0 -12
  19. data/lib/zavudev/resources/messages.rb +2 -2
  20. data/lib/zavudev/resources/senders.rb +25 -3
  21. data/lib/zavudev/version.rb +1 -1
  22. data/lib/zavudev.rb +0 -13
  23. data/rbi/zavudev/client.rbi +0 -9
  24. data/rbi/zavudev/models/broadcast_channel.rbi +0 -3
  25. data/rbi/zavudev/models/channel.rbi +5 -1
  26. data/rbi/zavudev/models/contact_channel.rbi +2 -0
  27. data/rbi/zavudev/models/contact_create_params.rbi +5 -0
  28. data/rbi/zavudev/models/contacts/channel_add_params.rbi +5 -0
  29. data/rbi/zavudev/models/message.rbi +16 -8
  30. data/rbi/zavudev/models/message_list_params.rbi +74 -10
  31. data/rbi/zavudev/models/phone_number_type.rbi +1 -1
  32. data/rbi/zavudev/models/sender.rbi +28 -0
  33. data/rbi/zavudev/models/sender_create_params.rbi +62 -3
  34. data/rbi/zavudev/models/sender_update_params.rbi +52 -0
  35. data/rbi/zavudev/models/url_list_verified_params.rbi +5 -0
  36. data/rbi/zavudev/models/verified_url.rbi +2 -0
  37. data/rbi/zavudev/models.rbi +0 -12
  38. data/rbi/zavudev/resources/messages.rbi +4 -3
  39. data/rbi/zavudev/resources/senders.rbi +35 -1
  40. data/sig/zavudev/client.rbs +0 -6
  41. data/sig/zavudev/models/broadcast_channel.rbs +1 -12
  42. data/sig/zavudev/models/channel.rbs +2 -0
  43. data/sig/zavudev/models/contact_channel.rbs +3 -1
  44. data/sig/zavudev/models/contact_create_params.rbs +8 -1
  45. data/sig/zavudev/models/contacts/channel_add_params.rbs +8 -1
  46. data/sig/zavudev/models/message_list_params.rbs +54 -11
  47. data/sig/zavudev/models/phone_number_type.rbs +2 -2
  48. data/sig/zavudev/models/sender.rbs +14 -0
  49. data/sig/zavudev/models/sender_create_params.rbs +32 -2
  50. data/sig/zavudev/models/sender_update_params.rbs +28 -0
  51. data/sig/zavudev/models/url_list_verified_params.rbs +2 -1
  52. data/sig/zavudev/models/verified_url.rbs +2 -1
  53. data/sig/zavudev/models.rbs +0 -12
  54. data/sig/zavudev/resources/messages.rbs +2 -2
  55. data/sig/zavudev/resources/senders.rbs +9 -1
  56. metadata +2 -41
  57. data/lib/zavudev/models/data_export.rb +0 -122
  58. data/lib/zavudev/models/export_create_params.rb +0 -54
  59. data/lib/zavudev/models/export_create_response.rb +0 -16
  60. data/lib/zavudev/models/export_list_params.rb +0 -49
  61. data/lib/zavudev/models/export_retrieve_params.rb +0 -20
  62. data/lib/zavudev/models/export_retrieve_response.rb +0 -16
  63. data/lib/zavudev/models/plan_retrieve_params.rb +0 -14
  64. data/lib/zavudev/models/plan_retrieve_response.rb +0 -155
  65. data/lib/zavudev/models/usage_retrieve_params.rb +0 -14
  66. data/lib/zavudev/models/usage_retrieve_response.rb +0 -77
  67. data/lib/zavudev/resources/exports.rb +0 -89
  68. data/lib/zavudev/resources/plan.rb +0 -33
  69. data/lib/zavudev/resources/usage.rb +0 -33
  70. data/rbi/zavudev/models/data_export.rbi +0 -151
  71. data/rbi/zavudev/models/export_create_params.rbi +0 -106
  72. data/rbi/zavudev/models/export_create_response.rbi +0 -31
  73. data/rbi/zavudev/models/export_list_params.rbi +0 -89
  74. data/rbi/zavudev/models/export_retrieve_params.rbi +0 -35
  75. data/rbi/zavudev/models/export_retrieve_response.rbi +0 -31
  76. data/rbi/zavudev/models/plan_retrieve_params.rbi +0 -27
  77. data/rbi/zavudev/models/plan_retrieve_response.rbi +0 -306
  78. data/rbi/zavudev/models/usage_retrieve_params.rbi +0 -27
  79. data/rbi/zavudev/models/usage_retrieve_response.rbi +0 -150
  80. data/rbi/zavudev/resources/exports.rbi +0 -62
  81. data/rbi/zavudev/resources/plan.rbi +0 -22
  82. data/rbi/zavudev/resources/usage.rbi +0 -22
  83. data/sig/zavudev/models/data_export.rbs +0 -102
  84. data/sig/zavudev/models/export_create_params.rbs +0 -59
  85. data/sig/zavudev/models/export_create_response.rbs +0 -13
  86. data/sig/zavudev/models/export_list_params.rbs +0 -57
  87. data/sig/zavudev/models/export_retrieve_params.rbs +0 -23
  88. data/sig/zavudev/models/export_retrieve_response.rbs +0 -13
  89. data/sig/zavudev/models/plan_retrieve_params.rbs +0 -15
  90. data/sig/zavudev/models/plan_retrieve_response.rbs +0 -158
  91. data/sig/zavudev/models/usage_retrieve_params.rbs +0 -15
  92. data/sig/zavudev/models/usage_retrieve_response.rbs +0 -69
  93. data/sig/zavudev/resources/exports.rbs +0 -26
  94. data/sig/zavudev/resources/plan.rbs +0 -11
  95. data/sig/zavudev/resources/usage.rbs +0 -11
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c47655af05e478984221142dbae0a305261b0e154bda36ba6d11370540f4b159
4
- data.tar.gz: 61f9fb898a158c74137d0222bea09e68257115df2d451cf2b9d152bc76348000
3
+ metadata.gz: 915682fb433dfff5f6a3067d70fa4802770a48c6955177ff08197ff776356ddc
4
+ data.tar.gz: 4f0a420f38b36a96ff29b32c3918a1224ef77bc7ab5a3ee6ac57022fb722b406
5
5
  SHA512:
6
- metadata.gz: 037ef7d5bd90239e10bf70596a6bf95041d0b80ca05f3086281e97e117464559ca1607cab6a6a315b541dcfeae46371c3adec06aff60dd4fc835e8d0715ee17d
7
- data.tar.gz: 9a81cc375e69f7280ce8e49677582bf3d1cb1d227bf05f37c87ef697d8446af7b1b3ed61571cbc8a8973c128263a95850519ad2bbb3d33d2195515cbba8ba70e
6
+ metadata.gz: 03406dfe24ce80b30d357e7ee5a2d062d448c8749c6d2e02aa97ae99fa61797d547c6a35570b09ac77a13f397c227c64ff87142e12c14db4dcb013bd21658b13
7
+ data.tar.gz: 99287b8f44be9a45d6c8f4ff99a63a423718762b7508a4d5b1d2455c2e775a2c0cdc818273537d09e22ca096cea1d8cc7f3fd893f5f1f0f942f491abe3a71fd0
data/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.17.0 (2026-07-12)
4
+
5
+ Full Changelog: [v0.16.0...v0.17.0](https://github.com/zavudev/sdk-ruby/compare/v0.16.0...v0.17.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([460ee29](https://github.com/zavudev/sdk-ruby/commit/460ee29ffefa9d16fc45c10b7c6c36bcfcccf962))
10
+ * **api:** api update ([3a8d027](https://github.com/zavudev/sdk-ruby/commit/3a8d027e3fa9e418246bdf464806c4abd2ba74c5))
11
+ * **api:** manual updates ([b6feb00](https://github.com/zavudev/sdk-ruby/commit/b6feb00d502e93f31a953438580f2420b3011482))
12
+
13
+ ## 0.16.0 (2026-07-07)
14
+
15
+ Full Changelog: [v0.15.0...v0.16.0](https://github.com/zavudev/sdk-ruby/compare/v0.15.0...v0.16.0)
16
+
17
+ ### Features
18
+
19
+ * **api:** api update ([cd49564](https://github.com/zavudev/sdk-ruby/commit/cd49564f9c54a8aef2de33ad0b484cc6bd6c7ae3))
20
+ * **api:** api update ([676212b](https://github.com/zavudev/sdk-ruby/commit/676212b365d2860826b55a8106ea129faaa533ed))
21
+
3
22
  ## 0.15.0 (2026-07-05)
4
23
 
5
24
  Full Changelog: [v0.14.0...v0.15.0](https://github.com/zavudev/sdk-ruby/compare/v0.14.0...v0.15.0)
data/README.md CHANGED
@@ -26,7 +26,7 @@ To use this gem, install via Bundler by adding the following to your application
26
26
  <!-- x-release-please-start-version -->
27
27
 
28
28
  ```ruby
29
- gem "zavudev", "~> 0.15.0"
29
+ gem "zavudev", "~> 0.17.0"
30
30
  ```
31
31
 
32
32
  <!-- x-release-please-end -->
@@ -235,11 +235,11 @@ zavudev.messages.send_(**params)
235
235
  Since this library does not depend on `sorbet-runtime`, it cannot provide [`T::Enum`](https://sorbet.org/docs/tenum) instances. Instead, we provide "tagged symbols" instead, which is always a primitive at runtime:
236
236
 
237
237
  ```ruby
238
- # :auto
239
- puts(Zavudev::Channel::AUTO)
238
+ # :sms
239
+ puts(Zavudev::MessageListParams::Channel::SMS)
240
240
 
241
- # Revealed type: `T.all(Zavudev::Channel, Symbol)`
242
- T.reveal_type(Zavudev::Channel::AUTO)
241
+ # Revealed type: `T.all(Zavudev::MessageListParams::Channel, Symbol)`
242
+ T.reveal_type(Zavudev::MessageListParams::Channel::SMS)
243
243
  ```
244
244
 
245
245
  Enum parameters have a "relaxed" type, so you can either pass in enum constants or their literal value:
@@ -247,13 +247,13 @@ Enum parameters have a "relaxed" type, so you can either pass in enum constants
247
247
  ```ruby
248
248
  # Using the enum constants preserves the tagged type information:
249
249
  zavudev.messages.list(
250
- channel: Zavudev::Channel::AUTO,
250
+ channel: Zavudev::MessageListParams::Channel::SMS,
251
251
  # …
252
252
  )
253
253
 
254
254
  # Literal values are also permissible:
255
255
  zavudev.messages.list(
256
- channel: :auto,
256
+ channel: :sms,
257
257
  # …
258
258
  )
259
259
  ```
@@ -48,21 +48,12 @@ module Zavudev
48
48
  # @return [Zavudev::Resources::Invitations]
49
49
  attr_reader :invitations
50
50
 
51
- # @return [Zavudev::Resources::Exports]
52
- attr_reader :exports
53
-
54
51
  # @return [Zavudev::Resources::URLs]
55
52
  attr_reader :urls
56
53
 
57
54
  # @return [Zavudev::Resources::Balance]
58
55
  attr_reader :balance
59
56
 
60
- # @return [Zavudev::Resources::Plan]
61
- attr_reader :plan
62
-
63
- # @return [Zavudev::Resources::Usage]
64
- attr_reader :usage
65
-
66
57
  # @return [Zavudev::Resources::SubAccounts]
67
58
  attr_reader :sub_accounts
68
59
 
@@ -146,11 +137,8 @@ module Zavudev
146
137
  @addresses = Zavudev::Resources::Addresses.new(client: self)
147
138
  @regulatory_documents = Zavudev::Resources::RegulatoryDocuments.new(client: self)
148
139
  @invitations = Zavudev::Resources::Invitations.new(client: self)
149
- @exports = Zavudev::Resources::Exports.new(client: self)
150
140
  @urls = Zavudev::Resources::URLs.new(client: self)
151
141
  @balance = Zavudev::Resources::Balance.new(client: self)
152
- @plan = Zavudev::Resources::Plan.new(client: self)
153
- @usage = Zavudev::Resources::Usage.new(client: self)
154
142
  @sub_accounts = Zavudev::Resources::SubAccounts.new(client: self)
155
143
  @number_10dlc = Zavudev::Resources::Number10dlc.new(client: self)
156
144
  @me = Zavudev::Resources::Me.new(client: self)
@@ -12,9 +12,6 @@ module Zavudev
12
12
  WHATSAPP = :whatsapp
13
13
  TELEGRAM = :telegram
14
14
  EMAIL = :email
15
- INSTAGRAM = :instagram
16
- MESSENGER = :messenger
17
- VOICE = :voice
18
15
 
19
16
  # @!method self.values
20
17
  # @return [Array<Symbol>]
@@ -2,7 +2,10 @@
2
2
 
3
3
  module Zavudev
4
4
  module Models
5
- # Delivery channel. Use 'auto' for intelligent routing.
5
+ # Delivery channel. Use 'auto' for intelligent routing. `whatsapp_alt` is the
6
+ # QR-linked WhatsApp channel and is only accepted for teams with the WhatsApp
7
+ # Alternative feature enabled; the sender must have a connected whatsapp_alt
8
+ # session.
6
9
  module Channel
7
10
  extend Zavudev::Internal::Type::Enum
8
11
 
@@ -10,6 +13,7 @@ module Zavudev
10
13
  SMS = :sms
11
14
  SMS_ONEWAY = :sms_oneway
12
15
  WHATSAPP = :whatsapp
16
+ WHATSAPP_ALT = :whatsapp_alt
13
17
  TELEGRAM = :telegram
14
18
  EMAIL = :email
15
19
  INSTAGRAM = :instagram
@@ -108,6 +108,7 @@ module Zavudev
108
108
  WHATSAPP = :whatsapp
109
109
  EMAIL = :email
110
110
  TELEGRAM = :telegram
111
+ INSTAGRAM = :instagram
111
112
  MESSENGER = :messenger
112
113
  VOICE = :voice
113
114
 
@@ -88,6 +88,7 @@ module Zavudev
88
88
  WHATSAPP = :whatsapp
89
89
  EMAIL = :email
90
90
  TELEGRAM = :telegram
91
+ INSTAGRAM = :instagram
91
92
  MESSENGER = :messenger
92
93
  VOICE = :voice
93
94
 
@@ -66,6 +66,7 @@ module Zavudev
66
66
  WHATSAPP = :whatsapp
67
67
  EMAIL = :email
68
68
  TELEGRAM = :telegram
69
+ INSTAGRAM = :instagram
69
70
  MESSENGER = :messenger
70
71
  VOICE = :voice
71
72
 
@@ -10,7 +10,10 @@ module Zavudev
10
10
  required :id, String
11
11
 
12
12
  # @!attribute channel
13
- # Delivery channel. Use 'auto' for intelligent routing.
13
+ # Delivery channel. Use 'auto' for intelligent routing. `whatsapp_alt` is the
14
+ # QR-linked WhatsApp channel and is only accepted for teams with the WhatsApp
15
+ # Alternative feature enabled; the sender must have a connected whatsapp_alt
16
+ # session.
14
17
  #
15
18
  # @return [Symbol, Zavudev::Models::Channel]
16
19
  required :channel, enum: -> { Zavudev::Channel }
@@ -44,19 +47,20 @@ module Zavudev
44
47
  optional :content, -> { Zavudev::MessageContent }
45
48
 
46
49
  # @!attribute cost
47
- # MAU cost in USD (charged for first contact of the month).
50
+ # Zavu platform charge in USD for this message. Messaging is billed against your
51
+ # plan's monthly limits plus usage-based overage.
48
52
  #
49
53
  # @return [Float, nil]
50
54
  optional :cost, Float, nil?: true
51
55
 
52
56
  # @!attribute cost_provider
53
- # Provider cost in USD (Telnyx, SES, etc.).
57
+ # Carrier and delivery cost in USD.
54
58
  #
55
59
  # @return [Float, nil]
56
60
  optional :cost_provider, Float, api_name: :costProvider, nil?: true
57
61
 
58
62
  # @!attribute cost_total
59
- # Total cost in USD (MAU + provider cost).
63
+ # Total cost in USD (platform charge + delivery cost).
60
64
  #
61
65
  # @return [Float, nil]
62
66
  optional :cost_total, Float, api_name: :costTotal, nil?: true
@@ -109,7 +113,7 @@ module Zavudev
109
113
  #
110
114
  # @param id [String]
111
115
  #
112
- # @param channel [Symbol, Zavudev::Models::Channel] Delivery channel. Use 'auto' for intelligent routing.
116
+ # @param channel [Symbol, Zavudev::Models::Channel] Delivery channel. Use 'auto' for intelligent routing. `whatsapp_alt` is the QR-l
113
117
  #
114
118
  # @param created_at [Time]
115
119
  #
@@ -121,11 +125,11 @@ module Zavudev
121
125
  #
122
126
  # @param content [Zavudev::Models::MessageContent] Content for non-text message types (WhatsApp and Telegram).
123
127
  #
124
- # @param cost [Float, nil] MAU cost in USD (charged for first contact of the month).
128
+ # @param cost [Float, nil] Zavu platform charge in USD for this message. Messaging is billed against your p
125
129
  #
126
- # @param cost_provider [Float, nil] Provider cost in USD (Telnyx, SES, etc.).
130
+ # @param cost_provider [Float, nil] Carrier and delivery cost in USD.
127
131
  #
128
- # @param cost_total [Float, nil] Total cost in USD (MAU + provider cost).
132
+ # @param cost_total [Float, nil] Total cost in USD (platform charge + delivery cost).
129
133
  #
130
134
  # @param error_code [String, nil]
131
135
  #
@@ -8,10 +8,10 @@ module Zavudev
8
8
  include Zavudev::Internal::Type::RequestParameters
9
9
 
10
10
  # @!attribute channel
11
- # Delivery channel. Use 'auto' for intelligent routing.
11
+ # Filter by delivery channel.
12
12
  #
13
- # @return [Symbol, Zavudev::Models::Channel, nil]
14
- optional :channel, enum: -> { Zavudev::Channel }
13
+ # @return [Symbol, Zavudev::Models::MessageListParams::Channel, nil]
14
+ optional :channel, enum: -> { Zavudev::MessageListParams::Channel }
15
15
 
16
16
  # @!attribute cursor
17
17
  #
@@ -24,9 +24,10 @@ module Zavudev
24
24
  optional :limit, Integer
25
25
 
26
26
  # @!attribute status
27
+ # Filter by status. Not all stored statuses are filterable.
27
28
  #
28
- # @return [Symbol, Zavudev::Models::MessageStatus, nil]
29
- optional :status, enum: -> { Zavudev::MessageStatus }
29
+ # @return [Symbol, Zavudev::Models::MessageListParams::Status, nil]
30
+ optional :status, enum: -> { Zavudev::MessageListParams::Status }
30
31
 
31
32
  # @!attribute to
32
33
  #
@@ -34,17 +35,49 @@ module Zavudev
34
35
  optional :to, String
35
36
 
36
37
  # @!method initialize(channel: nil, cursor: nil, limit: nil, status: nil, to: nil, request_options: {})
37
- # @param channel [Symbol, Zavudev::Models::Channel] Delivery channel. Use 'auto' for intelligent routing.
38
+ # @param channel [Symbol, Zavudev::Models::MessageListParams::Channel] Filter by delivery channel.
38
39
  #
39
40
  # @param cursor [String]
40
41
  #
41
42
  # @param limit [Integer]
42
43
  #
43
- # @param status [Symbol, Zavudev::Models::MessageStatus]
44
+ # @param status [Symbol, Zavudev::Models::MessageListParams::Status] Filter by status. Not all stored statuses are filterable.
44
45
  #
45
46
  # @param to [String]
46
47
  #
47
48
  # @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}]
49
+
50
+ # Filter by delivery channel.
51
+ module Channel
52
+ extend Zavudev::Internal::Type::Enum
53
+
54
+ SMS = :sms
55
+ SMS_ONEWAY = :sms_oneway
56
+ WHATSAPP = :whatsapp
57
+ EMAIL = :email
58
+ TELEGRAM = :telegram
59
+ INSTAGRAM = :instagram
60
+ MESSENGER = :messenger
61
+ VOICE = :voice
62
+
63
+ # @!method self.values
64
+ # @return [Array<Symbol>]
65
+ end
66
+
67
+ # Filter by status. Not all stored statuses are filterable.
68
+ module Status
69
+ extend Zavudev::Internal::Type::Enum
70
+
71
+ QUEUED = :queued
72
+ SENDING = :sending
73
+ SENT = :sent
74
+ DELIVERED = :delivered
75
+ FAILED = :failed
76
+ RECEIVED = :received
77
+
78
+ # @!method self.values
79
+ # @return [Array<Symbol>]
80
+ end
48
81
  end
49
82
  end
50
83
  end
@@ -6,7 +6,7 @@ module Zavudev
6
6
  extend Zavudev::Internal::Type::Enum
7
7
 
8
8
  LOCAL = :local
9
- MOBILE = :mobile
9
+ NATIONAL = :national
10
10
  TOLL_FREE = :tollFree
11
11
 
12
12
  # @!method self.values
@@ -25,6 +25,21 @@ module Zavudev
25
25
  # @return [Time, nil]
26
26
  optional :created_at, Time, api_name: :createdAt
27
27
 
28
+ # @!attribute email_address
29
+ # From-address for the email channel, if configured.
30
+ #
31
+ # @return [String, nil]
32
+ optional :email_address, String, api_name: :emailAddress
33
+
34
+ # @!attribute email_catch_all_enabled
35
+ # Whether catch-all receiving is enabled. When true (and emailReceivingEnabled is
36
+ # true), this sender receives email addressed to any local part at its domain, not
37
+ # just its own address. The original recipient is delivered in the message.inbound
38
+ # webhook's data.to.
39
+ #
40
+ # @return [Boolean, nil]
41
+ optional :email_catch_all_enabled, Zavudev::Internal::Type::Boolean, api_name: :emailCatchAllEnabled
42
+
28
43
  # @!attribute email_receiving_enabled
29
44
  # Whether inbound email receiving is enabled for this sender.
30
45
  #
@@ -54,7 +69,10 @@ module Zavudev
54
69
  # @return [Zavudev::Models::Sender::Whatsapp, nil]
55
70
  optional :whatsapp, -> { Zavudev::Sender::Whatsapp }
56
71
 
57
- # @!method initialize(id:, name:, phone_number:, created_at: nil, email_receiving_enabled: nil, is_default: nil, updated_at: nil, webhook: nil, whatsapp: nil)
72
+ # @!method initialize(id:, name:, phone_number:, created_at: nil, email_address: nil, email_catch_all_enabled: nil, email_receiving_enabled: nil, is_default: nil, updated_at: nil, webhook: nil, whatsapp: nil)
73
+ # Some parameter documentations has been truncated, see {Zavudev::Models::Sender}
74
+ # for more details.
75
+ #
58
76
  # @param id [String]
59
77
  #
60
78
  # @param name [String]
@@ -63,6 +81,10 @@ module Zavudev
63
81
  #
64
82
  # @param created_at [Time]
65
83
  #
84
+ # @param email_address [String] From-address for the email channel, if configured.
85
+ #
86
+ # @param email_catch_all_enabled [Boolean] Whether catch-all receiving is enabled. When true (and emailReceivingEnabled is
87
+ #
66
88
  # @param email_receiving_enabled [Boolean] Whether inbound email receiving is enabled for this sender.
67
89
  #
68
90
  # @param is_default [Boolean] Whether this sender is the project's default.
@@ -12,10 +12,40 @@ module Zavudev
12
12
  # @return [String]
13
13
  required :name, String
14
14
 
15
+ # @!attribute email_address
16
+ # From-address for the email channel (e.g. noreply@yourdomain.com). The address's
17
+ # domain must be a verified email domain in your project. Setting this attaches
18
+ # the email channel to the sender.
19
+ #
20
+ # @return [String, nil]
21
+ optional :email_address, String, api_name: :emailAddress
22
+
23
+ # @!attribute email_domain_id
24
+ # ID of the verified email domain to attach. Optional — resolved from
25
+ # `emailAddress`'s domain when omitted.
26
+ #
27
+ # @return [String, nil]
28
+ optional :email_domain_id, String, api_name: :emailDomainId
29
+
30
+ # @!attribute email_from_name
31
+ # Display name shown in the recipient's inbox for the email channel.
32
+ #
33
+ # @return [String, nil]
34
+ optional :email_from_name, String, api_name: :emailFromName
35
+
36
+ # @!attribute email_receiving_enabled
37
+ # Enable inbound email receiving on this sender. Requires a verified MX record on
38
+ # the domain; ignored otherwise.
39
+ #
40
+ # @return [Boolean, nil]
41
+ optional :email_receiving_enabled, Zavudev::Internal::Type::Boolean, api_name: :emailReceivingEnabled
42
+
15
43
  # @!attribute phone_number
44
+ # Phone number in E.164 format. Required for phone-based channels (SMS, WhatsApp).
45
+ # Omit for an email-only sender.
16
46
  #
17
- # @return [String]
18
- required :phone_number, String, api_name: :phoneNumber
47
+ # @return [String, nil]
48
+ optional :phone_number, String, api_name: :phoneNumber
19
49
 
20
50
  # @!attribute set_as_default
21
51
  #
@@ -36,10 +66,21 @@ module Zavudev
36
66
  # @return [String, nil]
37
67
  optional :webhook_url, String, api_name: :webhookUrl
38
68
 
39
- # @!method initialize(name:, phone_number:, set_as_default: nil, webhook_events: nil, webhook_url: nil, request_options: {})
69
+ # @!method initialize(name:, email_address: nil, email_domain_id: nil, email_from_name: nil, email_receiving_enabled: nil, phone_number: nil, set_as_default: nil, webhook_events: nil, webhook_url: nil, request_options: {})
70
+ # Some parameter documentations has been truncated, see
71
+ # {Zavudev::Models::SenderCreateParams} for more details.
72
+ #
40
73
  # @param name [String]
41
74
  #
42
- # @param phone_number [String]
75
+ # @param email_address [String] From-address for the email channel (e.g. noreply@yourdomain.com). The address's
76
+ #
77
+ # @param email_domain_id [String] ID of the verified email domain to attach. Optional — resolved from `emailAddres
78
+ #
79
+ # @param email_from_name [String] Display name shown in the recipient's inbox for the email channel.
80
+ #
81
+ # @param email_receiving_enabled [Boolean] Enable inbound email receiving on this sender. Requires a verified MX record on
82
+ #
83
+ # @param phone_number [String] Phone number in E.164 format. Required for phone-based channels (SMS, WhatsApp).
43
84
  #
44
85
  # @param set_as_default [Boolean]
45
86
  #
@@ -12,6 +12,34 @@ module Zavudev
12
12
  # @return [String]
13
13
  required :sender_id, String
14
14
 
15
+ # @!attribute email_address
16
+ # Attach or change the sender's email from-address (e.g. noreply@yourdomain.com).
17
+ # The domain must be a verified email domain in your project.
18
+ #
19
+ # @return [String, nil]
20
+ optional :email_address, String, api_name: :emailAddress
21
+
22
+ # @!attribute email_catch_all_enabled
23
+ # Enable or disable domain catch-all. When enabled (with emailReceivingEnabled
24
+ # true), this sender receives email for any address at its domain. Ignored
25
+ # (treated as false) if receiving is not enabled.
26
+ #
27
+ # @return [Boolean, nil]
28
+ optional :email_catch_all_enabled, Zavudev::Internal::Type::Boolean, api_name: :emailCatchAllEnabled
29
+
30
+ # @!attribute email_domain_id
31
+ # ID of the verified email domain to attach. Optional — resolved from
32
+ # `emailAddress`'s domain when omitted.
33
+ #
34
+ # @return [String, nil]
35
+ optional :email_domain_id, String, api_name: :emailDomainId
36
+
37
+ # @!attribute email_from_name
38
+ # Display name shown in the recipient's inbox for the email channel.
39
+ #
40
+ # @return [String, nil]
41
+ optional :email_from_name, String, api_name: :emailFromName
42
+
15
43
  # @!attribute email_receiving_enabled
16
44
  # Enable or disable inbound email receiving for this sender.
17
45
  #
@@ -48,9 +76,20 @@ module Zavudev
48
76
  # @return [String, nil]
49
77
  optional :webhook_url, String, api_name: :webhookUrl, nil?: true
50
78
 
51
- # @!method initialize(sender_id:, email_receiving_enabled: nil, name: nil, set_as_default: nil, webhook_active: nil, webhook_events: nil, webhook_url: nil, request_options: {})
79
+ # @!method initialize(sender_id:, email_address: nil, email_catch_all_enabled: nil, email_domain_id: nil, email_from_name: nil, email_receiving_enabled: nil, name: nil, set_as_default: nil, webhook_active: nil, webhook_events: nil, webhook_url: nil, request_options: {})
80
+ # Some parameter documentations has been truncated, see
81
+ # {Zavudev::Models::SenderUpdateParams} for more details.
82
+ #
52
83
  # @param sender_id [String]
53
84
  #
85
+ # @param email_address [String] Attach or change the sender's email from-address (e.g. noreply@yourdomain.com).
86
+ #
87
+ # @param email_catch_all_enabled [Boolean] Enable or disable domain catch-all. When enabled (with emailReceivingEnabled tru
88
+ #
89
+ # @param email_domain_id [String] ID of the verified email domain to attach. Optional — resolved from `emailAddres
90
+ #
91
+ # @param email_from_name [String] Display name shown in the recipient's inbox for the email channel.
92
+ #
54
93
  # @param email_receiving_enabled [Boolean] Enable or disable inbound email receiving for this sender.
55
94
  #
56
95
  # @param name [String]
@@ -39,6 +39,7 @@ module Zavudev
39
39
  PENDING = :pending
40
40
  APPROVED = :approved
41
41
  REJECTED = :rejected
42
+ ESCALATED = :escalated
42
43
  MALICIOUS = :malicious
43
44
 
44
45
  # @!method self.values
@@ -67,6 +67,7 @@ module Zavudev
67
67
  PENDING = :pending
68
68
  APPROVED = :approved
69
69
  REJECTED = :rejected
70
+ ESCALATED = :escalated
70
71
  MALICIOUS = :malicious
71
72
 
72
73
  # @!method self.values
@@ -119,14 +119,6 @@ module Zavudev
119
119
 
120
120
  ContactUpdateParams = Zavudev::Models::ContactUpdateParams
121
121
 
122
- DataExport = Zavudev::Models::DataExport
123
-
124
- ExportCreateParams = Zavudev::Models::ExportCreateParams
125
-
126
- ExportListParams = Zavudev::Models::ExportListParams
127
-
128
- ExportRetrieveParams = Zavudev::Models::ExportRetrieveParams
129
-
130
122
  FunctionCreateParams = Zavudev::Models::FunctionCreateParams
131
123
 
132
124
  FunctionDeleteParams = Zavudev::Models::FunctionDeleteParams
@@ -207,8 +199,6 @@ module Zavudev
207
199
 
208
200
  PhoneNumberUpdateParams = Zavudev::Models::PhoneNumberUpdateParams
209
201
 
210
- PlanRetrieveParams = Zavudev::Models::PlanRetrieveParams
211
-
212
202
  RegulatoryDocument = Zavudev::Models::RegulatoryDocument
213
203
 
214
204
  RegulatoryDocumentCreateParams = Zavudev::Models::RegulatoryDocumentCreateParams
@@ -287,8 +277,6 @@ module Zavudev
287
277
 
288
278
  URLSubmitForVerificationParams = Zavudev::Models::URLSubmitForVerificationParams
289
279
 
290
- UsageRetrieveParams = Zavudev::Models::UsageRetrieveParams
291
-
292
280
  VerifiedURL = Zavudev::Models::VerifiedURL
293
281
 
294
282
  WebhookEvent = Zavudev::Models::WebhookEvent
@@ -26,13 +26,13 @@ module Zavudev
26
26
  #
27
27
  # @overload list(channel: nil, cursor: nil, limit: nil, status: nil, to: nil, request_options: {})
28
28
  #
29
- # @param channel [Symbol, Zavudev::Models::Channel] Delivery channel. Use 'auto' for intelligent routing.
29
+ # @param channel [Symbol, Zavudev::Models::MessageListParams::Channel] Filter by delivery channel.
30
30
  #
31
31
  # @param cursor [String]
32
32
  #
33
33
  # @param limit [Integer]
34
34
  #
35
- # @param status [Symbol, Zavudev::Models::MessageStatus]
35
+ # @param status [Symbol, Zavudev::Models::MessageListParams::Status] Filter by status. Not all stored statuses are filterable.
36
36
  #
37
37
  # @param to [String]
38
38
  #
@@ -9,13 +9,24 @@ module Zavudev
9
9
  # @return [Zavudev::Resources::Senders::WhatsappSync]
10
10
  attr_reader :whatsapp_sync
11
11
 
12
+ # Some parameter documentations has been truncated, see
13
+ # {Zavudev::Models::SenderCreateParams} for more details.
14
+ #
12
15
  # Create sender
13
16
  #
14
- # @overload create(name:, phone_number:, set_as_default: nil, webhook_events: nil, webhook_url: nil, request_options: {})
17
+ # @overload create(name:, email_address: nil, email_domain_id: nil, email_from_name: nil, email_receiving_enabled: nil, phone_number: nil, set_as_default: nil, webhook_events: nil, webhook_url: nil, request_options: {})
15
18
  #
16
19
  # @param name [String]
17
20
  #
18
- # @param phone_number [String]
21
+ # @param email_address [String] From-address for the email channel (e.g. noreply@yourdomain.com). The address's
22
+ #
23
+ # @param email_domain_id [String] ID of the verified email domain to attach. Optional — resolved from `emailAddres
24
+ #
25
+ # @param email_from_name [String] Display name shown in the recipient's inbox for the email channel.
26
+ #
27
+ # @param email_receiving_enabled [Boolean] Enable inbound email receiving on this sender. Requires a verified MX record on
28
+ #
29
+ # @param phone_number [String] Phone number in E.164 format. Required for phone-based channels (SMS, WhatsApp).
19
30
  #
20
31
  # @param set_as_default [Boolean]
21
32
  #
@@ -58,12 +69,23 @@ module Zavudev
58
69
  )
59
70
  end
60
71
 
72
+ # Some parameter documentations has been truncated, see
73
+ # {Zavudev::Models::SenderUpdateParams} for more details.
74
+ #
61
75
  # Update sender
62
76
  #
63
- # @overload update(sender_id, email_receiving_enabled: nil, name: nil, set_as_default: nil, webhook_active: nil, webhook_events: nil, webhook_url: nil, request_options: {})
77
+ # @overload update(sender_id, email_address: nil, email_catch_all_enabled: nil, email_domain_id: nil, email_from_name: nil, email_receiving_enabled: nil, name: nil, set_as_default: nil, webhook_active: nil, webhook_events: nil, webhook_url: nil, request_options: {})
64
78
  #
65
79
  # @param sender_id [String]
66
80
  #
81
+ # @param email_address [String] Attach or change the sender's email from-address (e.g. noreply@yourdomain.com).
82
+ #
83
+ # @param email_catch_all_enabled [Boolean] Enable or disable domain catch-all. When enabled (with emailReceivingEnabled tru
84
+ #
85
+ # @param email_domain_id [String] ID of the verified email domain to attach. Optional — resolved from `emailAddres
86
+ #
87
+ # @param email_from_name [String] Display name shown in the recipient's inbox for the email channel.
88
+ #
67
89
  # @param email_receiving_enabled [Boolean] Enable or disable inbound email receiving for this sender.
68
90
  #
69
91
  # @param name [String]
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Zavudev
4
- VERSION = "0.15.0"
4
+ VERSION = "0.17.0"
5
5
  end