zavudev 0.15.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 +9 -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/message.rb +12 -8
- data/lib/zavudev/models/message_list_params.rb +40 -7
- 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/messages.rb +2 -2
- 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/message.rbi +16 -8
- data/rbi/zavudev/models/message_list_params.rbi +74 -10
- 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/messages.rbi +4 -3
- 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/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/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,14 @@
|
|
|
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
|
+
|
|
3
12
|
## 0.15.0 (2026-07-05)
|
|
4
13
|
|
|
5
14
|
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.
|
|
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
|
|
@@ -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
|
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]
|
|
@@ -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
|
#
|
|
@@ -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]
|
|
@@ -3,25 +3,6 @@
|
|
|
3
3
|
module Zavudev
|
|
4
4
|
module Resources
|
|
5
5
|
class Usage
|
|
6
|
-
# Get the current month's usage counters for A2P messages and emails, along with
|
|
7
|
-
# the tier limits.
|
|
8
|
-
#
|
|
9
|
-
# @overload retrieve(request_options: {})
|
|
10
|
-
#
|
|
11
|
-
# @param request_options [Zavudev::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
12
|
-
#
|
|
13
|
-
# @return [Zavudev::Models::UsageRetrieveResponse]
|
|
14
|
-
#
|
|
15
|
-
# @see Zavudev::Models::UsageRetrieveParams
|
|
16
|
-
def retrieve(params = {})
|
|
17
|
-
@client.request(
|
|
18
|
-
method: :get,
|
|
19
|
-
path: "v1/usage",
|
|
20
|
-
model: Zavudev::Models::UsageRetrieveResponse,
|
|
21
|
-
options: params[:request_options]
|
|
22
|
-
)
|
|
23
|
-
end
|
|
24
|
-
|
|
25
6
|
# @api private
|
|
26
7
|
#
|
|
27
8
|
# @param client [Zavudev::Client]
|
data/lib/zavudev/version.rb
CHANGED
data/lib/zavudev.rb
CHANGED
|
@@ -113,12 +113,6 @@ require_relative "zavudev/models/contacts/channel_set_primary_response"
|
|
|
113
113
|
require_relative "zavudev/models/contacts/channel_update_params"
|
|
114
114
|
require_relative "zavudev/models/contacts/channel_update_response"
|
|
115
115
|
require_relative "zavudev/models/contact_update_params"
|
|
116
|
-
require_relative "zavudev/models/data_export"
|
|
117
|
-
require_relative "zavudev/models/export_create_params"
|
|
118
|
-
require_relative "zavudev/models/export_create_response"
|
|
119
|
-
require_relative "zavudev/models/export_list_params"
|
|
120
|
-
require_relative "zavudev/models/export_retrieve_params"
|
|
121
|
-
require_relative "zavudev/models/export_retrieve_response"
|
|
122
116
|
require_relative "zavudev/models/function_create_params"
|
|
123
117
|
require_relative "zavudev/models/function_create_response"
|
|
124
118
|
require_relative "zavudev/models/function_delete_params"
|
|
@@ -214,8 +208,6 @@ require_relative "zavudev/models/phone_number_status"
|
|
|
214
208
|
require_relative "zavudev/models/phone_number_type"
|
|
215
209
|
require_relative "zavudev/models/phone_number_update_params"
|
|
216
210
|
require_relative "zavudev/models/phone_number_update_response"
|
|
217
|
-
require_relative "zavudev/models/plan_retrieve_params"
|
|
218
|
-
require_relative "zavudev/models/plan_retrieve_response"
|
|
219
211
|
require_relative "zavudev/models/regulatory_document"
|
|
220
212
|
require_relative "zavudev/models/regulatory_document_create_params"
|
|
221
213
|
require_relative "zavudev/models/regulatory_document_create_response"
|
|
@@ -332,8 +324,6 @@ require_relative "zavudev/models/url_retrieve_details_params"
|
|
|
332
324
|
require_relative "zavudev/models/url_retrieve_details_response"
|
|
333
325
|
require_relative "zavudev/models/url_submit_for_verification_params"
|
|
334
326
|
require_relative "zavudev/models/url_submit_for_verification_response"
|
|
335
|
-
require_relative "zavudev/models/usage_retrieve_params"
|
|
336
|
-
require_relative "zavudev/models/usage_retrieve_response"
|
|
337
327
|
require_relative "zavudev/models/verified_url"
|
|
338
328
|
require_relative "zavudev/models/webhook_event"
|
|
339
329
|
require_relative "zavudev/models/webhook_secret_response"
|
|
@@ -15,9 +15,6 @@ module Zavudev
|
|
|
15
15
|
WHATSAPP = T.let(:whatsapp, Zavudev::BroadcastChannel::TaggedSymbol)
|
|
16
16
|
TELEGRAM = T.let(:telegram, Zavudev::BroadcastChannel::TaggedSymbol)
|
|
17
17
|
EMAIL = T.let(:email, Zavudev::BroadcastChannel::TaggedSymbol)
|
|
18
|
-
INSTAGRAM = T.let(:instagram, Zavudev::BroadcastChannel::TaggedSymbol)
|
|
19
|
-
MESSENGER = T.let(:messenger, Zavudev::BroadcastChannel::TaggedSymbol)
|
|
20
|
-
VOICE = T.let(:voice, Zavudev::BroadcastChannel::TaggedSymbol)
|
|
21
18
|
|
|
22
19
|
sig do
|
|
23
20
|
override.returns(T::Array[Zavudev::BroadcastChannel::TaggedSymbol])
|
|
@@ -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
|
|
|
@@ -13,6 +16,7 @@ module Zavudev
|
|
|
13
16
|
SMS = T.let(:sms, Zavudev::Channel::TaggedSymbol)
|
|
14
17
|
SMS_ONEWAY = T.let(:sms_oneway, Zavudev::Channel::TaggedSymbol)
|
|
15
18
|
WHATSAPP = T.let(:whatsapp, Zavudev::Channel::TaggedSymbol)
|
|
19
|
+
WHATSAPP_ALT = T.let(:whatsapp_alt, Zavudev::Channel::TaggedSymbol)
|
|
16
20
|
TELEGRAM = T.let(:telegram, Zavudev::Channel::TaggedSymbol)
|
|
17
21
|
EMAIL = T.let(:email, Zavudev::Channel::TaggedSymbol)
|
|
18
22
|
INSTAGRAM = T.let(:instagram, Zavudev::Channel::TaggedSymbol)
|
|
@@ -146,6 +146,8 @@ module Zavudev
|
|
|
146
146
|
EMAIL = T.let(:email, Zavudev::ContactChannel::Channel::TaggedSymbol)
|
|
147
147
|
TELEGRAM =
|
|
148
148
|
T.let(:telegram, Zavudev::ContactChannel::Channel::TaggedSymbol)
|
|
149
|
+
INSTAGRAM =
|
|
150
|
+
T.let(:instagram, Zavudev::ContactChannel::Channel::TaggedSymbol)
|
|
149
151
|
MESSENGER =
|
|
150
152
|
T.let(:messenger, Zavudev::ContactChannel::Channel::TaggedSymbol)
|
|
151
153
|
VOICE = T.let(:voice, Zavudev::ContactChannel::Channel::TaggedSymbol)
|
|
@@ -169,6 +169,11 @@ module Zavudev
|
|
|
169
169
|
:telegram,
|
|
170
170
|
Zavudev::ContactCreateParams::Channel::Channel::TaggedSymbol
|
|
171
171
|
)
|
|
172
|
+
INSTAGRAM =
|
|
173
|
+
T.let(
|
|
174
|
+
:instagram,
|
|
175
|
+
Zavudev::ContactCreateParams::Channel::Channel::TaggedSymbol
|
|
176
|
+
)
|
|
172
177
|
MESSENGER =
|
|
173
178
|
T.let(
|
|
174
179
|
:messenger,
|
|
@@ -120,6 +120,11 @@ module Zavudev
|
|
|
120
120
|
:telegram,
|
|
121
121
|
Zavudev::Contacts::ChannelAddParams::Channel::TaggedSymbol
|
|
122
122
|
)
|
|
123
|
+
INSTAGRAM =
|
|
124
|
+
T.let(
|
|
125
|
+
:instagram,
|
|
126
|
+
Zavudev::Contacts::ChannelAddParams::Channel::TaggedSymbol
|
|
127
|
+
)
|
|
123
128
|
MESSENGER =
|
|
124
129
|
T.let(
|
|
125
130
|
:messenger,
|
|
@@ -9,7 +9,10 @@ module Zavudev
|
|
|
9
9
|
sig { returns(String) }
|
|
10
10
|
attr_accessor :id
|
|
11
11
|
|
|
12
|
-
# Delivery channel. Use 'auto' for intelligent routing.
|
|
12
|
+
# Delivery channel. Use 'auto' for intelligent routing. `whatsapp_alt` is the
|
|
13
|
+
# QR-linked WhatsApp channel and is only accepted for teams with the WhatsApp
|
|
14
|
+
# Alternative feature enabled; the sender must have a connected whatsapp_alt
|
|
15
|
+
# session.
|
|
13
16
|
sig { returns(Zavudev::Channel::TaggedSymbol) }
|
|
14
17
|
attr_accessor :channel
|
|
15
18
|
|
|
@@ -34,15 +37,16 @@ module Zavudev
|
|
|
34
37
|
sig { params(content: Zavudev::MessageContent::OrHash).void }
|
|
35
38
|
attr_writer :content
|
|
36
39
|
|
|
37
|
-
#
|
|
40
|
+
# Zavu platform charge in USD for this message. Messaging is billed against your
|
|
41
|
+
# plan's monthly limits plus usage-based overage.
|
|
38
42
|
sig { returns(T.nilable(Float)) }
|
|
39
43
|
attr_accessor :cost
|
|
40
44
|
|
|
41
|
-
#
|
|
45
|
+
# Carrier and delivery cost in USD.
|
|
42
46
|
sig { returns(T.nilable(Float)) }
|
|
43
47
|
attr_accessor :cost_provider
|
|
44
48
|
|
|
45
|
-
# Total cost in USD (
|
|
49
|
+
# Total cost in USD (platform charge + delivery cost).
|
|
46
50
|
sig { returns(T.nilable(Float)) }
|
|
47
51
|
attr_accessor :cost_total
|
|
48
52
|
|
|
@@ -114,7 +118,10 @@ module Zavudev
|
|
|
114
118
|
end
|
|
115
119
|
def self.new(
|
|
116
120
|
id:,
|
|
117
|
-
# Delivery channel. Use 'auto' for intelligent routing.
|
|
121
|
+
# Delivery channel. Use 'auto' for intelligent routing. `whatsapp_alt` is the
|
|
122
|
+
# QR-linked WhatsApp channel and is only accepted for teams with the WhatsApp
|
|
123
|
+
# Alternative feature enabled; the sender must have a connected whatsapp_alt
|
|
124
|
+
# session.
|
|
118
125
|
channel:,
|
|
119
126
|
created_at:,
|
|
120
127
|
# Type of message. Non-text types are supported by WhatsApp and Telegram (varies
|
|
@@ -124,11 +131,12 @@ module Zavudev
|
|
|
124
131
|
to:,
|
|
125
132
|
# Content for non-text message types (WhatsApp and Telegram).
|
|
126
133
|
content: nil,
|
|
127
|
-
#
|
|
134
|
+
# Zavu platform charge in USD for this message. Messaging is billed against your
|
|
135
|
+
# plan's monthly limits plus usage-based overage.
|
|
128
136
|
cost: nil,
|
|
129
|
-
#
|
|
137
|
+
# Carrier and delivery cost in USD.
|
|
130
138
|
cost_provider: nil,
|
|
131
|
-
# Total cost in USD (
|
|
139
|
+
# Total cost in USD (platform charge + delivery cost).
|
|
132
140
|
cost_total: nil,
|
|
133
141
|
error_code: nil,
|
|
134
142
|
error_message: nil,
|