zernio-sdk 0.0.560 → 0.0.562

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bcaa3f1e5d1d253bd1790b6e44de496391f7bf7b035f046c9382c8b31d650c8e
4
- data.tar.gz: 68669d6d6a1d35f7fae39ce311632729e8f68c9682682f661cb61472e18e783d
3
+ metadata.gz: 1051119aeba4ea0b8b1471898b5bdd99be3f0120901593561abc0d376b1990bc
4
+ data.tar.gz: b35437a1011a948427cb7d3126d157c55254406a9df25807b06ac029d6351213
5
5
  SHA512:
6
- metadata.gz: 15bd978afe9fcd59818103203f456d93abcebf1e0e9e3caf7935b73a353e99c72464e841883329457c46ddf422fafa1eb0c5aeaa902d0e428f473e257480a9ac
7
- data.tar.gz: f7ffc42d70ae75e14c4ded6a8fc1971975d0f1e0fd70a8152a41b65eae81220fedb9722d2e7128be6ae8037c30ce8ecc3d831cad81fbd16af85dacf5baa38423
6
+ metadata.gz: 9acdab99d84a80b661838d56df42dcbd2049917df1332c41bae1e3d762a7c0b345ba7f29a27a5c00a28f4014913dafbcb4bc818f5ca64a6f6a811b675652466d
7
+ data.tar.gz: 232fd2b161201c32497477195d4cb3da23c01ee5be44be2f08a1f07d47059ed834b37f753da2ac6ff1fccd958aec4d1fe79ef70534d420ac061d6e19e44b317b
data/README.md CHANGED
@@ -375,6 +375,7 @@ Class | Method | HTTP request | Description
375
375
  *Zernio::PhoneNumbersApi* | [**release_phone_number**](docs/PhoneNumbersApi.md#release_phone_number) | **DELETE** /v1/phone-numbers/{id} | Release phone number
376
376
  *Zernio::PhoneNumbersApi* | [**remediate_phone_number**](docs/PhoneNumbersApi.md#remediate_phone_number) | **POST** /v1/phone-numbers/{id}/remediate | Resubmit a declined number
377
377
  *Zernio::PhoneNumbersApi* | [**reply_to_phone_number_reviewer**](docs/PhoneNumbersApi.md#reply_to_phone_number_reviewer) | **POST** /v1/phone-numbers/{id}/remediate/reply | Reply to the regulatory reviewer
378
+ *Zernio::PhoneNumbersApi* | [**respond_to_phone_number_reviewer**](docs/PhoneNumbersApi.md#respond_to_phone_number_reviewer) | **POST** /v1/phone-numbers/{id}/remediate/respond | Respond to the regulatory reviewer (message + corrections)
378
379
  *Zernio::PhoneNumbersApi* | [**review_phone_number_kyc_packet**](docs/PhoneNumbersApi.md#review_phone_number_kyc_packet) | **POST** /v1/phone-numbers/kyc/review-packet | Pre-review a KYC packet
379
380
  *Zernio::PhoneNumbersApi* | [**search_available_phone_numbers**](docs/PhoneNumbersApi.md#search_available_phone_numbers) | **GET** /v1/phone-numbers/available | Search available numbers
380
381
  *Zernio::PhoneNumbersApi* | [**submit_phone_number_kyc**](docs/PhoneNumbersApi.md#submit_phone_number_kyc) | **POST** /v1/phone-numbers/kyc | Submit KYC
@@ -1601,6 +1602,9 @@ Class | Method | HTTP request | Description
1601
1602
  - [Zernio::ResendSmsRegistrationOtp200Response](docs/ResendSmsRegistrationOtp200Response.md)
1602
1603
  - [Zernio::ReserveRfPrediction201Response](docs/ReserveRfPrediction201Response.md)
1603
1604
  - [Zernio::ReserveRfPredictionRequest](docs/ReserveRfPredictionRequest.md)
1605
+ - [Zernio::RespondToPhoneNumberReviewer200Response](docs/RespondToPhoneNumberReviewer200Response.md)
1606
+ - [Zernio::RespondToPhoneNumberReviewerRequest](docs/RespondToPhoneNumberReviewerRequest.md)
1607
+ - [Zernio::RespondToPhoneNumberReviewerRequestDocumentsInner](docs/RespondToPhoneNumberReviewerRequestDocumentsInner.md)
1604
1608
  - [Zernio::RestoreWorkflowVersion200Response](docs/RestoreWorkflowVersion200Response.md)
1605
1609
  - [Zernio::RestoreWorkflowVersion200ResponseWorkflow](docs/RestoreWorkflowVersion200ResponseWorkflow.md)
1606
1610
  - [Zernio::RetweetPost200Response](docs/RetweetPost200Response.md)
@@ -21,6 +21,7 @@ All URIs are relative to *https://zernio.com/api*
21
21
  | [**release_phone_number**](PhoneNumbersApi.md#release_phone_number) | **DELETE** /v1/phone-numbers/{id} | Release phone number |
22
22
  | [**remediate_phone_number**](PhoneNumbersApi.md#remediate_phone_number) | **POST** /v1/phone-numbers/{id}/remediate | Resubmit a declined number |
23
23
  | [**reply_to_phone_number_reviewer**](PhoneNumbersApi.md#reply_to_phone_number_reviewer) | **POST** /v1/phone-numbers/{id}/remediate/reply | Reply to the regulatory reviewer |
24
+ | [**respond_to_phone_number_reviewer**](PhoneNumbersApi.md#respond_to_phone_number_reviewer) | **POST** /v1/phone-numbers/{id}/remediate/respond | Respond to the regulatory reviewer (message + corrections) |
24
25
  | [**review_phone_number_kyc_packet**](PhoneNumbersApi.md#review_phone_number_kyc_packet) | **POST** /v1/phone-numbers/kyc/review-packet | Pre-review a KYC packet |
25
26
  | [**search_available_phone_numbers**](PhoneNumbersApi.md#search_available_phone_numbers) | **GET** /v1/phone-numbers/available | Search available numbers |
26
27
  | [**submit_phone_number_kyc**](PhoneNumbersApi.md#submit_phone_number_kyc) | **POST** /v1/phone-numbers/kyc | Submit KYC |
@@ -1217,6 +1218,77 @@ end
1217
1218
  - **Accept**: application/json
1218
1219
 
1219
1220
 
1221
+ ## respond_to_phone_number_reviewer
1222
+
1223
+ > <RespondToPhoneNumberReviewer200Response> respond_to_phone_number_reviewer(id, respond_to_phone_number_reviewer_request)
1224
+
1225
+ Respond to the regulatory reviewer (message + corrections)
1226
+
1227
+ Send a single response to the reviewer on a number awaiting remediation: a free-text message and/or corrected requirement documents, in one call. If corrections are present they are PATCHed onto the requirement group and re-submitted (the number goes back to \"in review\"); if a message or file attachments are present they are posted to the reviewer's comment thread. When both are present, your message is the thread comment and the resubmit drives the state change. At least one of message, corrections, or attachments is required. `documents` correct requirement slots; `attachments` are loose files (their links are added to your message).
1228
+
1229
+ ### Examples
1230
+
1231
+ ```ruby
1232
+ require 'time'
1233
+ require 'zernio-sdk'
1234
+ # setup authorization
1235
+ Zernio.configure do |config|
1236
+ # Configure Bearer authorization (JWT): bearerAuth
1237
+ config.access_token = 'YOUR_BEARER_TOKEN'
1238
+ end
1239
+
1240
+ api_instance = Zernio::PhoneNumbersApi.new
1241
+ id = 'id_example' # String |
1242
+ respond_to_phone_number_reviewer_request = Zernio::RespondToPhoneNumberReviewerRequest.new # RespondToPhoneNumberReviewerRequest |
1243
+
1244
+ begin
1245
+ # Respond to the regulatory reviewer (message + corrections)
1246
+ result = api_instance.respond_to_phone_number_reviewer(id, respond_to_phone_number_reviewer_request)
1247
+ p result
1248
+ rescue Zernio::ApiError => e
1249
+ puts "Error when calling PhoneNumbersApi->respond_to_phone_number_reviewer: #{e}"
1250
+ end
1251
+ ```
1252
+
1253
+ #### Using the respond_to_phone_number_reviewer_with_http_info variant
1254
+
1255
+ This returns an Array which contains the response data, status code and headers.
1256
+
1257
+ > <Array(<RespondToPhoneNumberReviewer200Response>, Integer, Hash)> respond_to_phone_number_reviewer_with_http_info(id, respond_to_phone_number_reviewer_request)
1258
+
1259
+ ```ruby
1260
+ begin
1261
+ # Respond to the regulatory reviewer (message + corrections)
1262
+ data, status_code, headers = api_instance.respond_to_phone_number_reviewer_with_http_info(id, respond_to_phone_number_reviewer_request)
1263
+ p status_code # => 2xx
1264
+ p headers # => { ... }
1265
+ p data # => <RespondToPhoneNumberReviewer200Response>
1266
+ rescue Zernio::ApiError => e
1267
+ puts "Error when calling PhoneNumbersApi->respond_to_phone_number_reviewer_with_http_info: #{e}"
1268
+ end
1269
+ ```
1270
+
1271
+ ### Parameters
1272
+
1273
+ | Name | Type | Description | Notes |
1274
+ | ---- | ---- | ----------- | ----- |
1275
+ | **id** | **String** | | |
1276
+ | **respond_to_phone_number_reviewer_request** | [**RespondToPhoneNumberReviewerRequest**](RespondToPhoneNumberReviewerRequest.md) | | |
1277
+
1278
+ ### Return type
1279
+
1280
+ [**RespondToPhoneNumberReviewer200Response**](RespondToPhoneNumberReviewer200Response.md)
1281
+
1282
+ ### Authorization
1283
+
1284
+ [bearerAuth](../README.md#bearerAuth)
1285
+
1286
+ ### HTTP request headers
1287
+
1288
+ - **Content-Type**: application/json
1289
+ - **Accept**: application/json
1290
+
1291
+
1220
1292
  ## review_phone_number_kyc_packet
1221
1293
 
1222
1294
  > <ReviewPhoneNumberKycPacket200Response> review_phone_number_kyc_packet(review_phone_number_kyc_packet_request)
@@ -0,0 +1,24 @@
1
+ # Zernio::RespondToPhoneNumberReviewer200Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **status** | **String** | &#x60;resubmitted&#x60; when corrections were submitted, &#x60;replied&#x60; when it was message-only. | [optional] |
8
+ | **posted** | **Boolean** | Whether a message/attachments were posted to the reviewer. | [optional] |
9
+ | **phone_number** | [**RemediatePhoneNumber200ResponsePhoneNumber**](RemediatePhoneNumber200ResponsePhoneNumber.md) | | [optional] |
10
+ | **siblings_resubmitted** | **Integer** | Other numbers on the same registration the correction fanned out to. | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'zernio-sdk'
16
+
17
+ instance = Zernio::RespondToPhoneNumberReviewer200Response.new(
18
+ status: null,
19
+ posted: null,
20
+ phone_number: null,
21
+ siblings_resubmitted: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,26 @@
1
+ # Zernio::RespondToPhoneNumberReviewerRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **message** | **String** | Your message to the reviewer. | [optional] |
8
+ | **documents** | [**Array&lt;RespondToPhoneNumberReviewerRequestDocumentsInner&gt;**](RespondToPhoneNumberReviewerRequestDocumentsInner.md) | Corrected requirement documents, each keyed to its requirement. | [optional] |
9
+ | **address** | **Object** | A corrected address record, keyed to its requirement. | [optional] |
10
+ | **entity_type** | **String** | | [optional] |
11
+ | **attachments** | [**Array&lt;ReplyToPhoneNumberReviewerRequestAttachmentsInner&gt;**](ReplyToPhoneNumberReviewerRequestAttachmentsInner.md) | Loose files (PDF/JPG/PNG/WEBP, max 10 MB each) whose links are added to your message. | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'zernio-sdk'
17
+
18
+ instance = Zernio::RespondToPhoneNumberReviewerRequest.new(
19
+ message: null,
20
+ documents: null,
21
+ address: null,
22
+ entity_type: null,
23
+ attachments: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,24 @@
1
+ # Zernio::RespondToPhoneNumberReviewerRequestDocumentsInner
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **requirement_id** | **String** | | |
8
+ | **filename** | **String** | | [optional] |
9
+ | **base64** | **String** | Base64-encoded file bytes (or supply documentId instead). | [optional] |
10
+ | **document_id** | **String** | Id of a document already uploaded out-of-band. | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'zernio-sdk'
16
+
17
+ instance = Zernio::RespondToPhoneNumberReviewerRequestDocumentsInner.new(
18
+ requirement_id: null,
19
+ filename: null,
20
+ base64: null,
21
+ document_id: null
22
+ )
23
+ ```
24
+
@@ -1156,6 +1156,80 @@ module Zernio
1156
1156
  return data, status_code, headers
1157
1157
  end
1158
1158
 
1159
+ # Respond to the regulatory reviewer (message + corrections)
1160
+ # Send a single response to the reviewer on a number awaiting remediation: a free-text message and/or corrected requirement documents, in one call. If corrections are present they are PATCHed onto the requirement group and re-submitted (the number goes back to \"in review\"); if a message or file attachments are present they are posted to the reviewer's comment thread. When both are present, your message is the thread comment and the resubmit drives the state change. At least one of message, corrections, or attachments is required. `documents` correct requirement slots; `attachments` are loose files (their links are added to your message).
1161
+ # @param id [String]
1162
+ # @param respond_to_phone_number_reviewer_request [RespondToPhoneNumberReviewerRequest]
1163
+ # @param [Hash] opts the optional parameters
1164
+ # @return [RespondToPhoneNumberReviewer200Response]
1165
+ def respond_to_phone_number_reviewer(id, respond_to_phone_number_reviewer_request, opts = {})
1166
+ data, _status_code, _headers = respond_to_phone_number_reviewer_with_http_info(id, respond_to_phone_number_reviewer_request, opts)
1167
+ data
1168
+ end
1169
+
1170
+ # Respond to the regulatory reviewer (message + corrections)
1171
+ # Send a single response to the reviewer on a number awaiting remediation: a free-text message and/or corrected requirement documents, in one call. If corrections are present they are PATCHed onto the requirement group and re-submitted (the number goes back to \&quot;in review\&quot;); if a message or file attachments are present they are posted to the reviewer&#39;s comment thread. When both are present, your message is the thread comment and the resubmit drives the state change. At least one of message, corrections, or attachments is required. &#x60;documents&#x60; correct requirement slots; &#x60;attachments&#x60; are loose files (their links are added to your message).
1172
+ # @param id [String]
1173
+ # @param respond_to_phone_number_reviewer_request [RespondToPhoneNumberReviewerRequest]
1174
+ # @param [Hash] opts the optional parameters
1175
+ # @return [Array<(RespondToPhoneNumberReviewer200Response, Integer, Hash)>] RespondToPhoneNumberReviewer200Response data, response status code and response headers
1176
+ def respond_to_phone_number_reviewer_with_http_info(id, respond_to_phone_number_reviewer_request, opts = {})
1177
+ if @api_client.config.debugging
1178
+ @api_client.config.logger.debug 'Calling API: PhoneNumbersApi.respond_to_phone_number_reviewer ...'
1179
+ end
1180
+ # verify the required parameter 'id' is set
1181
+ if @api_client.config.client_side_validation && id.nil?
1182
+ fail ArgumentError, "Missing the required parameter 'id' when calling PhoneNumbersApi.respond_to_phone_number_reviewer"
1183
+ end
1184
+ # verify the required parameter 'respond_to_phone_number_reviewer_request' is set
1185
+ if @api_client.config.client_side_validation && respond_to_phone_number_reviewer_request.nil?
1186
+ fail ArgumentError, "Missing the required parameter 'respond_to_phone_number_reviewer_request' when calling PhoneNumbersApi.respond_to_phone_number_reviewer"
1187
+ end
1188
+ # resource path
1189
+ local_var_path = '/v1/phone-numbers/{id}/remediate/respond'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
1190
+
1191
+ # query parameters
1192
+ query_params = opts[:query_params] || {}
1193
+
1194
+ # header parameters
1195
+ header_params = opts[:header_params] || {}
1196
+ # HTTP header 'Accept' (if needed)
1197
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
1198
+ # HTTP header 'Content-Type'
1199
+ content_type = @api_client.select_header_content_type(['application/json'])
1200
+ if !content_type.nil?
1201
+ header_params['Content-Type'] = content_type
1202
+ end
1203
+
1204
+ # form parameters
1205
+ form_params = opts[:form_params] || {}
1206
+
1207
+ # http body (model)
1208
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(respond_to_phone_number_reviewer_request)
1209
+
1210
+ # return_type
1211
+ return_type = opts[:debug_return_type] || 'RespondToPhoneNumberReviewer200Response'
1212
+
1213
+ # auth_names
1214
+ auth_names = opts[:debug_auth_names] || ['bearerAuth']
1215
+
1216
+ new_options = opts.merge(
1217
+ :operation => :"PhoneNumbersApi.respond_to_phone_number_reviewer",
1218
+ :header_params => header_params,
1219
+ :query_params => query_params,
1220
+ :form_params => form_params,
1221
+ :body => post_body,
1222
+ :auth_names => auth_names,
1223
+ :return_type => return_type
1224
+ )
1225
+
1226
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
1227
+ if @api_client.config.debugging
1228
+ @api_client.config.logger.debug "API called: PhoneNumbersApi#respond_to_phone_number_reviewer\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1229
+ end
1230
+ return data, status_code, headers
1231
+ end
1232
+
1159
1233
  # Pre-review a KYC packet
1160
1234
  # Advisory dry-run of a regulated-KYC packet before submitting: reviews the exact documents the regulator will see (referenced by the ids from POST /v1/phone-numbers/kyc/upload-document) against the declared values and address, and returns plain-language advisories for likely decline reasons (wrong document type, mismatched address, one-sided ID scans). Non-blocking: advisories are warnings, submitting anyway is always allowed, and any review failure degrades to an empty list.
1161
1235
  # @param review_phone_number_kyc_packet_request [ReviewPhoneNumberKycPacketRequest]
@@ -0,0 +1,211 @@
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 RespondToPhoneNumberReviewer200Response < ApiModelBase
18
+ # `resubmitted` when corrections were submitted, `replied` when it was message-only.
19
+ attr_accessor :status
20
+
21
+ # Whether a message/attachments were posted to the reviewer.
22
+ attr_accessor :posted
23
+
24
+ attr_accessor :phone_number
25
+
26
+ # Other numbers on the same registration the correction fanned out to.
27
+ attr_accessor :siblings_resubmitted
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
+
51
+ # Attribute mapping from ruby-style variable name to JSON key.
52
+ def self.attribute_map
53
+ {
54
+ :'status' => :'status',
55
+ :'posted' => :'posted',
56
+ :'phone_number' => :'phoneNumber',
57
+ :'siblings_resubmitted' => :'siblingsResubmitted'
58
+ }
59
+ end
60
+
61
+ # Returns attribute mapping this model knows about
62
+ def self.acceptable_attribute_map
63
+ attribute_map
64
+ end
65
+
66
+ # Returns all the JSON keys this model knows about
67
+ def self.acceptable_attributes
68
+ acceptable_attribute_map.values
69
+ end
70
+
71
+ # Attribute type mapping.
72
+ def self.openapi_types
73
+ {
74
+ :'status' => :'String',
75
+ :'posted' => :'Boolean',
76
+ :'phone_number' => :'RemediatePhoneNumber200ResponsePhoneNumber',
77
+ :'siblings_resubmitted' => :'Integer'
78
+ }
79
+ end
80
+
81
+ # List of attributes with nullable: true
82
+ def self.openapi_nullable
83
+ Set.new([
84
+ ])
85
+ end
86
+
87
+ # Initializes the object
88
+ # @param [Hash] attributes Model attributes in the form of hash
89
+ def initialize(attributes = {})
90
+ if (!attributes.is_a?(Hash))
91
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Zernio::RespondToPhoneNumberReviewer200Response` initialize method"
92
+ end
93
+
94
+ # check to see if the attribute exists and convert string to symbol for hash key
95
+ acceptable_attribute_map = self.class.acceptable_attribute_map
96
+ attributes = attributes.each_with_object({}) { |(k, v), h|
97
+ if (!acceptable_attribute_map.key?(k.to_sym))
98
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Zernio::RespondToPhoneNumberReviewer200Response`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
99
+ end
100
+ h[k.to_sym] = v
101
+ }
102
+
103
+ if attributes.key?(:'status')
104
+ self.status = attributes[:'status']
105
+ end
106
+
107
+ if attributes.key?(:'posted')
108
+ self.posted = attributes[:'posted']
109
+ end
110
+
111
+ if attributes.key?(:'phone_number')
112
+ self.phone_number = attributes[:'phone_number']
113
+ end
114
+
115
+ if attributes.key?(:'siblings_resubmitted')
116
+ self.siblings_resubmitted = attributes[:'siblings_resubmitted']
117
+ end
118
+ end
119
+
120
+ # Show invalid properties with the reasons. Usually used together with valid?
121
+ # @return Array for valid properties with the reasons
122
+ def list_invalid_properties
123
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
124
+ invalid_properties = Array.new
125
+ invalid_properties
126
+ end
127
+
128
+ # Check to see if the all the properties in the model are valid
129
+ # @return true if the model is valid
130
+ def valid?
131
+ warn '[DEPRECATED] the `valid?` method is obsolete'
132
+ status_validator = EnumAttributeValidator.new('String', ["resubmitted", "replied"])
133
+ return false unless status_validator.valid?(@status)
134
+ true
135
+ end
136
+
137
+ # Custom attribute writer method checking allowed values (enum).
138
+ # @param [Object] status Object to be assigned
139
+ def status=(status)
140
+ validator = EnumAttributeValidator.new('String', ["resubmitted", "replied"])
141
+ unless validator.valid?(status)
142
+ fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
143
+ end
144
+ @status = status
145
+ end
146
+
147
+ # Checks equality by comparing each attribute.
148
+ # @param [Object] Object to be compared
149
+ def ==(o)
150
+ return true if self.equal?(o)
151
+ self.class == o.class &&
152
+ status == o.status &&
153
+ posted == o.posted &&
154
+ phone_number == o.phone_number &&
155
+ siblings_resubmitted == o.siblings_resubmitted
156
+ end
157
+
158
+ # @see the `==` method
159
+ # @param [Object] Object to be compared
160
+ def eql?(o)
161
+ self == o
162
+ end
163
+
164
+ # Calculates hash code according to all attributes.
165
+ # @return [Integer] Hash code
166
+ def hash
167
+ [status, posted, phone_number, siblings_resubmitted].hash
168
+ end
169
+
170
+ # Builds the object from hash
171
+ # @param [Hash] attributes Model attributes in the form of hash
172
+ # @return [Object] Returns the model itself
173
+ def self.build_from_hash(attributes)
174
+ return nil unless attributes.is_a?(Hash)
175
+ attributes = attributes.transform_keys(&:to_sym)
176
+ transformed_hash = {}
177
+ openapi_types.each_pair do |key, type|
178
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
179
+ transformed_hash["#{key}"] = nil
180
+ elsif type =~ /\AArray<(.*)>/i
181
+ # check to ensure the input is an array given that the attribute
182
+ # is documented as an array but the input is not
183
+ if attributes[attribute_map[key]].is_a?(Array)
184
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
185
+ end
186
+ elsif !attributes[attribute_map[key]].nil?
187
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
188
+ end
189
+ end
190
+ new(transformed_hash)
191
+ end
192
+
193
+ # Returns the object in the form of hash
194
+ # @return [Hash] Returns the object in the form of hash
195
+ def to_hash
196
+ hash = {}
197
+ self.class.attribute_map.each_pair do |attr, param|
198
+ value = self.send(attr)
199
+ if value.nil?
200
+ is_nullable = self.class.openapi_nullable.include?(attr)
201
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
202
+ end
203
+
204
+ hash[param] = _to_hash(value)
205
+ end
206
+ hash
207
+ end
208
+
209
+ end
210
+
211
+ end
@@ -0,0 +1,264 @@
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 RespondToPhoneNumberReviewerRequest < ApiModelBase
18
+ # Your message to the reviewer.
19
+ attr_accessor :message
20
+
21
+ # Corrected requirement documents, each keyed to its requirement.
22
+ attr_accessor :documents
23
+
24
+ # A corrected address record, keyed to its requirement.
25
+ attr_accessor :address
26
+
27
+ attr_accessor :entity_type
28
+
29
+ # Loose files (PDF/JPG/PNG/WEBP, max 10 MB each) whose links are added to your message.
30
+ attr_accessor :attachments
31
+
32
+ class EnumAttributeValidator
33
+ attr_reader :datatype
34
+ attr_reader :allowable_values
35
+
36
+ def initialize(datatype, allowable_values)
37
+ @allowable_values = allowable_values.map do |value|
38
+ case datatype.to_s
39
+ when /Integer/i
40
+ value.to_i
41
+ when /Float/i
42
+ value.to_f
43
+ else
44
+ value
45
+ end
46
+ end
47
+ end
48
+
49
+ def valid?(value)
50
+ !value || allowable_values.include?(value)
51
+ end
52
+ end
53
+
54
+ # Attribute mapping from ruby-style variable name to JSON key.
55
+ def self.attribute_map
56
+ {
57
+ :'message' => :'message',
58
+ :'documents' => :'documents',
59
+ :'address' => :'address',
60
+ :'entity_type' => :'entityType',
61
+ :'attachments' => :'attachments'
62
+ }
63
+ end
64
+
65
+ # Returns attribute mapping this model knows about
66
+ def self.acceptable_attribute_map
67
+ attribute_map
68
+ end
69
+
70
+ # Returns all the JSON keys this model knows about
71
+ def self.acceptable_attributes
72
+ acceptable_attribute_map.values
73
+ end
74
+
75
+ # Attribute type mapping.
76
+ def self.openapi_types
77
+ {
78
+ :'message' => :'String',
79
+ :'documents' => :'Array<RespondToPhoneNumberReviewerRequestDocumentsInner>',
80
+ :'address' => :'Object',
81
+ :'entity_type' => :'String',
82
+ :'attachments' => :'Array<ReplyToPhoneNumberReviewerRequestAttachmentsInner>'
83
+ }
84
+ end
85
+
86
+ # List of attributes with nullable: true
87
+ def self.openapi_nullable
88
+ Set.new([
89
+ :'entity_type',
90
+ ])
91
+ end
92
+
93
+ # Initializes the object
94
+ # @param [Hash] attributes Model attributes in the form of hash
95
+ def initialize(attributes = {})
96
+ if (!attributes.is_a?(Hash))
97
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Zernio::RespondToPhoneNumberReviewerRequest` initialize method"
98
+ end
99
+
100
+ # check to see if the attribute exists and convert string to symbol for hash key
101
+ acceptable_attribute_map = self.class.acceptable_attribute_map
102
+ attributes = attributes.each_with_object({}) { |(k, v), h|
103
+ if (!acceptable_attribute_map.key?(k.to_sym))
104
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Zernio::RespondToPhoneNumberReviewerRequest`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
105
+ end
106
+ h[k.to_sym] = v
107
+ }
108
+
109
+ if attributes.key?(:'message')
110
+ self.message = attributes[:'message']
111
+ end
112
+
113
+ if attributes.key?(:'documents')
114
+ if (value = attributes[:'documents']).is_a?(Array)
115
+ self.documents = value
116
+ end
117
+ end
118
+
119
+ if attributes.key?(:'address')
120
+ self.address = attributes[:'address']
121
+ end
122
+
123
+ if attributes.key?(:'entity_type')
124
+ self.entity_type = attributes[:'entity_type']
125
+ end
126
+
127
+ if attributes.key?(:'attachments')
128
+ if (value = attributes[:'attachments']).is_a?(Array)
129
+ self.attachments = value
130
+ end
131
+ end
132
+ end
133
+
134
+ # Show invalid properties with the reasons. Usually used together with valid?
135
+ # @return Array for valid properties with the reasons
136
+ def list_invalid_properties
137
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
138
+ invalid_properties = Array.new
139
+ if !@message.nil? && @message.to_s.length > 2000
140
+ invalid_properties.push('invalid value for "message", the character length must be smaller than or equal to 2000.')
141
+ end
142
+
143
+ if !@attachments.nil? && @attachments.length > 5
144
+ invalid_properties.push('invalid value for "attachments", number of items must be less than or equal to 5.')
145
+ end
146
+
147
+ invalid_properties
148
+ end
149
+
150
+ # Check to see if the all the properties in the model are valid
151
+ # @return true if the model is valid
152
+ def valid?
153
+ warn '[DEPRECATED] the `valid?` method is obsolete'
154
+ return false if !@message.nil? && @message.to_s.length > 2000
155
+ entity_type_validator = EnumAttributeValidator.new('String', ["individual", "business"])
156
+ return false unless entity_type_validator.valid?(@entity_type)
157
+ return false if !@attachments.nil? && @attachments.length > 5
158
+ true
159
+ end
160
+
161
+ # Custom attribute writer method with validation
162
+ # @param [Object] message Value to be assigned
163
+ def message=(message)
164
+ if message.nil?
165
+ fail ArgumentError, 'message cannot be nil'
166
+ end
167
+
168
+ if message.to_s.length > 2000
169
+ fail ArgumentError, 'invalid value for "message", the character length must be smaller than or equal to 2000.'
170
+ end
171
+
172
+ @message = message
173
+ end
174
+
175
+ # Custom attribute writer method checking allowed values (enum).
176
+ # @param [Object] entity_type Object to be assigned
177
+ def entity_type=(entity_type)
178
+ validator = EnumAttributeValidator.new('String', ["individual", "business"])
179
+ unless validator.valid?(entity_type)
180
+ fail ArgumentError, "invalid value for \"entity_type\", must be one of #{validator.allowable_values}."
181
+ end
182
+ @entity_type = entity_type
183
+ end
184
+
185
+ # Custom attribute writer method with validation
186
+ # @param [Object] attachments Value to be assigned
187
+ def attachments=(attachments)
188
+ if attachments.nil?
189
+ fail ArgumentError, 'attachments cannot be nil'
190
+ end
191
+
192
+ if attachments.length > 5
193
+ fail ArgumentError, 'invalid value for "attachments", number of items must be less than or equal to 5.'
194
+ end
195
+
196
+ @attachments = attachments
197
+ end
198
+
199
+ # Checks equality by comparing each attribute.
200
+ # @param [Object] Object to be compared
201
+ def ==(o)
202
+ return true if self.equal?(o)
203
+ self.class == o.class &&
204
+ message == o.message &&
205
+ documents == o.documents &&
206
+ address == o.address &&
207
+ entity_type == o.entity_type &&
208
+ attachments == o.attachments
209
+ end
210
+
211
+ # @see the `==` method
212
+ # @param [Object] Object to be compared
213
+ def eql?(o)
214
+ self == o
215
+ end
216
+
217
+ # Calculates hash code according to all attributes.
218
+ # @return [Integer] Hash code
219
+ def hash
220
+ [message, documents, address, entity_type, attachments].hash
221
+ end
222
+
223
+ # Builds the object from hash
224
+ # @param [Hash] attributes Model attributes in the form of hash
225
+ # @return [Object] Returns the model itself
226
+ def self.build_from_hash(attributes)
227
+ return nil unless attributes.is_a?(Hash)
228
+ attributes = attributes.transform_keys(&:to_sym)
229
+ transformed_hash = {}
230
+ openapi_types.each_pair do |key, type|
231
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
232
+ transformed_hash["#{key}"] = nil
233
+ elsif type =~ /\AArray<(.*)>/i
234
+ # check to ensure the input is an array given that the attribute
235
+ # is documented as an array but the input is not
236
+ if attributes[attribute_map[key]].is_a?(Array)
237
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
238
+ end
239
+ elsif !attributes[attribute_map[key]].nil?
240
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
241
+ end
242
+ end
243
+ new(transformed_hash)
244
+ end
245
+
246
+ # Returns the object in the form of hash
247
+ # @return [Hash] Returns the object in the form of hash
248
+ def to_hash
249
+ hash = {}
250
+ self.class.attribute_map.each_pair do |attr, param|
251
+ value = self.send(attr)
252
+ if value.nil?
253
+ is_nullable = self.class.openapi_nullable.include?(attr)
254
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
255
+ end
256
+
257
+ hash[param] = _to_hash(value)
258
+ end
259
+ hash
260
+ end
261
+
262
+ end
263
+
264
+ end
@@ -0,0 +1,193 @@
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 RespondToPhoneNumberReviewerRequestDocumentsInner < ApiModelBase
18
+ attr_accessor :requirement_id
19
+
20
+ attr_accessor :filename
21
+
22
+ # Base64-encoded file bytes (or supply documentId instead).
23
+ attr_accessor :base64
24
+
25
+ # Id of a document already uploaded out-of-band.
26
+ attr_accessor :document_id
27
+
28
+ # Attribute mapping from ruby-style variable name to JSON key.
29
+ def self.attribute_map
30
+ {
31
+ :'requirement_id' => :'requirementId',
32
+ :'filename' => :'filename',
33
+ :'base64' => :'base64',
34
+ :'document_id' => :'documentId'
35
+ }
36
+ end
37
+
38
+ # Returns attribute mapping this model knows about
39
+ def self.acceptable_attribute_map
40
+ attribute_map
41
+ end
42
+
43
+ # Returns all the JSON keys this model knows about
44
+ def self.acceptable_attributes
45
+ acceptable_attribute_map.values
46
+ end
47
+
48
+ # Attribute type mapping.
49
+ def self.openapi_types
50
+ {
51
+ :'requirement_id' => :'String',
52
+ :'filename' => :'String',
53
+ :'base64' => :'String',
54
+ :'document_id' => :'String'
55
+ }
56
+ end
57
+
58
+ # List of attributes with nullable: true
59
+ def self.openapi_nullable
60
+ Set.new([
61
+ ])
62
+ end
63
+
64
+ # Initializes the object
65
+ # @param [Hash] attributes Model attributes in the form of hash
66
+ def initialize(attributes = {})
67
+ if (!attributes.is_a?(Hash))
68
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Zernio::RespondToPhoneNumberReviewerRequestDocumentsInner` initialize method"
69
+ end
70
+
71
+ # check to see if the attribute exists and convert string to symbol for hash key
72
+ acceptable_attribute_map = self.class.acceptable_attribute_map
73
+ attributes = attributes.each_with_object({}) { |(k, v), h|
74
+ if (!acceptable_attribute_map.key?(k.to_sym))
75
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Zernio::RespondToPhoneNumberReviewerRequestDocumentsInner`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
76
+ end
77
+ h[k.to_sym] = v
78
+ }
79
+
80
+ if attributes.key?(:'requirement_id')
81
+ self.requirement_id = attributes[:'requirement_id']
82
+ else
83
+ self.requirement_id = nil
84
+ end
85
+
86
+ if attributes.key?(:'filename')
87
+ self.filename = attributes[:'filename']
88
+ end
89
+
90
+ if attributes.key?(:'base64')
91
+ self.base64 = attributes[:'base64']
92
+ end
93
+
94
+ if attributes.key?(:'document_id')
95
+ self.document_id = attributes[:'document_id']
96
+ end
97
+ end
98
+
99
+ # Show invalid properties with the reasons. Usually used together with valid?
100
+ # @return Array for valid properties with the reasons
101
+ def list_invalid_properties
102
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
103
+ invalid_properties = Array.new
104
+ if @requirement_id.nil?
105
+ invalid_properties.push('invalid value for "requirement_id", requirement_id cannot be nil.')
106
+ end
107
+
108
+ invalid_properties
109
+ end
110
+
111
+ # Check to see if the all the properties in the model are valid
112
+ # @return true if the model is valid
113
+ def valid?
114
+ warn '[DEPRECATED] the `valid?` method is obsolete'
115
+ return false if @requirement_id.nil?
116
+ true
117
+ end
118
+
119
+ # Custom attribute writer method with validation
120
+ # @param [Object] requirement_id Value to be assigned
121
+ def requirement_id=(requirement_id)
122
+ if requirement_id.nil?
123
+ fail ArgumentError, 'requirement_id cannot be nil'
124
+ end
125
+
126
+ @requirement_id = requirement_id
127
+ end
128
+
129
+ # Checks equality by comparing each attribute.
130
+ # @param [Object] Object to be compared
131
+ def ==(o)
132
+ return true if self.equal?(o)
133
+ self.class == o.class &&
134
+ requirement_id == o.requirement_id &&
135
+ filename == o.filename &&
136
+ base64 == o.base64 &&
137
+ document_id == o.document_id
138
+ end
139
+
140
+ # @see the `==` method
141
+ # @param [Object] Object to be compared
142
+ def eql?(o)
143
+ self == o
144
+ end
145
+
146
+ # Calculates hash code according to all attributes.
147
+ # @return [Integer] Hash code
148
+ def hash
149
+ [requirement_id, filename, base64, document_id].hash
150
+ end
151
+
152
+ # Builds the object from hash
153
+ # @param [Hash] attributes Model attributes in the form of hash
154
+ # @return [Object] Returns the model itself
155
+ def self.build_from_hash(attributes)
156
+ return nil unless attributes.is_a?(Hash)
157
+ attributes = attributes.transform_keys(&:to_sym)
158
+ transformed_hash = {}
159
+ openapi_types.each_pair do |key, type|
160
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
161
+ transformed_hash["#{key}"] = nil
162
+ elsif type =~ /\AArray<(.*)>/i
163
+ # check to ensure the input is an array given that the attribute
164
+ # is documented as an array but the input is not
165
+ if attributes[attribute_map[key]].is_a?(Array)
166
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
167
+ end
168
+ elsif !attributes[attribute_map[key]].nil?
169
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
170
+ end
171
+ end
172
+ new(transformed_hash)
173
+ end
174
+
175
+ # Returns the object in the form of hash
176
+ # @return [Hash] Returns the object in the form of hash
177
+ def to_hash
178
+ hash = {}
179
+ self.class.attribute_map.each_pair do |attr, param|
180
+ value = self.send(attr)
181
+ if value.nil?
182
+ is_nullable = self.class.openapi_nullable.include?(attr)
183
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
184
+ end
185
+
186
+ hash[param] = _to_hash(value)
187
+ end
188
+ hash
189
+ end
190
+
191
+ end
192
+
193
+ end
@@ -11,5 +11,5 @@ Generator version: 7.19.0
11
11
  =end
12
12
 
13
13
  module Zernio
14
- VERSION = '0.0.560'
14
+ VERSION = '0.0.562'
15
15
  end
data/lib/zernio-sdk.rb CHANGED
@@ -1031,6 +1031,9 @@ require 'zernio-sdk/models/request_sms_sender_id_limit_increase_request'
1031
1031
  require 'zernio-sdk/models/resend_sms_registration_otp200_response'
1032
1032
  require 'zernio-sdk/models/reserve_rf_prediction201_response'
1033
1033
  require 'zernio-sdk/models/reserve_rf_prediction_request'
1034
+ require 'zernio-sdk/models/respond_to_phone_number_reviewer200_response'
1035
+ require 'zernio-sdk/models/respond_to_phone_number_reviewer_request'
1036
+ require 'zernio-sdk/models/respond_to_phone_number_reviewer_request_documents_inner'
1034
1037
  require 'zernio-sdk/models/restore_workflow_version200_response'
1035
1038
  require 'zernio-sdk/models/restore_workflow_version200_response_workflow'
1036
1039
  require 'zernio-sdk/models/retweet_post200_response'
data/openapi.yaml CHANGED
@@ -27117,8 +27117,9 @@ paths:
27117
27117
  enum: [APPROVED, PENDING_REVIEW, DECLINED, NONE]
27118
27118
  description: Meta review status for the display name
27119
27119
  phoneNumber: { type: string, description: Display phone number }
27120
+ '400': { description: accountId is required }
27120
27121
  '401': { $ref: '#/components/responses/Unauthorized' }
27121
- '404': { description: WhatsApp account not found }
27122
+ '404': { description: WhatsApp account not found or accountId is not a valid ObjectId }
27122
27123
  post:
27123
27124
  operationId: updateWhatsAppDisplayName
27124
27125
  tags: [WhatsApp]
@@ -29362,6 +29363,83 @@ paths:
29362
29363
  '404': { description: Number not found }
29363
29364
  '502': { description: Couldn't deliver the reply to the reviewer; retry. }
29364
29365
 
29366
+ /v1/phone-numbers/{id}/remediate/respond:
29367
+ post:
29368
+ operationId: respondToPhoneNumberReviewer
29369
+ tags: [Phone Numbers]
29370
+ summary: Respond to the regulatory reviewer (message + corrections)
29371
+ description: |
29372
+ Send a single response to the reviewer on a number awaiting remediation:
29373
+ a free-text message and/or corrected requirement documents, in one call.
29374
+ If corrections are present they are PATCHed onto the requirement group and
29375
+ re-submitted (the number goes back to "in review"); if a message or file
29376
+ attachments are present they are posted to the reviewer's comment thread.
29377
+ When both are present, your message is the thread comment and the resubmit
29378
+ drives the state change. At least one of message, corrections, or
29379
+ attachments is required. `documents` correct requirement slots; `attachments`
29380
+ are loose files (their links are added to your message).
29381
+ parameters:
29382
+ - name: id
29383
+ in: path
29384
+ required: true
29385
+ schema: { type: string }
29386
+ requestBody:
29387
+ required: true
29388
+ content:
29389
+ application/json:
29390
+ schema:
29391
+ type: object
29392
+ properties:
29393
+ message: { type: string, maxLength: 2000, description: Your message to the reviewer. }
29394
+ documents:
29395
+ type: array
29396
+ description: 'Corrected requirement documents, each keyed to its requirement.'
29397
+ items:
29398
+ type: object
29399
+ required: [requirementId]
29400
+ properties:
29401
+ requirementId: { type: string }
29402
+ filename: { type: string }
29403
+ base64: { type: string, description: Base64-encoded file bytes (or supply documentId instead). }
29404
+ documentId: { type: string, description: Id of a document already uploaded out-of-band. }
29405
+ address:
29406
+ type: object
29407
+ description: A corrected address record, keyed to its requirement.
29408
+ entityType:
29409
+ type: [string, 'null']
29410
+ enum: [individual, business, null]
29411
+ attachments:
29412
+ type: array
29413
+ maxItems: 5
29414
+ description: 'Loose files (PDF/JPG/PNG/WEBP, max 10 MB each) whose links are added to your message.'
29415
+ items:
29416
+ type: object
29417
+ required: [filename, base64]
29418
+ properties:
29419
+ filename: { type: string }
29420
+ base64: { type: string, description: Base64-encoded file bytes. }
29421
+ responses:
29422
+ '200':
29423
+ description: Response sent.
29424
+ content:
29425
+ application/json:
29426
+ schema:
29427
+ type: object
29428
+ properties:
29429
+ status: { type: string, enum: [resubmitted, replied], description: '`resubmitted` when corrections were submitted, `replied` when it was message-only.' }
29430
+ posted: { type: boolean, description: Whether a message/attachments were posted to the reviewer. }
29431
+ phoneNumber:
29432
+ type: object
29433
+ properties:
29434
+ id: { type: string }
29435
+ status: { type: string }
29436
+ siblingsResubmitted: { type: integer, description: Other numbers on the same registration the correction fanned out to. }
29437
+ '400': { $ref: '#/components/responses/BadRequest' }
29438
+ '401': { $ref: '#/components/responses/Unauthorized' }
29439
+ '404': { description: Number not found }
29440
+ '409': { description: Number's registration is held under our own carrier registration; nothing for you to correct. }
29441
+ '502': { description: Couldn't deliver your response to the reviewer; retry. }
29442
+
29365
29443
  /v1/whatsapp/phone-numbers/kyc:
29366
29444
  get:
29367
29445
  operationId: getWhatsAppNumberKycForm
@@ -240,6 +240,19 @@ describe 'PhoneNumbersApi' do
240
240
  end
241
241
  end
242
242
 
243
+ # unit tests for respond_to_phone_number_reviewer
244
+ # Respond to the regulatory reviewer (message + corrections)
245
+ # Send a single response to the reviewer on a number awaiting remediation: a free-text message and/or corrected requirement documents, in one call. If corrections are present they are PATCHed onto the requirement group and re-submitted (the number goes back to \&quot;in review\&quot;); if a message or file attachments are present they are posted to the reviewer&#39;s comment thread. When both are present, your message is the thread comment and the resubmit drives the state change. At least one of message, corrections, or attachments is required. &#x60;documents&#x60; correct requirement slots; &#x60;attachments&#x60; are loose files (their links are added to your message).
246
+ # @param id
247
+ # @param respond_to_phone_number_reviewer_request
248
+ # @param [Hash] opts the optional parameters
249
+ # @return [RespondToPhoneNumberReviewer200Response]
250
+ describe 'respond_to_phone_number_reviewer test' do
251
+ it 'should work' do
252
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
253
+ end
254
+ end
255
+
243
256
  # unit tests for review_phone_number_kyc_packet
244
257
  # Pre-review a KYC packet
245
258
  # Advisory dry-run of a regulated-KYC packet before submitting: reviews the exact documents the regulator will see (referenced by the ids from POST /v1/phone-numbers/kyc/upload-document) against the declared values and address, and returns plain-language advisories for likely decline reasons (wrong document type, mismatched address, one-sided ID scans). Non-blocking: advisories are warnings, submitting anyway is always allowed, and any review failure degrades to an empty list.
@@ -0,0 +1,58 @@
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::RespondToPhoneNumberReviewer200Response
18
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
+ # Please update as you see appropriate
20
+ describe Zernio::RespondToPhoneNumberReviewer200Response do
21
+ #let(:instance) { Zernio::RespondToPhoneNumberReviewer200Response.new }
22
+
23
+ describe 'test an instance of RespondToPhoneNumberReviewer200Response' do
24
+ it 'should create an instance of RespondToPhoneNumberReviewer200Response' do
25
+ # uncomment below to test the instance creation
26
+ #expect(instance).to be_instance_of(Zernio::RespondToPhoneNumberReviewer200Response)
27
+ end
28
+ end
29
+
30
+ describe 'test attribute "status"' do
31
+ it 'should work' do
32
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
33
+ # validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["resubmitted", "replied"])
34
+ # validator.allowable_values.each do |value|
35
+ # expect { instance.status = value }.not_to raise_error
36
+ # end
37
+ end
38
+ end
39
+
40
+ describe 'test attribute "posted"' do
41
+ it 'should work' do
42
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
43
+ end
44
+ end
45
+
46
+ describe 'test attribute "phone_number"' do
47
+ it 'should work' do
48
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
49
+ end
50
+ end
51
+
52
+ describe 'test attribute "siblings_resubmitted"' do
53
+ it 'should work' do
54
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
55
+ end
56
+ end
57
+
58
+ end
@@ -0,0 +1,54 @@
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::RespondToPhoneNumberReviewerRequestDocumentsInner
18
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
+ # Please update as you see appropriate
20
+ describe Zernio::RespondToPhoneNumberReviewerRequestDocumentsInner do
21
+ #let(:instance) { Zernio::RespondToPhoneNumberReviewerRequestDocumentsInner.new }
22
+
23
+ describe 'test an instance of RespondToPhoneNumberReviewerRequestDocumentsInner' do
24
+ it 'should create an instance of RespondToPhoneNumberReviewerRequestDocumentsInner' do
25
+ # uncomment below to test the instance creation
26
+ #expect(instance).to be_instance_of(Zernio::RespondToPhoneNumberReviewerRequestDocumentsInner)
27
+ end
28
+ end
29
+
30
+ describe 'test attribute "requirement_id"' 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 "filename"' 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 "base64"' 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
+ describe 'test attribute "document_id"' do
49
+ it 'should work' do
50
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
51
+ end
52
+ end
53
+
54
+ end
@@ -0,0 +1,64 @@
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::RespondToPhoneNumberReviewerRequest
18
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
+ # Please update as you see appropriate
20
+ describe Zernio::RespondToPhoneNumberReviewerRequest do
21
+ #let(:instance) { Zernio::RespondToPhoneNumberReviewerRequest.new }
22
+
23
+ describe 'test an instance of RespondToPhoneNumberReviewerRequest' do
24
+ it 'should create an instance of RespondToPhoneNumberReviewerRequest' do
25
+ # uncomment below to test the instance creation
26
+ #expect(instance).to be_instance_of(Zernio::RespondToPhoneNumberReviewerRequest)
27
+ end
28
+ end
29
+
30
+ describe 'test attribute "message"' 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 "documents"' 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 "address"' 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
+ describe 'test attribute "entity_type"' do
49
+ it 'should work' do
50
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
51
+ # validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["individual", "business"])
52
+ # validator.allowable_values.each do |value|
53
+ # expect { instance.entity_type = value }.not_to raise_error
54
+ # end
55
+ end
56
+ end
57
+
58
+ describe 'test attribute "attachments"' do
59
+ it 'should work' do
60
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
61
+ end
62
+ end
63
+
64
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zernio-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.560
4
+ version: 0.0.562
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenAPI-Generator
@@ -1120,6 +1120,9 @@ files:
1120
1120
  - docs/ResendSmsRegistrationOtp200Response.md
1121
1121
  - docs/ReserveRfPrediction201Response.md
1122
1122
  - docs/ReserveRfPredictionRequest.md
1123
+ - docs/RespondToPhoneNumberReviewer200Response.md
1124
+ - docs/RespondToPhoneNumberReviewerRequest.md
1125
+ - docs/RespondToPhoneNumberReviewerRequestDocumentsInner.md
1123
1126
  - docs/RestoreWorkflowVersion200Response.md
1124
1127
  - docs/RestoreWorkflowVersion200ResponseWorkflow.md
1125
1128
  - docs/RetweetPost200Response.md
@@ -2702,6 +2705,9 @@ files:
2702
2705
  - lib/zernio-sdk/models/resend_sms_registration_otp200_response.rb
2703
2706
  - lib/zernio-sdk/models/reserve_rf_prediction201_response.rb
2704
2707
  - lib/zernio-sdk/models/reserve_rf_prediction_request.rb
2708
+ - lib/zernio-sdk/models/respond_to_phone_number_reviewer200_response.rb
2709
+ - lib/zernio-sdk/models/respond_to_phone_number_reviewer_request.rb
2710
+ - lib/zernio-sdk/models/respond_to_phone_number_reviewer_request_documents_inner.rb
2705
2711
  - lib/zernio-sdk/models/restore_workflow_version200_response.rb
2706
2712
  - lib/zernio-sdk/models/restore_workflow_version200_response_workflow.rb
2707
2713
  - lib/zernio-sdk/models/retweet_post200_response.rb
@@ -4260,6 +4266,9 @@ files:
4260
4266
  - spec/models/resend_sms_registration_otp200_response_spec.rb
4261
4267
  - spec/models/reserve_rf_prediction201_response_spec.rb
4262
4268
  - spec/models/reserve_rf_prediction_request_spec.rb
4269
+ - spec/models/respond_to_phone_number_reviewer200_response_spec.rb
4270
+ - spec/models/respond_to_phone_number_reviewer_request_documents_inner_spec.rb
4271
+ - spec/models/respond_to_phone_number_reviewer_request_spec.rb
4263
4272
  - spec/models/restore_workflow_version200_response_spec.rb
4264
4273
  - spec/models/restore_workflow_version200_response_workflow_spec.rb
4265
4274
  - spec/models/retweet_post200_response_spec.rb
@@ -5422,6 +5431,7 @@ test_files:
5422
5431
  - spec/models/on_whats_app_number_declined_request_number_spec.rb
5423
5432
  - spec/models/twitter_platform_data_thread_items_inner_spec.rb
5424
5433
  - spec/models/schedule_broadcast_request_spec.rb
5434
+ - spec/models/respond_to_phone_number_reviewer_request_documents_inner_spec.rb
5425
5435
  - spec/models/update_discord_settings200_response_account_spec.rb
5426
5436
  - spec/models/webhook_payload_whats_app_template_status_updated_spec.rb
5427
5437
  - spec/models/get_google_business_verifications200_response_verifications_inner_spec.rb
@@ -5481,6 +5491,7 @@ test_files:
5481
5491
  - spec/models/send_discord_direct_message200_response_account_spec.rb
5482
5492
  - spec/models/ad_creative_spec.rb
5483
5493
  - spec/models/reply_to_phone_number_reviewer_request_attachments_inner_spec.rb
5494
+ - spec/models/respond_to_phone_number_reviewer_request_spec.rb
5484
5495
  - spec/models/list_broadcasts200_response_spec.rb
5485
5496
  - spec/models/conversion_event_spec.rb
5486
5497
  - spec/models/list_inbox_conversations200_response_meta_spec.rb
@@ -5850,6 +5861,7 @@ test_files:
5850
5861
  - spec/models/initiate_telegram_connect200_response_spec.rb
5851
5862
  - spec/models/send_inbox_message_request_interactive_spec.rb
5852
5863
  - spec/models/ad_tree_ad_set_ad_set_budget_spec.rb
5864
+ - spec/models/respond_to_phone_number_reviewer200_response_spec.rb
5853
5865
  - spec/models/get_google_business_performance400_response_spec.rb
5854
5866
  - spec/models/create_comment_automation200_response_automation_stats_spec.rb
5855
5867
  - spec/models/add_users_to_ad_audience200_response_spec.rb