Class: ThePlaidApi::CashflowReportGetResponse
- Inherits:
-
BaseModel
- Object
- CoreLibrary::BaseModel
- BaseModel
- ThePlaidApi::CashflowReportGetResponse
- Defined in:
- lib/the_plaid_api/models/cashflow_report_get_response.rb
Overview
CashflowReportGetResponse defines the response schema for ‘/cashflow_report/get`
Instance Attribute Summary collapse
-
#accounts ⇒ Array[BusinessAccount]
An array containing the ‘accounts` associated with the Item for which transactions are being returned.
-
#has_more ⇒ TrueClass | FalseClass
Represents if more than requested count of transactions exists to be fetched.
-
#item ⇒ Item
Metadata about the Item.
-
#last_successful_update_time ⇒ DateTime
The last successful update time in [ISO 8601](wikipedia.org/wiki/ISO_8601) format ( ‘YYYY-MM-DDTHH:mm:ssZ` ).
-
#next_cursor ⇒ String
Cursor used for fetching any future updates after the latest update provided in this response.
-
#request_id ⇒ String
A unique identifier for the request, which can be used for troubleshooting.
-
#total_transactions ⇒ Integer
The total number of transactions available within the date range specified.
-
#transactions ⇒ Array[CashflowReportTransaction]
An array containing transactions from the account.
Class Method Summary collapse
-
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
-
.names ⇒ Object
A mapping from model property names to API property names.
-
.nullables ⇒ Object
An array for nullable fields.
-
.optionals ⇒ Object
An array for optional fields.
Instance Method Summary collapse
-
#initialize(accounts:, transactions:, total_transactions:, item:, next_cursor:, has_more:, last_successful_update_time:, request_id:, additional_properties: nil) ⇒ CashflowReportGetResponse
constructor
A new instance of CashflowReportGetResponse.
-
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
- #to_custom_last_successful_update_time ⇒ Object
-
#to_s ⇒ Object
Provides a human-readable string representation of the object.
Methods inherited from BaseModel
#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json
Constructor Details
#initialize(accounts:, transactions:, total_transactions:, item:, next_cursor:, has_more:, last_successful_update_time:, request_id:, additional_properties: nil) ⇒ CashflowReportGetResponse
Returns a new instance of CashflowReportGetResponse.
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 |
# File 'lib/the_plaid_api/models/cashflow_report_get_response.rb', line 84 def initialize(accounts:, transactions:, total_transactions:, item:, next_cursor:, has_more:, last_successful_update_time:, request_id:, additional_properties: nil) # Add additional model properties to the instance additional_properties = {} if additional_properties.nil? @accounts = accounts @transactions = transactions @total_transactions = total_transactions @item = item @next_cursor = next_cursor @has_more = has_more @last_successful_update_time = last_successful_update_time @request_id = request_id @additional_properties = additional_properties end |
Instance Attribute Details
#accounts ⇒ Array[BusinessAccount]
An array containing the ‘accounts` associated with the Item for which transactions are being returned. Each transaction can be mapped to its corresponding account via the `account_id` field.
18 19 20 |
# File 'lib/the_plaid_api/models/cashflow_report_get_response.rb', line 18 def accounts @accounts end |
#has_more ⇒ TrueClass | FalseClass
Represents if more than requested count of transactions exists to be fetched
46 47 48 |
# File 'lib/the_plaid_api/models/cashflow_report_get_response.rb', line 46 def has_more @has_more end |
#item ⇒ Item
Metadata about the Item.
36 37 38 |
# File 'lib/the_plaid_api/models/cashflow_report_get_response.rb', line 36 def item @item end |
#last_successful_update_time ⇒ DateTime
The last successful update time in [ISO 8601](wikipedia.org/wiki/ISO_8601) format ( ‘YYYY-MM-DDTHH:mm:ssZ` )
52 53 54 |
# File 'lib/the_plaid_api/models/cashflow_report_get_response.rb', line 52 def last_successful_update_time @last_successful_update_time end |
#next_cursor ⇒ String
Cursor used for fetching any future updates after the latest update provided in this response.
41 42 43 |
# File 'lib/the_plaid_api/models/cashflow_report_get_response.rb', line 41 def next_cursor @next_cursor end |
#request_id ⇒ String
A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
58 59 60 |
# File 'lib/the_plaid_api/models/cashflow_report_get_response.rb', line 58 def request_id @request_id end |
#total_transactions ⇒ Integer
The total number of transactions available within the date range specified. If ‘total_transactions` is larger than the size of the `transactions` array, more transactions are available and can be fetched via manipulating the `offset` parameter.
32 33 34 |
# File 'lib/the_plaid_api/models/cashflow_report_get_response.rb', line 32 def total_transactions @total_transactions end |
#transactions ⇒ Array[CashflowReportTransaction]
An array containing transactions from the account. Transactions are returned in reverse chronological order, with the most recent at the beginning of the array. The maximum number of transactions returned is determined by the ‘count` parameter.
25 26 27 |
# File 'lib/the_plaid_api/models/cashflow_report_get_response.rb', line 25 def transactions @transactions end |
Class Method Details
.from_hash(hash) ⇒ Object
Creates an instance of the object from a hash.
102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 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 |
# File 'lib/the_plaid_api/models/cashflow_report_get_response.rb', line 102 def self.from_hash(hash) return nil unless hash # Extract variables from the hash. # Parameter is an array, so we need to iterate through it accounts = nil unless hash['accounts'].nil? accounts = [] hash['accounts'].each do |structure| accounts << (BusinessAccount.from_hash(structure) if structure) end end accounts = nil unless hash.key?('accounts') # Parameter is an array, so we need to iterate through it transactions = nil unless hash['transactions'].nil? transactions = [] hash['transactions'].each do |structure| transactions << (CashflowReportTransaction.from_hash(structure) if structure) end end transactions = nil unless hash.key?('transactions') total_transactions = hash.key?('total_transactions') ? hash['total_transactions'] : nil item = Item.from_hash(hash['item']) if hash['item'] next_cursor = hash.key?('next_cursor') ? hash['next_cursor'] : nil has_more = hash.key?('has_more') ? hash['has_more'] : nil last_successful_update_time = if hash.key?('last_successful_update_time') (DateTimeHelper.from_rfc3339(hash['last_successful_update_time']) if hash['last_successful_update_time']) end request_id = hash.key?('request_id') ? hash['request_id'] : nil # 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. CashflowReportGetResponse.new(accounts: accounts, transactions: transactions, total_transactions: total_transactions, item: item, next_cursor: next_cursor, has_more: has_more, last_successful_update_time: last_successful_update_time, request_id: request_id, additional_properties: additional_properties) end |
.names ⇒ Object
A mapping from model property names to API property names.
61 62 63 64 65 66 67 68 69 70 71 72 |
# File 'lib/the_plaid_api/models/cashflow_report_get_response.rb', line 61 def self.names @_hash = {} if @_hash.nil? @_hash['accounts'] = 'accounts' @_hash['transactions'] = 'transactions' @_hash['total_transactions'] = 'total_transactions' @_hash['item'] = 'item' @_hash['next_cursor'] = 'next_cursor' @_hash['has_more'] = 'has_more' @_hash['last_successful_update_time'] = 'last_successful_update_time' @_hash['request_id'] = 'request_id' @_hash end |
.nullables ⇒ Object
An array for nullable fields
80 81 82 |
# File 'lib/the_plaid_api/models/cashflow_report_get_response.rb', line 80 def self.nullables [] end |
.optionals ⇒ Object
An array for optional fields
75 76 77 |
# File 'lib/the_plaid_api/models/cashflow_report_get_response.rb', line 75 def self.optionals [] end |
Instance Method Details
#inspect ⇒ Object
Provides a debugging-friendly string with detailed object information.
169 170 171 172 173 174 175 176 |
# File 'lib/the_plaid_api/models/cashflow_report_get_response.rb', line 169 def inspect class_name = self.class.name.split('::').last "<#{class_name} accounts: #{@accounts.inspect}, transactions: #{@transactions.inspect},"\ " total_transactions: #{@total_transactions.inspect}, item: #{@item.inspect}, next_cursor:"\ " #{@next_cursor.inspect}, has_more: #{@has_more.inspect}, last_successful_update_time:"\ " #{@last_successful_update_time.inspect}, request_id: #{@request_id.inspect},"\ " additional_properties: #{@additional_properties}>" end |
#to_custom_last_successful_update_time ⇒ Object
155 156 157 |
# File 'lib/the_plaid_api/models/cashflow_report_get_response.rb', line 155 def to_custom_last_successful_update_time DateTimeHelper.to_rfc3339(last_successful_update_time) end |
#to_s ⇒ Object
Provides a human-readable string representation of the object.
160 161 162 163 164 165 166 |
# File 'lib/the_plaid_api/models/cashflow_report_get_response.rb', line 160 def to_s class_name = self.class.name.split('::').last "<#{class_name} accounts: #{@accounts}, transactions: #{@transactions}, total_transactions:"\ " #{@total_transactions}, item: #{@item}, next_cursor: #{@next_cursor}, has_more:"\ " #{@has_more}, last_successful_update_time: #{@last_successful_update_time}, request_id:"\ " #{@request_id}, additional_properties: #{@additional_properties}>" end |