Class: Twilio::REST::Authy::V1::ServiceContext::EntityContext::FactorContext::ChallengeInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb

Overview

PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact [email protected].

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, service_sid: nil, identity: nil, factor_sid: nil, sid: nil) ⇒ ChallengeInstance

Initialize the ChallengeInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • service_sid (String) (defaults to: nil)

    The unique SID identifier of the Service.

  • identity (String) (defaults to: nil)

    Customer unique identity for the Entity owner of the Challenge

  • factor_sid (String) (defaults to: nil)

    The unique SID identifier of the Factor.

  • sid (String) (defaults to: nil)

    A 34 character string that uniquely identifies this Challenge. It also allows the keyword ‘latest` to fetch the most recent active Challenge created for a Factor.



209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 209

def initialize(version, payload, service_sid: nil, identity: nil, factor_sid: nil, sid: nil)
  super(version)

  # Marshaled Properties
  @properties = {
      'sid' => payload['sid'],
      'account_sid' => payload['account_sid'],
      'service_sid' => payload['service_sid'],
      'entity_sid' => payload['entity_sid'],
      'identity' => payload['identity'],
      'factor_sid' => payload['factor_sid'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'date_responded' => Twilio.deserialize_iso8601_datetime(payload['date_responded']),
      'expiration_date' => Twilio.deserialize_iso8601_datetime(payload['expiration_date']),
      'verification_sid' => payload['verification_sid'],
      'status' => payload['status'],
      'reason' => payload['reason'],
      'details' => payload['details'],
      'hidden_details' => payload['hidden_details'],
      'type' => payload['type'],
      'url' => payload['url'],
  }

  # Context
  @instance_context = nil
  @params = {
      'service_sid' => service_sid,
      'identity' => identity,
      'factor_sid' => factor_sid,
      'sid' => sid || @properties['sid'],
  }
end

Instance Method Details

#account_sidString

Returns Account Sid.

Returns:

  • (String)

    Account Sid.



268
269
270
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 268

def 
  @properties['account_sid']
end

#contextChallengeContext

Generate an instance context for the instance, the context is capable of performing various actions. All instance actions are proxied to the context

Returns:



247
248
249
250
251
252
253
254
255
256
257
258
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 247

def context
  unless @instance_context
    @instance_context = ChallengeContext.new(
        @version,
        @params['service_sid'],
        @params['identity'],
        @params['factor_sid'],
        @params['sid'],
    )
  end
  @instance_context
end

#date_createdTime

Returns The date this Challenge was created.

Returns:

  • (Time)

    The date this Challenge was created



298
299
300
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 298

def date_created
  @properties['date_created']
end

#date_respondedTime

Returns The date this Challenge was responded.

Returns:

  • (Time)

    The date this Challenge was responded



310
311
312
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 310

def date_responded
  @properties['date_responded']
end

#date_updatedTime

Returns The date this Challenge was updated.

Returns:

  • (Time)

    The date this Challenge was updated



304
305
306
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 304

def date_updated
  @properties['date_updated']
end

#deleteBoolean

Deletes the ChallengeInstance

Returns:

  • (Boolean)

    true if delete succeeds, true otherwise



365
366
367
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 365

def delete
  context.delete
end

#detailsString

Returns Public details provided to contextualize the Challenge.

Returns:

  • (String)

    Public details provided to contextualize the Challenge



340
341
342
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 340

def details
  @properties['details']
end

#entity_sidString

Returns Entity Sid.

Returns:

  • (String)

    Entity Sid.



280
281
282
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 280

def entity_sid
  @properties['entity_sid']
end

#expiration_dateTime

Returns The date this Challenge is expired.

Returns:

  • (Time)

    The date this Challenge is expired



316
317
318
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 316

def expiration_date
  @properties['expiration_date']
end

#factor_sidString

Returns Factor Sid.

Returns:

  • (String)

    Factor Sid.



292
293
294
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 292

def factor_sid
  @properties['factor_sid']
end

#fetchChallengeInstance

Fetch a ChallengeInstance

Returns:



372
373
374
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 372

def fetch
  context.fetch
end

#hidden_detailsString

Returns Hidden details provided to contextualize the Challenge.

Returns:

  • (String)

    Hidden details provided to contextualize the Challenge



346
347
348
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 346

def hidden_details
  @properties['hidden_details']
end

#identityString

Returns Unique identity of the Entity.

Returns:

  • (String)

    Unique identity of the Entity



286
287
288
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 286

def identity
  @properties['identity']
end

#inspectObject

Provide a detailed, user friendly representation



394
395
396
397
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 394

def inspect
  values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
  "<Twilio.Authy.V1.ChallengeInstance #{values}>"
end

#reasonchallenge.ChallengeReason

Returns The Reason of this Challenge ‘status`.

Returns:

  • (challenge.ChallengeReason)

    The Reason of this Challenge ‘status`



334
335
336
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 334

def reason
  @properties['reason']
end

#service_sidString

Returns Service Sid.

Returns:

  • (String)

    Service Sid.



274
275
276
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 274

def service_sid
  @properties['service_sid']
end

#sidString

Returns A string that uniquely identifies this Challenge.

Returns:

  • (String)

    A string that uniquely identifies this Challenge.



262
263
264
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 262

def sid
  @properties['sid']
end

#statuschallenge.ChallengeStatus

Returns The Status of this Challenge.

Returns:

  • (challenge.ChallengeStatus)

    The Status of this Challenge



328
329
330
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 328

def status
  @properties['status']
end

#to_sObject

Provide a user friendly representation



387
388
389
390
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 387

def to_s
  values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
  "<Twilio.Authy.V1.ChallengeInstance #{values}>"
end

#typeString

Returns The Factor Type of this Challenge.

Returns:

  • (String)

    The Factor Type of this Challenge



352
353
354
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 352

def type
  @properties['type']
end

#update(auth_payload: :unset) ⇒ ChallengeInstance

Update the ChallengeInstance

Parameters:

  • auth_payload (String) (defaults to: :unset)

    The optional payload needed to verify the Challenge. E.g., a TOTP would use the numeric code.

Returns:



381
382
383
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 381

def update(auth_payload: :unset)
  context.update(auth_payload: auth_payload, )
end

#urlString

Returns The URL of this resource.

Returns:

  • (String)

    The URL of this resource.



358
359
360
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 358

def url
  @properties['url']
end

#verification_sidString

Returns Verification Sid.

Returns:

  • (String)

    Verification Sid.



322
323
324
# File 'lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb', line 322

def verification_sid
  @properties['verification_sid']
end