late-sdk 0.0.624 → 0.0.625
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/README.md +3 -0
- data/docs/ConnectWhatsAppCredentials200Response.md +2 -0
- data/docs/ConnectWhatsAppCredentialsRequest.md +3 -1
- data/docs/RegisterWhatsAppNumber200Response.md +22 -0
- data/docs/RegisterWhatsAppNumberRequest.md +18 -0
- data/docs/WhatsAppApi.md +74 -0
- data/lib/zernio-sdk/api/whats_app_api.rb +70 -0
- data/lib/zernio-sdk/models/connect_whats_app_credentials200_response.rb +11 -1
- data/lib/zernio-sdk/models/connect_whats_app_credentials_request.rb +35 -4
- data/lib/zernio-sdk/models/register_whats_app_number200_response.rb +165 -0
- data/lib/zernio-sdk/models/register_whats_app_number_request.rb +169 -0
- data/lib/zernio-sdk/version.rb +1 -1
- data/lib/zernio-sdk.rb +2 -0
- data/openapi.yaml +61 -3
- data/spec/api/whats_app_api_spec.rb +13 -0
- data/spec/models/connect_whats_app_credentials200_response_spec.rb +6 -0
- data/spec/models/connect_whats_app_credentials_request_spec.rb +6 -0
- data/spec/models/register_whats_app_number200_response_spec.rb +48 -0
- data/spec/models/register_whats_app_number_request_spec.rb +36 -0
- data/zernio-sdk-0.0.625.gem +0 -0
- metadata +10 -2
- data/zernio-sdk-0.0.624.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: 7e917f079493a54dfc761ace6dc11d5892fa60684a14afbcaad6e5fc9e6a8ee0
|
|
4
|
+
data.tar.gz: 622d8cce42a9c91ce6474d5adfdb8499a1086534a481e098b1b1f8c1b4084bf6
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 639a9ecaec615c266d7592328810f4ed4bcae86b8faae33ddcab0b029170b2cbcc34251d0f561115a4a473ed90dd223498741eb004685d4c2ee74eb67b5583be
|
|
7
|
+
data.tar.gz: 59cefd609ea1e2cc9d8e77525ab0e5e39f5d6a6f82104a4de2f181b1b751d2620b3b1715f2ee35578c1373ecac491c1a2f3f82b6529c029e78c2e341242b01c9
|
data/README.md
CHANGED
|
@@ -524,6 +524,7 @@ Class | Method | HTTP request | Description
|
|
|
524
524
|
*Zernio::WhatsAppApi* | [**list_whats_app_conversions**](docs/WhatsAppApi.md#list_whats_app_conversions) | **GET** /v1/whatsapp/conversions | List conversion events
|
|
525
525
|
*Zernio::WhatsAppApi* | [**list_whats_app_group_chats**](docs/WhatsAppApi.md#list_whats_app_group_chats) | **GET** /v1/whatsapp/wa-groups | List active groups
|
|
526
526
|
*Zernio::WhatsAppApi* | [**list_whats_app_group_join_requests**](docs/WhatsAppApi.md#list_whats_app_group_join_requests) | **GET** /v1/whatsapp/wa-groups/{groupId}/join-requests | List join requests
|
|
527
|
+
*Zernio::WhatsAppApi* | [**register_whats_app_number**](docs/WhatsAppApi.md#register_whats_app_number) | **POST** /v1/accounts/{accountId}/whatsapp/register | Register a connected WhatsApp number on the Cloud API
|
|
527
528
|
*Zernio::WhatsAppApi* | [**reject_whats_app_group_join_requests**](docs/WhatsAppApi.md#reject_whats_app_group_join_requests) | **DELETE** /v1/whatsapp/wa-groups/{groupId}/join-requests | Reject join requests
|
|
528
529
|
*Zernio::WhatsAppApi* | [**remove_whats_app_group_participants**](docs/WhatsAppApi.md#remove_whats_app_group_participants) | **DELETE** /v1/whatsapp/wa-groups/{groupId}/participants | Remove participants
|
|
529
530
|
*Zernio::WhatsAppApi* | [**send_whats_app_conversion**](docs/WhatsAppApi.md#send_whats_app_conversion) | **POST** /v1/whatsapp/conversions | Send WhatsApp conversion event
|
|
@@ -1618,6 +1619,8 @@ Class | Method | HTTP request | Description
|
|
|
1618
1619
|
- [Zernio::RecyclingState](docs/RecyclingState.md)
|
|
1619
1620
|
- [Zernio::RedditPlatformData](docs/RedditPlatformData.md)
|
|
1620
1621
|
- [Zernio::RedditPost](docs/RedditPost.md)
|
|
1622
|
+
- [Zernio::RegisterWhatsAppNumber200Response](docs/RegisterWhatsAppNumber200Response.md)
|
|
1623
|
+
- [Zernio::RegisterWhatsAppNumberRequest](docs/RegisterWhatsAppNumberRequest.md)
|
|
1621
1624
|
- [Zernio::RejectWhatsAppGroupJoinRequestsRequest](docs/RejectWhatsAppGroupJoinRequestsRequest.md)
|
|
1622
1625
|
- [Zernio::ReleasePhoneNumber200Response](docs/ReleasePhoneNumber200Response.md)
|
|
1623
1626
|
- [Zernio::ReleasePhoneNumber200ResponsePhoneNumber](docs/ReleasePhoneNumber200ResponsePhoneNumber.md)
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
| Name | Type | Description | Notes |
|
|
6
6
|
| ---- | ---- | ----------- | ----- |
|
|
7
7
|
| **message** | **String** | | [optional] |
|
|
8
|
+
| **registration_warning** | **String** | Present when the account was created but Meta rejected the Cloud API registration. The number cannot send messages until this is resolved. | [optional] |
|
|
8
9
|
| **account** | [**ConnectWhatsAppCredentials200ResponseAccount**](ConnectWhatsAppCredentials200ResponseAccount.md) | | [optional] |
|
|
9
10
|
|
|
10
11
|
## Example
|
|
@@ -14,6 +15,7 @@ require 'zernio-sdk'
|
|
|
14
15
|
|
|
15
16
|
instance = Zernio::ConnectWhatsAppCredentials200Response.new(
|
|
16
17
|
message: null,
|
|
18
|
+
registration_warning: null,
|
|
17
19
|
account: null
|
|
18
20
|
)
|
|
19
21
|
```
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
| **access_token** | **String** | Permanent System User access token from Meta Business Suite | |
|
|
9
9
|
| **waba_id** | **String** | WhatsApp Business Account ID from Meta | |
|
|
10
10
|
| **phone_number_id** | **String** | Phone Number ID from Meta WhatsApp Manager | |
|
|
11
|
+
| **pin** | **String** | The 6-digit two-step verification PIN set on the number. Required if you enabled two-step verification for it, otherwise Meta rejects the Cloud API registration with error 133005 and the number cannot send messages. | [optional] |
|
|
11
12
|
|
|
12
13
|
## Example
|
|
13
14
|
|
|
@@ -18,7 +19,8 @@ instance = Zernio::ConnectWhatsAppCredentialsRequest.new(
|
|
|
18
19
|
profile_id: null,
|
|
19
20
|
access_token: null,
|
|
20
21
|
waba_id: null,
|
|
21
|
-
phone_number_id: null
|
|
22
|
+
phone_number_id: null,
|
|
23
|
+
pin: null
|
|
22
24
|
)
|
|
23
25
|
```
|
|
24
26
|
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Zernio::RegisterWhatsAppNumber200Response
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **registered** | **Boolean** | | [optional] |
|
|
8
|
+
| **account_id** | **String** | | [optional] |
|
|
9
|
+
| **phone_number_id** | **String** | | [optional] |
|
|
10
|
+
|
|
11
|
+
## Example
|
|
12
|
+
|
|
13
|
+
```ruby
|
|
14
|
+
require 'zernio-sdk'
|
|
15
|
+
|
|
16
|
+
instance = Zernio::RegisterWhatsAppNumber200Response.new(
|
|
17
|
+
registered: null,
|
|
18
|
+
account_id: null,
|
|
19
|
+
phone_number_id: null
|
|
20
|
+
)
|
|
21
|
+
```
|
|
22
|
+
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Zernio::RegisterWhatsAppNumberRequest
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **pin** | **String** | The 6-digit two-step verification PIN set on the number. Omit it only if the number has no PIN of its own. | [optional] |
|
|
8
|
+
|
|
9
|
+
## Example
|
|
10
|
+
|
|
11
|
+
```ruby
|
|
12
|
+
require 'zernio-sdk'
|
|
13
|
+
|
|
14
|
+
instance = Zernio::RegisterWhatsAppNumberRequest.new(
|
|
15
|
+
pin: null
|
|
16
|
+
)
|
|
17
|
+
```
|
|
18
|
+
|
data/docs/WhatsAppApi.md
CHANGED
|
@@ -28,6 +28,7 @@ All URIs are relative to *https://zernio.com/api*
|
|
|
28
28
|
| [**list_whats_app_conversions**](WhatsAppApi.md#list_whats_app_conversions) | **GET** /v1/whatsapp/conversions | List conversion events |
|
|
29
29
|
| [**list_whats_app_group_chats**](WhatsAppApi.md#list_whats_app_group_chats) | **GET** /v1/whatsapp/wa-groups | List active groups |
|
|
30
30
|
| [**list_whats_app_group_join_requests**](WhatsAppApi.md#list_whats_app_group_join_requests) | **GET** /v1/whatsapp/wa-groups/{groupId}/join-requests | List join requests |
|
|
31
|
+
| [**register_whats_app_number**](WhatsAppApi.md#register_whats_app_number) | **POST** /v1/accounts/{accountId}/whatsapp/register | Register a connected WhatsApp number on the Cloud API |
|
|
31
32
|
| [**reject_whats_app_group_join_requests**](WhatsAppApi.md#reject_whats_app_group_join_requests) | **DELETE** /v1/whatsapp/wa-groups/{groupId}/join-requests | Reject join requests |
|
|
32
33
|
| [**remove_whats_app_group_participants**](WhatsAppApi.md#remove_whats_app_group_participants) | **DELETE** /v1/whatsapp/wa-groups/{groupId}/participants | Remove participants |
|
|
33
34
|
| [**send_whats_app_conversion**](WhatsAppApi.md#send_whats_app_conversion) | **POST** /v1/whatsapp/conversions | Send WhatsApp conversion event |
|
|
@@ -1736,6 +1737,79 @@ end
|
|
|
1736
1737
|
- **Accept**: application/json
|
|
1737
1738
|
|
|
1738
1739
|
|
|
1740
|
+
## register_whats_app_number
|
|
1741
|
+
|
|
1742
|
+
> <RegisterWhatsAppNumber200Response> register_whats_app_number(account_id, opts)
|
|
1743
|
+
|
|
1744
|
+
Register a connected WhatsApp number on the Cloud API
|
|
1745
|
+
|
|
1746
|
+
Re-runs Meta's Cloud API registration for a WhatsApp account that is already connected. Use it when the number has its own two-step verification PIN: the connect flows register with a default PIN, Meta rejects that with error 133005, and the number then fails every send with the misleading '(#200) You do not have the necessary permission to send messages' while the account still shows as connected. The PIN is used for this call only and is not stored.
|
|
1747
|
+
|
|
1748
|
+
### Examples
|
|
1749
|
+
|
|
1750
|
+
```ruby
|
|
1751
|
+
require 'time'
|
|
1752
|
+
require 'zernio-sdk'
|
|
1753
|
+
# setup authorization
|
|
1754
|
+
Zernio.configure do |config|
|
|
1755
|
+
# Configure Bearer authorization (JWT): bearerAuth
|
|
1756
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
1757
|
+
end
|
|
1758
|
+
|
|
1759
|
+
api_instance = Zernio::WhatsAppApi.new
|
|
1760
|
+
account_id = 'account_id_example' # String | The WhatsApp account ID
|
|
1761
|
+
opts = {
|
|
1762
|
+
register_whats_app_number_request: Zernio::RegisterWhatsAppNumberRequest.new # RegisterWhatsAppNumberRequest |
|
|
1763
|
+
}
|
|
1764
|
+
|
|
1765
|
+
begin
|
|
1766
|
+
# Register a connected WhatsApp number on the Cloud API
|
|
1767
|
+
result = api_instance.register_whats_app_number(account_id, opts)
|
|
1768
|
+
p result
|
|
1769
|
+
rescue Zernio::ApiError => e
|
|
1770
|
+
puts "Error when calling WhatsAppApi->register_whats_app_number: #{e}"
|
|
1771
|
+
end
|
|
1772
|
+
```
|
|
1773
|
+
|
|
1774
|
+
#### Using the register_whats_app_number_with_http_info variant
|
|
1775
|
+
|
|
1776
|
+
This returns an Array which contains the response data, status code and headers.
|
|
1777
|
+
|
|
1778
|
+
> <Array(<RegisterWhatsAppNumber200Response>, Integer, Hash)> register_whats_app_number_with_http_info(account_id, opts)
|
|
1779
|
+
|
|
1780
|
+
```ruby
|
|
1781
|
+
begin
|
|
1782
|
+
# Register a connected WhatsApp number on the Cloud API
|
|
1783
|
+
data, status_code, headers = api_instance.register_whats_app_number_with_http_info(account_id, opts)
|
|
1784
|
+
p status_code # => 2xx
|
|
1785
|
+
p headers # => { ... }
|
|
1786
|
+
p data # => <RegisterWhatsAppNumber200Response>
|
|
1787
|
+
rescue Zernio::ApiError => e
|
|
1788
|
+
puts "Error when calling WhatsAppApi->register_whats_app_number_with_http_info: #{e}"
|
|
1789
|
+
end
|
|
1790
|
+
```
|
|
1791
|
+
|
|
1792
|
+
### Parameters
|
|
1793
|
+
|
|
1794
|
+
| Name | Type | Description | Notes |
|
|
1795
|
+
| ---- | ---- | ----------- | ----- |
|
|
1796
|
+
| **account_id** | **String** | The WhatsApp account ID | |
|
|
1797
|
+
| **register_whats_app_number_request** | [**RegisterWhatsAppNumberRequest**](RegisterWhatsAppNumberRequest.md) | | [optional] |
|
|
1798
|
+
|
|
1799
|
+
### Return type
|
|
1800
|
+
|
|
1801
|
+
[**RegisterWhatsAppNumber200Response**](RegisterWhatsAppNumber200Response.md)
|
|
1802
|
+
|
|
1803
|
+
### Authorization
|
|
1804
|
+
|
|
1805
|
+
[bearerAuth](../README.md#bearerAuth)
|
|
1806
|
+
|
|
1807
|
+
### HTTP request headers
|
|
1808
|
+
|
|
1809
|
+
- **Content-Type**: application/json
|
|
1810
|
+
- **Accept**: application/json
|
|
1811
|
+
|
|
1812
|
+
|
|
1739
1813
|
## reject_whats_app_group_join_requests
|
|
1740
1814
|
|
|
1741
1815
|
> <UnpublishPost200Response> reject_whats_app_group_join_requests(group_id, account_id, reject_whats_app_group_join_requests_request)
|
|
@@ -1693,6 +1693,76 @@ module Zernio
|
|
|
1693
1693
|
return data, status_code, headers
|
|
1694
1694
|
end
|
|
1695
1695
|
|
|
1696
|
+
# Register a connected WhatsApp number on the Cloud API
|
|
1697
|
+
# Re-runs Meta's Cloud API registration for a WhatsApp account that is already connected. Use it when the number has its own two-step verification PIN: the connect flows register with a default PIN, Meta rejects that with error 133005, and the number then fails every send with the misleading '(#200) You do not have the necessary permission to send messages' while the account still shows as connected. The PIN is used for this call only and is not stored.
|
|
1698
|
+
# @param account_id [String] The WhatsApp account ID
|
|
1699
|
+
# @param [Hash] opts the optional parameters
|
|
1700
|
+
# @option opts [RegisterWhatsAppNumberRequest] :register_whats_app_number_request
|
|
1701
|
+
# @return [RegisterWhatsAppNumber200Response]
|
|
1702
|
+
def register_whats_app_number(account_id, opts = {})
|
|
1703
|
+
data, _status_code, _headers = register_whats_app_number_with_http_info(account_id, opts)
|
|
1704
|
+
data
|
|
1705
|
+
end
|
|
1706
|
+
|
|
1707
|
+
# Register a connected WhatsApp number on the Cloud API
|
|
1708
|
+
# Re-runs Meta's Cloud API registration for a WhatsApp account that is already connected. Use it when the number has its own two-step verification PIN: the connect flows register with a default PIN, Meta rejects that with error 133005, and the number then fails every send with the misleading '(#200) You do not have the necessary permission to send messages' while the account still shows as connected. The PIN is used for this call only and is not stored.
|
|
1709
|
+
# @param account_id [String] The WhatsApp account ID
|
|
1710
|
+
# @param [Hash] opts the optional parameters
|
|
1711
|
+
# @option opts [RegisterWhatsAppNumberRequest] :register_whats_app_number_request
|
|
1712
|
+
# @return [Array<(RegisterWhatsAppNumber200Response, Integer, Hash)>] RegisterWhatsAppNumber200Response data, response status code and response headers
|
|
1713
|
+
def register_whats_app_number_with_http_info(account_id, opts = {})
|
|
1714
|
+
if @api_client.config.debugging
|
|
1715
|
+
@api_client.config.logger.debug 'Calling API: WhatsAppApi.register_whats_app_number ...'
|
|
1716
|
+
end
|
|
1717
|
+
# verify the required parameter 'account_id' is set
|
|
1718
|
+
if @api_client.config.client_side_validation && account_id.nil?
|
|
1719
|
+
fail ArgumentError, "Missing the required parameter 'account_id' when calling WhatsAppApi.register_whats_app_number"
|
|
1720
|
+
end
|
|
1721
|
+
# resource path
|
|
1722
|
+
local_var_path = '/v1/accounts/{accountId}/whatsapp/register'.sub('{' + 'accountId' + '}', CGI.escape(account_id.to_s))
|
|
1723
|
+
|
|
1724
|
+
# query parameters
|
|
1725
|
+
query_params = opts[:query_params] || {}
|
|
1726
|
+
|
|
1727
|
+
# header parameters
|
|
1728
|
+
header_params = opts[:header_params] || {}
|
|
1729
|
+
# HTTP header 'Accept' (if needed)
|
|
1730
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
1731
|
+
# HTTP header 'Content-Type'
|
|
1732
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
1733
|
+
if !content_type.nil?
|
|
1734
|
+
header_params['Content-Type'] = content_type
|
|
1735
|
+
end
|
|
1736
|
+
|
|
1737
|
+
# form parameters
|
|
1738
|
+
form_params = opts[:form_params] || {}
|
|
1739
|
+
|
|
1740
|
+
# http body (model)
|
|
1741
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'register_whats_app_number_request'])
|
|
1742
|
+
|
|
1743
|
+
# return_type
|
|
1744
|
+
return_type = opts[:debug_return_type] || 'RegisterWhatsAppNumber200Response'
|
|
1745
|
+
|
|
1746
|
+
# auth_names
|
|
1747
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
1748
|
+
|
|
1749
|
+
new_options = opts.merge(
|
|
1750
|
+
:operation => :"WhatsAppApi.register_whats_app_number",
|
|
1751
|
+
:header_params => header_params,
|
|
1752
|
+
:query_params => query_params,
|
|
1753
|
+
:form_params => form_params,
|
|
1754
|
+
:body => post_body,
|
|
1755
|
+
:auth_names => auth_names,
|
|
1756
|
+
:return_type => return_type
|
|
1757
|
+
)
|
|
1758
|
+
|
|
1759
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
1760
|
+
if @api_client.config.debugging
|
|
1761
|
+
@api_client.config.logger.debug "API called: WhatsAppApi#register_whats_app_number\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1762
|
+
end
|
|
1763
|
+
return data, status_code, headers
|
|
1764
|
+
end
|
|
1765
|
+
|
|
1696
1766
|
# Reject join requests
|
|
1697
1767
|
# Reject pending join requests for a WhatsApp group. Not available on [Coexistence](/platforms/whatsapp/connection#whatsapp-business-app-coexistence) numbers. Requires a Cloud API-only number.
|
|
1698
1768
|
# @param group_id [String] Group ID
|
|
@@ -17,12 +17,16 @@ module Zernio
|
|
|
17
17
|
class ConnectWhatsAppCredentials200Response < ApiModelBase
|
|
18
18
|
attr_accessor :message
|
|
19
19
|
|
|
20
|
+
# Present when the account was created but Meta rejected the Cloud API registration. The number cannot send messages until this is resolved.
|
|
21
|
+
attr_accessor :registration_warning
|
|
22
|
+
|
|
20
23
|
attr_accessor :account
|
|
21
24
|
|
|
22
25
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
23
26
|
def self.attribute_map
|
|
24
27
|
{
|
|
25
28
|
:'message' => :'message',
|
|
29
|
+
:'registration_warning' => :'registrationWarning',
|
|
26
30
|
:'account' => :'account'
|
|
27
31
|
}
|
|
28
32
|
end
|
|
@@ -41,6 +45,7 @@ module Zernio
|
|
|
41
45
|
def self.openapi_types
|
|
42
46
|
{
|
|
43
47
|
:'message' => :'String',
|
|
48
|
+
:'registration_warning' => :'String',
|
|
44
49
|
:'account' => :'ConnectWhatsAppCredentials200ResponseAccount'
|
|
45
50
|
}
|
|
46
51
|
end
|
|
@@ -71,6 +76,10 @@ module Zernio
|
|
|
71
76
|
self.message = attributes[:'message']
|
|
72
77
|
end
|
|
73
78
|
|
|
79
|
+
if attributes.key?(:'registration_warning')
|
|
80
|
+
self.registration_warning = attributes[:'registration_warning']
|
|
81
|
+
end
|
|
82
|
+
|
|
74
83
|
if attributes.key?(:'account')
|
|
75
84
|
self.account = attributes[:'account']
|
|
76
85
|
end
|
|
@@ -97,6 +106,7 @@ module Zernio
|
|
|
97
106
|
return true if self.equal?(o)
|
|
98
107
|
self.class == o.class &&
|
|
99
108
|
message == o.message &&
|
|
109
|
+
registration_warning == o.registration_warning &&
|
|
100
110
|
account == o.account
|
|
101
111
|
end
|
|
102
112
|
|
|
@@ -109,7 +119,7 @@ module Zernio
|
|
|
109
119
|
# Calculates hash code according to all attributes.
|
|
110
120
|
# @return [Integer] Hash code
|
|
111
121
|
def hash
|
|
112
|
-
[message, account].hash
|
|
122
|
+
[message, registration_warning, account].hash
|
|
113
123
|
end
|
|
114
124
|
|
|
115
125
|
# Builds the object from hash
|
|
@@ -27,13 +27,17 @@ module Zernio
|
|
|
27
27
|
# Phone Number ID from Meta WhatsApp Manager
|
|
28
28
|
attr_accessor :phone_number_id
|
|
29
29
|
|
|
30
|
+
# The 6-digit two-step verification PIN set on the number. Required if you enabled two-step verification for it, otherwise Meta rejects the Cloud API registration with error 133005 and the number cannot send messages.
|
|
31
|
+
attr_accessor :pin
|
|
32
|
+
|
|
30
33
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
31
34
|
def self.attribute_map
|
|
32
35
|
{
|
|
33
36
|
:'profile_id' => :'profileId',
|
|
34
37
|
:'access_token' => :'accessToken',
|
|
35
38
|
:'waba_id' => :'wabaId',
|
|
36
|
-
:'phone_number_id' => :'phoneNumberId'
|
|
39
|
+
:'phone_number_id' => :'phoneNumberId',
|
|
40
|
+
:'pin' => :'pin'
|
|
37
41
|
}
|
|
38
42
|
end
|
|
39
43
|
|
|
@@ -53,7 +57,8 @@ module Zernio
|
|
|
53
57
|
:'profile_id' => :'String',
|
|
54
58
|
:'access_token' => :'String',
|
|
55
59
|
:'waba_id' => :'String',
|
|
56
|
-
:'phone_number_id' => :'String'
|
|
60
|
+
:'phone_number_id' => :'String',
|
|
61
|
+
:'pin' => :'String'
|
|
57
62
|
}
|
|
58
63
|
end
|
|
59
64
|
|
|
@@ -102,6 +107,10 @@ module Zernio
|
|
|
102
107
|
else
|
|
103
108
|
self.phone_number_id = nil
|
|
104
109
|
end
|
|
110
|
+
|
|
111
|
+
if attributes.key?(:'pin')
|
|
112
|
+
self.pin = attributes[:'pin']
|
|
113
|
+
end
|
|
105
114
|
end
|
|
106
115
|
|
|
107
116
|
# Show invalid properties with the reasons. Usually used together with valid?
|
|
@@ -125,6 +134,11 @@ module Zernio
|
|
|
125
134
|
invalid_properties.push('invalid value for "phone_number_id", phone_number_id cannot be nil.')
|
|
126
135
|
end
|
|
127
136
|
|
|
137
|
+
pattern = Regexp.new(/^\d{6}$/)
|
|
138
|
+
if !@pin.nil? && @pin !~ pattern
|
|
139
|
+
invalid_properties.push("invalid value for \"pin\", must conform to the pattern #{pattern}.")
|
|
140
|
+
end
|
|
141
|
+
|
|
128
142
|
invalid_properties
|
|
129
143
|
end
|
|
130
144
|
|
|
@@ -136,6 +150,7 @@ module Zernio
|
|
|
136
150
|
return false if @access_token.nil?
|
|
137
151
|
return false if @waba_id.nil?
|
|
138
152
|
return false if @phone_number_id.nil?
|
|
153
|
+
return false if !@pin.nil? && @pin !~ Regexp.new(/^\d{6}$/)
|
|
139
154
|
true
|
|
140
155
|
end
|
|
141
156
|
|
|
@@ -179,6 +194,21 @@ module Zernio
|
|
|
179
194
|
@phone_number_id = phone_number_id
|
|
180
195
|
end
|
|
181
196
|
|
|
197
|
+
# Custom attribute writer method with validation
|
|
198
|
+
# @param [Object] pin Value to be assigned
|
|
199
|
+
def pin=(pin)
|
|
200
|
+
if pin.nil?
|
|
201
|
+
fail ArgumentError, 'pin cannot be nil'
|
|
202
|
+
end
|
|
203
|
+
|
|
204
|
+
pattern = Regexp.new(/^\d{6}$/)
|
|
205
|
+
if pin !~ pattern
|
|
206
|
+
fail ArgumentError, "invalid value for \"pin\", must conform to the pattern #{pattern}."
|
|
207
|
+
end
|
|
208
|
+
|
|
209
|
+
@pin = pin
|
|
210
|
+
end
|
|
211
|
+
|
|
182
212
|
# Checks equality by comparing each attribute.
|
|
183
213
|
# @param [Object] Object to be compared
|
|
184
214
|
def ==(o)
|
|
@@ -187,7 +217,8 @@ module Zernio
|
|
|
187
217
|
profile_id == o.profile_id &&
|
|
188
218
|
access_token == o.access_token &&
|
|
189
219
|
waba_id == o.waba_id &&
|
|
190
|
-
phone_number_id == o.phone_number_id
|
|
220
|
+
phone_number_id == o.phone_number_id &&
|
|
221
|
+
pin == o.pin
|
|
191
222
|
end
|
|
192
223
|
|
|
193
224
|
# @see the `==` method
|
|
@@ -199,7 +230,7 @@ module Zernio
|
|
|
199
230
|
# Calculates hash code according to all attributes.
|
|
200
231
|
# @return [Integer] Hash code
|
|
201
232
|
def hash
|
|
202
|
-
[profile_id, access_token, waba_id, phone_number_id].hash
|
|
233
|
+
[profile_id, access_token, waba_id, phone_number_id, pin].hash
|
|
203
234
|
end
|
|
204
235
|
|
|
205
236
|
# Builds the object from hash
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Zernio API
|
|
3
|
+
|
|
4
|
+
#API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.0.4
|
|
7
|
+
Contact: support@zernio.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
Generator version: 7.19.0
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'date'
|
|
14
|
+
require 'time'
|
|
15
|
+
|
|
16
|
+
module Zernio
|
|
17
|
+
class RegisterWhatsAppNumber200Response < ApiModelBase
|
|
18
|
+
attr_accessor :registered
|
|
19
|
+
|
|
20
|
+
attr_accessor :account_id
|
|
21
|
+
|
|
22
|
+
attr_accessor :phone_number_id
|
|
23
|
+
|
|
24
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
25
|
+
def self.attribute_map
|
|
26
|
+
{
|
|
27
|
+
:'registered' => :'registered',
|
|
28
|
+
:'account_id' => :'accountId',
|
|
29
|
+
:'phone_number_id' => :'phoneNumberId'
|
|
30
|
+
}
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# Returns attribute mapping this model knows about
|
|
34
|
+
def self.acceptable_attribute_map
|
|
35
|
+
attribute_map
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Returns all the JSON keys this model knows about
|
|
39
|
+
def self.acceptable_attributes
|
|
40
|
+
acceptable_attribute_map.values
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
# Attribute type mapping.
|
|
44
|
+
def self.openapi_types
|
|
45
|
+
{
|
|
46
|
+
:'registered' => :'Boolean',
|
|
47
|
+
:'account_id' => :'String',
|
|
48
|
+
:'phone_number_id' => :'String'
|
|
49
|
+
}
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
# List of attributes with nullable: true
|
|
53
|
+
def self.openapi_nullable
|
|
54
|
+
Set.new([
|
|
55
|
+
])
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
# Initializes the object
|
|
59
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
60
|
+
def initialize(attributes = {})
|
|
61
|
+
if (!attributes.is_a?(Hash))
|
|
62
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `Zernio::RegisterWhatsAppNumber200Response` initialize method"
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
|
66
|
+
acceptable_attribute_map = self.class.acceptable_attribute_map
|
|
67
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
|
68
|
+
if (!acceptable_attribute_map.key?(k.to_sym))
|
|
69
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `Zernio::RegisterWhatsAppNumber200Response`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
|
|
70
|
+
end
|
|
71
|
+
h[k.to_sym] = v
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
if attributes.key?(:'registered')
|
|
75
|
+
self.registered = attributes[:'registered']
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
if attributes.key?(:'account_id')
|
|
79
|
+
self.account_id = attributes[:'account_id']
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
if attributes.key?(:'phone_number_id')
|
|
83
|
+
self.phone_number_id = attributes[:'phone_number_id']
|
|
84
|
+
end
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
|
88
|
+
# @return Array for valid properties with the reasons
|
|
89
|
+
def list_invalid_properties
|
|
90
|
+
warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
|
|
91
|
+
invalid_properties = Array.new
|
|
92
|
+
invalid_properties
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
# Check to see if the all the properties in the model are valid
|
|
96
|
+
# @return true if the model is valid
|
|
97
|
+
def valid?
|
|
98
|
+
warn '[DEPRECATED] the `valid?` method is obsolete'
|
|
99
|
+
true
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
# Checks equality by comparing each attribute.
|
|
103
|
+
# @param [Object] Object to be compared
|
|
104
|
+
def ==(o)
|
|
105
|
+
return true if self.equal?(o)
|
|
106
|
+
self.class == o.class &&
|
|
107
|
+
registered == o.registered &&
|
|
108
|
+
account_id == o.account_id &&
|
|
109
|
+
phone_number_id == o.phone_number_id
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
# @see the `==` method
|
|
113
|
+
# @param [Object] Object to be compared
|
|
114
|
+
def eql?(o)
|
|
115
|
+
self == o
|
|
116
|
+
end
|
|
117
|
+
|
|
118
|
+
# Calculates hash code according to all attributes.
|
|
119
|
+
# @return [Integer] Hash code
|
|
120
|
+
def hash
|
|
121
|
+
[registered, account_id, phone_number_id].hash
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
# Builds the object from hash
|
|
125
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
126
|
+
# @return [Object] Returns the model itself
|
|
127
|
+
def self.build_from_hash(attributes)
|
|
128
|
+
return nil unless attributes.is_a?(Hash)
|
|
129
|
+
attributes = attributes.transform_keys(&:to_sym)
|
|
130
|
+
transformed_hash = {}
|
|
131
|
+
openapi_types.each_pair do |key, type|
|
|
132
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
|
133
|
+
transformed_hash["#{key}"] = nil
|
|
134
|
+
elsif type =~ /\AArray<(.*)>/i
|
|
135
|
+
# check to ensure the input is an array given that the attribute
|
|
136
|
+
# is documented as an array but the input is not
|
|
137
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
|
138
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
|
139
|
+
end
|
|
140
|
+
elsif !attributes[attribute_map[key]].nil?
|
|
141
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
|
142
|
+
end
|
|
143
|
+
end
|
|
144
|
+
new(transformed_hash)
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
# Returns the object in the form of hash
|
|
148
|
+
# @return [Hash] Returns the object in the form of hash
|
|
149
|
+
def to_hash
|
|
150
|
+
hash = {}
|
|
151
|
+
self.class.attribute_map.each_pair do |attr, param|
|
|
152
|
+
value = self.send(attr)
|
|
153
|
+
if value.nil?
|
|
154
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
|
155
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
|
156
|
+
end
|
|
157
|
+
|
|
158
|
+
hash[param] = _to_hash(value)
|
|
159
|
+
end
|
|
160
|
+
hash
|
|
161
|
+
end
|
|
162
|
+
|
|
163
|
+
end
|
|
164
|
+
|
|
165
|
+
end
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Zernio API
|
|
3
|
+
|
|
4
|
+
#API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.0.4
|
|
7
|
+
Contact: support@zernio.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
Generator version: 7.19.0
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'date'
|
|
14
|
+
require 'time'
|
|
15
|
+
|
|
16
|
+
module Zernio
|
|
17
|
+
class RegisterWhatsAppNumberRequest < ApiModelBase
|
|
18
|
+
# The 6-digit two-step verification PIN set on the number. Omit it only if the number has no PIN of its own.
|
|
19
|
+
attr_accessor :pin
|
|
20
|
+
|
|
21
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
22
|
+
def self.attribute_map
|
|
23
|
+
{
|
|
24
|
+
:'pin' => :'pin'
|
|
25
|
+
}
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
# Returns attribute mapping this model knows about
|
|
29
|
+
def self.acceptable_attribute_map
|
|
30
|
+
attribute_map
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# Returns all the JSON keys this model knows about
|
|
34
|
+
def self.acceptable_attributes
|
|
35
|
+
acceptable_attribute_map.values
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# Attribute type mapping.
|
|
39
|
+
def self.openapi_types
|
|
40
|
+
{
|
|
41
|
+
:'pin' => :'String'
|
|
42
|
+
}
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
# List of attributes with nullable: true
|
|
46
|
+
def self.openapi_nullable
|
|
47
|
+
Set.new([
|
|
48
|
+
])
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
# Initializes the object
|
|
52
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
53
|
+
def initialize(attributes = {})
|
|
54
|
+
if (!attributes.is_a?(Hash))
|
|
55
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `Zernio::RegisterWhatsAppNumberRequest` initialize method"
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
|
59
|
+
acceptable_attribute_map = self.class.acceptable_attribute_map
|
|
60
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
|
61
|
+
if (!acceptable_attribute_map.key?(k.to_sym))
|
|
62
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `Zernio::RegisterWhatsAppNumberRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
|
|
63
|
+
end
|
|
64
|
+
h[k.to_sym] = v
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
if attributes.key?(:'pin')
|
|
68
|
+
self.pin = attributes[:'pin']
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
|
73
|
+
# @return Array for valid properties with the reasons
|
|
74
|
+
def list_invalid_properties
|
|
75
|
+
warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
|
|
76
|
+
invalid_properties = Array.new
|
|
77
|
+
pattern = Regexp.new(/^\d{6}$/)
|
|
78
|
+
if !@pin.nil? && @pin !~ pattern
|
|
79
|
+
invalid_properties.push("invalid value for \"pin\", must conform to the pattern #{pattern}.")
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
invalid_properties
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
# Check to see if the all the properties in the model are valid
|
|
86
|
+
# @return true if the model is valid
|
|
87
|
+
def valid?
|
|
88
|
+
warn '[DEPRECATED] the `valid?` method is obsolete'
|
|
89
|
+
return false if !@pin.nil? && @pin !~ Regexp.new(/^\d{6}$/)
|
|
90
|
+
true
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
# Custom attribute writer method with validation
|
|
94
|
+
# @param [Object] pin Value to be assigned
|
|
95
|
+
def pin=(pin)
|
|
96
|
+
if pin.nil?
|
|
97
|
+
fail ArgumentError, 'pin cannot be nil'
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
pattern = Regexp.new(/^\d{6}$/)
|
|
101
|
+
if pin !~ pattern
|
|
102
|
+
fail ArgumentError, "invalid value for \"pin\", must conform to the pattern #{pattern}."
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
@pin = pin
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
# Checks equality by comparing each attribute.
|
|
109
|
+
# @param [Object] Object to be compared
|
|
110
|
+
def ==(o)
|
|
111
|
+
return true if self.equal?(o)
|
|
112
|
+
self.class == o.class &&
|
|
113
|
+
pin == o.pin
|
|
114
|
+
end
|
|
115
|
+
|
|
116
|
+
# @see the `==` method
|
|
117
|
+
# @param [Object] Object to be compared
|
|
118
|
+
def eql?(o)
|
|
119
|
+
self == o
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
# Calculates hash code according to all attributes.
|
|
123
|
+
# @return [Integer] Hash code
|
|
124
|
+
def hash
|
|
125
|
+
[pin].hash
|
|
126
|
+
end
|
|
127
|
+
|
|
128
|
+
# Builds the object from hash
|
|
129
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
130
|
+
# @return [Object] Returns the model itself
|
|
131
|
+
def self.build_from_hash(attributes)
|
|
132
|
+
return nil unless attributes.is_a?(Hash)
|
|
133
|
+
attributes = attributes.transform_keys(&:to_sym)
|
|
134
|
+
transformed_hash = {}
|
|
135
|
+
openapi_types.each_pair do |key, type|
|
|
136
|
+
if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
|
|
137
|
+
transformed_hash["#{key}"] = nil
|
|
138
|
+
elsif type =~ /\AArray<(.*)>/i
|
|
139
|
+
# check to ensure the input is an array given that the attribute
|
|
140
|
+
# is documented as an array but the input is not
|
|
141
|
+
if attributes[attribute_map[key]].is_a?(Array)
|
|
142
|
+
transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
|
|
143
|
+
end
|
|
144
|
+
elsif !attributes[attribute_map[key]].nil?
|
|
145
|
+
transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
|
|
146
|
+
end
|
|
147
|
+
end
|
|
148
|
+
new(transformed_hash)
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
# Returns the object in the form of hash
|
|
152
|
+
# @return [Hash] Returns the object in the form of hash
|
|
153
|
+
def to_hash
|
|
154
|
+
hash = {}
|
|
155
|
+
self.class.attribute_map.each_pair do |attr, param|
|
|
156
|
+
value = self.send(attr)
|
|
157
|
+
if value.nil?
|
|
158
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
|
159
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
hash[param] = _to_hash(value)
|
|
163
|
+
end
|
|
164
|
+
hash
|
|
165
|
+
end
|
|
166
|
+
|
|
167
|
+
end
|
|
168
|
+
|
|
169
|
+
end
|
data/lib/zernio-sdk/version.rb
CHANGED
data/lib/zernio-sdk.rb
CHANGED
|
@@ -1036,6 +1036,8 @@ require 'zernio-sdk/models/recycling_config'
|
|
|
1036
1036
|
require 'zernio-sdk/models/recycling_state'
|
|
1037
1037
|
require 'zernio-sdk/models/reddit_platform_data'
|
|
1038
1038
|
require 'zernio-sdk/models/reddit_post'
|
|
1039
|
+
require 'zernio-sdk/models/register_whats_app_number200_response'
|
|
1040
|
+
require 'zernio-sdk/models/register_whats_app_number_request'
|
|
1039
1041
|
require 'zernio-sdk/models/reject_whats_app_group_join_requests_request'
|
|
1040
1042
|
require 'zernio-sdk/models/release_phone_number200_response'
|
|
1041
1043
|
require 'zernio-sdk/models/release_phone_number200_response_phone_number'
|
data/openapi.yaml
CHANGED
|
@@ -14364,6 +14364,55 @@ paths:
|
|
|
14364
14364
|
issues: ["Token expired"]
|
|
14365
14365
|
'400': { $ref: '#/components/responses/BadRequest' }
|
|
14366
14366
|
'401': { $ref: '#/components/responses/Unauthorized' }
|
|
14367
|
+
/v1/accounts/{accountId}/whatsapp/register:
|
|
14368
|
+
post:
|
|
14369
|
+
operationId: registerWhatsAppNumber
|
|
14370
|
+
tags: [WhatsApp]
|
|
14371
|
+
summary: Register a connected WhatsApp number on the Cloud API
|
|
14372
|
+
description: |
|
|
14373
|
+
Re-runs Meta's Cloud API registration for a WhatsApp account that is already connected.
|
|
14374
|
+
Use it when the number has its own two-step verification PIN: the connect flows register
|
|
14375
|
+
with a default PIN, Meta rejects that with error 133005, and the number then fails every
|
|
14376
|
+
send with the misleading '(#200) You do not have the necessary permission to send messages'
|
|
14377
|
+
while the account still shows as connected. The PIN is used for this call only and is not stored.
|
|
14378
|
+
parameters:
|
|
14379
|
+
- name: accountId
|
|
14380
|
+
in: path
|
|
14381
|
+
required: true
|
|
14382
|
+
schema: { type: string }
|
|
14383
|
+
description: The WhatsApp account ID
|
|
14384
|
+
requestBody:
|
|
14385
|
+
required: false
|
|
14386
|
+
content:
|
|
14387
|
+
application/json:
|
|
14388
|
+
schema:
|
|
14389
|
+
type: object
|
|
14390
|
+
properties:
|
|
14391
|
+
pin:
|
|
14392
|
+
type: string
|
|
14393
|
+
pattern: '^\d{6}$'
|
|
14394
|
+
description: 'The 6-digit two-step verification PIN set on the number. Omit it only if the number has no PIN of its own.'
|
|
14395
|
+
example:
|
|
14396
|
+
pin: "481902"
|
|
14397
|
+
responses:
|
|
14398
|
+
'200':
|
|
14399
|
+
description: Number registered on the WhatsApp Cloud API
|
|
14400
|
+
content:
|
|
14401
|
+
application/json:
|
|
14402
|
+
schema:
|
|
14403
|
+
type: object
|
|
14404
|
+
properties:
|
|
14405
|
+
registered: { type: boolean }
|
|
14406
|
+
accountId: { type: string }
|
|
14407
|
+
phoneNumberId: { type: string }
|
|
14408
|
+
'400':
|
|
14409
|
+
$ref: '#/components/responses/BadRequest'
|
|
14410
|
+
'401':
|
|
14411
|
+
description: Invalid or expired credentials
|
|
14412
|
+
'404':
|
|
14413
|
+
description: WhatsApp account not found
|
|
14414
|
+
'422':
|
|
14415
|
+
description: 'Meta rejected the registration (e.g. PIN mismatch), or the number cannot be registered through the API.'
|
|
14367
14416
|
/v1/accounts/{accountId}/health:
|
|
14368
14417
|
get:
|
|
14369
14418
|
operationId: getAccountHealth
|
|
@@ -18189,11 +18238,16 @@ paths:
|
|
|
18189
18238
|
phoneNumberId:
|
|
18190
18239
|
type: string
|
|
18191
18240
|
description: Phone Number ID from Meta WhatsApp Manager
|
|
18241
|
+
pin:
|
|
18242
|
+
type: string
|
|
18243
|
+
pattern: '^\d{6}$'
|
|
18244
|
+
description: 'The 6-digit two-step verification PIN set on the number. Required if you enabled two-step verification for it, otherwise Meta rejects the Cloud API registration with error 133005 and the number cannot send messages.'
|
|
18192
18245
|
example:
|
|
18193
18246
|
profileId: "6507a1b2c3d4e5f6a7b8c9d0"
|
|
18194
18247
|
accessToken: "EAABsbCS...your-system-user-token"
|
|
18195
18248
|
wabaId: "123456789012345"
|
|
18196
18249
|
phoneNumberId: "987654321098765"
|
|
18250
|
+
pin: "481902"
|
|
18197
18251
|
responses:
|
|
18198
18252
|
'200':
|
|
18199
18253
|
description: WhatsApp connected successfully
|
|
@@ -18203,6 +18257,9 @@ paths:
|
|
|
18203
18257
|
type: object
|
|
18204
18258
|
properties:
|
|
18205
18259
|
message: { type: string }
|
|
18260
|
+
registrationWarning:
|
|
18261
|
+
type: string
|
|
18262
|
+
description: 'Present when the account was created but Meta rejected the Cloud API registration. The number cannot send messages until this is resolved.'
|
|
18206
18263
|
account:
|
|
18207
18264
|
type: object
|
|
18208
18265
|
properties:
|
|
@@ -18223,9 +18280,10 @@ paths:
|
|
|
18223
18280
|
selectedPhoneNumber: "+1 555-123-4567"
|
|
18224
18281
|
'400':
|
|
18225
18282
|
description: |
|
|
18226
|
-
Invalid request.
|
|
18227
|
-
in the specified WABA. If the phone was not
|
|
18228
|
-
availablePhoneNumbers to help identify the
|
|
18283
|
+
Invalid request. Missing fields, a `pin` that is not 6 digits, or the
|
|
18284
|
+
phoneNumberId was not found in the specified WABA. If the phone was not
|
|
18285
|
+
found, the response includes availablePhoneNumbers to help identify the
|
|
18286
|
+
correct ID.
|
|
18229
18287
|
'401':
|
|
18230
18288
|
description: Invalid or expired access token
|
|
18231
18289
|
'403':
|
|
@@ -337,6 +337,19 @@ describe 'WhatsAppApi' do
|
|
|
337
337
|
end
|
|
338
338
|
end
|
|
339
339
|
|
|
340
|
+
# unit tests for register_whats_app_number
|
|
341
|
+
# Register a connected WhatsApp number on the Cloud API
|
|
342
|
+
# Re-runs Meta's Cloud API registration for a WhatsApp account that is already connected. Use it when the number has its own two-step verification PIN: the connect flows register with a default PIN, Meta rejects that with error 133005, and the number then fails every send with the misleading '(#200) You do not have the necessary permission to send messages' while the account still shows as connected. The PIN is used for this call only and is not stored.
|
|
343
|
+
# @param account_id The WhatsApp account ID
|
|
344
|
+
# @param [Hash] opts the optional parameters
|
|
345
|
+
# @option opts [RegisterWhatsAppNumberRequest] :register_whats_app_number_request
|
|
346
|
+
# @return [RegisterWhatsAppNumber200Response]
|
|
347
|
+
describe 'register_whats_app_number test' do
|
|
348
|
+
it 'should work' do
|
|
349
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
350
|
+
end
|
|
351
|
+
end
|
|
352
|
+
|
|
340
353
|
# unit tests for reject_whats_app_group_join_requests
|
|
341
354
|
# Reject join requests
|
|
342
355
|
# Reject pending join requests for a WhatsApp group. Not available on [Coexistence](/platforms/whatsapp/connection#whatsapp-business-app-coexistence) numbers. Requires a Cloud API-only number.
|
|
@@ -33,6 +33,12 @@ describe Zernio::ConnectWhatsAppCredentials200Response do
|
|
|
33
33
|
end
|
|
34
34
|
end
|
|
35
35
|
|
|
36
|
+
describe 'test attribute "registration_warning"' do
|
|
37
|
+
it 'should work' do
|
|
38
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
|
|
36
42
|
describe 'test attribute "account"' do
|
|
37
43
|
it 'should work' do
|
|
38
44
|
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Zernio API
|
|
3
|
+
|
|
4
|
+
#API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.0.4
|
|
7
|
+
Contact: support@zernio.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
Generator version: 7.19.0
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'spec_helper'
|
|
14
|
+
require 'json'
|
|
15
|
+
require 'date'
|
|
16
|
+
|
|
17
|
+
# Unit tests for Zernio::RegisterWhatsAppNumber200Response
|
|
18
|
+
# Automatically generated by openapi-generator (https://openapi-generator.tech)
|
|
19
|
+
# Please update as you see appropriate
|
|
20
|
+
describe Zernio::RegisterWhatsAppNumber200Response do
|
|
21
|
+
#let(:instance) { Zernio::RegisterWhatsAppNumber200Response.new }
|
|
22
|
+
|
|
23
|
+
describe 'test an instance of RegisterWhatsAppNumber200Response' do
|
|
24
|
+
it 'should create an instance of RegisterWhatsAppNumber200Response' do
|
|
25
|
+
# uncomment below to test the instance creation
|
|
26
|
+
#expect(instance).to be_instance_of(Zernio::RegisterWhatsAppNumber200Response)
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
describe 'test attribute "registered"' do
|
|
31
|
+
it 'should work' do
|
|
32
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
describe 'test attribute "account_id"' do
|
|
37
|
+
it 'should work' do
|
|
38
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
describe 'test attribute "phone_number_id"' do
|
|
43
|
+
it 'should work' do
|
|
44
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
end
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Zernio API
|
|
3
|
+
|
|
4
|
+
#API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.0.4
|
|
7
|
+
Contact: support@zernio.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
Generator version: 7.19.0
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'spec_helper'
|
|
14
|
+
require 'json'
|
|
15
|
+
require 'date'
|
|
16
|
+
|
|
17
|
+
# Unit tests for Zernio::RegisterWhatsAppNumberRequest
|
|
18
|
+
# Automatically generated by openapi-generator (https://openapi-generator.tech)
|
|
19
|
+
# Please update as you see appropriate
|
|
20
|
+
describe Zernio::RegisterWhatsAppNumberRequest do
|
|
21
|
+
#let(:instance) { Zernio::RegisterWhatsAppNumberRequest.new }
|
|
22
|
+
|
|
23
|
+
describe 'test an instance of RegisterWhatsAppNumberRequest' do
|
|
24
|
+
it 'should create an instance of RegisterWhatsAppNumberRequest' do
|
|
25
|
+
# uncomment below to test the instance creation
|
|
26
|
+
#expect(instance).to be_instance_of(Zernio::RegisterWhatsAppNumberRequest)
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
describe 'test attribute "pin"' do
|
|
31
|
+
it 'should work' do
|
|
32
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
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.625
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- OpenAPI-Generator
|
|
@@ -1125,6 +1125,8 @@ files:
|
|
|
1125
1125
|
- docs/RedditPlatformData.md
|
|
1126
1126
|
- docs/RedditPost.md
|
|
1127
1127
|
- docs/RedditSearchApi.md
|
|
1128
|
+
- docs/RegisterWhatsAppNumber200Response.md
|
|
1129
|
+
- docs/RegisterWhatsAppNumberRequest.md
|
|
1128
1130
|
- docs/RejectWhatsAppGroupJoinRequestsRequest.md
|
|
1129
1131
|
- docs/ReleasePhoneNumber200Response.md
|
|
1130
1132
|
- docs/ReleasePhoneNumber200ResponsePhoneNumber.md
|
|
@@ -2759,6 +2761,8 @@ files:
|
|
|
2759
2761
|
- lib/zernio-sdk/models/recycling_state.rb
|
|
2760
2762
|
- lib/zernio-sdk/models/reddit_platform_data.rb
|
|
2761
2763
|
- lib/zernio-sdk/models/reddit_post.rb
|
|
2764
|
+
- lib/zernio-sdk/models/register_whats_app_number200_response.rb
|
|
2765
|
+
- lib/zernio-sdk/models/register_whats_app_number_request.rb
|
|
2762
2766
|
- lib/zernio-sdk/models/reject_whats_app_group_join_requests_request.rb
|
|
2763
2767
|
- lib/zernio-sdk/models/release_phone_number200_response.rb
|
|
2764
2768
|
- lib/zernio-sdk/models/release_phone_number200_response_phone_number.rb
|
|
@@ -4368,6 +4372,8 @@ files:
|
|
|
4368
4372
|
- spec/models/recycling_state_spec.rb
|
|
4369
4373
|
- spec/models/reddit_platform_data_spec.rb
|
|
4370
4374
|
- spec/models/reddit_post_spec.rb
|
|
4375
|
+
- spec/models/register_whats_app_number200_response_spec.rb
|
|
4376
|
+
- spec/models/register_whats_app_number_request_spec.rb
|
|
4371
4377
|
- spec/models/reject_whats_app_group_join_requests_request_spec.rb
|
|
4372
4378
|
- spec/models/release_phone_number200_response_phone_number_spec.rb
|
|
4373
4379
|
- spec/models/release_phone_number200_response_spec.rb
|
|
@@ -4895,7 +4901,7 @@ files:
|
|
|
4895
4901
|
- spec/models/you_tube_video_retention_response_retention_curve_inner_spec.rb
|
|
4896
4902
|
- spec/models/you_tube_video_retention_response_spec.rb
|
|
4897
4903
|
- spec/spec_helper.rb
|
|
4898
|
-
- zernio-sdk-0.0.
|
|
4904
|
+
- zernio-sdk-0.0.625.gem
|
|
4899
4905
|
- zernio-sdk.gemspec
|
|
4900
4906
|
homepage: https://openapi-generator.tech
|
|
4901
4907
|
licenses:
|
|
@@ -5048,6 +5054,7 @@ test_files:
|
|
|
5048
5054
|
- spec/models/test_webhook_request_spec.rb
|
|
5049
5055
|
- spec/models/get_all_accounts_health200_response_spec.rb
|
|
5050
5056
|
- spec/models/webhook_payload_message_metadata_story_reply_spec.rb
|
|
5057
|
+
- spec/models/register_whats_app_number200_response_spec.rb
|
|
5051
5058
|
- spec/models/you_tube_demographics_response_demographics_value_inner_spec.rb
|
|
5052
5059
|
- spec/models/get_you_tube_video_retention404_response_spec.rb
|
|
5053
5060
|
- spec/models/validate_media_request_spec.rb
|
|
@@ -6144,6 +6151,7 @@ test_files:
|
|
|
6144
6151
|
- spec/models/send_typing_indicator_request_spec.rb
|
|
6145
6152
|
- spec/models/generate_ad_previews200_response_previews_inner_spec.rb
|
|
6146
6153
|
- spec/models/linked_in_ads_platform_data_jobs_headline_spec.rb
|
|
6154
|
+
- spec/models/register_whats_app_number_request_spec.rb
|
|
6147
6155
|
- spec/models/get_comment_automation200_response_spec.rb
|
|
6148
6156
|
- spec/models/block_whats_app_users200_response_spec.rb
|
|
6149
6157
|
- spec/models/send_inbox_message200_response_data_spec.rb
|
data/zernio-sdk-0.0.624.gem
DELETED
|
Binary file
|