Class: ThePlaidApi::LastDataAccessTimes

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/the_plaid_api/models/last_data_access_times.rb

Overview

Describes the last time each datatype was accessed by an application.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json

Constructor Details

#initialize(application_id:, account_balance_info:, account_routing_number:, contact_details:, transactions:, credit_and_loans:, investments:, payroll_info:, transaction_risk_info:, additional_properties: nil) ⇒ LastDataAccessTimes

Returns a new instance of LastDataAccessTimes.



99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 99

def initialize(application_id:, account_balance_info:,
               account_routing_number:, contact_details:, transactions:,
               credit_and_loans:, investments:, payroll_info:,
               transaction_risk_info:, additional_properties: nil)
  # Add additional model properties to the instance
  additional_properties = {} if additional_properties.nil?

  @application_id = application_id
  @account_balance_info = 
  @account_routing_number = 
  @contact_details = contact_details
  @transactions = transactions
  @credit_and_loans = credit_and_loans
  @investments = investments
  @payroll_info = payroll_info
  @transaction_risk_info = transaction_risk_info
  @additional_properties = additional_properties
end

Instance Attribute Details

#account_balance_infoDateTime

The last time ‘account_balance_info` was accessed by this application in [ISO 8601](wikipedia.org/wiki/ISO_8601) format in UTC. null if never accessed.

Returns:

  • (DateTime)


21
22
23
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 21

def 
  @account_balance_info
end

#account_routing_numberDateTime

The last time ‘account_routing_number` was accessed by this application in [ISO 8601](wikipedia.org/wiki/ISO_8601) format in UTC. null if never accessed.

Returns:

  • (DateTime)


27
28
29
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 27

def 
  @account_routing_number
end

#application_idString

ID of the application accessing data.

Returns:

  • (String)


15
16
17
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 15

def application_id
  @application_id
end

#contact_detailsDateTime

The last time ‘contact_details` was accessed by this application in [ISO 8601](wikipedia.org/wiki/ISO_8601) format in UTC. null if never accessed.

Returns:

  • (DateTime)


33
34
35
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 33

def contact_details
  @contact_details
end

#credit_and_loansDateTime

The last time ‘credit_and_loans` was accessed by this application in [ISO 8601](wikipedia.org/wiki/ISO_8601) format in UTC. null if never accessed.

Returns:

  • (DateTime)


45
46
47
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 45

def credit_and_loans
  @credit_and_loans
end

#investmentsDateTime

The last time ‘investments` was accessed by this application in [ISO 8601](wikipedia.org/wiki/ISO_8601) format in UTC. null if never accessed.

Returns:

  • (DateTime)


51
52
53
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 51

def investments
  @investments
end

#payroll_infoDateTime

The last time ‘payroll_info` was accessed by this application in [ISO 8601](wikipedia.org/wiki/ISO_8601) format in UTC. null if never accessed.

Returns:

  • (DateTime)


57
58
59
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 57

def payroll_info
  @payroll_info
end

#transaction_risk_infoDateTime

The last time ‘transaction_risk_info` was accessed by this application in [ISO 8601](wikipedia.org/wiki/ISO_8601) format in UTC. null if never accessed.

Returns:

  • (DateTime)


63
64
65
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 63

def transaction_risk_info
  @transaction_risk_info
end

#transactionsDateTime

The last time ‘transactions` was accessed by this application in [ISO 8601](wikipedia.org/wiki/ISO_8601) format in UTC. null if never accessed.

Returns:

  • (DateTime)


39
40
41
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 39

