Sha256: bbc2269ecb21138f5729b7b41f3e6e0039058763cd4ab3e9d4c7a0fc339fce5e
Contents?: true
Size: 1.01 KB
Versions: 3
Compression:
Stored size: 1.01 KB
Contents
# frozen_string_literal: true require 'creditsafe/client' require 'creditsafe/errors' require 'creditsafe/version' module Creditsafe class Authenticate def call(username, password) response = post('authenticate', username: username, password: password) if response.success? response.body[:token] elsif response.status == 401 raise UnauthorizedError, response.body else raise GenericError, response.body end end private def post(path, params = {}) connection.post(path, MultiJson.dump(params)) end def connection api_url = Client.new.api_url @connection ||= Faraday.new(url: api_url) do |conn| conn.headers.merge!( content_type: 'application/json', user_agent: "finpoint/#{Creditsafe::VERSION}" ) conn.response :multi_json, symbolize_keys: true conn.response :logger if Creditsafe.configuration.debug conn.adapter Faraday.default_adapter end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
creditsafe_connect-0.1.2 | lib/creditsafe/authenticate.rb |
creditsafe_connect-0.1.1 | lib/creditsafe/authenticate.rb |
creditsafe_connect-0.1.0 | lib/creditsafe/authenticate.rb |