late-sdk 0.0.618 → 0.0.620
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/docs/EnableWhatsAppCallingLegacy200Response.md +3 -1
- data/docs/GetWhatsAppCalling200Response.md +5 -1
- data/docs/PostsApi.md +4 -4
- data/lib/zernio-sdk/api/posts_api.rb +6 -6
- data/lib/zernio-sdk/models/enable_whats_app_calling_legacy200_response.rb +48 -4
- data/lib/zernio-sdk/models/get_whats_app_calling200_response.rb +58 -4
- data/lib/zernio-sdk/version.rb +1 -1
- data/openapi.yaml +82 -8
- data/spec/api/posts_api_spec.rb +2 -2
- data/spec/models/enable_whats_app_calling_legacy200_response_spec.rb +10 -0
- data/spec/models/get_whats_app_calling200_response_spec.rb +16 -0
- data/zernio-sdk-0.0.620.gem +0 -0
- metadata +2 -2
- data/zernio-sdk-0.0.618.gem +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 554a3fc3a8d0385697947432fbe94f7f259a063c7d11eaa992d500bf3690ec38
|
|
4
|
+
data.tar.gz: 50e0bf63dfa2fb330d65670bb2a74ebf7c3bfb6474bf9e31fc81e0550a0227ae
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 7cb10676aa0a974e9d8975a5b0dd34312be12a8723d8ebab714379eedf7fe1d4313a9ea7d8a1262bdee44b33ccc078461b083cc703993873f4f0bada34320ac3
|
|
7
|
+
data.tar.gz: 6166ef9d5c34f80f04455e59d2a5746568b0fe1b8bfe0ac6b7d208045de704ffa784a169ba9534d543de69edbb88dce8cfee772a1230a481488d490e88628b1d
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
| **calling_enabled** | **Boolean** | | [optional] |
|
|
9
9
|
| **sip_hostname** | **String** | | [optional] |
|
|
10
10
|
| **forward_to** | **String** | | [optional] |
|
|
11
|
+
| **caller_id_mode** | **String** | Caller ID the forward-leg callee sees on tel: forwards. business = this WhatsApp number; platform = a Zernio number (customer-brought number without verified caller ID). | [optional] |
|
|
11
12
|
|
|
12
13
|
## Example
|
|
13
14
|
|
|
@@ -18,7 +19,8 @@ instance = Zernio::EnableWhatsAppCallingLegacy200Response.new(
|
|
|
18
19
|
success: null,
|
|
19
20
|
calling_enabled: null,
|
|
20
21
|
sip_hostname: null,
|
|
21
|
-
forward_to: null
|
|
22
|
+
forward_to: null,
|
|
23
|
+
caller_id_mode: null
|
|
22
24
|
)
|
|
23
25
|
```
|
|
24
26
|
|
|
@@ -13,6 +13,8 @@
|
|
|
13
13
|
| **sip_auth_password_configured** | **Boolean** | True when a SIP digest password is stored. The plaintext is never returned. | [optional] |
|
|
14
14
|
| **call_icon_countries** | **Array<String>** | | [optional] |
|
|
15
15
|
| **outbound_disabled** | **Boolean** | True when the number's country blocks business-initiated (outbound) WhatsApp calling; inbound still works. | [optional] |
|
|
16
|
+
| **caller_id_mode** | **String** | Caller ID the forward-leg callee sees on tel: forwards. business = this WhatsApp number; platform = a Zernio number (used when the number was brought by the customer and its caller ID is not verified for PSTN origination). | [optional] |
|
|
17
|
+
| **caller_id_verified** | **Boolean** | True once the number completed caller-ID verification, making tel: forwards display the business number itself. | [optional] |
|
|
16
18
|
|
|
17
19
|
## Example
|
|
18
20
|
|
|
@@ -28,7 +30,9 @@ instance = Zernio::GetWhatsAppCalling200Response.new(
|
|
|
28
30
|
sip_auth_username: null,
|
|
29
31
|
sip_auth_password_configured: null,
|
|
30
32
|
call_icon_countries: null,
|
|
31
|
-
outbound_disabled: null
|
|
33
|
+
outbound_disabled: null,
|
|
34
|
+
caller_id_mode: null,
|
|
35
|
+
caller_id_verified: null
|
|
32
36
|
)
|
|
33
37
|
```
|
|
34
38
|
|
data/docs/PostsApi.md
CHANGED
|
@@ -393,12 +393,12 @@ end
|
|
|
393
393
|
api_instance = Zernio::PostsApi.new
|
|
394
394
|
opts = {
|
|
395
395
|
page: 56, # Integer | Page number (1-based)
|
|
396
|
-
limit: 56, # Integer | Page size
|
|
396
|
+
limit: 56, # Integer | Page size. Values above the maximum return 400 rather than being clamped.
|
|
397
397
|
source: 'zernio', # String | Which collection to read. `zernio` (default) returns posts authored through Zernio. `external` returns posts synced from the platform (existing/historical posts that were published outside Zernio). Combine with `accountId` and paginate via `page`/`limit` to walk the full synced history (we keep up to the last ~12 months per account).
|
|
398
398
|
status: 'draft', # String |
|
|
399
399
|
platform: 'twitter', # String |
|
|
400
400
|
profile_id: 'profile_id_example', # String |
|
|
401
|
-
created_by: 'created_by_example', # String |
|
|
401
|
+
created_by: 'created_by_example', # String | Filter posts to those created by a specific team user (24-char hex ObjectId).
|
|
402
402
|
date_from: Date.parse('2013-10-20'), # Date |
|
|
403
403
|
date_to: Date.parse('2013-10-20'), # Date |
|
|
404
404
|
include_hidden: true, # Boolean |
|
|
@@ -439,12 +439,12 @@ end
|
|
|
439
439
|
| Name | Type | Description | Notes |
|
|
440
440
|
| ---- | ---- | ----------- | ----- |
|
|
441
441
|
| **page** | **Integer** | Page number (1-based) | [optional][default to 1] |
|
|
442
|
-
| **limit** | **Integer** | Page size | [optional][default to 10] |
|
|
442
|
+
| **limit** | **Integer** | Page size. Values above the maximum return 400 rather than being clamped. | [optional][default to 10] |
|
|
443
443
|
| **source** | **String** | Which collection to read. `zernio` (default) returns posts authored through Zernio. `external` returns posts synced from the platform (existing/historical posts that were published outside Zernio). Combine with `accountId` and paginate via `page`/`limit` to walk the full synced history (we keep up to the last ~12 months per account). | [optional][default to 'zernio'] |
|
|
444
444
|
| **status** | **String** | | [optional] |
|
|
445
445
|
| **platform** | **String** | | [optional] |
|
|
446
446
|
| **profile_id** | **String** | | [optional] |
|
|
447
|
-
| **created_by** | **String** |
|
|
447
|
+
| **created_by** | **String** | Filter posts to those created by a specific team user (24-char hex ObjectId). | [optional] |
|
|
448
448
|
| **date_from** | **Date** | | [optional] |
|
|
449
449
|
| **date_to** | **Date** | | [optional] |
|
|
450
450
|
| **include_hidden** | **Boolean** | | [optional][default to false] |
|
|
@@ -362,12 +362,12 @@ module Zernio
|
|
|
362
362
|
# Returns a paginated list of posts. Published posts include platformPostUrl with the public URL on each platform.
|
|
363
363
|
# @param [Hash] opts the optional parameters
|
|
364
364
|
# @option opts [Integer] :page Page number (1-based) (default to 1)
|
|
365
|
-
# @option opts [Integer] :limit Page size (default to 10)
|
|
365
|
+
# @option opts [Integer] :limit Page size. Values above the maximum return 400 rather than being clamped. (default to 10)
|
|
366
366
|
# @option opts [String] :source Which collection to read. `zernio` (default) returns posts authored through Zernio. `external` returns posts synced from the platform (existing/historical posts that were published outside Zernio). Combine with `accountId` and paginate via `page`/`limit` to walk the full synced history (we keep up to the last ~12 months per account). (default to 'zernio')
|
|
367
367
|
# @option opts [String] :status
|
|
368
368
|
# @option opts [String] :platform
|
|
369
369
|
# @option opts [String] :profile_id
|
|
370
|
-
# @option opts [String] :created_by
|
|
370
|
+
# @option opts [String] :created_by Filter posts to those created by a specific team user (24-char hex ObjectId).
|
|
371
371
|
# @option opts [Date] :date_from
|
|
372
372
|
# @option opts [Date] :date_to
|
|
373
373
|
# @option opts [Boolean] :include_hidden (default to false)
|
|
@@ -384,12 +384,12 @@ module Zernio
|
|
|
384
384
|
# Returns a paginated list of posts. Published posts include platformPostUrl with the public URL on each platform.
|
|
385
385
|
# @param [Hash] opts the optional parameters
|
|
386
386
|
# @option opts [Integer] :page Page number (1-based) (default to 1)
|
|
387
|
-
# @option opts [Integer] :limit Page size (default to 10)
|
|
387
|
+
# @option opts [Integer] :limit Page size. Values above the maximum return 400 rather than being clamped. (default to 10)
|
|
388
388
|
# @option opts [String] :source Which collection to read. `zernio` (default) returns posts authored through Zernio. `external` returns posts synced from the platform (existing/historical posts that were published outside Zernio). Combine with `accountId` and paginate via `page`/`limit` to walk the full synced history (we keep up to the last ~12 months per account). (default to 'zernio')
|
|
389
389
|
# @option opts [String] :status
|
|
390
390
|
# @option opts [String] :platform
|
|
391
391
|
# @option opts [String] :profile_id
|
|
392
|
-
# @option opts [String] :created_by
|
|
392
|
+
# @option opts [String] :created_by Filter posts to those created by a specific team user (24-char hex ObjectId).
|
|
393
393
|
# @option opts [Date] :date_from
|
|
394
394
|
# @option opts [Date] :date_to
|
|
395
395
|
# @option opts [Boolean] :include_hidden (default to false)
|
|
@@ -405,8 +405,8 @@ module Zernio
|
|
|
405
405
|
fail ArgumentError, 'invalid value for "opts[:"page"]" when calling PostsApi.list_posts, must be greater than or equal to 1.'
|
|
406
406
|
end
|
|
407
407
|
|
|
408
|
-
if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] >
|
|
409
|
-
fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling PostsApi.list_posts, must be smaller than or equal to
|
|
408
|
+
if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 500
|
|
409
|
+
fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling PostsApi.list_posts, must be smaller than or equal to 500.'
|
|
410
410
|
end
|
|
411
411
|
|
|
412
412
|
if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] < 1
|
|
@@ -23,13 +23,39 @@ module Zernio
|
|
|
23
23
|
|
|
24
24
|
attr_accessor :forward_to
|
|
25
25
|
|
|
26
|
+
# Caller ID the forward-leg callee sees on tel: forwards. business = this WhatsApp number; platform = a Zernio number (customer-brought number without verified caller ID).
|
|
27
|
+
attr_accessor :caller_id_mode
|
|
28
|
+
|
|
29
|
+
class EnumAttributeValidator
|
|
30
|
+
attr_reader :datatype
|
|
31
|
+
attr_reader :allowable_values
|
|
32
|
+
|
|
33
|
+
def initialize(datatype, allowable_values)
|
|
34
|
+
@allowable_values = allowable_values.map do |value|
|
|
35
|
+
case datatype.to_s
|
|
36
|
+
when /Integer/i
|
|
37
|
+
value.to_i
|
|
38
|
+
when /Float/i
|
|
39
|
+
value.to_f
|
|
40
|
+
else
|
|
41
|
+
value
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def valid?(value)
|
|
47
|
+
!value || allowable_values.include?(value)
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
|
|
26
51
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
27
52
|
def self.attribute_map
|
|
28
53
|
{
|
|
29
54
|
:'success' => :'success',
|
|
30
55
|
:'calling_enabled' => :'callingEnabled',
|
|
31
56
|
:'sip_hostname' => :'sipHostname',
|
|
32
|
-
:'forward_to' => :'forwardTo'
|
|
57
|
+
:'forward_to' => :'forwardTo',
|
|
58
|
+
:'caller_id_mode' => :'callerIdMode'
|
|
33
59
|
}
|
|
34
60
|
end
|
|
35
61
|
|
|
@@ -49,7 +75,8 @@ module Zernio
|
|
|
49
75
|
:'success' => :'Boolean',
|
|
50
76
|
:'calling_enabled' => :'Boolean',
|
|
51
77
|
:'sip_hostname' => :'String',
|
|
52
|
-
:'forward_to' => :'String'
|
|
78
|
+
:'forward_to' => :'String',
|
|
79
|
+
:'caller_id_mode' => :'String'
|
|
53
80
|
}
|
|
54
81
|
end
|
|
55
82
|
|
|
@@ -90,6 +117,10 @@ module Zernio
|
|
|
90
117
|
if attributes.key?(:'forward_to')
|
|
91
118
|
self.forward_to = attributes[:'forward_to']
|
|
92
119
|
end
|
|
120
|
+
|
|
121
|
+
if attributes.key?(:'caller_id_mode')
|
|
122
|
+
self.caller_id_mode = attributes[:'caller_id_mode']
|
|
123
|
+
end
|
|
93
124
|
end
|
|
94
125
|
|
|
95
126
|
# Show invalid properties with the reasons. Usually used together with valid?
|
|
@@ -104,9 +135,21 @@ module Zernio
|
|
|
104
135
|
# @return true if the model is valid
|
|
105
136
|
def valid?
|
|
106
137
|
warn '[DEPRECATED] the `valid?` method is obsolete'
|
|
138
|
+
caller_id_mode_validator = EnumAttributeValidator.new('String', ["business", "platform"])
|
|
139
|
+
return false unless caller_id_mode_validator.valid?(@caller_id_mode)
|
|
107
140
|
true
|
|
108
141
|
end
|
|
109
142
|
|
|
143
|
+
# Custom attribute writer method checking allowed values (enum).
|
|
144
|
+
# @param [Object] caller_id_mode Object to be assigned
|
|
145
|
+
def caller_id_mode=(caller_id_mode)
|
|
146
|
+
validator = EnumAttributeValidator.new('String', ["business", "platform"])
|
|
147
|
+
unless validator.valid?(caller_id_mode)
|
|
148
|
+
fail ArgumentError, "invalid value for \"caller_id_mode\", must be one of #{validator.allowable_values}."
|
|
149
|
+
end
|
|
150
|
+
@caller_id_mode = caller_id_mode
|
|
151
|
+
end
|
|
152
|
+
|
|
110
153
|
# Checks equality by comparing each attribute.
|
|
111
154
|
# @param [Object] Object to be compared
|
|
112
155
|
def ==(o)
|
|
@@ -115,7 +158,8 @@ module Zernio
|
|
|
115
158
|
success == o.success &&
|
|
116
159
|
calling_enabled == o.calling_enabled &&
|
|
117
160
|
sip_hostname == o.sip_hostname &&
|
|
118
|
-
forward_to == o.forward_to
|
|
161
|
+
forward_to == o.forward_to &&
|
|
162
|
+
caller_id_mode == o.caller_id_mode
|
|
119
163
|
end
|
|
120
164
|
|
|
121
165
|
# @see the `==` method
|
|
@@ -127,7 +171,7 @@ module Zernio
|
|
|
127
171
|
# Calculates hash code according to all attributes.
|
|
128
172
|
# @return [Integer] Hash code
|
|
129
173
|
def hash
|
|
130
|
-
[success, calling_enabled, sip_hostname, forward_to].hash
|
|
174
|
+
[success, calling_enabled, sip_hostname, forward_to, caller_id_mode].hash
|
|
131
175
|
end
|
|
132
176
|
|
|
133
177
|
# Builds the object from hash
|
|
@@ -37,6 +37,34 @@ module Zernio
|
|
|
37
37
|
# True when the number's country blocks business-initiated (outbound) WhatsApp calling; inbound still works.
|
|
38
38
|
attr_accessor :outbound_disabled
|
|
39
39
|
|
|
40
|
+
# Caller ID the forward-leg callee sees on tel: forwards. business = this WhatsApp number; platform = a Zernio number (used when the number was brought by the customer and its caller ID is not verified for PSTN origination).
|
|
41
|
+
attr_accessor :caller_id_mode
|
|
42
|
+
|
|
43
|
+
# True once the number completed caller-ID verification, making tel: forwards display the business number itself.
|
|
44
|
+
attr_accessor :caller_id_verified
|
|
45
|
+
|
|
46
|
+
class EnumAttributeValidator
|
|
47
|
+
attr_reader :datatype
|
|
48
|
+
attr_reader :allowable_values
|
|
49
|
+
|
|
50
|
+
def initialize(datatype, allowable_values)
|
|
51
|
+
@allowable_values = allowable_values.map do |value|
|
|
52
|
+
case datatype.to_s
|
|
53
|
+
when /Integer/i
|
|
54
|
+
value.to_i
|
|
55
|
+
when /Float/i
|
|
56
|
+
value.to_f
|
|
57
|
+
else
|
|
58
|
+
value
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
def valid?(value)
|
|
64
|
+
!value || allowable_values.include?(value)
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
|
|
40
68
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
41
69
|
def self.attribute_map
|
|
42
70
|
{
|
|
@@ -48,7 +76,9 @@ module Zernio
|
|
|
48
76
|
:'sip_auth_username' => :'sipAuthUsername',
|
|
49
77
|
:'sip_auth_password_configured' => :'sipAuthPasswordConfigured',
|
|
50
78
|
:'call_icon_countries' => :'callIconCountries',
|
|
51
|
-
:'outbound_disabled' => :'outboundDisabled'
|
|
79
|
+
:'outbound_disabled' => :'outboundDisabled',
|
|
80
|
+
:'caller_id_mode' => :'callerIdMode',
|
|
81
|
+
:'caller_id_verified' => :'callerIdVerified'
|
|
52
82
|
}
|
|
53
83
|
end
|
|
54
84
|
|
|
@@ -73,7 +103,9 @@ module Zernio
|
|
|
73
103
|
:'sip_auth_username' => :'String',
|
|
74
104
|
:'sip_auth_password_configured' => :'Boolean',
|
|
75
105
|
:'call_icon_countries' => :'Array<String>',
|
|
76
|
-
:'outbound_disabled' => :'Boolean'
|
|
106
|
+
:'outbound_disabled' => :'Boolean',
|
|
107
|
+
:'caller_id_mode' => :'String',
|
|
108
|
+
:'caller_id_verified' => :'Boolean'
|
|
77
109
|
}
|
|
78
110
|
end
|
|
79
111
|
|
|
@@ -140,6 +172,14 @@ module Zernio
|
|
|
140
172
|
if attributes.key?(:'outbound_disabled')
|
|
141
173
|
self.outbound_disabled = attributes[:'outbound_disabled']
|
|
142
174
|
end
|
|
175
|
+
|
|
176
|
+
if attributes.key?(:'caller_id_mode')
|
|
177
|
+
self.caller_id_mode = attributes[:'caller_id_mode']
|
|
178
|
+
end
|
|
179
|
+
|
|
180
|
+
if attributes.key?(:'caller_id_verified')
|
|
181
|
+
self.caller_id_verified = attributes[:'caller_id_verified']
|
|
182
|
+
end
|
|
143
183
|
end
|
|
144
184
|
|
|
145
185
|
# Show invalid properties with the reasons. Usually used together with valid?
|
|
@@ -154,9 +194,21 @@ module Zernio
|
|
|
154
194
|
# @return true if the model is valid
|
|
155
195
|
def valid?
|
|
156
196
|
warn '[DEPRECATED] the `valid?` method is obsolete'
|
|
197
|
+
caller_id_mode_validator = EnumAttributeValidator.new('String', ["business", "platform"])
|
|
198
|
+
return false unless caller_id_mode_validator.valid?(@caller_id_mode)
|
|
157
199
|
true
|
|
158
200
|
end
|
|
159
201
|
|
|
202
|
+
# Custom attribute writer method checking allowed values (enum).
|
|
203
|
+
# @param [Object] caller_id_mode Object to be assigned
|
|
204
|
+
def caller_id_mode=(caller_id_mode)
|
|
205
|
+
validator = EnumAttributeValidator.new('String', ["business", "platform"])
|
|
206
|
+
unless validator.valid?(caller_id_mode)
|
|
207
|
+
fail ArgumentError, "invalid value for \"caller_id_mode\", must be one of #{validator.allowable_values}."
|
|
208
|
+
end
|
|
209
|
+
@caller_id_mode = caller_id_mode
|
|
210
|
+
end
|
|
211
|
+
|
|
160
212
|
# Checks equality by comparing each attribute.
|
|
161
213
|
# @param [Object] Object to be compared
|
|
162
214
|
def ==(o)
|
|
@@ -170,7 +222,9 @@ module Zernio
|
|
|
170
222
|
sip_auth_username == o.sip_auth_username &&
|
|
171
223
|
sip_auth_password_configured == o.sip_auth_password_configured &&
|
|
172
224
|
call_icon_countries == o.call_icon_countries &&
|
|
173
|
-
outbound_disabled == o.outbound_disabled
|
|
225
|
+
outbound_disabled == o.outbound_disabled &&
|
|
226
|
+
caller_id_mode == o.caller_id_mode &&
|
|
227
|
+
caller_id_verified == o.caller_id_verified
|
|
174
228
|
end
|
|
175
229
|
|
|
176
230
|
# @see the `==` method
|
|
@@ -182,7 +236,7 @@ module Zernio
|
|
|
182
236
|
# Calculates hash code according to all attributes.
|
|
183
237
|
# @return [Integer] Hash code
|
|
184
238
|
def hash
|
|
185
|
-
[phone_number, calling_enabled, call_deep_link, forward_to, recording_enabled, sip_auth_username, sip_auth_password_configured, call_icon_countries, outbound_disabled].hash
|
|
239
|
+
[phone_number, calling_enabled, call_deep_link, forward_to, recording_enabled, sip_auth_username, sip_auth_password_configured, call_icon_countries, outbound_disabled, caller_id_mode, caller_id_verified].hash
|
|
186
240
|
end
|
|
187
241
|
|
|
188
242
|
# Builds the object from hash
|
data/lib/zernio-sdk/version.rb
CHANGED
data/openapi.yaml
CHANGED
|
@@ -500,11 +500,6 @@ components:
|
|
|
500
500
|
in: query
|
|
501
501
|
description: Page number (1-based)
|
|
502
502
|
schema: { type: integer, minimum: 1, default: 1 }
|
|
503
|
-
LimitParam:
|
|
504
|
-
name: limit
|
|
505
|
-
in: query
|
|
506
|
-
description: Page size
|
|
507
|
-
schema: { type: integer, minimum: 1, maximum: 100, default: 10 }
|
|
508
503
|
responses:
|
|
509
504
|
BadRequest:
|
|
510
505
|
description: Invalid request
|
|
@@ -12347,7 +12342,10 @@ paths:
|
|
|
12347
12342
|
description: Returns a paginated list of posts. Published posts include platformPostUrl with the public URL on each platform.
|
|
12348
12343
|
parameters:
|
|
12349
12344
|
- $ref: '#/components/parameters/PageParam'
|
|
12350
|
-
-
|
|
12345
|
+
- name: limit
|
|
12346
|
+
in: query
|
|
12347
|
+
schema: { type: integer, minimum: 1, maximum: 500, default: 10 }
|
|
12348
|
+
description: 'Page size. Values above the maximum return 400 rather than being clamped.'
|
|
12351
12349
|
- name: source
|
|
12352
12350
|
in: query
|
|
12353
12351
|
schema: { type: string, enum: [zernio, external], default: zernio }
|
|
@@ -12369,6 +12367,7 @@ paths:
|
|
|
12369
12367
|
- name: createdBy
|
|
12370
12368
|
in: query
|
|
12371
12369
|
schema: { type: string }
|
|
12370
|
+
description: 'Filter posts to those created by a specific team user (24-char hex ObjectId).'
|
|
12372
12371
|
- name: dateFrom
|
|
12373
12372
|
in: query
|
|
12374
12373
|
schema: { type: string, format: date }
|
|
@@ -12471,6 +12470,7 @@ paths:
|
|
|
12471
12470
|
limit: 10
|
|
12472
12471
|
total: 1
|
|
12473
12472
|
pages: 1
|
|
12473
|
+
'400': { $ref: '#/components/responses/BadRequest' }
|
|
12474
12474
|
'401': { $ref: '#/components/responses/Unauthorized' }
|
|
12475
12475
|
post:
|
|
12476
12476
|
operationId: createPost
|
|
@@ -13092,9 +13092,13 @@ paths:
|
|
|
13092
13092
|
errorMessage: "Post text exceeds the 500 character limit for Threads."
|
|
13093
13093
|
errorCategory: "user_content"
|
|
13094
13094
|
errorSource: "user"
|
|
13095
|
+
'400': { $ref: '#/components/responses/BadRequest' }
|
|
13095
13096
|
'401': { $ref: '#/components/responses/Unauthorized' }
|
|
13096
13097
|
'403':
|
|
13097
13098
|
description: Forbidden
|
|
13099
|
+
content:
|
|
13100
|
+
application/json:
|
|
13101
|
+
schema: { $ref: '#/components/schemas/ErrorResponse' }
|
|
13098
13102
|
'404': { $ref: '#/components/responses/NotFound' }
|
|
13099
13103
|
put:
|
|
13100
13104
|
operationId: updatePost
|
|
@@ -13200,9 +13204,15 @@ paths:
|
|
|
13200
13204
|
description: Partial publish success
|
|
13201
13205
|
'400':
|
|
13202
13206
|
description: Invalid request
|
|
13207
|
+
content:
|
|
13208
|
+
application/json:
|
|
13209
|
+
schema: { $ref: '#/components/schemas/ErrorResponse' }
|
|
13203
13210
|
'401': { $ref: '#/components/responses/Unauthorized' }
|
|
13204
13211
|
'403':
|
|
13205
13212
|
description: Forbidden
|
|
13213
|
+
content:
|
|
13214
|
+
application/json:
|
|
13215
|
+
schema: { $ref: '#/components/schemas/ErrorResponse' }
|
|
13206
13216
|
'404': { $ref: '#/components/responses/NotFound' }
|
|
13207
13217
|
delete:
|
|
13208
13218
|
operationId: deletePost
|
|
@@ -13225,9 +13235,15 @@ paths:
|
|
|
13225
13235
|
message: "Post deleted successfully"
|
|
13226
13236
|
'400':
|
|
13227
13237
|
description: Cannot delete published posts
|
|
13238
|
+
content:
|
|
13239
|
+
application/json:
|
|
13240
|
+
schema: { $ref: '#/components/schemas/ErrorResponse' }
|
|
13228
13241
|
'401': { $ref: '#/components/responses/Unauthorized' }
|
|
13229
13242
|
'403':
|
|
13230
13243
|
description: Forbidden
|
|
13244
|
+
content:
|
|
13245
|
+
application/json:
|
|
13246
|
+
schema: { $ref: '#/components/schemas/ErrorResponse' }
|
|
13231
13247
|
'404': { $ref: '#/components/responses/NotFound' }
|
|
13232
13248
|
/v1/posts/bulk-upload:
|
|
13233
13249
|
post:
|
|
@@ -13289,7 +13305,23 @@ paths:
|
|
|
13289
13305
|
warnings: []
|
|
13290
13306
|
'400':
|
|
13291
13307
|
description: Invalid CSV or validation errors
|
|
13308
|
+
content:
|
|
13309
|
+
application/json:
|
|
13310
|
+
schema: { $ref: '#/components/schemas/ErrorResponse' }
|
|
13292
13311
|
'401': { $ref: '#/components/responses/Unauthorized' }
|
|
13312
|
+
'402':
|
|
13313
|
+
description: 'Payment required: the account owner has a failed payment. Not returned on dry-run.'
|
|
13314
|
+
content:
|
|
13315
|
+
application/json:
|
|
13316
|
+
schema:
|
|
13317
|
+
type: object
|
|
13318
|
+
properties:
|
|
13319
|
+
error: { type: string }
|
|
13320
|
+
'404':
|
|
13321
|
+
description: Authenticated user not found
|
|
13322
|
+
content:
|
|
13323
|
+
application/json:
|
|
13324
|
+
schema: { $ref: '#/components/schemas/ErrorResponse' }
|
|
13293
13325
|
'429':
|
|
13294
13326
|
description: |
|
|
13295
13327
|
Rate limit exceeded. Possible causes: API rate limit (requests per minute) or account cooldown (one or more accounts for platforms specified in the CSV are temporarily rate-limited).
|
|
@@ -13341,12 +13373,29 @@ paths:
|
|
|
13341
13373
|
description: Partial success
|
|
13342
13374
|
'400':
|
|
13343
13375
|
description: Invalid state
|
|
13376
|
+
content:
|
|
13377
|
+
application/json:
|
|
13378
|
+
schema: { $ref: '#/components/schemas/ErrorResponse' }
|
|
13344
13379
|
'401': { $ref: '#/components/responses/Unauthorized' }
|
|
13380
|
+
'402':
|
|
13381
|
+
description: 'Payment required: the account owner has a failed payment.'
|
|
13382
|
+
content:
|
|
13383
|
+
application/json:
|
|
13384
|
+
schema:
|
|
13385
|
+
type: object
|
|
13386
|
+
properties:
|
|
13387
|
+
error: { type: string }
|
|
13345
13388
|
'403':
|
|
13346
13389
|
description: Forbidden
|
|
13390
|
+
content:
|
|
13391
|
+
application/json:
|
|
13392
|
+
schema: { $ref: '#/components/schemas/ErrorResponse' }
|
|
13347
13393
|
'404': { $ref: '#/components/responses/NotFound' }
|
|
13348
13394
|
'409':
|
|
13349
13395
|
description: Post is currently publishing
|
|
13396
|
+
content:
|
|
13397
|
+
application/json:
|
|
13398
|
+
schema: { $ref: '#/components/schemas/ErrorResponse' }
|
|
13350
13399
|
'429':
|
|
13351
13400
|
description: |
|
|
13352
13401
|
Rate limit exceeded. Possible causes: API rate limit (requests per minute), velocity limit (25 posts/hour per account), or account cooldown (temporarily rate-limited due to repeated errors).
|
|
@@ -13410,9 +13459,15 @@ paths:
|
|
|
13410
13459
|
message: "Post deleted from threads successfully"
|
|
13411
13460
|
'400':
|
|
13412
13461
|
description: "Invalid request: platform not supported for deletion, post not on that platform, not published, no platform post ID, or no access token."
|
|
13462
|
+
content:
|
|
13463
|
+
application/json:
|
|
13464
|
+
schema: { $ref: '#/components/schemas/ErrorResponse' }
|
|
13413
13465
|
'401': { $ref: '#/components/responses/Unauthorized' }
|
|
13414
13466
|
'403':
|
|
13415
13467
|
description: Forbidden
|
|
13468
|
+
content:
|
|
13469
|
+
application/json:
|
|
13470
|
+
schema: { $ref: '#/components/schemas/ErrorResponse' }
|
|
13416
13471
|
'404': { $ref: '#/components/responses/NotFound' }
|
|
13417
13472
|
'500':
|
|
13418
13473
|
description: Platform API deletion failed
|
|
@@ -13622,9 +13677,15 @@ paths:
|
|
|
13622
13677
|
updatedFields: ["title", "description", "tags"]
|
|
13623
13678
|
'400':
|
|
13624
13679
|
description: "Invalid request: unsupported platform, post not published, missing fields, or validation error."
|
|
13680
|
+
content:
|
|
13681
|
+
application/json:
|
|
13682
|
+
schema: { $ref: '#/components/schemas/ErrorResponse' }
|
|
13625
13683
|
'401': { $ref: '#/components/responses/Unauthorized' }
|
|
13626
13684
|
'403':
|
|
13627
13685
|
description: Forbidden
|
|
13686
|
+
content:
|
|
13687
|
+
application/json:
|
|
13688
|
+
schema: { $ref: '#/components/schemas/ErrorResponse' }
|
|
13628
13689
|
'404': { $ref: '#/components/responses/NotFound' }
|
|
13629
13690
|
'500':
|
|
13630
13691
|
description: Platform API update failed
|
|
@@ -25942,7 +26003,11 @@ paths:
|
|
|
25942
26003
|
callingEnabled: { type: boolean }
|
|
25943
26004
|
sipHostname: { type: string }
|
|
25944
26005
|
forwardTo: { type: string }
|
|
25945
|
-
|
|
26006
|
+
callerIdMode:
|
|
26007
|
+
type: string
|
|
26008
|
+
enum: [business, platform]
|
|
26009
|
+
description: 'Caller ID the forward-leg callee sees on tel: forwards. business = this WhatsApp number; platform = a Zernio number (customer-brought number without verified caller ID).'
|
|
26010
|
+
'400': { description: 'Invalid request (including forwardTo set to the number itself)' }
|
|
25946
26011
|
'401': { $ref: '#/components/responses/Unauthorized' }
|
|
25947
26012
|
'404': { description: WhatsApp phone number not found }
|
|
25948
26013
|
'422': { description: "Not eligible to enable calling: not on usage-based billing, or the number's messaging limit is below Meta's ~2,000-daily-recipient threshold (TIER_250). Warm the number up to raise the limit." }
|
|
@@ -30943,6 +31008,11 @@ paths:
|
|
|
30943
31008
|
type: [array, "null"]
|
|
30944
31009
|
items: { type: string, minLength: 2, maxLength: 2 }
|
|
30945
31010
|
outboundDisabled: { type: boolean, description: "True when the number's country blocks business-initiated (outbound) WhatsApp calling; inbound still works." }
|
|
31011
|
+
callerIdMode:
|
|
31012
|
+
type: string
|
|
31013
|
+
enum: [business, platform]
|
|
31014
|
+
description: 'Caller ID the forward-leg callee sees on tel: forwards. business = this WhatsApp number; platform = a Zernio number (used when the number was brought by the customer and its caller ID is not verified for PSTN origination).'
|
|
31015
|
+
callerIdVerified: { type: boolean, description: 'True once the number completed caller-ID verification, making tel: forwards display the business number itself.' }
|
|
30946
31016
|
'400': { description: Invalid request }
|
|
30947
31017
|
'401': { $ref: '#/components/responses/Unauthorized' }
|
|
30948
31018
|
'404': { description: Number not found }
|
|
@@ -30987,7 +31057,11 @@ paths:
|
|
|
30987
31057
|
callingEnabled: { type: boolean }
|
|
30988
31058
|
sipHostname: { type: string }
|
|
30989
31059
|
forwardTo: { type: string }
|
|
30990
|
-
|
|
31060
|
+
callerIdMode:
|
|
31061
|
+
type: string
|
|
31062
|
+
enum: [business, platform]
|
|
31063
|
+
description: 'Caller ID the forward-leg callee sees on tel: forwards. business = this WhatsApp number; platform = a Zernio number (customer-brought number without verified caller ID).'
|
|
31064
|
+
'400': { description: 'Invalid request (including forwardTo set to the number itself)' }
|
|
30991
31065
|
'401': { $ref: '#/components/responses/Unauthorized' }
|
|
30992
31066
|
'404': { description: Phone number not found }
|
|
30993
31067
|
'422': { description: "Not eligible to enable calling: not on usage-based billing, or the number's messaging limit is below Meta's ~2,000-daily-recipient threshold (TIER_250). Warm the number up to raise the limit." }
|
data/spec/api/posts_api_spec.rb
CHANGED
|
@@ -100,12 +100,12 @@ describe 'PostsApi' do
|
|
|
100
100
|
# Returns a paginated list of posts. Published posts include platformPostUrl with the public URL on each platform.
|
|
101
101
|
# @param [Hash] opts the optional parameters
|
|
102
102
|
# @option opts [Integer] :page Page number (1-based)
|
|
103
|
-
# @option opts [Integer] :limit Page size
|
|
103
|
+
# @option opts [Integer] :limit Page size. Values above the maximum return 400 rather than being clamped.
|
|
104
104
|
# @option opts [String] :source Which collection to read. `zernio` (default) returns posts authored through Zernio. `external` returns posts synced from the platform (existing/historical posts that were published outside Zernio). Combine with `accountId` and paginate via `page`/`limit` to walk the full synced history (we keep up to the last ~12 months per account).
|
|
105
105
|
# @option opts [String] :status
|
|
106
106
|
# @option opts [String] :platform
|
|
107
107
|
# @option opts [String] :profile_id
|
|
108
|
-
# @option opts [String] :created_by
|
|
108
|
+
# @option opts [String] :created_by Filter posts to those created by a specific team user (24-char hex ObjectId).
|
|
109
109
|
# @option opts [Date] :date_from
|
|
110
110
|
# @option opts [Date] :date_to
|
|
111
111
|
# @option opts [Boolean] :include_hidden
|
|
@@ -51,4 +51,14 @@ describe Zernio::EnableWhatsAppCallingLegacy200Response do
|
|
|
51
51
|
end
|
|
52
52
|
end
|
|
53
53
|
|
|
54
|
+
describe 'test attribute "caller_id_mode"' do
|
|
55
|
+
it 'should work' do
|
|
56
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
57
|
+
# validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["business", "platform"])
|
|
58
|
+
# validator.allowable_values.each do |value|
|
|
59
|
+
# expect { instance.caller_id_mode = value }.not_to raise_error
|
|
60
|
+
# end
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
|
|
54
64
|
end
|
|
@@ -81,4 +81,20 @@ describe Zernio::GetWhatsAppCalling200Response do
|
|
|
81
81
|
end
|
|
82
82
|
end
|
|
83
83
|
|
|
84
|
+
describe 'test attribute "caller_id_mode"' do
|
|
85
|
+
it 'should work' do
|
|
86
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
87
|
+
# validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["business", "platform"])
|
|
88
|
+
# validator.allowable_values.each do |value|
|
|
89
|
+
# expect { instance.caller_id_mode = value }.not_to raise_error
|
|
90
|
+
# end
|
|
91
|
+
end
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
describe 'test attribute "caller_id_verified"' do
|
|
95
|
+
it 'should work' do
|
|
96
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
97
|
+
end
|
|
98
|
+
end
|
|
99
|
+
|
|
84
100
|
end
|
|
Binary file
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: late-sdk
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.620
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- OpenAPI-Generator
|
|
@@ -4886,7 +4886,7 @@ files:
|
|
|
4886
4886
|
- spec/models/you_tube_video_retention_response_retention_curve_inner_spec.rb
|
|
4887
4887
|
- spec/models/you_tube_video_retention_response_spec.rb
|
|
4888
4888
|
- spec/spec_helper.rb
|
|
4889
|
-
- zernio-sdk-0.0.
|
|
4889
|
+
- zernio-sdk-0.0.620.gem
|
|
4890
4890
|
- zernio-sdk.gemspec
|
|
4891
4891
|
homepage: https://openapi-generator.tech
|
|
4892
4892
|
licenses:
|
data/zernio-sdk-0.0.618.gem
DELETED
|
Binary file
|