Class: ThePlaidApi::IdentityMatchRequest

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

Overview

IdentityMatchRequest defines the request schema for ‘/identity/match`

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:, client_id: SKIP, secret: SKIP, user: SKIP, options: SKIP, additional_properties: nil) ⇒ IdentityMatchRequest

Returns a new instance of IdentityMatchRequest.



64
65
66
67
68
69
70
71
72
73
74
75
# File 'lib/the_plaid_api/models/identity_match_request.rb', line 64

def initialize(access_token:, client_id: SKIP, secret: SKIP, user: SKIP,
               options: 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
  @access_token = access_token
  @user = user unless user == SKIP
  @options = options unless options == SKIP
  @additional_properties = additional_properties
end

Instance Attribute Details

#access_tokenString

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

Returns:

  • (String)


25
26
27
# File 'lib/the_plaid_api/models/identity_match_request.rb', line 25

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)


16
17
18
# File 'lib/the_plaid_api/models/identity_match_request.rb', line 16

def client_id
  @client_id
end

#optionsIdentityMatchRequestOptions

An optional object to filter /identity/match results



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

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


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

def secret
  @secret
end

#userIdentityMatchUser

The user’s legal name, phone number, email address and address used to perform fuzzy match. If Financial Account Matching is enabled in the Identity Verification product, leave this field empty to automatically match against PII collected from the Identity Verification checks.

Returns:



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

def user
  @user
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
# File 'lib/the_plaid_api/models/identity_match_request.rb', line 78

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  access_token = hash.key?('access_token') ? hash['access_token'] : nil
  client_id = hash.key?('client_id') ? hash['client_id'] : SKIP
  secret = hash.key?('secret') ? hash['secret'] : SKIP
  user = IdentityMatchUser.from_hash(hash['user']) if hash['user']
  options = IdentityMatchRequestOptions.from_hash(hash['options']) if hash['options']

  # 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.
  IdentityMatchRequest.new(access_token: access_token,
                           client_id: client_id,
                           secret: secret,
                           user: user,
                           options: options,
                           additional_properties: additional_properties)
end

.namesObject

A mapping from model property names to API property names.



39
40
41
42
43
44
45
46
47
# File 'lib/the_plaid_api/models/identity_match_request.rb', line 39

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

.nullablesObject

An array for nullable fields



60
61
62
# File 'lib/the_plaid_api/models/identity_match_request.rb', line 60

def self.nullables
  []
end

.optionalsObject

An array for optional fields



50
51
52
53
54
55
56
57
# File 'lib/the_plaid_api/models/identity_match_request.rb', line 50

def self.optionals
  %w[
    client_id
    secret
    user
    options
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



113
114
115
116
117
118
# File 'lib/the_plaid_api/models/identity_match_request.rb', line 113

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

#to_sObject

Provides a human-readable string representation of the object.



105
106
107
108
109
110
# File 'lib/the_plaid_api/models/identity_match_request.rb', line 105

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