twilio-ruby 7.8.1 → 7.8.3
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/CHANGES.md +16 -0
- data/README.md +2 -2
- data/lib/twilio-ruby/http/client_token_manager.rb +5 -2
- data/lib/twilio-ruby/http/org_token_manager.rb +5 -2
- data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +5 -2
- data/lib/twilio-ruby/rest/client.rb +5 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +3 -3
- data/lib/twilio-ruby/rest/knowledge/v1/knowledge/chunk.rb +232 -0
- data/lib/twilio-ruby/rest/knowledge/v1/knowledge/knowledge_status.rb +213 -0
- data/lib/twilio-ruby/rest/knowledge/v1/knowledge.rb +623 -0
- data/lib/twilio-ruby/rest/knowledge/v1.rb +49 -0
- data/lib/twilio-ruby/rest/knowledge.rb +6 -0
- data/lib/twilio-ruby/rest/knowledge_base.rb +38 -0
- data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +13 -13
- data/lib/twilio-ruby/rest/lookups/v2/query.rb +15 -209
- data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +91 -0
- data/lib/twilio-ruby/rest/messaging/v2/typing_indicator.rb +140 -0
- data/lib/twilio-ruby/rest/messaging/v2.rb +6 -0
- data/lib/twilio-ruby/rest/numbers/v1/porting_all_port_in.rb +270 -0
- data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +100 -5
- data/lib/twilio-ruby/rest/numbers/v1.rb +6 -0
- data/lib/twilio-ruby/rest/oauth/v2/token.rb +2 -2
- data/lib/twilio-ruby/rest/verify/v2/service/approve_challenge.rb +312 -0
- data/lib/twilio-ruby/rest/verify/v2/{new_challenge.rb → service/new_challenge.rb} +9 -4
- data/lib/twilio-ruby/rest/verify/v2/service/new_verify_factor.rb +267 -0
- data/lib/twilio-ruby/rest/verify/v2/service.rb +49 -12
- data/lib/twilio-ruby/rest/verify/v2.rb +0 -15
- data/lib/twilio-ruby/version.rb +1 -1
- metadata +13 -3
@@ -0,0 +1,312 @@
|
|
1
|
+
##
|
2
|
+
# This code was generated by
|
3
|
+
# ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
|
4
|
+
# | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
|
5
|
+
# | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
|
6
|
+
#
|
7
|
+
# Twilio - Verify
|
8
|
+
# This is the public Twilio REST API.
|
9
|
+
#
|
10
|
+
# NOTE: This class is auto generated by OpenAPI Generator.
|
11
|
+
# https://openapi-generator.tech
|
12
|
+
# Do not edit the class manually.
|
13
|
+
#
|
14
|
+
|
15
|
+
|
16
|
+
module Twilio
|
17
|
+
module REST
|
18
|
+
class Verify < VerifyBase
|
19
|
+
class V2 < Version
|
20
|
+
class ServiceContext < InstanceContext
|
21
|
+
|
22
|
+
class ApproveChallengeList < ListResource
|
23
|
+
|
24
|
+
class ApprovePasskeysChallengeRequest
|
25
|
+
# @param [id]: [String] A [base64url](https://base64.guru/standards/base64url) encoded representation of `rawId`.
|
26
|
+
# @param [raw_id]: [String] The globally unique identifier for this `PublicKeyCredential`.
|
27
|
+
# @param [authenticator_attachment]: [String] A string that indicates the mechanism by which the WebAuthn implementation is attached to the authenticator at the time the associated `navigator.credentials.create()` or `navigator.credentials.get()` call completes.
|
28
|
+
# @param [type]: [String] The valid credential types supported by the API. The values of this enumeration are used for versioning the `AuthenticatorAssertion` and `AuthenticatorAttestation` structures according to the type of the authenticator.
|
29
|
+
# @param [response]: [ApproveChallengeList.ApprovePasskeysChallengeRequestResponse]
|
30
|
+
attr_accessor :id, :raw_id, :authenticator_attachment, :type, :response
|
31
|
+
def initialize(payload)
|
32
|
+
@id = payload["id"]
|
33
|
+
@raw_id = payload["raw_id"]
|
34
|
+
@authenticator_attachment = payload["authenticator_attachment"]
|
35
|
+
@type = payload["type"]
|
36
|
+
@response = payload["response"]
|
37
|
+
end
|
38
|
+
def to_json(options = {})
|
39
|
+
{
|
40
|
+
"id": @id,
|
41
|
+
"rawId": @raw_id,
|
42
|
+
"authenticatorAttachment": @authenticator_attachment,
|
43
|
+
"type": @type,
|
44
|
+
"response": @response,
|
45
|
+
}.to_json(options)
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
class ApprovePasskeysChallengeRequestResponse
|
50
|
+
# @param [authenticator_data]: [String] The [authenticator data](https://developer.mozilla.org/en-US/docs/Web/API/Web_Authentication_API/Authenticator_data) structure contains information from the authenticator about the processing of a credential creation or authentication request.
|
51
|
+
# @param [client_data_json]: [String] This property contains the JSON-compatible serialization of the data passed from the browser to the authenticator in order to generate this credential.
|
52
|
+
# @param [signature]: [String] An assertion signature over `authenticatorData` and `clientDataJSON`. The assertion signature is created with the private key of the key pair that was created during the originating `navigator.credentials.create()` call and verified using the public key of that same key pair.
|
53
|
+
# @param [user_handle]: [String] The user handle stored in the authenticator, specified as `user.id` in the options passed to the originating `navigator.credentials.create()` call. This property should contain a base64url-encoded entity SID.
|
54
|
+
attr_accessor :authenticator_data, :client_data_json, :signature, :user_handle
|
55
|
+
def initialize(payload)
|
56
|
+
@authenticator_data = payload["authenticator_data"]
|
57
|
+
@client_data_json = payload["client_data_json"]
|
58
|
+
@signature = payload["signature"]
|
59
|
+
@user_handle = payload["user_handle"]
|
60
|
+
end
|
61
|
+
def to_json(options = {})
|
62
|
+
{
|
63
|
+
"authenticatorData": @authenticator_data,
|
64
|
+
"clientDataJSON": @client_data_json,
|
65
|
+
"signature": @signature,
|
66
|
+
"userHandle": @user_handle,
|
67
|
+
}.to_json(options)
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
|
72
|
+
##
|
73
|
+
# Initialize the ApproveChallengeList
|
74
|
+
# @param [Version] version Version that contains the resource
|
75
|
+
# @return [ApproveChallengeList] ApproveChallengeList
|
76
|
+
def initialize(version, service_sid: nil)
|
77
|
+
super(version)
|
78
|
+
# Path Solution
|
79
|
+
@solution = { service_sid: service_sid }
|
80
|
+
@uri = "/Services/#{@solution[:service_sid]}/Passkeys/ApproveChallenge"
|
81
|
+
|
82
|
+
end
|
83
|
+
##
|
84
|
+
# Update the ApproveChallengeInstance
|
85
|
+
# @param [ApprovePasskeysChallengeRequest] approve_passkeys_challenge_request
|
86
|
+
# @return [ApproveChallengeInstance] Updated ApproveChallengeInstance
|
87
|
+
def update(approve_passkeys_challenge_request: nil
|
88
|
+
)
|
89
|
+
|
90
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
91
|
+
headers['Content-Type'] = 'application/json'
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
|
96
|
+
payload = @version.update('POST', @uri, headers: headers, data: approve_passkeys_challenge_request.to_json)
|
97
|
+
ApproveChallengeInstance.new(
|
98
|
+
@version,
|
99
|
+
payload,
|
100
|
+
service_sid: @solution[:service_sid],
|
101
|
+
)
|
102
|
+
end
|
103
|
+
|
104
|
+
|
105
|
+
|
106
|
+
|
107
|
+
# Provide a user friendly representation
|
108
|
+
def to_s
|
109
|
+
'#<Twilio.Verify.V2.ApproveChallengeList>'
|
110
|
+
end
|
111
|
+
end
|
112
|
+
|
113
|
+
class ApproveChallengePage < Page
|
114
|
+
##
|
115
|
+
# Initialize the ApproveChallengePage
|
116
|
+
# @param [Version] version Version that contains the resource
|
117
|
+
# @param [Response] response Response from the API
|
118
|
+
# @param [Hash] solution Path solution for the resource
|
119
|
+
# @return [ApproveChallengePage] ApproveChallengePage
|
120
|
+
def initialize(version, response, solution)
|
121
|
+
super(version, response)
|
122
|
+
|
123
|
+
# Path Solution
|
124
|
+
@solution = solution
|
125
|
+
end
|
126
|
+
|
127
|
+
##
|
128
|
+
# Build an instance of ApproveChallengeInstance
|
129
|
+
# @param [Hash] payload Payload response from the API
|
130
|
+
# @return [ApproveChallengeInstance] ApproveChallengeInstance
|
131
|
+
def get_instance(payload)
|
132
|
+
ApproveChallengeInstance.new(@version, payload, service_sid: @solution[:service_sid])
|
133
|
+
end
|
134
|
+
|
135
|
+
##
|
136
|
+
# Provide a user friendly representation
|
137
|
+
def to_s
|
138
|
+
'<Twilio.Verify.V2.ApproveChallengePage>'
|
139
|
+
end
|
140
|
+
end
|
141
|
+
class ApproveChallengeInstance < InstanceResource
|
142
|
+
##
|
143
|
+
# Initialize the ApproveChallengeInstance
|
144
|
+
# @param [Version] version Version that contains the resource
|
145
|
+
# @param [Hash] payload payload that contains response from Twilio
|
146
|
+
# @param [String] account_sid The SID of the
|
147
|
+
# {Account}[https://www.twilio.com/docs/iam/api/account] that created this ApproveChallenge
|
148
|
+
# resource.
|
149
|
+
# @param [String] sid The SID of the Call resource to fetch.
|
150
|
+
# @return [ApproveChallengeInstance] ApproveChallengeInstance
|
151
|
+
def initialize(version, payload , service_sid: nil)
|
152
|
+
super(version)
|
153
|
+
|
154
|
+
# Marshaled Properties
|
155
|
+
@properties = {
|
156
|
+
'options' => payload['options'],
|
157
|
+
'sid' => payload['sid'],
|
158
|
+
'account_sid' => payload['account_sid'],
|
159
|
+
'service_sid' => payload['service_sid'],
|
160
|
+
'entity_sid' => payload['entity_sid'],
|
161
|
+
'identity' => payload['identity'],
|
162
|
+
'factor_sid' => payload['factor_sid'],
|
163
|
+
'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
|
164
|
+
'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
|
165
|
+
'date_responded' => Twilio.deserialize_iso8601_datetime(payload['date_responded']),
|
166
|
+
'expiration_date' => Twilio.deserialize_iso8601_datetime(payload['expiration_date']),
|
167
|
+
'status' => payload['status'],
|
168
|
+
'responded_reason' => payload['responded_reason'],
|
169
|
+
'details' => payload['details'],
|
170
|
+
'hidden_details' => payload['hidden_details'],
|
171
|
+
'metadata' => payload['metadata'],
|
172
|
+
'factor_type' => payload['factor_type'],
|
173
|
+
'url' => payload['url'],
|
174
|
+
'links' => payload['links'],
|
175
|
+
}
|
176
|
+
end
|
177
|
+
|
178
|
+
|
179
|
+
##
|
180
|
+
# @return [Hash] An object that contains challenge options. Currently only used for `passkeys`.
|
181
|
+
def options
|
182
|
+
@properties['options']
|
183
|
+
end
|
184
|
+
|
185
|
+
##
|
186
|
+
# @return [String] A 34 character string that uniquely identifies this Challenge.
|
187
|
+
def sid
|
188
|
+
@properties['sid']
|
189
|
+
end
|
190
|
+
|
191
|
+
##
|
192
|
+
# @return [String] The unique SID identifier of the Account.
|
193
|
+
def account_sid
|
194
|
+
@properties['account_sid']
|
195
|
+
end
|
196
|
+
|
197
|
+
##
|
198
|
+
# @return [String] The unique SID identifier of the Service.
|
199
|
+
def service_sid
|
200
|
+
@properties['service_sid']
|
201
|
+
end
|
202
|
+
|
203
|
+
##
|
204
|
+
# @return [String] The unique SID identifier of the Entity.
|
205
|
+
def entity_sid
|
206
|
+
@properties['entity_sid']
|
207
|
+
end
|
208
|
+
|
209
|
+
##
|
210
|
+
# @return [String] Customer unique identity for the Entity owner of the Challenge.
|
211
|
+
def identity
|
212
|
+
@properties['identity']
|
213
|
+
end
|
214
|
+
|
215
|
+
##
|
216
|
+
# @return [String] The unique SID identifier of the Factor.
|
217
|
+
def factor_sid
|
218
|
+
@properties['factor_sid']
|
219
|
+
end
|
220
|
+
|
221
|
+
##
|
222
|
+
# @return [Time] The date that this Challenge was created, given in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
|
223
|
+
def date_created
|
224
|
+
@properties['date_created']
|
225
|
+
end
|
226
|
+
|
227
|
+
##
|
228
|
+
# @return [Time] The date that this Challenge was updated, given in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
|
229
|
+
def date_updated
|
230
|
+
@properties['date_updated']
|
231
|
+
end
|
232
|
+
|
233
|
+
##
|
234
|
+
# @return [Time] The date that this Challenge was responded, given in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
|
235
|
+
def date_responded
|
236
|
+
@properties['date_responded']
|
237
|
+
end
|
238
|
+
|
239
|
+
##
|
240
|
+
# @return [Time] The date-time when this Challenge expires, given in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
|
241
|
+
def expiration_date
|
242
|
+
@properties['expiration_date']
|
243
|
+
end
|
244
|
+
|
245
|
+
##
|
246
|
+
# @return [String] The Status of this Challenge. One of `pending`, `expired`, `approved` or `denied`.
|
247
|
+
def status
|
248
|
+
@properties['status']
|
249
|
+
end
|
250
|
+
|
251
|
+
##
|
252
|
+
# @return [String] Reason for the Challenge to be in certain `status`. One of `none`, `not_needed` or `not_requested`.
|
253
|
+
def responded_reason
|
254
|
+
@properties['responded_reason']
|
255
|
+
end
|
256
|
+
|
257
|
+
##
|
258
|
+
# @return [Hash] Details provided to give context about the Challenge.
|
259
|
+
def details
|
260
|
+
@properties['details']
|
261
|
+
end
|
262
|
+
|
263
|
+
##
|
264
|
+
# @return [Hash] Details provided to give context about the Challenge.
|
265
|
+
def hidden_details
|
266
|
+
@properties['hidden_details']
|
267
|
+
end
|
268
|
+
|
269
|
+
##
|
270
|
+
# @return [Hash] Custom metadata associated with the challenge.
|
271
|
+
def metadata
|
272
|
+
@properties['metadata']
|
273
|
+
end
|
274
|
+
|
275
|
+
##
|
276
|
+
# @return [String] The Factor Type of this Challenge. Currently `push` and `totp` are supported.
|
277
|
+
def factor_type
|
278
|
+
@properties['factor_type']
|
279
|
+
end
|
280
|
+
|
281
|
+
##
|
282
|
+
# @return [String] The URL of this resource.
|
283
|
+
def url
|
284
|
+
@properties['url']
|
285
|
+
end
|
286
|
+
|
287
|
+
##
|
288
|
+
# @return [Hash] Contains a dictionary of URL links to nested resources of this Challenge.
|
289
|
+
def links
|
290
|
+
@properties['links']
|
291
|
+
end
|
292
|
+
|
293
|
+
##
|
294
|
+
# Provide a user friendly representation
|
295
|
+
def to_s
|
296
|
+
"<Twilio.Verify.V2.ApproveChallengeInstance>"
|
297
|
+
end
|
298
|
+
|
299
|
+
##
|
300
|
+
# Provide a detailed, user friendly representation
|
301
|
+
def inspect
|
302
|
+
"<Twilio.Verify.V2.ApproveChallengeInstance>"
|
303
|
+
end
|
304
|
+
end
|
305
|
+
|
306
|
+
end
|
307
|
+
end
|
308
|
+
end
|
309
|
+
end
|
310
|
+
end
|
311
|
+
|
312
|
+
|
@@ -17,7 +17,9 @@ module Twilio
|
|
17
17
|
module REST
|
18
18
|
class Verify < VerifyBase
|
19
19
|
class V2 < Version
|
20
|
-
class
|
20
|
+
class ServiceContext < InstanceContext
|
21
|
+
|
22
|
+
class NewChallengeList < ListResource
|
21
23
|
|
22
24
|
class CreatePasskeysChallengeRequest
|
23
25
|
# @param [identity]: [String]
|
@@ -40,10 +42,10 @@ module Twilio
|
|
40
42
|
# Initialize the NewChallengeList
|
41
43
|
# @param [Version] version Version that contains the resource
|
42
44
|
# @return [NewChallengeList] NewChallengeList
|
43
|
-
def initialize(version)
|
45
|
+
def initialize(version, service_sid: nil)
|
44
46
|
super(version)
|
45
47
|
# Path Solution
|
46
|
-
@solution = {
|
48
|
+
@solution = { service_sid: service_sid }
|
47
49
|
|
48
50
|
|
49
51
|
end
|
@@ -128,7 +130,7 @@ module Twilio
|
|
128
130
|
# @param [Hash] payload Payload response from the API
|
129
131
|
# @return [NewChallengeInstance] NewChallengeInstance
|
130
132
|
def get_instance(payload)
|
131
|
-
NewChallengeInstance.new(@version, payload)
|
133
|
+
NewChallengeInstance.new(@version, payload, service_sid: @solution[:service_sid])
|
132
134
|
end
|
133
135
|
|
134
136
|
##
|
@@ -329,7 +331,10 @@ module Twilio
|
|
329
331
|
end
|
330
332
|
end
|
331
333
|
|
334
|
+
end
|
332
335
|
end
|
333
336
|
end
|
334
337
|
end
|
335
338
|
end
|
339
|
+
|
340
|
+
|
@@ -0,0 +1,267 @@
|
|
1
|
+
##
|
2
|
+
# This code was generated by
|
3
|
+
# ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
|
4
|
+
# | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
|
5
|
+
# | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
|
6
|
+
#
|
7
|
+
# Twilio - Verify
|
8
|
+
# This is the public Twilio REST API.
|
9
|
+
#
|
10
|
+
# NOTE: This class is auto generated by OpenAPI Generator.
|
11
|
+
# https://openapi-generator.tech
|
12
|
+
# Do not edit the class manually.
|
13
|
+
#
|
14
|
+
|
15
|
+
|
16
|
+
module Twilio
|
17
|
+
module REST
|
18
|
+
class Verify < VerifyBase
|
19
|
+
class V2 < Version
|
20
|
+
class ServiceContext < InstanceContext
|
21
|
+
|
22
|
+
class NewVerifyFactorList < ListResource
|
23
|
+
|
24
|
+
class VerifyPasskeysFactorRequest
|
25
|
+
# @param [id]: [String] A [base64url](https://base64.guru/standards/base64url) encoded representation of `rawId`.
|
26
|
+
# @param [raw_id]: [String] The globally unique identifier for this `PublicKeyCredential`.
|
27
|
+
# @param [authenticator_attachment]: [String] A string that indicates the mechanism by which the WebAuthn implementation is attached to the authenticator at the time the associated `navigator.credentials.create()` or `navigator.credentials.get()` call completes.
|
28
|
+
# @param [type]: [String] The valid credential types supported by the API. The values of this enumeration are used for versioning the `AuthenticatorAssertion` and `AuthenticatorAttestation` structures according to the type of the authenticator.
|
29
|
+
# @param [response]: [NewVerifyFactorList.VerifyPasskeysFactorRequestResponse]
|
30
|
+
attr_accessor :id, :raw_id, :authenticator_attachment, :type, :response
|
31
|
+
def initialize(payload)
|
32
|
+
@id = payload["id"]
|
33
|
+
@raw_id = payload["raw_id"]
|
34
|
+
@authenticator_attachment = payload["authenticator_attachment"]
|
35
|
+
@type = payload["type"]
|
36
|
+
@response = payload["response"]
|
37
|
+
end
|
38
|
+
def to_json(options = {})
|
39
|
+
{
|
40
|
+
"id": @id,
|
41
|
+
"rawId": @raw_id,
|
42
|
+
"authenticatorAttachment": @authenticator_attachment,
|
43
|
+
"type": @type,
|
44
|
+
"response": @response,
|
45
|
+
}.to_json(options)
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
class VerifyPasskeysFactorRequestResponse
|
50
|
+
# @param [attestation_object]: [String] The authenticator data and an attestation statement for a new key pair generated by the authenticator.
|
51
|
+
# @param [client_data_json]: [String] This property contains the JSON-compatible serialization of the data passed from the browser to the authenticator in order to generate this credential.
|
52
|
+
# @param [transports]: [Array<String>] An array of strings providing hints as to the methods the client could use to communicate with the relevant authenticator of the public key credential to retrieve.
|
53
|
+
attr_accessor :attestation_object, :client_data_json, :transports
|
54
|
+
def initialize(payload)
|
55
|
+
@attestation_object = payload["attestation_object"]
|
56
|
+
@client_data_json = payload["client_data_json"]
|
57
|
+
@transports = payload["transports"]
|
58
|
+
end
|
59
|
+
def to_json(options = {})
|
60
|
+
{
|
61
|
+
"attestationObject": @attestation_object,
|
62
|
+
"clientDataJSON": @client_data_json,
|
63
|
+
"transports": @transports,
|
64
|
+
}.to_json(options)
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
|
69
|
+
##
|
70
|
+
# Initialize the NewVerifyFactorList
|
71
|
+
# @param [Version] version Version that contains the resource
|
72
|
+
# @return [NewVerifyFactorList] NewVerifyFactorList
|
73
|
+
def initialize(version, service_sid: nil)
|
74
|
+
super(version)
|
75
|
+
# Path Solution
|
76
|
+
@solution = { service_sid: service_sid }
|
77
|
+
@uri = "/Services/#{@solution[:service_sid]}/Passkeys/VerifyFactor"
|
78
|
+
|
79
|
+
end
|
80
|
+
##
|
81
|
+
# Update the NewVerifyFactorInstance
|
82
|
+
# @param [VerifyPasskeysFactorRequest] verify_passkeys_factor_request
|
83
|
+
# @return [NewVerifyFactorInstance] Updated NewVerifyFactorInstance
|
84
|
+
def update(verify_passkeys_factor_request: nil
|
85
|
+
)
|
86
|
+
|
87
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
88
|
+
headers['Content-Type'] = 'application/json'
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
payload = @version.update('POST', @uri, headers: headers, data: verify_passkeys_factor_request.to_json)
|
94
|
+
NewVerifyFactorInstance.new(
|
95
|
+
@version,
|
96
|
+
payload,
|
97
|
+
service_sid: @solution[:service_sid],
|
98
|
+
)
|
99
|
+
end
|
100
|
+
|
101
|
+
|
102
|
+
|
103
|
+
|
104
|
+
# Provide a user friendly representation
|
105
|
+
def to_s
|
106
|
+
'#<Twilio.Verify.V2.NewVerifyFactorList>'
|
107
|
+
end
|
108
|
+
end
|
109
|
+
|
110
|
+
class NewVerifyFactorPage < Page
|
111
|
+
##
|
112
|
+
# Initialize the NewVerifyFactorPage
|
113
|
+
# @param [Version] version Version that contains the resource
|
114
|
+
# @param [Response] response Response from the API
|
115
|
+
# @param [Hash] solution Path solution for the resource
|
116
|
+
# @return [NewVerifyFactorPage] NewVerifyFactorPage
|
117
|
+
def initialize(version, response, solution)
|
118
|
+
super(version, response)
|
119
|
+
|
120
|
+
# Path Solution
|
121
|
+
@solution = solution
|
122
|
+
end
|
123
|
+
|
124
|
+
##
|
125
|
+
# Build an instance of NewVerifyFactorInstance
|
126
|
+
# @param [Hash] payload Payload response from the API
|
127
|
+
# @return [NewVerifyFactorInstance] NewVerifyFactorInstance
|
128
|
+
def get_instance(payload)
|
129
|
+
NewVerifyFactorInstance.new(@version, payload, service_sid: @solution[:service_sid])
|
130
|
+
end
|
131
|
+
|
132
|
+
##
|
133
|
+
# Provide a user friendly representation
|
134
|
+
def to_s
|
135
|
+
'<Twilio.Verify.V2.NewVerifyFactorPage>'
|
136
|
+
end
|
137
|
+
end
|
138
|
+
class NewVerifyFactorInstance < InstanceResource
|
139
|
+
##
|
140
|
+
# Initialize the NewVerifyFactorInstance
|
141
|
+
# @param [Version] version Version that contains the resource
|
142
|
+
# @param [Hash] payload payload that contains response from Twilio
|
143
|
+
# @param [String] account_sid The SID of the
|
144
|
+
# {Account}[https://www.twilio.com/docs/iam/api/account] that created this NewVerifyFactor
|
145
|
+
# resource.
|
146
|
+
# @param [String] sid The SID of the Call resource to fetch.
|
147
|
+
# @return [NewVerifyFactorInstance] NewVerifyFactorInstance
|
148
|
+
def initialize(version, payload , service_sid: nil)
|
149
|
+
super(version)
|
150
|
+
|
151
|
+
# Marshaled Properties
|
152
|
+
@properties = {
|
153
|
+
'sid' => payload['sid'],
|
154
|
+
'account_sid' => payload['account_sid'],
|
155
|
+
'service_sid' => payload['service_sid'],
|
156
|
+
'entity_sid' => payload['entity_sid'],
|
157
|
+
'identity' => payload['identity'],
|
158
|
+
'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
|
159
|
+
'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
|
160
|
+
'friendly_name' => payload['friendly_name'],
|
161
|
+
'status' => payload['status'],
|
162
|
+
'factor_type' => payload['factor_type'],
|
163
|
+
'config' => payload['config'],
|
164
|
+
'metadata' => payload['metadata'],
|
165
|
+
'url' => payload['url'],
|
166
|
+
}
|
167
|
+
end
|
168
|
+
|
169
|
+
|
170
|
+
##
|
171
|
+
# @return [String] A 34 character string that uniquely identifies this Factor.
|
172
|
+
def sid
|
173
|
+
@properties['sid']
|
174
|
+
end
|
175
|
+
|
176
|
+
##
|
177
|
+
# @return [String] The unique SID identifier of the Account.
|
178
|
+
def account_sid
|
179
|
+
@properties['account_sid']
|
180
|
+
end
|
181
|
+
|
182
|
+
##
|
183
|
+
# @return [String] The unique SID identifier of the Service.
|
184
|
+
def service_sid
|
185
|
+
@properties['service_sid']
|
186
|
+
end
|
187
|
+
|
188
|
+
##
|
189
|
+
# @return [String] The unique SID identifier of the Entity.
|
190
|
+
def entity_sid
|
191
|
+
@properties['entity_sid']
|
192
|
+
end
|
193
|
+
|
194
|
+
##
|
195
|
+
# @return [String] Customer unique identity for the Entity owner of the Factor.
|
196
|
+
def identity
|
197
|
+
@properties['identity']
|
198
|
+
end
|
199
|
+
|
200
|
+
##
|
201
|
+
# @return [Time] The date that this Factor was created, given in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
|
202
|
+
def date_created
|
203
|
+
@properties['date_created']
|
204
|
+
end
|
205
|
+
|
206
|
+
##
|
207
|
+
# @return [Time] The date that this Factor was updated, given in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
|
208
|
+
def date_updated
|
209
|
+
@properties['date_updated']
|
210
|
+
end
|
211
|
+
|
212
|
+
##
|
213
|
+
# @return [String] A human readable description of this resource, up to 64 characters.
|
214
|
+
def friendly_name
|
215
|
+
@properties['friendly_name']
|
216
|
+
end
|
217
|
+
|
218
|
+
##
|
219
|
+
# @return [String] The Status of this Factor. One of `unverified` or `verified`.
|
220
|
+
def status
|
221
|
+
@properties['status']
|
222
|
+
end
|
223
|
+
|
224
|
+
##
|
225
|
+
# @return [String] The Type of this Factor. Currently `push` and `totp` are supported.
|
226
|
+
def factor_type
|
227
|
+
@properties['factor_type']
|
228
|
+
end
|
229
|
+
|
230
|
+
##
|
231
|
+
# @return [Hash] An object that contains configurations specific to a `factor_type`.
|
232
|
+
def config
|
233
|
+
@properties['config']
|
234
|
+
end
|
235
|
+
|
236
|
+
##
|
237
|
+
# @return [Hash] Custom metadata associated with the factor.
|
238
|
+
def metadata
|
239
|
+
@properties['metadata']
|
240
|
+
end
|
241
|
+
|
242
|
+
##
|
243
|
+
# @return [String] The URL of this resource.
|
244
|
+
def url
|
245
|
+
@properties['url']
|
246
|
+
end
|
247
|
+
|
248
|
+
##
|
249
|
+
# Provide a user friendly representation
|
250
|
+
def to_s
|
251
|
+
"<Twilio.Verify.V2.NewVerifyFactorInstance>"
|
252
|
+
end
|
253
|
+
|
254
|
+
##
|
255
|
+
# Provide a detailed, user friendly representation
|
256
|
+
def inspect
|
257
|
+
"<Twilio.Verify.V2.NewVerifyFactorInstance>"
|
258
|
+
end
|
259
|
+
end
|
260
|
+
|
261
|
+
end
|
262
|
+
end
|
263
|
+
end
|
264
|
+
end
|
265
|
+
end
|
266
|
+
|
267
|
+
|