def transactions
  @transactions
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 119

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  application_id =
    hash.key?('application_id') ? hash['application_id'] : nil
   = if hash.key?('account_balance_info')
                           (DateTimeHelper.from_rfc3339(hash['account_balance_info']) if hash['account_balance_info'])
                         end
   = if hash.key?('account_routing_number')
                             (DateTimeHelper.from_rfc3339(hash['account_routing_number']) if hash['account_routing_number'])
                           end
  contact_details = if hash.key?('contact_details')
                      (DateTimeHelper.from_rfc3339(hash['contact_details']) if hash['contact_details'])
                    end
  transactions = if hash.key?('transactions')
                   (DateTimeHelper.from_rfc3339(hash['transactions']) if hash['transactions'])
                 end
  credit_and_loans = if hash.key?('credit_and_loans')
                       (DateTimeHelper.from_rfc3339(hash['credit_and_loans']) if hash['credit_and_loans'])
                     end
  investments = if hash.key?('investments')
                  (DateTimeHelper.from_rfc3339(hash['investments']) if hash['investments'])
                end
  payroll_info = if hash.key?('payroll_info')
                   (DateTimeHelper.from_rfc3339(hash['payroll_info']) if hash['payroll_info'])
                 end
  transaction_risk_info = if hash.key?('transaction_risk_info')
                            (DateTimeHelper.from_rfc3339(hash['transaction_risk_info']) if hash['transaction_risk_info'])
                          end

  # Create a new hash for additional properties, removing known properties.
  new_hash = hash.reject { |k, _| names.value?(k) }

  additional_properties = APIHelper.get_additional_properties(
    new_hash, proc { |value| value }
  )

  # Create object from extracted values.
  LastDataAccessTimes.new(application_id: application_id,
                          account_balance_info: ,
                          account_routing_number: ,
                          contact_details: contact_details,
                          transactions: transactions,
                          credit_and_loans: credit_and_loans,
                          investments: investments,
                          payroll_info: payroll_info,
                          transaction_risk_info: transaction_risk_info,
                          additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



66
67
68
69
70
71
72
73
74
75
76
77
78
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 66

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['application_id'] = 'application_id'
  @_hash['account_balance_info'] = 'account_balance_info'
  @_hash['account_routing_number'] = 'account_routing_number'
  @_hash['contact_details'] = 'contact_details'
  @_hash['transactions'] = 'transactions'
  @_hash['credit_and_loans'] = 'credit_and_loans'
  @_hash['investments'] = 'investments'
  @_hash['payroll_info'] = 'payroll_info'
  @_hash['transaction_risk_info'] = 'transaction_risk_info'
  @_hash
end

.nullablesObject

An array for nullable fields



86
87
88
89
90
91
92
93
94
95
96
97
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 86

def self.nullables
  %w[
    account_balance_info
    account_routing_number
    contact_details
    transactions
    credit_and_loans
    investments
    payroll_info
    transaction_risk_info
  ]
end

.optionalsObject

An array for optional fields



81
82
83
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 81

def self.optionals
  []
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



214
215
216
217
218
219
220
221
222
223
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 214

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} application_id: #{@application_id.inspect}, account_balance_info:"\
  " #{@account_balance_info.inspect}, account_routing_number:"\
  " #{@account_routing_number.inspect}, contact_details: #{@contact_details.inspect},"\
  " transactions: #{@transactions.inspect}, credit_and_loans: #{@credit_and_loans.inspect},"\
  " investments: #{@investments.inspect}, payroll_info: #{@payroll_info.inspect},"\
  " transaction_risk_info: #{@transaction_risk_info.inspect}, additional_properties:"\
  " #{@additional_properties}>"
end

#to_custom_account_balance_infoObject



170
171
172
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 170

def 
  DateTimeHelper.to_rfc3339()
end

#to_custom_account_routing_numberObject



174
175
176
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 174

def 
  DateTimeHelper.to_rfc3339()
end

#to_custom_contact_detailsObject



178
179
180
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 178

def to_custom_contact_details
  DateTimeHelper.to_rfc3339(contact_details)
end

#to_custom_credit_and_loansObject



186
187
188
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 186

def to_custom_credit_and_loans
  DateTimeHelper.to_rfc3339(credit_and_loans)
end

#to_custom_investmentsObject



190
191
192
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 190

def to_custom_investments
  DateTimeHelper.to_rfc3339(investments)
end

#to_custom_payroll_infoObject



194
195
196
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 194

def to_custom_payroll_info
  DateTimeHelper.to_rfc3339(payroll_info)
end

#to_custom_transaction_risk_infoObject



198
199
200
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 198

def to_custom_transaction_risk_info
  DateTimeHelper.to_rfc3339(transaction_risk_info)
end

#to_custom_transactionsObject



182
183
184
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 182

def to_custom_transactions
  DateTimeHelper.to_rfc3339(transactions)
end

#to_sObject

Provides a human-readable string representation of the object.



203
204
205
206
207
208
209
210
211
# File 'lib/the_plaid_api/models/last_data_access_times.rb', line 203

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} application_id: #{@application_id}, account_balance_info:"\
  " #{@account_balance_info}, account_routing_number: #{@account_routing_number},"\
  " contact_details: #{@contact_details}, transactions: #{@transactions}, credit_and_loans:"\
  " #{@credit_and_loans}, investments: #{@investments}, payroll_info: #{@payroll_info},"\
  " transaction_risk_info: #{@transaction_risk_info}, additional_properties:"\
  " #{@additional_properties}>"
end