Class: ThePlaidApi::BankTransferEventListRequest

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

Overview

Defines the request schema for ‘/bank_transfer/event/list`

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(client_id: SKIP, secret: SKIP, start_date: SKIP, end_date: SKIP, bank_transfer_id: SKIP, account_id: SKIP, bank_transfer_type: SKIP, event_types: SKIP, count: 25, offset: 0, origination_account_id: SKIP, direction: SKIP, additional_properties: nil) ⇒ BankTransferEventListRequest

Returns a new instance of BankTransferEventListRequest.



126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 126

def initialize(client_id: SKIP, secret: SKIP, start_date: SKIP,
               end_date: SKIP, bank_transfer_id: SKIP, account_id: SKIP,
               bank_transfer_type: SKIP, event_types: SKIP, count: 25,
               offset: 0, origination_account_id: SKIP, direction: SKIP,
               additional_properties: nil)
  # Add additional model properties to the instance
  additional_properties = {} if additional_properties.nil?

  @client_id = client_id unless client_id == SKIP
  @secret = secret unless secret == SKIP
  @start_date = start_date unless start_date == SKIP
  @end_date = end_date unless end_date == SKIP
  @bank_transfer_id = bank_transfer_id unless bank_transfer_id == SKIP
  @account_id =  unless  == SKIP
  @bank_transfer_type = bank_transfer_type unless bank_transfer_type == SKIP
  @event_types = event_types unless event_types == SKIP
  @count = count unless count == SKIP
  @offset = offset unless offset == SKIP
  @origination_account_id =  unless  == SKIP
  @direction = direction unless direction == SKIP
  @additional_properties = additional_properties
end

Instance Attribute Details

#account_idString

The account ID to get events for all transactions to/from an account.

Returns:

  • (String)


40
41
42
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 40

def 
  @account_id
end

#bank_transfer_idString

Plaid’s unique identifier for a bank transfer.

Returns:

  • (String)


36
37
38
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 36

def bank_transfer_id
  @bank_transfer_id
end

#bank_transfer_typeBankTransferType1

The type of bank transfer. This will be either ‘debit` or `credit`. A `debit` indicates a transfer of money into your origination account; a `credit` indicates a transfer of money out of your origination account.

Returns:



46
47
48
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 46

def bank_transfer_type
  @bank_transfer_type
end

#client_idString

Your Plaid API ‘client_id`. The `client_id` is required and may be provided either in the `PLAID-CLIENT-ID` header or as part of a request body.

Returns:

  • (String)


17
18
19
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 17

def client_id
  @client_id
end

#countInteger

The maximum number of bank transfer events to return. If the number of events matching the above parameters is greater than ‘count`, the most recent events will be returned.

Returns:

  • (Integer)


56
57
58
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 56

def count
  @count
end

#directionBankTransferDirection1

Indicates the direction of the transfer: ‘outbound`: for API-initiated transfers `inbound`: for payments received by the FBO account.



73
74
75
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 73

def direction
  @direction
end

#end_dateDateTime

The end datetime of bank transfers to list. This should be in RFC 3339 format (i.e. ‘2019-12-06T22:35:49Z`)

Returns:

  • (DateTime)


32
33
34
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 32

def end_date
  @end_date
end

#event_typesArray[BankTransferEventType]

Filter events by event type.

Returns:



50
51
52
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 50

def event_types
  @event_types
end

#offsetInteger

The offset into the list of bank transfer events. When ‘count`=25 and `offset`=0, the first 25 events will be returned. When `count`=25 and `offset`=25, the next 25 bank transfer events will be returned.

Returns:

  • (Integer)


62
63
64
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 62

def offset
  @offset
end

#origination_account_idString

The origination account ID to get events for transfers from a specific origination account.

Returns:

  • (String)


67
68
69
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 67

def 
  @origination_account_id
end

#secretString

Your Plaid API ‘secret`. The `secret` is required and may be provided either in the `PLAID-SECRET` header or as part of a request body.

Returns:

  • (String)


22
23
24
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 22

def secret
  @secret
end

#start_dateDateTime

