Class: Bandwidth::TwoFactorVerifyRequestSchema

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/models/two_factor_verify_request_schema.rb

Overview

TwoFactorVerifyRequestSchema Model.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

#to_hash, #to_json

Constructor Details

#initialize(to = nil, application_id = nil, expiration_time_in_minutes = nil, code = nil, scope = nil) ⇒ TwoFactorVerifyRequestSchema

Returns a new instance of TwoFactorVerifyRequestSchema.



44
45
46
47
48
49
50
51
52
53
54
# File 'lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/models/two_factor_verify_request_schema.rb', line 44

def initialize(to = nil,
               application_id = nil,
               expiration_time_in_minutes = nil,
               code = nil,
               scope = nil)
  @to = to
  @application_id = application_id
  @scope = scope
  @expiration_time_in_minutes = expiration_time_in_minutes
  @code = code
end

Instance Attribute Details

#application_idString

The application unique ID, obtained from Bandwidth.

Returns:

  • (String)


15
16
17
# File 'lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/models/two_factor_verify_request_schema.rb', line 15

def application_id
  @application_id
end

#codeString

The generated 2fa code to check if valid

Returns:

  • (String)


31
32
33
# File 'lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/models/two_factor_verify_request_schema.rb', line 31

def code
  @code
end

#expiration_time_in_minutesFloat

The time period, in minutes, to validate the 2fa code. By setting this to 3 minutes, it will mean any code generated within the last 3 minutes are still valid. The valid range for expiration time is between 0 and 15 minutes, exclusively and inclusively, respectively.

Returns:

  • (Float)


27
28
29
# File 'lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/models/two_factor_verify_request_schema.rb', line 27

def expiration_time_in_minutes
  @expiration_time_in_minutes
end

#scopeString

An optional field to denote what scope or action the 2fa code is addressing. If not supplied, defaults to “2FA”.

Returns:

  • (String)


20
21
22
# File 'lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/models/two_factor_verify_request_schema.rb', line 20

def scope
  @scope
end

#toString

The phone number to send the 2fa code to.

Returns:

  • (String)


11
12
13
# File 'lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/models/two_factor_verify_request_schema.rb', line 11

def to
  @to
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# File 'lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/models/two_factor_verify_request_schema.rb', line 57

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  to = hash['to']
  application_id = hash['applicationId']
  expiration_time_in_minutes = hash['expirationTimeInMinutes']
  code = hash['code']
  scope = hash['scope']

  # Create object from extracted values.
  TwoFactorVerifyRequestSchema.new(to,
                                   application_id,
                                   expiration_time_in_minutes,
                                   code,
                                   scope)
end

.namesObject

A mapping from model property names to API property names.



34
35
36
37
38
39
40
41
42
# File 'lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/models/two_factor_verify_request_schema.rb', line 34

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['to'] = 'to'
  @_hash['application_id'] = 'applicationId'
  @_hash['scope'] = 'scope'
  @_hash['expiration_time_in_minutes'] = 'expirationTimeInMinutes'
  @_hash['code'] = 'code'
  @_hash
end