Class: Finicity::V1::Request::DiscoverAccountsWithMfa
- Inherits:
-
Object
- Object
- Finicity::V1::Request::DiscoverAccountsWithMfa
- Extended by:
- HTTPClient::IncludeClient
- Includes:
- Logger
- Defined in:
- lib/finicity/v1/request/discover_accounts_with_mfa.rb
Instance Attribute Summary collapse
-
#customer_id ⇒ Object
Attributes.
-
#institution_id ⇒ Object
Attributes.
-
#login_credentials ⇒ Object
Attributes.
-
#mfa_credentials ⇒ Object
Attributes.
-
#mfa_session ⇒ Object
Attributes.
-
#token ⇒ Object
Attributes.
Instance Method Summary collapse
- #body ⇒ Object
- #discover_accounts_with_mfa ⇒ Object
- #headers ⇒ Object
-
#initialize(token, mfa_session, customer_id, institution_id, login_credentials, mfa_credentials) ⇒ DiscoverAccountsWithMfa
constructor
Instance Methods.
- #url ⇒ Object
Methods included from Logger
Constructor Details
#initialize(token, mfa_session, customer_id, institution_id, login_credentials, mfa_credentials) ⇒ DiscoverAccountsWithMfa
Instance Methods
23 24 25 26 27 28 29 30 |
# File 'lib/finicity/v1/request/discover_accounts_with_mfa.rb', line 23 def initialize(token, mfa_session, customer_id, institution_id, login_credentials, mfa_credentials) @customer_id = customer_id @institution_id = institution_id @login_credentials = login_credentials @mfa_credentials = mfa_credentials @mfa_session = mfa_session @token = token end |
Instance Attribute Details
#customer_id ⇒ Object
Attributes
13 14 15 |
# File 'lib/finicity/v1/request/discover_accounts_with_mfa.rb', line 13 def customer_id @customer_id end |
#institution_id ⇒ Object
Attributes
13 14 15 |
# File 'lib/finicity/v1/request/discover_accounts_with_mfa.rb', line 13 def institution_id @institution_id end |
#login_credentials ⇒ Object
Attributes
13 14 15 |
# File 'lib/finicity/v1/request/discover_accounts_with_mfa.rb', line 13 def login_credentials @login_credentials end |
#mfa_credentials ⇒ Object
Attributes
13 14 15 |
# File 'lib/finicity/v1/request/discover_accounts_with_mfa.rb', line 13 def mfa_credentials @mfa_credentials end |
#mfa_session ⇒ Object
Attributes
13 14 15 |
# File 'lib/finicity/v1/request/discover_accounts_with_mfa.rb', line 13 def mfa_session @mfa_session end |
#token ⇒ Object
Attributes
13 14 15 |
# File 'lib/finicity/v1/request/discover_accounts_with_mfa.rb', line 13 def token @token end |
Instance Method Details
#body ⇒ Object
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/finicity/v1/request/discover_accounts_with_mfa.rb', line 36 def body builder = ::Nokogiri::XML::Builder.new do |xml| xml.accounts { xml.credentials { login_credentials.each do |login_credential| xml.loginField { xml.id(login_credential[:id]) xml.name(login_credential[:name]) xml.value(login_credential[:value]) } end } xml.mfaChallenges { xml.questions { mfa_credentials.each do |mfa_credential| xml.question { xml.text_(mfa_credential[:text]) xml.answer(mfa_credential[:answer]) } end } } } end builder.to_xml end |
#discover_accounts_with_mfa ⇒ Object
32 33 34 |
# File 'lib/finicity/v1/request/discover_accounts_with_mfa.rb', line 32 def discover_accounts_with_mfa http_client.post(url, body, headers) end |
#headers ⇒ Object
64 65 66 67 68 69 70 71 |
# File 'lib/finicity/v1/request/discover_accounts_with_mfa.rb', line 64 def headers { 'Finicity-App-Key' => ::Finicity.config.app_key, 'Finicity-App-Token' => token, 'MFA-Session' => mfa_session, 'Content-Type' => 'application/xml' } end |
#url ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 |
# File 'lib/finicity/v1/request/discover_accounts_with_mfa.rb', line 73 def url ::URI.join( ::Finicity.config.base_url, 'v1/', 'customers/', "#{customer_id}/", 'institutions/', "#{institution_id}/", 'accounts/', 'mfa' ) end |