class Coyodlee::RequestFacade

Attributes

http[R]
request_builder[R]

Public Class Methods

new(http:, request_builder:) click to toggle source
# File lib/coyodlee/connection.rb, line 80
def initialize(http:, request_builder:)
  @http = http
  @request_builder = request_builder
  @user_facade = UserFacade.new(self)
  @cobrand_facade = CobrandFacade.new(self)
  @accounts_facade = AccountsFacade.new(self)
  @transactions_facade = TransactionsFacade.new(self)
  @holdings_facade = HoldingsFacade.new(self)
  @provider_accounts_facade = ProviderAccountsFacade.new(self)
end

Public Instance Methods

execute(req) click to toggle source
# File lib/coyodlee/connection.rb, line 220
def execute(req)
  http.request(req)
end
extract_events(event_name:, from_date:, to_date:) click to toggle source
# File lib/coyodlee/connection.rb, line 198
def extract_events(event_name:, from_date:, to_date:)
  params = {
    'eventName' => event_name,
    'fromDate' => fromDate,
    'toDate' => toDate
  }
  headers = { 'Accept' => 'application/json' }
  req = @request_builder.build(:get, 'dataExtracts/events', headers: headers, params: params)
  execute(req)
end
holding_summary(params={}) click to toggle source
# File lib/coyodlee/connection.rb, line 186
def holding_summary(params={})
  headers = { 'Accept' => 'application/json' }
  req = @request_builder.build(:get, 'derived/holdingSummary', headers: headers, params: params)
  execute(req)
end
networth_summary(params={}) click to toggle source
# File lib/coyodlee/connection.rb, line 192
def networth_summary(params={})
  headers = { 'Accept' => 'application/json' }
  req = @request_builder.build(:get, 'derived/networth', headers: headers, params: params)
  execute(req)
end
provider_details(provider_id:, provider_account_id:) click to toggle source
# File lib/coyodlee/connection.rb, line 166
def provider_details(provider_id:, provider_account_id:)
  headers = { 'Accept' => 'application/json' }
  params = { 'providerAccountId' => provider_account_id }
  req = @request_builder.build(:get, "providers/#{provider_id}", headers: headers, params: params)
  execute(req)
end
providers(params={}) click to toggle source
# File lib/coyodlee/connection.rb, line 160
def providers(params={})
  headers = { 'Accept' => 'application/json' }
  req = @request_builder.build(:get, "providers", headers: headers, params: params)
  execute(req)
end
statements(params={}) click to toggle source
# File lib/coyodlee/connection.rb, line 173
def statements(params={})
  headers = { 'Accept' => 'application/json' }
  req = @request_builder.build(:get, 'statements', headers: headers, params: params)
  execute(req)
end
transaction_summary(group_by:, params: {}) click to toggle source
# File lib/coyodlee/connection.rb, line 179
def transaction_summary(group_by:, params: {})
  params['groupBy'] = group_by
  headers = { 'Accept' => 'application/json' }
  req = @request_builder.build(:get, 'derived/transactionSummary', headers: headers, params: params)
  execute(req)
end
user_data(login_name:, from_date:, to_date:) click to toggle source
# File lib/coyodlee/connection.rb, line 209
def user_data(login_name:, from_date:, to_date:)
  params = {
    'loginName' => login_name,
    'fromDate' => fromDate,
    'toDate' => toDate
  }
  headers = { 'Accept' => 'application/json' }
  req = @request_builder.build(:get, 'dataExtracts/userData', headers: headers, params: params)
  execute(req)
end