Class: ThePlaidApi::TransferRecurringListRequest

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

Overview

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

Returns a new instance of TransferRecurringListRequest.



82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# File 'lib/the_plaid_api/models/transfer_recurring_list_request.rb', line 82

def initialize(client_id: SKIP, secret: SKIP, start_time: SKIP,
               end_time: SKIP, count: 25, offset: 0,
               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_time = start_time unless start_time == SKIP
  @end_time = end_time unless end_time == SKIP
  @count = count unless count == SKIP
  @offset = offset unless offset == 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_recurring_list_request.rb', line 17

def client_id
  @client_id
end

#countInteger

The maximum number of recurring transfers to return.

Returns:

  • (Integer)


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

def count
  @count
end

#end_timeDateTime

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

def end_time
  @end_time
end

#funding_account_idString

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

Returns:

  • (String)


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

def 
  @funding_account_id
end

#offsetInteger

The number of recurring transfers to skip before returning results.

Returns:

  • (Integer)


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

def offset
  @offset
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_recurring_list_request.rb', line 22

def secret
  @secret
end

#start_timeDateTime

The start ‘created` datetime of recurring 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_recurring_list_request.rb', line 27

def start_time
  @start_time
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



99
100
101
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
# File 'lib/the_plaid_api/models/transfer_recurring_list_request.rb', line 99

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_time = if hash.key?('start_time')
                 (DateTimeHelper.from_rfc3339(hash['start_time']) if hash['start_time'])
               else
                 SKIP
               end
  end_time = if hash.key?('end_time')
               (DateTimeHelper.from_rfc3339(hash['end_time']) if hash['end_time'])
             else
               SKIP
             end
  count = hash['count'] ||= 25
  offset = hash['offset'] ||= 0
   =
    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.
  TransferRecurringListRequest.new(client_id: client_id,
                                   secret: secret,
                                   start_time: start_time,
                                   end_time: end_time,
                                   count: count,
                                   offset: offset,
                                   funding_account_id: ,
                                   additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



48
49
50
51
52
53
54
55
56
57
58
# File 'lib/the_plaid_api/models/transfer_recurring_list_request.rb', line 48

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['client_id'] = 'client_id'
  @_hash['secret'] = 'secret'
  @_hash['start_time'] = 'start_time'
  @_hash['end_time'] = 'end_time'
  @_hash['count'] = 'count'
  @_hash['offset'] = 'offset'
  @_hash['funding_account_id'] = 'funding_account_id'
  @_hash
end

.nullablesObject

An array for nullable fields



74
75
76
77
78
79
80
# File 'lib/the_plaid_api/models/transfer_recurring_list_request.rb', line 74

def self.nullables
  %w[
    start_time
    end_time
    funding_account_id
  ]
end

.optionalsObject

An array for optional fields



61
62
63
64
65
66
67
68
69
70
71
# File 'lib/the_plaid_api/models/transfer_recurring_list_request.rb', line 61

def self.optionals
  %w[
    client_id
    secret
    start_time
    end_time
    count
    offset
    funding_account_id
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



155
156
157
158
159
160
161
# File 'lib/the_plaid_api/models/transfer_recurring_list_request.rb', line 155

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} client_id: #{@client_id.inspect}, secret: #{@secret.inspect}, start_time:"\
  " #{@start_time.inspect}, end_time: #{@end_time.inspect}, count: #{@count.inspect}, offset:"\
  " #{@offset.inspect}, funding_account_id: #{@funding_account_id.inspect},"\
  " additional_properties: #{@additional_properties}>"
end

#to_custom_end_timeObject



142
143
144
# File 'lib/the_plaid_api/models/transfer_recurring_list_request.rb', line 142

def to_custom_end_time
  DateTimeHelper.to_rfc3339(end_time)
end

#to_custom_start_timeObject



138
139
140
# File 'lib/the_plaid_api/models/transfer_recurring_list_request.rb', line 138

def to_custom_start_time
  DateTimeHelper.to_rfc3339(start_time)
end

#to_sObject

Provides a human-readable string representation of the object.



147
148
149
150
151
152
# File 'lib/the_plaid_api/models/transfer_recurring_list_request.rb', line 147

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} client_id: #{@client_id}, secret: #{@secret}, start_time: #{@start_time},"\
  " end_time: #{@end_time}, count: #{@count}, offset: #{@offset}, funding_account_id:"\
  " #{@funding_account_id}, additional_properties: #{@additional_properties}>"
end