Class: Inttegro::Resources::Otp

Inherits:
Object
  • Object
show all
Defined in:
lib/inttegro/resources/otp.rb

Overview

Client for one-time-password delivery, verification, lookup, and cancellation.

Access this resource through Client#otp.

Instance Method Summary collapse

Constructor Details

#initialize(http) ⇒ Otp

Returns a new instance of Otp.

Parameters:



11
12
13
# File 'lib/inttegro/resources/otp.rb', line 11

def initialize(http)
  @http = T.let(http, Inttegro::HTTPClient)
end

Instance Method Details

#cancel(payload) ⇒ Inttegro::OTP::Transaction

Cancel an OTP transaction.

Parameters:

  • payload (Hash) —

    transaction identifier and request fields accepted by the endpoint

Returns:



45
46
47
# File 'lib/inttegro/resources/otp.rb', line 45

def cancel(payload)
  @http.post_resource("/otp/cancel", Inttegro::OTP::Transaction, :transaction, payload)
end

#initiate(payload) ⇒ Inttegro::OTP::Transaction Also known as: initialize_session

Generate and deliver a one-time password.

Parameters:

Returns:



19
20
21
# File 'lib/inttegro/resources/otp.rb', line 19

def initiate(payload)
  @http.post_resource("/otp/initiate", Inttegro::OTP::Transaction, :transaction, payload)
end

#lookup(payload) ⇒ Inttegro::OTP::Transaction

Retrieve delivery, verification, and expiry state for an OTP transaction.

Parameters:

Returns:



37
38
39
# File 'lib/inttegro/resources/otp.rb', line 37

def lookup(payload)
  @http.post_resource("/otp/lookup", Inttegro::OTP::Transaction, :transaction, payload)
end

#verify(payload) ⇒ Inttegro::OTP::Verification

Check a submitted token and record the verification attempt.

Parameters:

Returns:



29
30
31
# File 'lib/inttegro/resources/otp.rb', line 29

def verify(payload)
  @http.post_model("/otp/verify", Inttegro::OTP::Verification, payload)
end