zavudev 0.14.0 → 0.16.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +23 -0
- data/README.md +7 -7
- data/lib/zavudev/models/broadcast_channel.rb +0 -3
- data/lib/zavudev/models/channel.rb +5 -1
- data/lib/zavudev/models/contact_channel.rb +1 -0
- data/lib/zavudev/models/contact_create_params.rb +1 -0
- data/lib/zavudev/models/contacts/channel_add_params.rb +1 -0
- data/lib/zavudev/models/invitation.rb +27 -1
- data/lib/zavudev/models/invitation_create_params.rb +28 -1
- data/lib/zavudev/models/message.rb +12 -8
- data/lib/zavudev/models/message_list_params.rb +40 -7
- data/lib/zavudev/models/message_send_params.rb +6 -3
- data/lib/zavudev/models/phone_number_type.rb +1 -1
- data/lib/zavudev/models/url_list_verified_params.rb +1 -0
- data/lib/zavudev/models/verified_url.rb +1 -0
- data/lib/zavudev/models.rb +0 -12
- data/lib/zavudev/resources/exports.rb +0 -75
- data/lib/zavudev/resources/invitations.rb +15 -4
- data/lib/zavudev/resources/messages.rb +3 -3
- data/lib/zavudev/resources/plan.rb +0 -19
- data/lib/zavudev/resources/usage.rb +0 -19
- data/lib/zavudev/version.rb +1 -1
- data/lib/zavudev.rb +0 -10
- data/rbi/zavudev/models/broadcast_channel.rbi +0 -3
- data/rbi/zavudev/models/channel.rbi +5 -1
- data/rbi/zavudev/models/contact_channel.rbi +2 -0
- data/rbi/zavudev/models/contact_create_params.rbi +5 -0
- data/rbi/zavudev/models/contacts/channel_add_params.rbi +5 -0
- data/rbi/zavudev/models/invitation.rbi +48 -0
- data/rbi/zavudev/models/invitation_create_params.rbi +63 -0
- data/rbi/zavudev/models/message.rbi +16 -8
- data/rbi/zavudev/models/message_list_params.rbi +74 -10
- data/rbi/zavudev/models/message_send_params.rbi +10 -4
- data/rbi/zavudev/models/phone_number_type.rbi +1 -1
- data/rbi/zavudev/models/url_list_verified_params.rbi +5 -0
- data/rbi/zavudev/models/verified_url.rbi +2 -0
- data/rbi/zavudev/models.rbi +0 -12
- data/rbi/zavudev/resources/exports.rbi +0 -50
- data/rbi/zavudev/resources/invitations.rbi +19 -3
- data/rbi/zavudev/resources/messages.rbi +9 -5
- data/rbi/zavudev/resources/plan.rbi +0 -10
- data/rbi/zavudev/resources/usage.rbi +0 -10
- data/sig/zavudev/models/broadcast_channel.rbs +1 -12
- data/sig/zavudev/models/channel.rbs +2 -0
- data/sig/zavudev/models/contact_channel.rbs +3 -1
- data/sig/zavudev/models/contact_create_params.rbs +8 -1
- data/sig/zavudev/models/contacts/channel_add_params.rbs +8 -1
- data/sig/zavudev/models/invitation.rbs +20 -0
- data/sig/zavudev/models/invitation_create_params.rbs +20 -0
- data/sig/zavudev/models/message_list_params.rbs +54 -11
- data/sig/zavudev/models/phone_number_type.rbs +2 -2
- data/sig/zavudev/models/url_list_verified_params.rbs +2 -1
- data/sig/zavudev/models/verified_url.rbs +2 -1
- data/sig/zavudev/models.rbs +0 -12
- data/sig/zavudev/resources/exports.rbs +0 -19
- data/sig/zavudev/resources/invitations.rbs +1 -0
- data/sig/zavudev/resources/messages.rbs +2 -2
- data/sig/zavudev/resources/plan.rbs +0 -4
- data/sig/zavudev/resources/usage.rbs +0 -4
- metadata +2 -32
- data/lib/zavudev/models/data_export.rb +0 -122
- data/lib/zavudev/models/export_create_params.rb +0 -54
- data/lib/zavudev/models/export_create_response.rb +0 -16
- data/lib/zavudev/models/export_list_params.rb +0 -49
- data/lib/zavudev/models/export_retrieve_params.rb +0 -20
- data/lib/zavudev/models/export_retrieve_response.rb +0 -16
- data/lib/zavudev/models/plan_retrieve_params.rb +0 -14
- data/lib/zavudev/models/plan_retrieve_response.rb +0 -155
- data/lib/zavudev/models/usage_retrieve_params.rb +0 -14
- data/lib/zavudev/models/usage_retrieve_response.rb +0 -77
- data/rbi/zavudev/models/data_export.rbi +0 -151
- data/rbi/zavudev/models/export_create_params.rbi +0 -106
- data/rbi/zavudev/models/export_create_response.rbi +0 -31
- data/rbi/zavudev/models/export_list_params.rbi +0 -89
- data/rbi/zavudev/models/export_retrieve_params.rbi +0 -35
- data/rbi/zavudev/models/export_retrieve_response.rbi +0 -31
- data/rbi/zavudev/models/plan_retrieve_params.rbi +0 -27
- data/rbi/zavudev/models/plan_retrieve_response.rbi +0 -306
- data/rbi/zavudev/models/usage_retrieve_params.rbi +0 -27
- data/rbi/zavudev/models/usage_retrieve_response.rbi +0 -150
- data/sig/zavudev/models/data_export.rbs +0 -102
- data/sig/zavudev/models/export_create_params.rbs +0 -59
- data/sig/zavudev/models/export_create_response.rbs +0 -13
- data/sig/zavudev/models/export_list_params.rbs +0 -57
- data/sig/zavudev/models/export_retrieve_params.rbs +0 -23
- data/sig/zavudev/models/export_retrieve_response.rbs +0 -13
- data/sig/zavudev/models/plan_retrieve_params.rbs +0 -15
- data/sig/zavudev/models/plan_retrieve_response.rbs +0 -158
- data/sig/zavudev/models/usage_retrieve_params.rbs +0 -15
- data/sig/zavudev/models/usage_retrieve_response.rbs +0 -69
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8dd10ff9ca84c30d11bb953aa432150b013477e826ce1f23c0e03f751e97bb8f
|
|
4
|
+
data.tar.gz: e36f8e76c1c90c54b66c061b9e9ca3320566955505dd361e160b1f98e1cf3a74
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: cca22267fd9aea296726f3be4e762a41a8e5c5ef3de9e20b6d39cf991d3392acf965913190928bd3dedd2bb21a23d2569ca98eb5a625b752c76c58a9da5f99e3
|
|
7
|
+
data.tar.gz: 62472e6e4ae3c6b4223f48ad80ad5b8444d0754d0740911a67b48b60137dbdbccec54279710966a3bc35fdb7fa176049c72ca5654f0252805b4fb235cb330d99
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,28 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.16.0 (2026-07-07)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v0.15.0...v0.16.0](https://github.com/zavudev/sdk-ruby/compare/v0.15.0...v0.16.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* **api:** api update ([cd49564](https://github.com/zavudev/sdk-ruby/commit/cd49564f9c54a8aef2de33ad0b484cc6bd6c7ae3))
|
|
10
|
+
* **api:** api update ([676212b](https://github.com/zavudev/sdk-ruby/commit/676212b365d2860826b55a8106ea129faaa533ed))
|
|
11
|
+
|
|
12
|
+
## 0.15.0 (2026-07-05)
|
|
13
|
+
|
|
14
|
+
Full Changelog: [v0.14.0...v0.15.0](https://github.com/zavudev/sdk-ruby/compare/v0.14.0...v0.15.0)
|
|
15
|
+
|
|
16
|
+
### Features
|
|
17
|
+
|
|
18
|
+
* **api:** api update ([0afbaaf](https://github.com/zavudev/sdk-ruby/commit/0afbaaf775796e6901f790329e5ead6b623fbae6))
|
|
19
|
+
* **api:** api update ([ae16782](https://github.com/zavudev/sdk-ruby/commit/ae16782c53d59b8eb136ed27e9df09b1d889fd2c))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
### Chores
|
|
23
|
+
|
|
24
|
+
* **internal:** bound formatter parallelism to CPU count ([40b3e99](https://github.com/zavudev/sdk-ruby/commit/40b3e99d17ef2297beb30ff8af97fd0b43fb0d75))
|
|
25
|
+
|
|
3
26
|
## 0.14.0 (2026-06-24)
|
|
4
27
|
|
|
5
28
|
Full Changelog: [v0.13.0...v0.14.0](https://github.com/zavudev/sdk-ruby/compare/v0.13.0...v0.14.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.
|
|
29
|
+
gem "zavudev", "~> 0.16.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
|
-
# :
|
|
239
|
-
puts(Zavudev::Channel::
|
|
238
|
+
# :sms
|
|
239
|
+
puts(Zavudev::MessageListParams::Channel::SMS)
|
|
240
240
|
|
|
241
|
-
# Revealed type: `T.all(Zavudev::Channel, Symbol)`
|
|
242
|
-
T.reveal_type(Zavudev::Channel::
|
|
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::
|
|
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: :
|
|
256
|
+
channel: :sms,
|
|
257
257
|
# …
|
|
258
258
|
)
|
|
259
259
|
```
|
|
@@ -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
|
|
@@ -62,6 +62,13 @@ module Zavudev
|
|
|
62
62
|
# @return [Time, nil]
|
|
63
63
|
optional :completed_at, Time, api_name: :completedAt, nil?: true
|
|
64
64
|
|
|
65
|
+
# @!attribute connection_type
|
|
66
|
+
# How the client connects WhatsApp: `whatsapp_waba` (official Cloud API via
|
|
67
|
+
# embedded signup) or `whatsapp_alt` (QR-linked).
|
|
68
|
+
#
|
|
69
|
+
# @return [Symbol, Zavudev::Models::Invitation::ConnectionType, nil]
|
|
70
|
+
optional :connection_type, enum: -> { Zavudev::Invitation::ConnectionType }, api_name: :connectionType
|
|
71
|
+
|
|
65
72
|
# @!attribute phone_number_id
|
|
66
73
|
# ID of a pre-assigned Zavu phone number for WhatsApp registration.
|
|
67
74
|
#
|
|
@@ -84,7 +91,10 @@ module Zavudev
|
|
|
84
91
|
# @return [Time, nil]
|
|
85
92
|
optional :viewed_at, Time, api_name: :viewedAt, nil?: true
|
|
86
93
|
|
|
87
|
-
# @!method initialize(id:, token:, created_at:, expires_at:, status:, updated_at:, url:, client_email: nil, client_name: nil, client_phone: nil, completed_at: nil, phone_number_id: nil, sender_id: nil, started_at: nil, viewed_at: nil)
|
|
94
|
+
# @!method initialize(id:, token:, created_at:, expires_at:, status:, updated_at:, url:, client_email: nil, client_name: nil, client_phone: nil, completed_at: nil, connection_type: nil, phone_number_id: nil, sender_id: nil, started_at: nil, viewed_at: nil)
|
|
95
|
+
# Some parameter documentations has been truncated, see
|
|
96
|
+
# {Zavudev::Models::Invitation} for more details.
|
|
97
|
+
#
|
|
88
98
|
# @param id [String]
|
|
89
99
|
#
|
|
90
100
|
# @param token [String] Unique invitation token.
|
|
@@ -107,6 +117,8 @@ module Zavudev
|
|
|
107
117
|
#
|
|
108
118
|
# @param completed_at [Time, nil]
|
|
109
119
|
#
|
|
120
|
+
# @param connection_type [Symbol, Zavudev::Models::Invitation::ConnectionType] How the client connects WhatsApp: `whatsapp_waba` (official Cloud API via embedd
|
|
121
|
+
#
|
|
110
122
|
# @param phone_number_id [String, nil] ID of a pre-assigned Zavu phone number for WhatsApp registration.
|
|
111
123
|
#
|
|
112
124
|
# @param sender_id [String, nil] ID of the sender created when invitation is completed.
|
|
@@ -130,6 +142,20 @@ module Zavudev
|
|
|
130
142
|
# @!method self.values
|
|
131
143
|
# @return [Array<Symbol>]
|
|
132
144
|
end
|
|
145
|
+
|
|
146
|
+
# How the client connects WhatsApp: `whatsapp_waba` (official Cloud API via
|
|
147
|
+
# embedded signup) or `whatsapp_alt` (QR-linked).
|
|
148
|
+
#
|
|
149
|
+
# @see Zavudev::Models::Invitation#connection_type
|
|
150
|
+
module ConnectionType
|
|
151
|
+
extend Zavudev::Internal::Type::Enum
|
|
152
|
+
|
|
153
|
+
WHATSAPP_WABA = :whatsapp_waba
|
|
154
|
+
WHATSAPP_ALT = :whatsapp_alt
|
|
155
|
+
|
|
156
|
+
# @!method self.values
|
|
157
|
+
# @return [Array<Symbol>]
|
|
158
|
+
end
|
|
133
159
|
end
|
|
134
160
|
end
|
|
135
161
|
end
|
|
@@ -33,6 +33,17 @@ module Zavudev
|
|
|
33
33
|
# @return [String, nil]
|
|
34
34
|
optional :client_phone, String, api_name: :clientPhone
|
|
35
35
|
|
|
36
|
+
# @!attribute connection_type
|
|
37
|
+
# How the client connects WhatsApp. `whatsapp_waba` (default) runs Meta's embedded
|
|
38
|
+
# signup to link an official WhatsApp Business Account. `whatsapp_alt` links the
|
|
39
|
+
# number by scanning a QR code — available only to teams with the WhatsApp
|
|
40
|
+
# Alternative feature enabled.
|
|
41
|
+
#
|
|
42
|
+
# @return [Symbol, Zavudev::Models::InvitationCreateParams::ConnectionType, nil]
|
|
43
|
+
optional :connection_type,
|
|
44
|
+
enum: -> { Zavudev::InvitationCreateParams::ConnectionType },
|
|
45
|
+
api_name: :connectionType
|
|
46
|
+
|
|
36
47
|
# @!attribute expires_in_days
|
|
37
48
|
# Number of days until the invitation expires.
|
|
38
49
|
#
|
|
@@ -46,7 +57,7 @@ module Zavudev
|
|
|
46
57
|
# @return [String, nil]
|
|
47
58
|
optional :phone_number_id, String, api_name: :phoneNumberId
|
|
48
59
|
|
|
49
|
-
# @!method initialize(allowed_phone_countries: nil, client_email: nil, client_name: nil, client_phone: nil, expires_in_days: nil, phone_number_id: nil, request_options: {})
|
|
60
|
+
# @!method initialize(allowed_phone_countries: nil, client_email: nil, client_name: nil, client_phone: nil, connection_type: nil, expires_in_days: nil, phone_number_id: nil, request_options: {})
|
|
50
61
|
# Some parameter documentations has been truncated, see
|
|
51
62
|
# {Zavudev::Models::InvitationCreateParams} for more details.
|
|
52
63
|
#
|
|
@@ -58,11 +69,27 @@ module Zavudev
|
|
|
58
69
|
#
|
|
59
70
|
# @param client_phone [String] Phone number of the client in E.164 format.
|
|
60
71
|
#
|
|
72
|
+
# @param connection_type [Symbol, Zavudev::Models::InvitationCreateParams::ConnectionType] How the client connects WhatsApp. `whatsapp_waba` (default) runs Meta's embedded
|
|
73
|
+
#
|
|
61
74
|
# @param expires_in_days [Integer] Number of days until the invitation expires.
|
|
62
75
|
#
|
|
63
76
|
# @param phone_number_id [String] ID of a Zavu phone number to pre-assign for WhatsApp registration. If provided,
|
|
64
77
|
#
|
|
65
78
|
# @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}]
|
|
79
|
+
|
|
80
|
+
# How the client connects WhatsApp. `whatsapp_waba` (default) runs Meta's embedded
|
|
81
|
+
# signup to link an official WhatsApp Business Account. `whatsapp_alt` links the
|
|
82
|
+
# number by scanning a QR code — available only to teams with the WhatsApp
|
|
83
|
+
# Alternative feature enabled.
|
|
84
|
+
module ConnectionType
|
|
85
|
+
extend Zavudev::Internal::Type::Enum
|
|
86
|
+
|
|
87
|
+
WHATSAPP_WABA = :whatsapp_waba
|
|
88
|
+
WHATSAPP_ALT = :whatsapp_alt
|
|
89
|
+
|
|
90
|
+
# @!method self.values
|
|
91
|
+
# @return [Array<Symbol>]
|
|
92
|
+
end
|
|
66
93
|
end
|
|
67
94
|
end
|
|
68
95
|
end
|
|
@@ -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
|
-
#
|
|
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
|
-
#
|
|
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 (
|
|
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]
|
|
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]
|
|
130
|
+
# @param cost_provider [Float, nil] Carrier and delivery cost in USD.
|
|
127
131
|
#
|
|
128
|
-
# @param cost_total [Float, nil] Total cost in USD (
|
|
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
|
-
#
|
|
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::
|
|
29
|
-
optional :status, enum: -> { Zavudev::
|
|
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]
|
|
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::
|
|
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
|
|
@@ -8,8 +8,11 @@ module Zavudev
|
|
|
8
8
|
include Zavudev::Internal::Type::RequestParameters
|
|
9
9
|
|
|
10
10
|
# @!attribute to
|
|
11
|
-
# Recipient phone number in E.164 format, email address,
|
|
12
|
-
#
|
|
11
|
+
# Recipient phone number in E.164 format, email address, WhatsApp business-scoped
|
|
12
|
+
# user ID (BSUID, e.g. `US.13491208655302741918`), or numeric chat ID (for
|
|
13
|
+
# Telegram/Instagram/Messenger). A BSUID is routed to WhatsApp and sent via the
|
|
14
|
+
# `recipient` field; use it to message a contact who adopted a username and whose
|
|
15
|
+
# phone number is hidden.
|
|
13
16
|
#
|
|
14
17
|
# @return [String]
|
|
15
18
|
required :to, String
|
|
@@ -101,7 +104,7 @@ module Zavudev
|
|
|
101
104
|
# Some parameter documentations has been truncated, see
|
|
102
105
|
# {Zavudev::Models::MessageSendParams} for more details.
|
|
103
106
|
#
|
|
104
|
-
# @param to [String] Recipient phone number in E.164 format, email address,
|
|
107
|
+
# @param to [String] Recipient phone number in E.164 format, email address, WhatsApp business-scoped
|
|
105
108
|
#
|
|
106
109
|
# @param attachments [Array<Zavudev::Models::MessageSendParams::Attachment>] Email attachments. Only supported when channel is 'email'. Maximum 40MB total si
|
|
107
110
|
#
|
data/lib/zavudev/models.rb
CHANGED
|
@@ -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
|
|
@@ -3,81 +3,6 @@
|
|
|
3
3
|
module Zavudev
|
|
4
4
|
module Resources
|
|
5
5
|
class Exports
|
|
6
|
-
# Create a new data export job. The export will be processed asynchronously and
|
|
7
|
-
# the download URL will be available when status is 'completed'. Export links
|
|
8
|
-
# expire after 24 hours.
|
|
9
|
-
#
|
|
10
|
-
# @overload create(data_types:, date_from: nil, date_to: nil, request_options: {})
|
|
11
|
-
#
|
|
12
|
-
# @param data_types [Array<Symbol, Zavudev::Models::ExportCreateParams::DataType>] List of data types to include in the export.
|
|
13
|
-
#
|
|
14
|
-
# @param date_from [Time] Start date for data to export (inclusive).
|
|
15
|
-
#
|
|
16
|
-
# @param date_to [Time] End date for data to export (inclusive).
|
|
17
|
-
#
|
|
18
|
-
# @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
19
|
-
#
|
|
20
|
-
# @return [Zavudev::Models::ExportCreateResponse]
|
|
21
|
-
#
|
|
22
|
-
# @see Zavudev::Models::ExportCreateParams
|
|
23
|
-
def create(params)
|
|
24
|
-
parsed, options = Zavudev::ExportCreateParams.dump_request(params)
|
|
25
|
-
@client.request(
|
|
26
|
-
method: :post,
|
|
27
|
-
path: "v1/exports",
|
|
28
|
-
body: parsed,
|
|
29
|
-
model: Zavudev::Models::ExportCreateResponse,
|
|
30
|
-
options: options
|
|
31
|
-
)
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
# Get details of a specific data export, including download URL when completed.
|
|
35
|
-
#
|
|
36
|
-
# @overload retrieve(export_id, request_options: {})
|
|
37
|
-
#
|
|
38
|
-
# @param export_id [String]
|
|
39
|
-
# @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
40
|
-
#
|
|
41
|
-
# @return [Zavudev::Models::ExportRetrieveResponse]
|
|
42
|
-
#
|
|
43
|
-
# @see Zavudev::Models::ExportRetrieveParams
|
|
44
|
-
def retrieve(export_id, params = {})
|
|
45
|
-
@client.request(
|
|
46
|
-
method: :get,
|
|
47
|
-
path: ["v1/exports/%1$s", export_id],
|
|
48
|
-
model: Zavudev::Models::ExportRetrieveResponse,
|
|
49
|
-
options: params[:request_options]
|
|
50
|
-
)
|
|
51
|
-
end
|
|
52
|
-
|
|
53
|
-
# List data exports for this project.
|
|
54
|
-
#
|
|
55
|
-
# @overload list(cursor: nil, limit: nil, status: nil, request_options: {})
|
|
56
|
-
#
|
|
57
|
-
# @param cursor [String]
|
|
58
|
-
#
|
|
59
|
-
# @param limit [Integer]
|
|
60
|
-
#
|
|
61
|
-
# @param status [Symbol, Zavudev::Models::ExportListParams::Status] Status of a data export job.
|
|
62
|
-
#
|
|
63
|
-
# @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
64
|
-
#
|
|
65
|
-
# @return [Zavudev::Internal::Cursor<Zavudev::Models::DataExport>]
|
|
66
|
-
#
|
|
67
|
-
# @see Zavudev::Models::ExportListParams
|
|
68
|
-
def list(params = {})
|
|
69
|
-
parsed, options = Zavudev::ExportListParams.dump_request(params)
|
|
70
|
-
query = Zavudev::Internal::Util.encode_query_params(parsed)
|
|
71
|
-
@client.request(
|
|
72
|
-
method: :get,
|
|
73
|
-
path: "v1/exports",
|
|
74
|
-
query: query,
|
|
75
|
-
page: Zavudev::Internal::Cursor,
|
|
76
|
-
model: Zavudev::DataExport,
|
|
77
|
-
options: options
|
|
78
|
-
)
|
|
79
|
-
end
|
|
80
|
-
|
|
81
6
|
# @api private
|
|
82
7
|
#
|
|
83
8
|
# @param client [Zavudev::Client]
|
|
@@ -6,11 +6,20 @@ module Zavudev
|
|
|
6
6
|
# Some parameter documentations has been truncated, see
|
|
7
7
|
# {Zavudev::Models::InvitationCreateParams} for more details.
|
|
8
8
|
#
|
|
9
|
-
# Create a partner invitation link for a client to connect
|
|
10
|
-
#
|
|
11
|
-
#
|
|
9
|
+
# Create a partner invitation link for a client to connect WhatsApp. The client
|
|
10
|
+
# opens the returned `url` and connects. Set `connectionType` to choose how they
|
|
11
|
+
# connect:
|
|
12
12
|
#
|
|
13
|
-
#
|
|
13
|
+
# - `whatsapp_waba` (default): the client completes Meta's embedded signup,
|
|
14
|
+
# linking an official WhatsApp Business Account.
|
|
15
|
+
# - `whatsapp_alt`: the client links their number by scanning a QR code. Requires
|
|
16
|
+
# the WhatsApp Alternative feature to be enabled for your team (otherwise
|
|
17
|
+
# returns 400).
|
|
18
|
+
#
|
|
19
|
+
# Either way, the resulting sender is created in your project when the client
|
|
20
|
+
# completes the flow, and the invitation transitions to `completed`.
|
|
21
|
+
#
|
|
22
|
+
# @overload create(allowed_phone_countries: nil, client_email: nil, client_name: nil, client_phone: nil, connection_type: nil, expires_in_days: nil, phone_number_id: nil, request_options: {})
|
|
14
23
|
#
|
|
15
24
|
# @param allowed_phone_countries [Array<String>] ISO country codes for allowed phone numbers.
|
|
16
25
|
#
|
|
@@ -20,6 +29,8 @@ module Zavudev
|
|
|
20
29
|
#
|
|
21
30
|
# @param client_phone [String] Phone number of the client in E.164 format.
|
|
22
31
|
#
|
|
32
|
+
# @param connection_type [Symbol, Zavudev::Models::InvitationCreateParams::ConnectionType] How the client connects WhatsApp. `whatsapp_waba` (default) runs Meta's embedded
|
|
33
|
+
#
|
|
23
34
|
# @param expires_in_days [Integer] Number of days until the invitation expires.
|
|
24
35
|
#
|
|
25
36
|
# @param phone_number_id [String] ID of a Zavu phone number to pre-assign for WhatsApp registration. If provided,
|
|
@@ -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]
|
|
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::
|
|
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
|
#
|
|
@@ -109,7 +109,7 @@ module Zavudev
|
|
|
109
109
|
#
|
|
110
110
|
# @overload send_(to:, attachments: nil, channel: nil, content: nil, fallback_enabled: nil, html_body: nil, idempotency_key: nil, message_type: nil, metadata: nil, reply_to: nil, subject: nil, text: nil, voice_language: nil, zavu_sender: nil, request_options: {})
|
|
111
111
|
#
|
|
112
|
-
# @param to [String] Body param: Recipient phone number in E.164 format, email address,
|
|
112
|
+
# @param to [String] Body param: Recipient phone number in E.164 format, email address, WhatsApp busi
|
|
113
113
|
#
|
|
114
114
|
# @param attachments [Array<Zavudev::Models::MessageSendParams::Attachment>] Body param: Email attachments. Only supported when channel is 'email'. Maximum 4
|
|
115
115
|
#
|
|
@@ -3,25 +3,6 @@
|
|
|
3
3
|
module Zavudev
|
|
4
4
|
module Resources
|
|
5
5
|
class Plan
|
|
6
|
-
# Get the current subscription plan for the API key's team, including tier,
|
|
7
|
-
# billing interval, and period dates.
|
|
8
|
-
#
|
|
9
|
-
# @overload retrieve(request_options: {})
|
|
10
|
-
#
|
|
11
|
-
# @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
12
|
-
#
|
|
13
|
-
# @return [Zavudev::Models::PlanRetrieveResponse]
|
|
14
|
-
#
|
|
15
|
-
# @see Zavudev::Models::PlanRetrieveParams
|
|
16
|
-
def retrieve(params = {})
|
|
17
|
-
@client.request(
|
|
18
|
-
method: :get,
|
|
19
|
-
path: "v1/plan",
|
|
20
|
-
model: Zavudev::Models::PlanRetrieveResponse,
|
|
21
|
-
options: params[:request_options]
|
|
22
|
-
)
|
|
23
|
-
end
|
|
24
|
-
|
|
25
6
|
# @api private
|
|
26
7
|
#
|
|
27
8
|
# @param client [Zavudev::Client]
|