Class: ThePlaidApi::TransferListRequest

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

Overview

Defines the request schema for ‘/transfer/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, count: 25, offset: 0, origination_account_id: SKIP, originator_client_id: SKIP, funding_account_id: SKIP, additional_properties: nil) ⇒ TransferListRequest

Returns a new instance of TransferListRequest.



96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
# File 'lib/the_plaid_api/models/transfer_list_request.rb', line 96

def initialize(client_id: SKIP, secret: SKIP, start_date: SKIP,
               end_date: SKIP, count: 25, offset: 0,
               origination_account_id: SKIP, originator_client_id: SKIP,
               funding_account_id: 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
  @count = count unless count == SKIP
  @offset = offset unless offset == SKIP
  @origination_account_id =  unless  == SKIP
  @originator_client_id = originator_client_id unless originator_client_id == SKIP
  @funding_account_id =  unless  == SKIP
  @additional_properties = additional_properties
end

Instance Attribute Details

#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/transfer_list_request.rb', line 17

def client_id
  @client_id
end

#countInteger

The maximum number of transfers to return.

Returns:

  • (Integer)


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

def count
  @count
end

#end_dateDateTime

The end ‘created` datetime of 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/transfer_list_request.rb', line 32

def end_date
  @end_date
end

#funding_account_idString

Filter transfers to only those with the specified ‘funding_account_id`.

Returns:

  • (String)


53
54
55
# File 'lib/the_plaid_api/models/transfer_list_request.rb', line 53

def 
  @funding_account_id
end

#offsetInteger

The number of transfers to skip before returning results.

Returns:

  • (Integer)


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

def offset
  @offset
end

#origination_account_idString

Filter transfers to only those originated through the specified origination account.

Returns:

  • (String)


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

def 
  @origination_account_id
end

#originator_client_idString

Filter transfers to only those with the specified originator client.

Returns:

  • (String)


49
50
51
# File 'lib/the_plaid_api/models/transfer_list_request.rb', line 49

def originator_client_id
  @originator_client_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/transfer_list_request.rb', line 22

def secret
  @secret
end

#start_dateDateTime

The start ‘created` datetime of 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/transfer_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.



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
154
155
156
157
158
159
# File 'lib/the_plaid_api/models/transfer_list_request.rb', line 116

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
  count = hash['count'] ||= 25
  offset = hash['offset'] ||= 0
   =
    hash.key?('origination_account_id') ? hash['origination_account_id'] : SKIP
  originator_client_id =
    hash.key?('originator_client_id') ? hash['originator_client_id'] : SKIP
   =
    hash.key?('funding_account_id') ? hash['funding_account_id'] : 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.
  TransferListRequest.new(client_id: client_id,
                          secret: secret,
                          start_date: start_date,
                          end_date: end_date,
                          count: count,
                          offset: offset,
                          origination_account_id: ,
                          originator_client_id: originator_client_id,
                          funding_account_id: ,
                          additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



56
57
58
59
60
61
62
63
64
65
66
67
68
# File 'lib/the_plaid_api/models/transfer_list_request.rb', line 56

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['count'] = 'count'
  @_hash['offset'] = 'offset'
  @_hash['origination_account_id'] = 'origination_account_id'
  @_hash['originator_client_id'] = 'originator_client_id'
  @_hash['funding_account_id'] = 'funding_account_id'
  @_hash
end

.nullablesObject

An array for nullable fields



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

def self.nullables
  %w[
    start_date
    end_date
    origination_account_id
    originator_client_id
    funding_account_id
  ]
end

.optionalsObject

An array for optional fields



71
72
73
74
75
76
77
78
79
80
81
82
83
# File 'lib/the_plaid_api/models/transfer_list_request.rb', line 71

def self.optionals
  %w[
    client_id
    secret
    start_date
    end_date
    count
    offset
    origination_account_id
    originator_client_id
    funding_account_id
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



180
181
182
183
184
185
186
187
# File 'lib/the_plaid_api/models/transfer_list_request.rb', line 180

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}, count: #{@count.inspect}, offset:"\
  " #{@offset.inspect}, origination_account_id: #{@origination_account_id.inspect},"\
  " originator_client_id: #{@originator_client_id.inspect}, funding_account_id:"\
  " #{@funding_account_id.inspect}, additional_properties: #{@additional_properties}>"
end

#to_custom_end_dateObject



165
166
167
# File 'lib/the_plaid_api/models/transfer_list_request.rb', line 165

def to_custom_end_date
  DateTimeHelper.to_rfc3339(end_date)
end

#to_custom_start_dateObject



161
162
163
# File 'lib/the_plaid_api/models/transfer_list_request.rb', line 161

def to_custom_start_date
  DateTimeHelper.to_rfc3339(start_date)
end

#to_sObject

Provides a human-readable string representation of the object.



170
171
172
173
174
175
176
177
# File 'lib/the_plaid_api/models/transfer_list_request.rb', line 170

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}, count: #{@count}, offset: #{@offset}, origination_account_id:"\
  " #{@origination_account_id}, originator_client_id: #{@originator_client_id},"\
  " funding_account_id: #{@funding_account_id}, additional_properties:"\
  " #{@additional_properties}>"
end