Class: Tamara::Signature

Inherits:
ApplicationService show all
Defined in:
lib/tamara/api/signature.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from ApplicationService

#initialize

Methods included from Request

#api_token, #error_message, #handle_response_error, #headers, #parsed_response, #response_body, #response_status

Constructor Details

This class inherits a constructor from Tamara::ApplicationService

Class Method Details

.verify(token, opts: {}) ⇒ Object



5
6
7
# File 'lib/tamara/api/signature.rb', line 5

def self.verify(token, opts: {})
  new(token: token, opts: opts).call
end

Instance Method Details

#callObject



9
10
11
12
13
14
15
16
17
# File 'lib/tamara/api/signature.rb', line 9

def call
  begin
    decoded = ::JWT.decode(@params[:token], notification_token, true, { algorithm: "HS256" })
  rescue StandardError => e
    return failure(e.message)
  end

  success(decoded)
end