Class: ThePlaidApi::StatementsRefreshRequest

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

Overview

StatementsRefreshRequest defines the request schema for ‘/statements/refresh`

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(access_token:, start_date:, end_date:, client_id: SKIP, secret: SKIP, additional_properties: nil) ⇒ StatementsRefreshRequest

Returns a new instance of StatementsRefreshRequest.



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

def initialize(access_token:, start_date:, end_date:, client_id: SKIP,
               secret: SKIP, additional_properties: nil)
  # Add additional model properties to the instance
  additional_properties = {} if additional_properties.nil?

  @access_token = access_token
  @client_id = client_id unless client_id == SKIP
  @secret = secret unless secret == SKIP
  @start_date = start_date
  @end_date = end_date
  @additional_properties = additional_properties
end

Instance Attribute Details

#access_tokenString

The access token associated with the Item data is being requested for.

Returns:

  • (String)


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

def access_token
  @access_token
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)


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

def client_id
  @client_id
end

#end_dateDate

The end date for statements, in “YYYY-MM-DD” format, e.g. “2023-10-30”. You can request up to two years of data. To determine whether a statement falls within the specified date range, Plaid will use the statement posted date. The statement posted date is typically either the last day of the statement period, or the following day.

Returns:

  • (Date)


42
43
44
# File 'lib/the_plaid_api/models/statements_refresh_request.rb', line 42

def end_date
  @end_date
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)


26
27
28
# File 'lib/the_plaid_api/models/statements_refresh_request.rb', line 26

def secret
  @secret
end

#start_dateDate

The start date for statements, in “YYYY-MM-DD” format, e.g. “2023-08-30”. To determine whether a statement falls within the specified date range, Plaid will use the statement posted date. The statement posted date is typically either the last day of the statement period, or the following day.

Returns:

  • (Date)


34
35
36
# File 'lib/the_plaid_api/models/statements_refresh_request.rb', line 34

def start_date
  @start_date
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
# File 'lib/the_plaid_api/models/statements_refresh_request.rb', line 82

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  access_token = hash.key?('access_token') ? hash['access_token'] : nil
  start_date = hash.key?('start_date') ? hash['start_date'] : nil
  end_date = hash.key?('end_date') ? hash['end_date'] : nil
  client_id = hash.key?('client_id') ? hash['client_id'] : SKIP
  secret = hash.key?('secret') ? hash['secret'] : 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.
  StatementsRefreshRequest.new(access_token: access_token,
                               start_date: start_date,
                               end_date: end_date,
                               client_id: client_id,
                               secret: secret,
                               additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



45
46
47
48
49
50
51
52
53
# File 'lib/the_plaid_api/models/statements_refresh_request.rb', line 45

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['access_token'] = 'access_token'
  @_hash['client_id'] = 'client_id'
  @_hash['secret'] = 'secret'
  @_hash['start_date'] = 'start_date'
  @_hash['end_date'] = 'end_date'
  @_hash
end

.nullablesObject

An array for nullable fields



64
65
66
# File 'lib/the_plaid_api/models/statements_refresh_request.rb', line 64

def self.nullables
  []
end

.optionalsObject

An array for optional fields



56
57
58
59
60
61
# File 'lib/the_plaid_api/models/statements_refresh_request.rb', line 56

def self.optionals
  %w[
    client_id
    secret
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



117
118
119
120
121
122
# File 'lib/the_plaid_api/models/statements_refresh_request.rb', line 117

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} access_token: #{@access_token.inspect}, client_id: #{@client_id.inspect},"\
  " secret: #{@secret.inspect}, start_date: #{@start_date.inspect}, end_date:"\
  " #{@end_date.inspect}, additional_properties: #{@additional_properties}>"
end

#to_sObject

Provides a human-readable string representation of the object.



109
110
111
112
113
114
# File 'lib/the_plaid_api/models/statements_refresh_request.rb', line 109

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} access_token: #{@access_token}, client_id: #{@client_id}, secret:"\
  " #{@secret}, start_date: #{@start_date}, end_date: #{@end_date}, additional_properties:"\
  " #{@additional_properties}>"
end