=begin
#MoneyKit API
#No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
The version of the OpenAPI document: 2023-02-18
Generated by: https://openapi-generator.tech
OpenAPI Generator version: 7.1.0
=end
require 'cgi'
module MoneyKit
class IdentityApi
attr_accessor :api_client
def initialize(api_client = ApiClient.default)
@api_client = api_client
end
# /links/{id}/identity
# Returns account owner information from the institution, including names, emails, phone numbers, and addresses, for all permissioned accounts associated with a link. This information will appear in the `owners` list in the `accounts` object.
Some fields may be empty, if not provided by the institution.
**Note** that this endpoint does **not** trigger a fetch of owner information from the institution; it merely returns owner information that has already been fetched, either because `prefetch` was requested when the link was created, or because of an on-demand update. **To force a check for new/updated owner information, you must use the /products endpoint.**
If you have requested prefetch or an on-demand update, you should check the `refreshed_at` date for this product in the returned response, and compare that against the previous `refreshed_at` date, which you can get from any previous response for this or any other account or link request. If the refreshed_at date has not increased, then updated data is not yet available.
# @param id [String] The unique ID for this link.
# @param [Hash] opts the optional parameters
# @option opts [Array] :account_ids An optional list of account IDs to filter the results.
# @return [IdentityResponse]
def get_identities(id, opts = {})
data, _status_code, _headers = get_identities_with_http_info(id, opts)
data
end
# /links/{id}/identity
# Returns account owner information from the institution, including names, emails, phone numbers, and addresses, for all permissioned accounts associated with a <a href=#tag/Links>link</a>. This information will appear in the `owners` list in the `accounts` object. <p>Some fields may be empty, if not provided by the institution. <p>**Note** that this endpoint does **not** trigger a fetch of owner information from the institution; it merely returns owner information that has already been fetched, either because `prefetch` was requested when the link was created, or because of an on-demand update. **To force a check for new/updated owner information, you must use the <a href=#operation/refresh_products>/products</a> endpoint.** <p>If you have requested prefetch or an on-demand update, you should check the `refreshed_at` date for this product in the returned response, and compare that against the previous `refreshed_at` date, which you can get from any previous response for this or any other account or link request. If the refreshed_at date has not increased, then updated data is not yet available.
# @param id [String] The unique ID for this link.
# @param [Hash] opts the optional parameters
# @option opts [Array] :account_ids An optional list of account IDs to filter the results.
# @return [Array<(IdentityResponse, Integer, Hash)>] IdentityResponse data, response status code and response headers
def get_identities_with_http_info(id, opts = {})
if @api_client.config.debugging
@api_client.config.logger.debug 'Calling API: IdentityApi.get_identities ...'
end
# verify the required parameter 'id' is set
if @api_client.config.client_side_validation && id.nil?
fail ArgumentError, "Missing the required parameter 'id' when calling IdentityApi.get_identities"
end
# resource path
local_var_path = '/links/{id}/identity'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
# query parameters
query_params = opts[:query_params] || {}
query_params[:'account_ids'] = @api_client.build_collection_param(opts[:'account_ids'], :multi) if !opts[:'account_ids'].nil?
# header parameters
header_params = opts[:header_params] || {}
# HTTP header 'Accept' (if needed)
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
# form parameters
form_params = opts[:form_params] || {}
# http body (model)
post_body = opts[:debug_body]
# return_type
return_type = opts[:debug_return_type] || 'IdentityResponse'
# auth_names
auth_names = opts[:debug_auth_names] || ['OAuth2ClientCredentials']
new_options = opts.merge(
:operation => :"IdentityApi.get_identities",
:header_params => header_params,
:query_params => query_params,
:form_params => form_params,
:body => post_body,
:auth_names => auth_names,
:return_type => return_type
)
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
if @api_client.config.debugging
@api_client.config.logger.debug "API called: IdentityApi#get_identities\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
end
return data, status_code, headers
end
end
end