The start datetime of bank transfers to list. This should be in RFC 3339 format (i.e. ‘2019-12-06T22:35:49Z`)

Returns:

  • (DateTime)


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

def start_date
  @start_date
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 150

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  client_id = hash.key?('client_id') ? hash['client_id'] : SKIP
  secret = hash.key?('secret') ? hash['secret'] : SKIP
  start_date = if hash.key?('start_date')
                 (DateTimeHelper.from_rfc3339(hash['start_date']) if hash['start_date'])
               else
                 SKIP
               end
  end_date = if hash.key?('end_date')
               (DateTimeHelper.from_rfc3339(hash['end_date']) if hash['end_date'])
             else
               SKIP
             end
  bank_transfer_id =
    hash.key?('bank_transfer_id') ? hash['bank_transfer_id'] : SKIP
   = hash.key?('account_id') ? hash['account_id'] : SKIP
  bank_transfer_type =
    hash.key?('bank_transfer_type') ? hash['bank_transfer_type'] : SKIP
  event_types = hash.key?('event_types') ? hash['event_types'] : SKIP
  count = hash['count'] ||= 25
  offset = hash['offset'] ||= 0
   =
    hash.key?('origination_account_id') ? hash['origination_account_id'] : SKIP
  direction = hash.key?('direction') ? hash['direction'] : SKIP

  # 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.
  BankTransferEventListRequest.new(client_id: client_id,
                                   secret: secret,
                                   start_date: start_date,
                                   end_date: end_date,
                                   bank_transfer_id: bank_transfer_id,
                                   account_id: ,
                                   bank_transfer_type: bank_transfer_type,
                                   event_types: event_types,
                                   count: count,
                                   offset: offset,
                                   origination_account_id: ,
                                   direction: direction,
                                   additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 76

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['client_id'] = 'client_id'
  @_hash['secret'] = 'secret'
  @_hash['start_date'] = 'start_date'
  @_hash['end_date'] = 'end_date'
  @_hash['bank_transfer_id'] = 'bank_transfer_id'
  @_hash['account_id'] = 'account_id'
  @_hash['bank_transfer_type'] = 'bank_transfer_type'
  @_hash['event_types'] = 'event_types'
  @_hash['count'] = 'count'
  @_hash['offset'] = 'offset'
  @_hash['origination_account_id'] = 'origination_account_id'
  @_hash['direction'] = 'direction'
  @_hash
end

.nullablesObject

An array for nullable fields



112
113
114
115
116
117
118
119
120
121
122
123
124
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 112

def self.nullables
  %w[
    start_date
    end_date
    bank_transfer_id
    account_id
    bank_transfer_type
    count
    offset
    origination_account_id
    direction
  ]
end

.optionalsObject

An array for optional fields



94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 94

def self.optionals
  %w[
    client_id
    secret
    start_date
    end_date
    bank_transfer_id
    account_id
    bank_transfer_type
    event_types
    count
    offset
    origination_account_id
    direction
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



220
221
222
223
224
225
226
227
228
229
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 220

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} client_id: #{@client_id.inspect}, secret: #{@secret.inspect}, start_date:"\
  " #{@start_date.inspect}, end_date: #{@end_date.inspect}, bank_transfer_id:"\
  " #{@bank_transfer_id.inspect}, account_id: #{@account_id.inspect}, bank_transfer_type:"\
  " #{@bank_transfer_type.inspect}, event_types: #{@event_types.inspect}, count:"\
  " #{@count.inspect}, offset: #{@offset.inspect}, origination_account_id:"\
  " #{@origination_account_id.inspect}, direction: #{@direction.inspect},"\
  " additional_properties: #{@additional_properties}>"
end

#to_custom_end_dateObject



205
206
207
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 205

def to_custom_end_date
  DateTimeHelper.to_rfc3339(end_date)
end

#to_custom_start_dateObject



201
202
203
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 201

def to_custom_start_date
  DateTimeHelper.to_rfc3339(start_date)
end

#to_sObject

Provides a human-readable string representation of the object.



210
211
212
213
214
215
216
217
# File 'lib/the_plaid_api/models/bank_transfer_event_list_request.rb', line 210

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} client_id: #{@client_id}, secret: #{@secret}, start_date: #{@start_date},"\
  " end_date: #{@end_date}, bank_transfer_id: #{@bank_transfer_id}, account_id:"\
  " #{@account_id}, bank_transfer_type: #{@bank_transfer_type}, event_types: #{@event_types},"\
  " count: #{@count}, offset: #{@offset}, origination_account_id: #{@origination_account_id},"\
  " direction: #{@direction}, additional_properties: #{@additional_properties}>"
end