class Plaid::PlaidApi

Attributes

api_client[RW]

Public Class Methods

new(api_client = ApiClient.default) click to toggle source
# File lib/plaid/api/plaid_api.rb, line 19
def initialize(api_client = ApiClient.default)
  @api_client = api_client
end

Public Instance Methods

accounts_balance_get(accounts_balance_get_request, opts = {}) click to toggle source

Retrieve real-time balance data The ‘/accounts/balance/get` endpoint returns the real-time balance for each of an Item’s accounts. While other endpoints, such as ‘/accounts/get`, return a balance object, only `/accounts/balance/get` forces the available and current balance fields to be refreshed rather than cached. This endpoint can be used for existing Items that were added via any of Plaid’s other products. This endpoint can be used as long as Link has been initialized with any other product, `balance` itself is not a product that can be used to initialize Link. As this endpoint triggers a synchronous request for fresh data, latency may be higher than for other Plaid endpoints (typically less than 10 seconds, but occasionally up to 30 seconds or more); if you encounter errors, you may find it necessary to adjust your timeout period when making requests. @param accounts_balance_get_request [AccountsBalanceGetRequest] @param [Hash] opts the optional parameters @return [AccountsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 27
def accounts_balance_get(accounts_balance_get_request, opts = {})
  data, _status_code, _headers = accounts_balance_get_with_http_info(accounts_balance_get_request, opts)
  data
end
accounts_balance_get_with_http_info(accounts_balance_get_request, opts = {}) click to toggle source

Retrieve real-time balance data The &#x60;/accounts/balance/get&#x60; endpoint returns the real-time balance for each of an Item&#39;s accounts. While other endpoints, such as &#x60;/accounts/get&#x60;, return a balance object, only &#x60;/accounts/balance/get&#x60; forces the available and current balance fields to be refreshed rather than cached. This endpoint can be used for existing Items that were added via any of Plaid’s other products. This endpoint can be used as long as Link has been initialized with any other product, &#x60;balance&#x60; itself is not a product that can be used to initialize Link. As this endpoint triggers a synchronous request for fresh data, latency may be higher than for other Plaid endpoints (typically less than 10 seconds, but occasionally up to 30 seconds or more); if you encounter errors, you may find it necessary to adjust your timeout period when making requests. @param accounts_balance_get_request [AccountsBalanceGetRequest] @param [Hash] opts the optional parameters @return [Array<(AccountsGetResponse, Integer, Hash)>] AccountsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 37
def accounts_balance_get_with_http_info(accounts_balance_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.accounts_balance_get ...'
  end
  # verify the required parameter 'accounts_balance_get_request' is set
  if @api_client.config.client_side_validation && accounts_balance_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'accounts_balance_get_request' when calling PlaidApi.accounts_balance_get"
  end
  # resource path
  local_var_path = '/accounts/balance/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(accounts_balance_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'AccountsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.accounts_balance_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#accounts_balance_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
accounts_get(accounts_get_request, opts = {}) click to toggle source

Retrieve accounts The ‘/accounts/get` endpoint can be used to retrieve a list of accounts associated with any linked Item. Plaid will only return active bank accounts — that is, accounts that are not closed and are capable of carrying a balance. To return new accounts that were created after the user linked their Item, you can listen for the [`NEW_ACCOUNTS_AVAILABLE`](plaid.com/docs/api/items/#new_accounts_available) webhook and then use Link’s [update mode](plaid.com/docs/link/update-mode/) to request that the user share this new account with you. ‘/accounts/get` is free to use and retrieves cached information, rather than extracting fresh information from the institution. The balance returned will reflect the balance at the time of the last successful Item update. If the Item is enabled for a regularly updating product, such as Transactions, Investments, or Liabilities, the balance will typically update about once a day, as long as the Item is healthy. If the Item is enabled only for products that do not frequently update, such as Auth or Identity, balance data may be much older. For realtime balance information, use the paid endpoint `/accounts/balance/get` instead. @param accounts_get_request [AccountsGetRequest] @param [Hash] opts the optional parameters @return [AccountsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 95
def accounts_get(accounts_get_request, opts = {})
  data, _status_code, _headers = accounts_get_with_http_info(accounts_get_request, opts)
  data
end
accounts_get_with_http_info(accounts_get_request, opts = {}) click to toggle source

Retrieve accounts The &#x60;/accounts/get&#x60; endpoint can be used to retrieve a list of accounts associated with any linked Item. Plaid will only return active bank accounts — that is, accounts that are not closed and are capable of carrying a balance. To return new accounts that were created after the user linked their Item, you can listen for the [&#x60;NEW_ACCOUNTS_AVAILABLE&#x60;](plaid.com/docs/api/items/#new_accounts_available) webhook and then use Link&#39;s [update mode](plaid.com/docs/link/update-mode/) to request that the user share this new account with you. &#x60;/accounts/get&#x60; is free to use and retrieves cached information, rather than extracting fresh information from the institution. The balance returned will reflect the balance at the time of the last successful Item update. If the Item is enabled for a regularly updating product, such as Transactions, Investments, or Liabilities, the balance will typically update about once a day, as long as the Item is healthy. If the Item is enabled only for products that do not frequently update, such as Auth or Identity, balance data may be much older. For realtime balance information, use the paid endpoint &#x60;/accounts/balance/get&#x60; instead. @param accounts_get_request [AccountsGetRequest] @param [Hash] opts the optional parameters @return [Array<(AccountsGetResponse, Integer, Hash)>] AccountsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 105
def accounts_get_with_http_info(accounts_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.accounts_get ...'
  end
  # verify the required parameter 'accounts_get_request' is set
  if @api_client.config.client_side_validation && accounts_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'accounts_get_request' when calling PlaidApi.accounts_get"
  end
  # resource path
  local_var_path = '/accounts/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(accounts_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'AccountsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.accounts_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#accounts_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
application_get(application_get_request, opts = {}) click to toggle source

Retrieve information about a Plaid application Allows financial institutions to retrieve information about Plaid clients for the purpose of building control-tower experiences @param application_get_request [ApplicationGetRequest] @param [Hash] opts the optional parameters @return [ApplicationGetResponse]

# File lib/plaid/api/plaid_api.rb, line 163
def application_get(application_get_request, opts = {})
  data, _status_code, _headers = application_get_with_http_info(application_get_request, opts)
  data
end
application_get_with_http_info(application_get_request, opts = {}) click to toggle source

Retrieve information about a Plaid application Allows financial institutions to retrieve information about Plaid clients for the purpose of building control-tower experiences @param application_get_request [ApplicationGetRequest] @param [Hash] opts the optional parameters @return [Array<(ApplicationGetResponse, Integer, Hash)>] ApplicationGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 173
def application_get_with_http_info(application_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.application_get ...'
  end
  # verify the required parameter 'application_get_request' is set
  if @api_client.config.client_side_validation && application_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'application_get_request' when calling PlaidApi.application_get"
  end
  # resource path
  local_var_path = '/application/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(application_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ApplicationGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.application_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#application_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
asset_report_audit_copy_create(asset_report_audit_copy_create_request, opts = {}) click to toggle source

Create Asset Report Audit Copy Plaid can provide an Audit Copy of any Asset Report directly to a participating third party on your behalf. For example, Plaid can supply an Audit Copy directly to Fannie Mae on your behalf if you participate in the Day 1 Certainty™ program. An Audit Copy contains the same underlying data as the Asset Report. To grant access to an Audit Copy, use the ‘/asset_report/audit_copy/create` endpoint to create an `audit_copy_token` and then pass that token to the third party who needs access. Each third party has its own `auditor_id`, for example `fannie_mae`. You’ll need to create a separate Audit Copy for each third party to whom you want to grant access to the Report. @param asset_report_audit_copy_create_request [AssetReportAuditCopyCreateRequest] @param [Hash] opts the optional parameters @return [AssetReportAuditCopyCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 231
def asset_report_audit_copy_create(asset_report_audit_copy_create_request, opts = {})
  data, _status_code, _headers = asset_report_audit_copy_create_with_http_info(asset_report_audit_copy_create_request, opts)
  data
end
asset_report_audit_copy_create_with_http_info(asset_report_audit_copy_create_request, opts = {}) click to toggle source

Create Asset Report Audit Copy Plaid can provide an Audit Copy of any Asset Report directly to a participating third party on your behalf. For example, Plaid can supply an Audit Copy directly to Fannie Mae on your behalf if you participate in the Day 1 Certainty™ program. An Audit Copy contains the same underlying data as the Asset Report. To grant access to an Audit Copy, use the &#x60;/asset_report/audit_copy/create&#x60; endpoint to create an &#x60;audit_copy_token&#x60; and then pass that token to the third party who needs access. Each third party has its own &#x60;auditor_id&#x60;, for example &#x60;fannie_mae&#x60;. You’ll need to create a separate Audit Copy for each third party to whom you want to grant access to the Report. @param asset_report_audit_copy_create_request [AssetReportAuditCopyCreateRequest] @param [Hash] opts the optional parameters @return [Array<(AssetReportAuditCopyCreateResponse, Integer, Hash)>] AssetReportAuditCopyCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 241
def asset_report_audit_copy_create_with_http_info(asset_report_audit_copy_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.asset_report_audit_copy_create ...'
  end
  # verify the required parameter 'asset_report_audit_copy_create_request' is set
  if @api_client.config.client_side_validation && asset_report_audit_copy_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'asset_report_audit_copy_create_request' when calling PlaidApi.asset_report_audit_copy_create"
  end
  # resource path
  local_var_path = '/asset_report/audit_copy/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(asset_report_audit_copy_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'AssetReportAuditCopyCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.asset_report_audit_copy_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#asset_report_audit_copy_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
asset_report_audit_copy_get(asset_report_audit_copy_get_request, opts = {}) click to toggle source

Retrieve an Asset Report Audit Copy ‘/asset_report/audit_copy/get` allows auditors to get a copy of an Asset Report that was previously shared via the `/asset_report/audit_copy/create` endpoint. The caller of `/asset_report/audit_copy/create` must provide the `audit_copy_token` to the auditor. This token can then be used to call `/asset_report/audit_copy/create`. @param asset_report_audit_copy_get_request [AssetReportAuditCopyGetRequest] @param [Hash] opts the optional parameters @return [AssetReportGetResponse]

# File lib/plaid/api/plaid_api.rb, line 299
def asset_report_audit_copy_get(asset_report_audit_copy_get_request, opts = {})
  data, _status_code, _headers = asset_report_audit_copy_get_with_http_info(asset_report_audit_copy_get_request, opts)
  data
end
asset_report_audit_copy_get_with_http_info(asset_report_audit_copy_get_request, opts = {}) click to toggle source

Retrieve an Asset Report Audit Copy &#x60;/asset_report/audit_copy/get&#x60; allows auditors to get a copy of an Asset Report that was previously shared via the &#x60;/asset_report/audit_copy/create&#x60; endpoint. The caller of &#x60;/asset_report/audit_copy/create&#x60; must provide the &#x60;audit_copy_token&#x60; to the auditor. This token can then be used to call &#x60;/asset_report/audit_copy/create&#x60;. @param asset_report_audit_copy_get_request [AssetReportAuditCopyGetRequest] @param [Hash] opts the optional parameters @return [Array<(AssetReportGetResponse, Integer, Hash)>] AssetReportGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 309
def asset_report_audit_copy_get_with_http_info(asset_report_audit_copy_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.asset_report_audit_copy_get ...'
  end
  # verify the required parameter 'asset_report_audit_copy_get_request' is set
  if @api_client.config.client_side_validation && asset_report_audit_copy_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'asset_report_audit_copy_get_request' when calling PlaidApi.asset_report_audit_copy_get"
  end
  # resource path
  local_var_path = '/asset_report/audit_copy/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(asset_report_audit_copy_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'AssetReportGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.asset_report_audit_copy_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#asset_report_audit_copy_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
asset_report_audit_copy_remove(asset_report_audit_copy_remove_request, opts = {}) click to toggle source

Remove Asset Report Audit Copy The ‘/asset_report/audit_copy/remove` endpoint allows you to remove an Audit Copy. Removing an Audit Copy invalidates the `audit_copy_token` associated with it, meaning both you and any third parties holding the token will no longer be able to use it to access Report data. Items associated with the Asset Report, the Asset Report itself and other Audit Copies of it are not affected and will remain accessible after removing the given Audit Copy. @param asset_report_audit_copy_remove_request [AssetReportAuditCopyRemoveRequest] @param [Hash] opts the optional parameters @return [AssetReportAuditCopyRemoveResponse]

# File lib/plaid/api/plaid_api.rb, line 367
def asset_report_audit_copy_remove(asset_report_audit_copy_remove_request, opts = {})
  data, _status_code, _headers = asset_report_audit_copy_remove_with_http_info(asset_report_audit_copy_remove_request, opts)
  data
end
asset_report_audit_copy_remove_with_http_info(asset_report_audit_copy_remove_request, opts = {}) click to toggle source

Remove Asset Report Audit Copy The &#x60;/asset_report/audit_copy/remove&#x60; endpoint allows you to remove an Audit Copy. Removing an Audit Copy invalidates the &#x60;audit_copy_token&#x60; associated with it, meaning both you and any third parties holding the token will no longer be able to use it to access Report data. Items associated with the Asset Report, the Asset Report itself and other Audit Copies of it are not affected and will remain accessible after removing the given Audit Copy. @param asset_report_audit_copy_remove_request [AssetReportAuditCopyRemoveRequest] @param [Hash] opts the optional parameters @return [Array<(AssetReportAuditCopyRemoveResponse, Integer, Hash)>] AssetReportAuditCopyRemoveResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 377
def asset_report_audit_copy_remove_with_http_info(asset_report_audit_copy_remove_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.asset_report_audit_copy_remove ...'
  end
  # verify the required parameter 'asset_report_audit_copy_remove_request' is set
  if @api_client.config.client_side_validation && asset_report_audit_copy_remove_request.nil?
    fail ArgumentError, "Missing the required parameter 'asset_report_audit_copy_remove_request' when calling PlaidApi.asset_report_audit_copy_remove"
  end
  # resource path
  local_var_path = '/asset_report/audit_copy/remove'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(asset_report_audit_copy_remove_request)

  # return_type
  return_type = opts[:debug_return_type] || 'AssetReportAuditCopyRemoveResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.asset_report_audit_copy_remove",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#asset_report_audit_copy_remove\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
asset_report_create(asset_report_create_request, opts = {}) click to toggle source

Create an Asset Report The ‘/asset_report/create` endpoint initiates the process of creating an Asset Report, which can then be retrieved by passing the `asset_report_token` return value to the `/asset_report/get` or `/asset_report/pdf/get` endpoints. The Asset Report takes some time to be created and is not available immediately after calling `/asset_report/create`. The exact amount of time to create the report will vary depending on how many days of history are requested and will typically range from a few seconds to about one minute. When the Asset Report is ready to be retrieved using `/asset_report/get` or `/asset_report/pdf/get`, Plaid will fire a `PRODUCT_READY` webhook. For full details of the webhook schema, see [Asset Report webhooks](plaid.com/docs/api/products/assets/#webhooks). The `/asset_report/create` endpoint creates an Asset Report at a moment in time. Asset Reports are immutable. To get an updated Asset Report, use the `/asset_report/refresh` endpoint. @param asset_report_create_request [AssetReportCreateRequest] @param [Hash] opts the optional parameters @return [AssetReportCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 435
def asset_report_create(asset_report_create_request, opts = {})
  data, _status_code, _headers = asset_report_create_with_http_info(asset_report_create_request, opts)
  data
end
asset_report_create_with_http_info(asset_report_create_request, opts = {}) click to toggle source

Create an Asset Report The &#x60;/asset_report/create&#x60; endpoint initiates the process of creating an Asset Report, which can then be retrieved by passing the &#x60;asset_report_token&#x60; return value to the &#x60;/asset_report/get&#x60; or &#x60;/asset_report/pdf/get&#x60; endpoints. The Asset Report takes some time to be created and is not available immediately after calling &#x60;/asset_report/create&#x60;. The exact amount of time to create the report will vary depending on how many days of history are requested and will typically range from a few seconds to about one minute. When the Asset Report is ready to be retrieved using &#x60;/asset_report/get&#x60; or &#x60;/asset_report/pdf/get&#x60;, Plaid will fire a &#x60;PRODUCT_READY&#x60; webhook. For full details of the webhook schema, see [Asset Report webhooks](plaid.com/docs/api/products/assets/#webhooks). The &#x60;/asset_report/create&#x60; endpoint creates an Asset Report at a moment in time. Asset Reports are immutable. To get an updated Asset Report, use the &#x60;/asset_report/refresh&#x60; endpoint. @param asset_report_create_request [AssetReportCreateRequest] @param [Hash] opts the optional parameters @return [Array<(AssetReportCreateResponse, Integer, Hash)>] AssetReportCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 445
def asset_report_create_with_http_info(asset_report_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.asset_report_create ...'
  end
  # verify the required parameter 'asset_report_create_request' is set
  if @api_client.config.client_side_validation && asset_report_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'asset_report_create_request' when calling PlaidApi.asset_report_create"
  end
  # resource path
  local_var_path = '/asset_report/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(asset_report_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'AssetReportCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.asset_report_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#asset_report_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
asset_report_filter(asset_report_filter_request, opts = {}) click to toggle source

Filter Asset Report By default, an Asset Report will contain all of the accounts on a given Item. In some cases, you may not want the Asset Report to contain all accounts. For example, you might have the end user choose which accounts are relevant in Link using the Account Select view, which you can enable in the dashboard. Or, you might always exclude certain account types or subtypes, which you can identify by using the ‘/accounts/get` endpoint. To narrow an Asset Report to only a subset of accounts, use the `/asset_report/filter` endpoint. To exclude certain Accounts from an Asset Report, first use the `/asset_report/create` endpoint to create the report, then send the `asset_report_token` along with a list of `account_ids` to exclude to the `/asset_report/filter` endpoint, to create a new Asset Report which contains only a subset of the original Asset Report’s data. Because Asset Reports are immutable, calling ‘/asset_report/filter` does not alter the original Asset Report in any way; rather, `/asset_report/filter` creates a new Asset Report with a new token and id. Asset Reports created via `/asset_report/filter` do not contain new Asset data, and are not billed. Plaid will fire a [`PRODUCT_READY`](plaid.com/docs/api/products/assets/#product_ready) webhook once generation of the filtered Asset Report has completed. @param asset_report_filter_request [AssetReportFilterRequest] @param [Hash] opts the optional parameters @return [AssetReportFilterResponse]

# File lib/plaid/api/plaid_api.rb, line 503
def asset_report_filter(asset_report_filter_request, opts = {})
  data, _status_code, _headers = asset_report_filter_with_http_info(asset_report_filter_request, opts)
  data
end
asset_report_filter_with_http_info(asset_report_filter_request, opts = {}) click to toggle source

Filter Asset Report By default, an Asset Report will contain all of the accounts on a given Item. In some cases, you may not want the Asset Report to contain all accounts. For example, you might have the end user choose which accounts are relevant in Link using the Account Select view, which you can enable in the dashboard. Or, you might always exclude certain account types or subtypes, which you can identify by using the &#x60;/accounts/get&#x60; endpoint. To narrow an Asset Report to only a subset of accounts, use the &#x60;/asset_report/filter&#x60; endpoint. To exclude certain Accounts from an Asset Report, first use the &#x60;/asset_report/create&#x60; endpoint to create the report, then send the &#x60;asset_report_token&#x60; along with a list of &#x60;account_ids&#x60; to exclude to the &#x60;/asset_report/filter&#x60; endpoint, to create a new Asset Report which contains only a subset of the original Asset Report&#39;s data. Because Asset Reports are immutable, calling &#x60;/asset_report/filter&#x60; does not alter the original Asset Report in any way; rather, &#x60;/asset_report/filter&#x60; creates a new Asset Report with a new token and id. Asset Reports created via &#x60;/asset_report/filter&#x60; do not contain new Asset data, and are not billed. Plaid will fire a [&#x60;PRODUCT_READY&#x60;](plaid.com/docs/api/products/assets/#product_ready) webhook once generation of the filtered Asset Report has completed. @param asset_report_filter_request [AssetReportFilterRequest] @param [Hash] opts the optional parameters @return [Array<(AssetReportFilterResponse, Integer, Hash)>] AssetReportFilterResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 513
def asset_report_filter_with_http_info(asset_report_filter_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.asset_report_filter ...'
  end
  # verify the required parameter 'asset_report_filter_request' is set
  if @api_client.config.client_side_validation && asset_report_filter_request.nil?
    fail ArgumentError, "Missing the required parameter 'asset_report_filter_request' when calling PlaidApi.asset_report_filter"
  end
  # resource path
  local_var_path = '/asset_report/filter'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(asset_report_filter_request)

  # return_type
  return_type = opts[:debug_return_type] || 'AssetReportFilterResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.asset_report_filter",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#asset_report_filter\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
asset_report_get(asset_report_get_request, opts = {}) click to toggle source

Retrieve an Asset Report The ‘/asset_report/get` endpoint retrieves the Asset Report in JSON format. Before calling `/asset_report/get`, you must first create the Asset Report using `/asset_report/create` (or filter an Asset Report using `/asset_report/filter`) and then wait for the [`PRODUCT_READY`](plaid.com/docs/api/products/assets/#product_ready) webhook to fire, indicating that the Report is ready to be retrieved. By default, an Asset Report includes transaction descriptions as returned by the bank, as opposed to parsed and categorized by Plaid. You can also receive cleaned and categorized transactions, as well as additional insights like merchant name or location information. We call this an Asset Report with Insights. An Asset Report with Insights provides transaction category, location, and merchant information in addition to the transaction strings provided in a standard Asset Report. To retrieve an Asset Report with Insights, call `/asset_report/get` endpoint with `include_insights` set to `true`. For latency-sensitive applications, you can optionally call `/asset_report/create` with `options.add_ons` set to `["fast_assets"]`. This will cause Plaid to create two versions of the Asset Report: one with only current and available balance and identity information, and then later on the complete Asset Report. You will receive separate webhooks for each version of the Asset Report. @param asset_report_get_request [AssetReportGetRequest] @param [Hash] opts the optional parameters @return [AssetReportGetResponse]

# File lib/plaid/api/plaid_api.rb, line 571
def asset_report_get(asset_report_get_request, opts = {})
  data, _status_code, _headers = asset_report_get_with_http_info(asset_report_get_request, opts)
  data
end
asset_report_get_with_http_info(asset_report_get_request, opts = {}) click to toggle source

Retrieve an Asset Report The &#x60;/asset_report/get&#x60; endpoint retrieves the Asset Report in JSON format. Before calling &#x60;/asset_report/get&#x60;, you must first create the Asset Report using &#x60;/asset_report/create&#x60; (or filter an Asset Report using &#x60;/asset_report/filter&#x60;) and then wait for the [&#x60;PRODUCT_READY&#x60;](plaid.com/docs/api/products/assets/#product_ready) webhook to fire, indicating that the Report is ready to be retrieved. By default, an Asset Report includes transaction descriptions as returned by the bank, as opposed to parsed and categorized by Plaid. You can also receive cleaned and categorized transactions, as well as additional insights like merchant name or location information. We call this an Asset Report with Insights. An Asset Report with Insights provides transaction category, location, and merchant information in addition to the transaction strings provided in a standard Asset Report. To retrieve an Asset Report with Insights, call &#x60;/asset_report/get&#x60; endpoint with &#x60;include_insights&#x60; set to &#x60;true&#x60;. For latency-sensitive applications, you can optionally call &#x60;/asset_report/create&#x60; with &#x60;options.add_ons&#x60; set to &#x60;&#x60;. This will cause Plaid to create two versions of the Asset Report: one with only current and available balance and identity information, and then later on the complete Asset Report. You will receive separate webhooks for each version of the Asset Report. @param asset_report_get_request [AssetReportGetRequest] @param [Hash] opts the optional parameters @return [Array<(AssetReportGetResponse, Integer, Hash)>] AssetReportGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 581
def asset_report_get_with_http_info(asset_report_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.asset_report_get ...'
  end
  # verify the required parameter 'asset_report_get_request' is set
  if @api_client.config.client_side_validation && asset_report_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'asset_report_get_request' when calling PlaidApi.asset_report_get"
  end
  # resource path
  local_var_path = '/asset_report/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(asset_report_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'AssetReportGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.asset_report_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#asset_report_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
asset_report_pdf_get(asset_report_pdf_get_request, opts = {}) click to toggle source

Retrieve a PDF Asset Report The ‘/asset_report/pdf/get` endpoint retrieves the Asset Report in PDF format. Before calling `/asset_report/pdf/get`, you must first create the Asset Report using `/asset_report/create` (or filter an Asset Report using `/asset_report/filter`) and then wait for the [`PRODUCT_READY`](plaid.com/docs/api/products/assets/#product_ready) webhook to fire, indicating that the Report is ready to be retrieved. The response to `/asset_report/pdf/get` is the PDF binary data. The `request_id` is returned in the `Plaid-Request-ID` header. [View a sample PDF Asset Report](plaid.com/documents/sample-asset-report.pdf). @param asset_report_pdf_get_request [AssetReportPDFGetRequest] @param [Hash] opts the optional parameters @return [File]

# File lib/plaid/api/plaid_api.rb, line 639
def asset_report_pdf_get(asset_report_pdf_get_request, opts = {})
  data, _status_code, _headers = asset_report_pdf_get_with_http_info(asset_report_pdf_get_request, opts)
  data
end
asset_report_pdf_get_with_http_info(asset_report_pdf_get_request, opts = {}) click to toggle source

Retrieve a PDF Asset Report The &#x60;/asset_report/pdf/get&#x60; endpoint retrieves the Asset Report in PDF format. Before calling &#x60;/asset_report/pdf/get&#x60;, you must first create the Asset Report using &#x60;/asset_report/create&#x60; (or filter an Asset Report using &#x60;/asset_report/filter&#x60;) and then wait for the [&#x60;PRODUCT_READY&#x60;](plaid.com/docs/api/products/assets/#product_ready) webhook to fire, indicating that the Report is ready to be retrieved. The response to &#x60;/asset_report/pdf/get&#x60; is the PDF binary data. The &#x60;request_id&#x60; is returned in the &#x60;Plaid-Request-ID&#x60; header. [View a sample PDF Asset Report](plaid.com/documents/sample-asset-report.pdf). @param asset_report_pdf_get_request [AssetReportPDFGetRequest] @param [Hash] opts the optional parameters @return [Array<(File, Integer, Hash)>] File data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 649
def asset_report_pdf_get_with_http_info(asset_report_pdf_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.asset_report_pdf_get ...'
  end
  # verify the required parameter 'asset_report_pdf_get_request' is set
  if @api_client.config.client_side_validation && asset_report_pdf_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'asset_report_pdf_get_request' when calling PlaidApi.asset_report_pdf_get"
  end
  # resource path
  local_var_path = '/asset_report/pdf/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/pdf'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(asset_report_pdf_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'File'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.asset_report_pdf_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#asset_report_pdf_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
asset_report_refresh(asset_report_refresh_request, opts = {}) click to toggle source

Refresh an Asset Report An Asset Report is an immutable snapshot of a user’s assets. In order to "refresh" an Asset Report you created previously, you can use the ‘/asset_report/refresh` endpoint to create a new Asset Report based on the old one, but with the most recent data available. The new Asset Report will contain the same Items as the original Report, as well as the same filters applied by any call to `/asset_report/filter`. By default, the new Asset Report will also use the same parameters you submitted with your original `/asset_report/create` request, but the original `days_requested` value and the values of any parameters in the `options` object can be overridden with new values. To change these arguments, simply supply new values for them in your request to `/asset_report/refresh`. Submit an empty string ("") for any previously-populated fields you would like set as empty. @param asset_report_refresh_request [AssetReportRefreshRequest] @param [Hash] opts the optional parameters @return [AssetReportRefreshResponse]

# File lib/plaid/api/plaid_api.rb, line 707
def asset_report_refresh(asset_report_refresh_request, opts = {})
  data, _status_code, _headers = asset_report_refresh_with_http_info(asset_report_refresh_request, opts)
  data
end
asset_report_refresh_with_http_info(asset_report_refresh_request, opts = {}) click to toggle source

Refresh an Asset Report An Asset Report is an immutable snapshot of a user&#39;s assets. In order to "refresh&quot; an Asset Report you created previously, you can use the &#x60;/asset_report/refresh&#x60; endpoint to create a new Asset Report based on the old one, but with the most recent data available. The new Asset Report will contain the same Items as the original Report, as well as the same filters applied by any call to &#x60;/asset_report/filter&#x60;. By default, the new Asset Report will also use the same parameters you submitted with your original &#x60;/asset_report/create&#x60; request, but the original &#x60;days_requested&#x60; value and the values of any parameters in the &#x60;options&#x60; object can be overridden with new values. To change these arguments, simply supply new values for them in your request to &#x60;/asset_report/refresh&#x60;. Submit an empty string ("&quot;) for any previously-populated fields you would like set as empty. @param asset_report_refresh_request [AssetReportRefreshRequest] @param [Hash] opts the optional parameters @return [Array<(AssetReportRefreshResponse, Integer, Hash)>] AssetReportRefreshResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 717
def asset_report_refresh_with_http_info(asset_report_refresh_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.asset_report_refresh ...'
  end
  # verify the required parameter 'asset_report_refresh_request' is set
  if @api_client.config.client_side_validation && asset_report_refresh_request.nil?
    fail ArgumentError, "Missing the required parameter 'asset_report_refresh_request' when calling PlaidApi.asset_report_refresh"
  end
  # resource path
  local_var_path = '/asset_report/refresh'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(asset_report_refresh_request)

  # return_type
  return_type = opts[:debug_return_type] || 'AssetReportRefreshResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.asset_report_refresh",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#asset_report_refresh\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
asset_report_remove(asset_report_remove_request, opts = {}) click to toggle source

Delete an Asset Report The ‘/item/remove` endpoint allows you to invalidate an `access_token`, meaning you will not be able to create new Asset Reports with it. Removing an Item does not affect any Asset Reports or Audit Copies you have already created, which will remain accessible until you remove them specifically. The `/asset_report/remove` endpoint allows you to remove access to an Asset Report. Removing an Asset Report invalidates its `asset_report_token`, meaning you will no longer be able to use it to access Report data or create new Audit Copies. Removing an Asset Report does not affect the underlying Items, but does invalidate any `audit_copy_tokens` associated with the Asset Report. @param asset_report_remove_request [AssetReportRemoveRequest] @param [Hash] opts the optional parameters @return [AssetReportRemoveResponse]

# File lib/plaid/api/plaid_api.rb, line 775
def asset_report_remove(asset_report_remove_request, opts = {})
  data, _status_code, _headers = asset_report_remove_with_http_info(asset_report_remove_request, opts)
  data
end
asset_report_remove_with_http_info(asset_report_remove_request, opts = {}) click to toggle source

Delete an Asset Report The &#x60;/item/remove&#x60; endpoint allows you to invalidate an &#x60;access_token&#x60;, meaning you will not be able to create new Asset Reports with it. Removing an Item does not affect any Asset Reports or Audit Copies you have already created, which will remain accessible until you remove them specifically. The &#x60;/asset_report/remove&#x60; endpoint allows you to remove access to an Asset Report. Removing an Asset Report invalidates its &#x60;asset_report_token&#x60;, meaning you will no longer be able to use it to access Report data or create new Audit Copies. Removing an Asset Report does not affect the underlying Items, but does invalidate any &#x60;audit_copy_tokens&#x60; associated with the Asset Report. @param asset_report_remove_request [AssetReportRemoveRequest] @param [Hash] opts the optional parameters @return [Array<(AssetReportRemoveResponse, Integer, Hash)>] AssetReportRemoveResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 785
def asset_report_remove_with_http_info(asset_report_remove_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.asset_report_remove ...'
  end
  # verify the required parameter 'asset_report_remove_request' is set
  if @api_client.config.client_side_validation && asset_report_remove_request.nil?
    fail ArgumentError, "Missing the required parameter 'asset_report_remove_request' when calling PlaidApi.asset_report_remove"
  end
  # resource path
  local_var_path = '/asset_report/remove'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(asset_report_remove_request)

  # return_type
  return_type = opts[:debug_return_type] || 'AssetReportRemoveResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.asset_report_remove",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#asset_report_remove\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
auth_get(auth_get_request, opts = {}) click to toggle source

Retrieve auth data The ‘/auth/get` endpoint returns the bank account and bank identification numbers (such as routing numbers, for US accounts) associated with an Item’s checking and savings accounts, along with high-level account data and balances when available. Versioning note: In API version 2017-03-08, the schema of the ‘numbers` object returned by this endpoint is substantially different. For details, see [Plaid API versioning](plaid.com/docs/api/versioning/#version-2018-05-22). @param auth_get_request [AuthGetRequest] @param [Hash] opts the optional parameters @return [AuthGetResponse]

# File lib/plaid/api/plaid_api.rb, line 843
def auth_get(auth_get_request, opts = {})
  data, _status_code, _headers = auth_get_with_http_info(auth_get_request, opts)
  data
end
auth_get_with_http_info(auth_get_request, opts = {}) click to toggle source

Retrieve auth data The &#x60;/auth/get&#x60; endpoint returns the bank account and bank identification numbers (such as routing numbers, for US accounts) associated with an Item&#39;s checking and savings accounts, along with high-level account data and balances when available. Versioning note: In API version 2017-03-08, the schema of the &#x60;numbers&#x60; object returned by this endpoint is substantially different. For details, see [Plaid API versioning](plaid.com/docs/api/versioning/#version-2018-05-22). @param auth_get_request [AuthGetRequest] @param [Hash] opts the optional parameters @return [Array<(AuthGetResponse, Integer, Hash)>] AuthGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 853
def auth_get_with_http_info(auth_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.auth_get ...'
  end
  # verify the required parameter 'auth_get_request' is set
  if @api_client.config.client_side_validation && auth_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'auth_get_request' when calling PlaidApi.auth_get"
  end
  # resource path
  local_var_path = '/auth/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(auth_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'AuthGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.auth_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#auth_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
bank_transfer_balance_get(bank_transfer_balance_get_request, opts = {}) click to toggle source

Get balance of your Bank Transfer account Use the ‘/bank_transfer/balance/get` endpoint to see the available balance in your bank transfer account. Debit transfers increase this balance once their status is posted. Credit transfers decrease this balance when they are created. The transactable balance shows the amount in your account that you are able to use for transfers, and is essentially your available balance minus your minimum balance. Note that this endpoint can only be used with FBO accounts, when using Bank Transfers in the Full Service configuration. It cannot be used on your own account when using Bank Transfers in the BTS Platform configuration. @param bank_transfer_balance_get_request [BankTransferBalanceGetRequest] @param [Hash] opts the optional parameters @return [BankTransferBalanceGetResponse]

# File lib/plaid/api/plaid_api.rb, line 911
def bank_transfer_balance_get(bank_transfer_balance_get_request, opts = {})
  data, _status_code, _headers = bank_transfer_balance_get_with_http_info(bank_transfer_balance_get_request, opts)
  data
end
bank_transfer_balance_get_with_http_info(bank_transfer_balance_get_request, opts = {}) click to toggle source

Get balance of your Bank Transfer account Use the &#x60;/bank_transfer/balance/get&#x60; endpoint to see the available balance in your bank transfer account. Debit transfers increase this balance once their status is posted. Credit transfers decrease this balance when they are created. The transactable balance shows the amount in your account that you are able to use for transfers, and is essentially your available balance minus your minimum balance. Note that this endpoint can only be used with FBO accounts, when using Bank Transfers in the Full Service configuration. It cannot be used on your own account when using Bank Transfers in the BTS Platform configuration. @param bank_transfer_balance_get_request [BankTransferBalanceGetRequest] @param [Hash] opts the optional parameters @return [Array<(BankTransferBalanceGetResponse, Integer, Hash)>] BankTransferBalanceGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 921
def bank_transfer_balance_get_with_http_info(bank_transfer_balance_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.bank_transfer_balance_get ...'
  end
  # verify the required parameter 'bank_transfer_balance_get_request' is set
  if @api_client.config.client_side_validation && bank_transfer_balance_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'bank_transfer_balance_get_request' when calling PlaidApi.bank_transfer_balance_get"
  end
  # resource path
  local_var_path = '/bank_transfer/balance/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(bank_transfer_balance_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BankTransferBalanceGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.bank_transfer_balance_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#bank_transfer_balance_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
bank_transfer_cancel(bank_transfer_cancel_request, opts = {}) click to toggle source

Cancel a bank transfer Use the ‘/bank_transfer/cancel` endpoint to cancel a bank transfer. A transfer is eligible for cancelation if the `cancellable` property returned by `/bank_transfer/get` is `true`. @param bank_transfer_cancel_request [BankTransferCancelRequest] @param [Hash] opts the optional parameters @return [BankTransferCancelResponse]

# File lib/plaid/api/plaid_api.rb, line 979
def bank_transfer_cancel(bank_transfer_cancel_request, opts = {})
  data, _status_code, _headers = bank_transfer_cancel_with_http_info(bank_transfer_cancel_request, opts)
  data
end
bank_transfer_cancel_with_http_info(bank_transfer_cancel_request, opts = {}) click to toggle source

Cancel a bank transfer Use the &#x60;/bank_transfer/cancel&#x60; endpoint to cancel a bank transfer. A transfer is eligible for cancelation if the &#x60;cancellable&#x60; property returned by &#x60;/bank_transfer/get&#x60; is &#x60;true&#x60;. @param bank_transfer_cancel_request [BankTransferCancelRequest] @param [Hash] opts the optional parameters @return [Array<(BankTransferCancelResponse, Integer, Hash)>] BankTransferCancelResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 989
def bank_transfer_cancel_with_http_info(bank_transfer_cancel_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.bank_transfer_cancel ...'
  end
  # verify the required parameter 'bank_transfer_cancel_request' is set
  if @api_client.config.client_side_validation && bank_transfer_cancel_request.nil?
    fail ArgumentError, "Missing the required parameter 'bank_transfer_cancel_request' when calling PlaidApi.bank_transfer_cancel"
  end
  # resource path
  local_var_path = '/bank_transfer/cancel'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(bank_transfer_cancel_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BankTransferCancelResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.bank_transfer_cancel",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#bank_transfer_cancel\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
bank_transfer_create(bank_transfer_create_request, opts = {}) click to toggle source

Create a bank transfer Use the ‘/bank_transfer/create` endpoint to initiate a new bank transfer. @param bank_transfer_create_request [BankTransferCreateRequest] @param [Hash] opts the optional parameters @return [BankTransferCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 1047
def bank_transfer_create(bank_transfer_create_request, opts = {})
  data, _status_code, _headers = bank_transfer_create_with_http_info(bank_transfer_create_request, opts)
  data
end
bank_transfer_create_with_http_info(bank_transfer_create_request, opts = {}) click to toggle source

Create a bank transfer Use the &#x60;/bank_transfer/create&#x60; endpoint to initiate a new bank transfer. @param bank_transfer_create_request [BankTransferCreateRequest] @param [Hash] opts the optional parameters @return [Array<(BankTransferCreateResponse, Integer, Hash)>] BankTransferCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 1057
def bank_transfer_create_with_http_info(bank_transfer_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.bank_transfer_create ...'
  end
  # verify the required parameter 'bank_transfer_create_request' is set
  if @api_client.config.client_side_validation && bank_transfer_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'bank_transfer_create_request' when calling PlaidApi.bank_transfer_create"
  end
  # resource path
  local_var_path = '/bank_transfer/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(bank_transfer_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BankTransferCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.bank_transfer_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#bank_transfer_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
bank_transfer_event_list(bank_transfer_event_list_request, opts = {}) click to toggle source

List bank transfer events Use the ‘/bank_transfer/event/list` endpoint to get a list of Plaid-initiated ACH or bank transfer events based on specified filter criteria. When using Auth with micro-deposit verification enabled, this endpoint can be used to fetch status updates on ACH micro-deposits. For more details, see [micro-deposit events](plaid.com/docs/auth/coverage/microdeposit-events/). @param bank_transfer_event_list_request [BankTransferEventListRequest] @param [Hash] opts the optional parameters @return [BankTransferEventListResponse]

# File lib/plaid/api/plaid_api.rb, line 1115
def bank_transfer_event_list(bank_transfer_event_list_request, opts = {})
  data, _status_code, _headers = bank_transfer_event_list_with_http_info(bank_transfer_event_list_request, opts)
  data
end
bank_transfer_event_list_with_http_info(bank_transfer_event_list_request, opts = {}) click to toggle source

List bank transfer events Use the &#x60;/bank_transfer/event/list&#x60; endpoint to get a list of Plaid-initiated ACH or bank transfer events based on specified filter criteria. When using Auth with micro-deposit verification enabled, this endpoint can be used to fetch status updates on ACH micro-deposits. For more details, see [micro-deposit events](plaid.com/docs/auth/coverage/microdeposit-events/). @param bank_transfer_event_list_request [BankTransferEventListRequest] @param [Hash] opts the optional parameters @return [Array<(BankTransferEventListResponse, Integer, Hash)>] BankTransferEventListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 1125
def bank_transfer_event_list_with_http_info(bank_transfer_event_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.bank_transfer_event_list ...'
  end
  # verify the required parameter 'bank_transfer_event_list_request' is set
  if @api_client.config.client_side_validation && bank_transfer_event_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'bank_transfer_event_list_request' when calling PlaidApi.bank_transfer_event_list"
  end
  # resource path
  local_var_path = '/bank_transfer/event/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(bank_transfer_event_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BankTransferEventListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.bank_transfer_event_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#bank_transfer_event_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
bank_transfer_event_sync(bank_transfer_event_sync_request, opts = {}) click to toggle source

Sync bank transfer events ‘/bank_transfer/event/sync` allows you to request up to the next 25 Plaid-initiated bank transfer events that happened after a specific `event_id`. When using Auth with micro-deposit verification enabled, this endpoint can be used to fetch status updates on ACH micro-deposits. For more details, see [micro-deposit events](www.plaid.com/docs/auth/coverage/microdeposit-events/). @param bank_transfer_event_sync_request [BankTransferEventSyncRequest] @param [Hash] opts the optional parameters @return [BankTransferEventSyncResponse]

# File lib/plaid/api/plaid_api.rb, line 1183
def bank_transfer_event_sync(bank_transfer_event_sync_request, opts = {})
  data, _status_code, _headers = bank_transfer_event_sync_with_http_info(bank_transfer_event_sync_request, opts)
  data
end
bank_transfer_event_sync_with_http_info(bank_transfer_event_sync_request, opts = {}) click to toggle source

Sync bank transfer events &#x60;/bank_transfer/event/sync&#x60; allows you to request up to the next 25 Plaid-initiated bank transfer events that happened after a specific &#x60;event_id&#x60;. When using Auth with micro-deposit verification enabled, this endpoint can be used to fetch status updates on ACH micro-deposits. For more details, see [micro-deposit events](www.plaid.com/docs/auth/coverage/microdeposit-events/). @param bank_transfer_event_sync_request [BankTransferEventSyncRequest] @param [Hash] opts the optional parameters @return [Array<(BankTransferEventSyncResponse, Integer, Hash)>] BankTransferEventSyncResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 1193
def bank_transfer_event_sync_with_http_info(bank_transfer_event_sync_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.bank_transfer_event_sync ...'
  end
  # verify the required parameter 'bank_transfer_event_sync_request' is set
  if @api_client.config.client_side_validation && bank_transfer_event_sync_request.nil?
    fail ArgumentError, "Missing the required parameter 'bank_transfer_event_sync_request' when calling PlaidApi.bank_transfer_event_sync"
  end
  # resource path
  local_var_path = '/bank_transfer/event/sync'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(bank_transfer_event_sync_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BankTransferEventSyncResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.bank_transfer_event_sync",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#bank_transfer_event_sync\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
bank_transfer_get(bank_transfer_get_request, opts = {}) click to toggle source

Retrieve a bank transfer The ‘/bank_transfer/get` fetches information about the bank transfer corresponding to the given `bank_transfer_id`. @param bank_transfer_get_request [BankTransferGetRequest] @param [Hash] opts the optional parameters @return [BankTransferGetResponse]

# File lib/plaid/api/plaid_api.rb, line 1251
def bank_transfer_get(bank_transfer_get_request, opts = {})
  data, _status_code, _headers = bank_transfer_get_with_http_info(bank_transfer_get_request, opts)
  data
end
bank_transfer_get_with_http_info(bank_transfer_get_request, opts = {}) click to toggle source

Retrieve a bank transfer The &#x60;/bank_transfer/get&#x60; fetches information about the bank transfer corresponding to the given &#x60;bank_transfer_id&#x60;. @param bank_transfer_get_request [BankTransferGetRequest] @param [Hash] opts the optional parameters @return [Array<(BankTransferGetResponse, Integer, Hash)>] BankTransferGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 1261
def bank_transfer_get_with_http_info(bank_transfer_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.bank_transfer_get ...'
  end
  # verify the required parameter 'bank_transfer_get_request' is set
  if @api_client.config.client_side_validation && bank_transfer_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'bank_transfer_get_request' when calling PlaidApi.bank_transfer_get"
  end
  # resource path
  local_var_path = '/bank_transfer/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(bank_transfer_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BankTransferGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.bank_transfer_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#bank_transfer_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
bank_transfer_list(bank_transfer_list_request, opts = {}) click to toggle source

List bank transfers Use the ‘/bank_transfer/list` endpoint to see a list of all your bank transfers and their statuses. Results are paginated; use the `count` and `offset` query parameters to retrieve the desired bank transfers. @param bank_transfer_list_request [BankTransferListRequest] @param [Hash] opts the optional parameters @return [BankTransferListResponse]

# File lib/plaid/api/plaid_api.rb, line 1319
def bank_transfer_list(bank_transfer_list_request, opts = {})
  data, _status_code, _headers = bank_transfer_list_with_http_info(bank_transfer_list_request, opts)
  data
end
bank_transfer_list_with_http_info(bank_transfer_list_request, opts = {}) click to toggle source

List bank transfers Use the &#x60;/bank_transfer/list&#x60; endpoint to see a list of all your bank transfers and their statuses. Results are paginated; use the &#x60;count&#x60; and &#x60;offset&#x60; query parameters to retrieve the desired bank transfers. @param bank_transfer_list_request [BankTransferListRequest] @param [Hash] opts the optional parameters @return [Array<(BankTransferListResponse, Integer, Hash)>] BankTransferListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 1329
def bank_transfer_list_with_http_info(bank_transfer_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.bank_transfer_list ...'
  end
  # verify the required parameter 'bank_transfer_list_request' is set
  if @api_client.config.client_side_validation && bank_transfer_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'bank_transfer_list_request' when calling PlaidApi.bank_transfer_list"
  end
  # resource path
  local_var_path = '/bank_transfer/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(bank_transfer_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BankTransferListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.bank_transfer_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#bank_transfer_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
bank_transfer_migrate_account(bank_transfer_migrate_account_request, opts = {}) click to toggle source

Migrate account into Bank Transfers As an alternative to adding Items via Link, you can also use the ‘/bank_transfer/migrate_account` endpoint to migrate known account and routing numbers to Plaid Items. Note that Items created in this way are not compatible with endpoints for other products, such as `/accounts/balance/get`, and can only be used with Bank Transfer endpoints. If you require access to other endpoints, create the Item through Link instead. Access to `/bank_transfer/migrate_account` is not enabled by default; to obtain access, contact your Plaid Account Manager. @param bank_transfer_migrate_account_request [BankTransferMigrateAccountRequest] @param [Hash] opts the optional parameters @return [BankTransferMigrateAccountResponse]

# File lib/plaid/api/plaid_api.rb, line 1387
def bank_transfer_migrate_account(bank_transfer_migrate_account_request, opts = {})
  data, _status_code, _headers = bank_transfer_migrate_account_with_http_info(bank_transfer_migrate_account_request, opts)
  data
end
bank_transfer_migrate_account_with_http_info(bank_transfer_migrate_account_request, opts = {}) click to toggle source

Migrate account into Bank Transfers As an alternative to adding Items via Link, you can also use the &#x60;/bank_transfer/migrate_account&#x60; endpoint to migrate known account and routing numbers to Plaid Items. Note that Items created in this way are not compatible with endpoints for other products, such as &#x60;/accounts/balance/get&#x60;, and can only be used with Bank Transfer endpoints. If you require access to other endpoints, create the Item through Link instead. Access to &#x60;/bank_transfer/migrate_account&#x60; is not enabled by default; to obtain access, contact your Plaid Account Manager. @param bank_transfer_migrate_account_request [BankTransferMigrateAccountRequest] @param [Hash] opts the optional parameters @return [Array<(BankTransferMigrateAccountResponse, Integer, Hash)>] BankTransferMigrateAccountResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 1397
def bank_transfer_migrate_account_with_http_info(bank_transfer_migrate_account_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.bank_transfer_migrate_account ...'
  end
  # verify the required parameter 'bank_transfer_migrate_account_request' is set
  if @api_client.config.client_side_validation && bank_transfer_migrate_account_request.nil?
    fail ArgumentError, "Missing the required parameter 'bank_transfer_migrate_account_request' when calling PlaidApi.bank_transfer_migrate_account"
  end
  # resource path
  local_var_path = '/bank_transfer/migrate_account'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(bank_transfer_migrate_account_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BankTransferMigrateAccountResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.bank_transfer_migrate_account",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#bank_transfer_migrate_account\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
bank_transfer_sweep_get(bank_transfer_sweep_get_request, opts = {}) click to toggle source

Retrieve a sweep The ‘/bank_transfer/sweep/get` endpoint fetches information about the sweep corresponding to the given `sweep_id`. @param bank_transfer_sweep_get_request [BankTransferSweepGetRequest] @param [Hash] opts the optional parameters @return [BankTransferSweepGetResponse]

# File lib/plaid/api/plaid_api.rb, line 1455
def bank_transfer_sweep_get(bank_transfer_sweep_get_request, opts = {})
  data, _status_code, _headers = bank_transfer_sweep_get_with_http_info(bank_transfer_sweep_get_request, opts)
  data
end
bank_transfer_sweep_get_with_http_info(bank_transfer_sweep_get_request, opts = {}) click to toggle source

Retrieve a sweep The &#x60;/bank_transfer/sweep/get&#x60; endpoint fetches information about the sweep corresponding to the given &#x60;sweep_id&#x60;. @param bank_transfer_sweep_get_request [BankTransferSweepGetRequest] @param [Hash] opts the optional parameters @return [Array<(BankTransferSweepGetResponse, Integer, Hash)>] BankTransferSweepGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 1465
def bank_transfer_sweep_get_with_http_info(bank_transfer_sweep_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.bank_transfer_sweep_get ...'
  end
  # verify the required parameter 'bank_transfer_sweep_get_request' is set
  if @api_client.config.client_side_validation && bank_transfer_sweep_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'bank_transfer_sweep_get_request' when calling PlaidApi.bank_transfer_sweep_get"
  end
  # resource path
  local_var_path = '/bank_transfer/sweep/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(bank_transfer_sweep_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BankTransferSweepGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.bank_transfer_sweep_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#bank_transfer_sweep_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
bank_transfer_sweep_list(bank_transfer_sweep_list_request, opts = {}) click to toggle source

List sweeps The ‘/bank_transfer/sweep/list` endpoint fetches information about the sweeps matching the given filters. @param bank_transfer_sweep_list_request [BankTransferSweepListRequest] @param [Hash] opts the optional parameters @return [BankTransferSweepListResponse]

# File lib/plaid/api/plaid_api.rb, line 1523
def bank_transfer_sweep_list(bank_transfer_sweep_list_request, opts = {})
  data, _status_code, _headers = bank_transfer_sweep_list_with_http_info(bank_transfer_sweep_list_request, opts)
  data
end
bank_transfer_sweep_list_with_http_info(bank_transfer_sweep_list_request, opts = {}) click to toggle source

List sweeps The &#x60;/bank_transfer/sweep/list&#x60; endpoint fetches information about the sweeps matching the given filters. @param bank_transfer_sweep_list_request [BankTransferSweepListRequest] @param [Hash] opts the optional parameters @return [Array<(BankTransferSweepListResponse, Integer, Hash)>] BankTransferSweepListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 1533
def bank_transfer_sweep_list_with_http_info(bank_transfer_sweep_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.bank_transfer_sweep_list ...'
  end
  # verify the required parameter 'bank_transfer_sweep_list_request' is set
  if @api_client.config.client_side_validation && bank_transfer_sweep_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'bank_transfer_sweep_list_request' when calling PlaidApi.bank_transfer_sweep_list"
  end
  # resource path
  local_var_path = '/bank_transfer/sweep/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(bank_transfer_sweep_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BankTransferSweepListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.bank_transfer_sweep_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#bank_transfer_sweep_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
beacon_account_risk_evaluate(beacon_account_risk_evaluate_request, opts = {}) click to toggle source

Evaluate risk of a bank account Use ‘/beacon/account_risk/v1/evaluate` to get risk insights for a linked account. @param beacon_account_risk_evaluate_request [BeaconAccountRiskEvaluateRequest] @param [Hash] opts the optional parameters @return [BeaconAccountRiskEvaluateResponse]

# File lib/plaid/api/plaid_api.rb, line 1591
def beacon_account_risk_evaluate(beacon_account_risk_evaluate_request, opts = {})
  data, _status_code, _headers = beacon_account_risk_evaluate_with_http_info(beacon_account_risk_evaluate_request, opts)
  data
end
beacon_account_risk_evaluate_with_http_info(beacon_account_risk_evaluate_request, opts = {}) click to toggle source

Evaluate risk of a bank account Use &#x60;/beacon/account_risk/v1/evaluate&#x60; to get risk insights for a linked account. @param beacon_account_risk_evaluate_request [BeaconAccountRiskEvaluateRequest] @param [Hash] opts the optional parameters @return [Array<(BeaconAccountRiskEvaluateResponse, Integer, Hash)>] BeaconAccountRiskEvaluateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 1601
def beacon_account_risk_evaluate_with_http_info(beacon_account_risk_evaluate_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.beacon_account_risk_evaluate ...'
  end
  # verify the required parameter 'beacon_account_risk_evaluate_request' is set
  if @api_client.config.client_side_validation && beacon_account_risk_evaluate_request.nil?
    fail ArgumentError, "Missing the required parameter 'beacon_account_risk_evaluate_request' when calling PlaidApi.beacon_account_risk_evaluate"
  end
  # resource path
  local_var_path = '/beacon/account_risk/v1/evaluate'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(beacon_account_risk_evaluate_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BeaconAccountRiskEvaluateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.beacon_account_risk_evaluate",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#beacon_account_risk_evaluate\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
beacon_duplicate_get(beacon_duplicate_get_request, opts = {}) click to toggle source

Get a Beacon Duplicate Returns a Beacon Duplicate for a given Beacon Duplicate id. A Beacon Duplicate represents a pair of similar Beacon Users within your organization. Two Beacon User revisions are returned for each Duplicate record in either the ‘beacon_user1` or `beacon_user2` response fields. The `analysis` field in the response indicates which fields matched between `beacon_user1` and `beacon_user2`. @param beacon_duplicate_get_request [BeaconDuplicateGetRequest] @param [Hash] opts the optional parameters @return [BeaconDuplicateGetResponse]

# File lib/plaid/api/plaid_api.rb, line 1659
def beacon_duplicate_get(beacon_duplicate_get_request, opts = {})
  data, _status_code, _headers = beacon_duplicate_get_with_http_info(beacon_duplicate_get_request, opts)
  data
end
beacon_duplicate_get_with_http_info(beacon_duplicate_get_request, opts = {}) click to toggle source

Get a Beacon Duplicate Returns a Beacon Duplicate for a given Beacon Duplicate id. A Beacon Duplicate represents a pair of similar Beacon Users within your organization. Two Beacon User revisions are returned for each Duplicate record in either the &#x60;beacon_user1&#x60; or &#x60;beacon_user2&#x60; response fields. The &#x60;analysis&#x60; field in the response indicates which fields matched between &#x60;beacon_user1&#x60; and &#x60;beacon_user2&#x60;. @param beacon_duplicate_get_request [BeaconDuplicateGetRequest] @param [Hash] opts the optional parameters @return [Array<(BeaconDuplicateGetResponse, Integer, Hash)>] BeaconDuplicateGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 1669
def beacon_duplicate_get_with_http_info(beacon_duplicate_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.beacon_duplicate_get ...'
  end
  # verify the required parameter 'beacon_duplicate_get_request' is set
  if @api_client.config.client_side_validation && beacon_duplicate_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'beacon_duplicate_get_request' when calling PlaidApi.beacon_duplicate_get"
  end
  # resource path
  local_var_path = '/beacon/duplicate/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(beacon_duplicate_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BeaconDuplicateGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.beacon_duplicate_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#beacon_duplicate_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
beacon_report_create(beacon_report_create_request, opts = {}) click to toggle source

Create a Beacon Report Create a fraud report for a given Beacon User. @param beacon_report_create_request [BeaconReportCreateRequest] @param [Hash] opts the optional parameters @return [BeaconReportCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 1727
def beacon_report_create(beacon_report_create_request, opts = {})
  data, _status_code, _headers = beacon_report_create_with_http_info(beacon_report_create_request, opts)
  data
end
beacon_report_create_with_http_info(beacon_report_create_request, opts = {}) click to toggle source

Create a Beacon Report Create a fraud report for a given Beacon User. @param beacon_report_create_request [BeaconReportCreateRequest] @param [Hash] opts the optional parameters @return [Array<(BeaconReportCreateResponse, Integer, Hash)>] BeaconReportCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 1737
def beacon_report_create_with_http_info(beacon_report_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.beacon_report_create ...'
  end
  # verify the required parameter 'beacon_report_create_request' is set
  if @api_client.config.client_side_validation && beacon_report_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'beacon_report_create_request' when calling PlaidApi.beacon_report_create"
  end
  # resource path
  local_var_path = '/beacon/report/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(beacon_report_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BeaconReportCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.beacon_report_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#beacon_report_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
beacon_report_get(beacon_report_get_request, opts = {}) click to toggle source

Get a Beacon Report Returns a Beacon report for a given Beacon report id. @param beacon_report_get_request [BeaconReportGetRequest] @param [Hash] opts the optional parameters @return [BeaconReportGetResponse]

# File lib/plaid/api/plaid_api.rb, line 1795
def beacon_report_get(beacon_report_get_request, opts = {})
  data, _status_code, _headers = beacon_report_get_with_http_info(beacon_report_get_request, opts)
  data
end
beacon_report_get_with_http_info(beacon_report_get_request, opts = {}) click to toggle source

Get a Beacon Report Returns a Beacon report for a given Beacon report id. @param beacon_report_get_request [BeaconReportGetRequest] @param [Hash] opts the optional parameters @return [Array<(BeaconReportGetResponse, Integer, Hash)>] BeaconReportGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 1805
def beacon_report_get_with_http_info(beacon_report_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.beacon_report_get ...'
  end
  # verify the required parameter 'beacon_report_get_request' is set
  if @api_client.config.client_side_validation && beacon_report_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'beacon_report_get_request' when calling PlaidApi.beacon_report_get"
  end
  # resource path
  local_var_path = '/beacon/report/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(beacon_report_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BeaconReportGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.beacon_report_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#beacon_report_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
beacon_report_list(beacon_report_list_request, opts = {}) click to toggle source

List Beacon Reports for a Beacon User Use the ‘/beacon/report/list` endpoint to view all Beacon Reports you created for a specific Beacon User. The reports returned by this endpoint are exclusively reports you created for a specific user. A Beacon User can only have one active report at a time, but a new report can be created if a previous report has been deleted. The results from this endpoint are paginated; the `next_cursor` field will be populated if there is another page of results that can be retrieved. To fetch the next page, pass the `next_cursor` value as the `cursor` parameter in the next request. @param beacon_report_list_request [BeaconReportListRequest] @param [Hash] opts the optional parameters @return [BeaconReportListResponse]

# File lib/plaid/api/plaid_api.rb, line 1863
def beacon_report_list(beacon_report_list_request, opts = {})
  data, _status_code, _headers = beacon_report_list_with_http_info(beacon_report_list_request, opts)
  data
end
beacon_report_list_with_http_info(beacon_report_list_request, opts = {}) click to toggle source

List Beacon Reports for a Beacon User Use the &#x60;/beacon/report/list&#x60; endpoint to view all Beacon Reports you created for a specific Beacon User. The reports returned by this endpoint are exclusively reports you created for a specific user. A Beacon User can only have one active report at a time, but a new report can be created if a previous report has been deleted. The results from this endpoint are paginated; the &#x60;next_cursor&#x60; field will be populated if there is another page of results that can be retrieved. To fetch the next page, pass the &#x60;next_cursor&#x60; value as the &#x60;cursor&#x60; parameter in the next request. @param beacon_report_list_request [BeaconReportListRequest] @param [Hash] opts the optional parameters @return [Array<(BeaconReportListResponse, Integer, Hash)>] BeaconReportListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 1873
def beacon_report_list_with_http_info(beacon_report_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.beacon_report_list ...'
  end
  # verify the required parameter 'beacon_report_list_request' is set
  if @api_client.config.client_side_validation && beacon_report_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'beacon_report_list_request' when calling PlaidApi.beacon_report_list"
  end
  # resource path
  local_var_path = '/beacon/report/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(beacon_report_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BeaconReportListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.beacon_report_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#beacon_report_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
beacon_report_syndication_get(beacon_report_syndication_get_request, opts = {}) click to toggle source

Get a Beacon Report Syndication Returns a Beacon Report Syndication for a given Beacon Report Syndication id. @param beacon_report_syndication_get_request [BeaconReportSyndicationGetRequest] @param [Hash] opts the optional parameters @return [BeaconReportSyndicationGetResponse]

# File lib/plaid/api/plaid_api.rb, line 1931
def beacon_report_syndication_get(beacon_report_syndication_get_request, opts = {})
  data, _status_code, _headers = beacon_report_syndication_get_with_http_info(beacon_report_syndication_get_request, opts)
  data
end
beacon_report_syndication_get_with_http_info(beacon_report_syndication_get_request, opts = {}) click to toggle source

Get a Beacon Report Syndication Returns a Beacon Report Syndication for a given Beacon Report Syndication id. @param beacon_report_syndication_get_request [BeaconReportSyndicationGetRequest] @param [Hash] opts the optional parameters @return [Array<(BeaconReportSyndicationGetResponse, Integer, Hash)>] BeaconReportSyndicationGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 1941
def beacon_report_syndication_get_with_http_info(beacon_report_syndication_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.beacon_report_syndication_get ...'
  end
  # verify the required parameter 'beacon_report_syndication_get_request' is set
  if @api_client.config.client_side_validation && beacon_report_syndication_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'beacon_report_syndication_get_request' when calling PlaidApi.beacon_report_syndication_get"
  end
  # resource path
  local_var_path = '/beacon/report_syndication/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(beacon_report_syndication_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BeaconReportSyndicationGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.beacon_report_syndication_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#beacon_report_syndication_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
beacon_report_syndication_list(beacon_report_syndication_list_request, opts = {}) click to toggle source

List Beacon Report Syndications for a Beacon User Use the ‘/beacon/report_syndication/list` endpoint to view all Beacon Reports that have been syndicated to a specific Beacon User. This endpoint returns Beacon Report Syndications which are references to Beacon Reports created either by you, or another Beacon customer, that matched the specified Beacon User. A Beacon User can have multiple active Beacon Report Syndications at once. The results from this endpoint are paginated; the `next_cursor` field will be populated if there is another page of results that can be retrieved. To fetch the next page, pass the `next_cursor` value as the `cursor` parameter in the next request. @param beacon_report_syndication_list_request [BeaconReportSyndicationListRequest] @param [Hash] opts the optional parameters @return [BeaconReportSyndicationListResponse]

# File lib/plaid/api/plaid_api.rb, line 1999
def beacon_report_syndication_list(beacon_report_syndication_list_request, opts = {})
  data, _status_code, _headers = beacon_report_syndication_list_with_http_info(beacon_report_syndication_list_request, opts)
  data
end
beacon_report_syndication_list_with_http_info(beacon_report_syndication_list_request, opts = {}) click to toggle source

List Beacon Report Syndications for a Beacon User Use the &#x60;/beacon/report_syndication/list&#x60; endpoint to view all Beacon Reports that have been syndicated to a specific Beacon User. This endpoint returns Beacon Report Syndications which are references to Beacon Reports created either by you, or another Beacon customer, that matched the specified Beacon User. A Beacon User can have multiple active Beacon Report Syndications at once. The results from this endpoint are paginated; the &#x60;next_cursor&#x60; field will be populated if there is another page of results that can be retrieved. To fetch the next page, pass the &#x60;next_cursor&#x60; value as the &#x60;cursor&#x60; parameter in the next request. @param beacon_report_syndication_list_request [BeaconReportSyndicationListRequest] @param [Hash] opts the optional parameters @return [Array<(BeaconReportSyndicationListResponse, Integer, Hash)>] BeaconReportSyndicationListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 2009
def beacon_report_syndication_list_with_http_info(beacon_report_syndication_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.beacon_report_syndication_list ...'
  end
  # verify the required parameter 'beacon_report_syndication_list_request' is set
  if @api_client.config.client_side_validation && beacon_report_syndication_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'beacon_report_syndication_list_request' when calling PlaidApi.beacon_report_syndication_list"
  end
  # resource path
  local_var_path = '/beacon/report_syndication/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(beacon_report_syndication_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BeaconReportSyndicationListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.beacon_report_syndication_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#beacon_report_syndication_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
beacon_user_account_insights_get(beacon_user_account_insights_get_request, opts = {}) click to toggle source

Get Account Insights for a Beacon User Get Account Insights for all Accounts linked to this Beacon User. The insights for each account are computed based on the information that was last retrieved from the financial institution. @param beacon_user_account_insights_get_request [BeaconUserAccountInsightsGetRequest] @param [Hash] opts the optional parameters @return [BeaconUserAccountInsightsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 2067
def beacon_user_account_insights_get(beacon_user_account_insights_get_request, opts = {})
  data, _status_code, _headers = beacon_user_account_insights_get_with_http_info(beacon_user_account_insights_get_request, opts)
  data
end
beacon_user_account_insights_get_with_http_info(beacon_user_account_insights_get_request, opts = {}) click to toggle source

Get Account Insights for a Beacon User Get Account Insights for all Accounts linked to this Beacon User. The insights for each account are computed based on the information that was last retrieved from the financial institution. @param beacon_user_account_insights_get_request [BeaconUserAccountInsightsGetRequest] @param [Hash] opts the optional parameters @return [Array<(BeaconUserAccountInsightsGetResponse, Integer, Hash)>] BeaconUserAccountInsightsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 2077
def beacon_user_account_insights_get_with_http_info(beacon_user_account_insights_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.beacon_user_account_insights_get ...'
  end
  # verify the required parameter 'beacon_user_account_insights_get_request' is set
  if @api_client.config.client_side_validation && beacon_user_account_insights_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'beacon_user_account_insights_get_request' when calling PlaidApi.beacon_user_account_insights_get"
  end
  # resource path
  local_var_path = '/beacon/user/account_insights/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(beacon_user_account_insights_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BeaconUserAccountInsightsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.beacon_user_account_insights_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#beacon_user_account_insights_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
beacon_user_create(beacon_user_create_request, opts = {}) click to toggle source

Create a Beacon User Create and scan a Beacon User against your Beacon Program, according to your program’s settings. When you submit a new user to ‘/beacon/user/create`, several checks are performed immediately: - The user’s PII (provided within the ‘user` object) is searched against all other users within the Beacon Program you specified. If a match is found that violates your program’s "Duplicate Information Filtering" settings, the user will be returned with a status of ‘pending_review`. - The user’s PII is also searched against all fraud reports created by your organization across all of your Beacon Programs. If the user’s data matches a fraud report that your team created, the user will be returned with a status of ‘rejected`. - Finally, the user’s PII is searched against all fraud report shared with the Beacon Network by other companies. If a matching fraud report is found, the user will be returned with a ‘pending_review` status if your program has enabled automatic flagging based on network fraud. @param beacon_user_create_request [BeaconUserCreateRequest] @param [Hash] opts the optional parameters @return [BeaconUserCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 2135
def beacon_user_create(beacon_user_create_request, opts = {})
  data, _status_code, _headers = beacon_user_create_with_http_info(beacon_user_create_request, opts)
  data
end
beacon_user_create_with_http_info(beacon_user_create_request, opts = {}) click to toggle source

Create a Beacon User Create and scan a Beacon User against your Beacon Program, according to your program&#39;s settings. When you submit a new user to &#x60;/beacon/user/create&#x60;, several checks are performed immediately: - The user&#39;s PII (provided within the &#x60;user&#x60; object) is searched against all other users within the Beacon Program you specified. If a match is found that violates your program&#39;s "Duplicate Information Filtering&quot; settings, the user will be returned with a status of &#x60;pending_review&#x60;. - The user&#39;s PII is also searched against all fraud reports created by your organization across all of your Beacon Programs. If the user&#39;s data matches a fraud report that your team created, the user will be returned with a status of &#x60;rejected&#x60;. - Finally, the user&#39;s PII is searched against all fraud report shared with the Beacon Network by other companies. If a matching fraud report is found, the user will be returned with a &#x60;pending_review&#x60; status if your program has enabled automatic flagging based on network fraud. @param beacon_user_create_request [BeaconUserCreateRequest] @param [Hash] opts the optional parameters @return [Array<(BeaconUserCreateResponse, Integer, Hash)>] BeaconUserCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 2145
def beacon_user_create_with_http_info(beacon_user_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.beacon_user_create ...'
  end
  # verify the required parameter 'beacon_user_create_request' is set
  if @api_client.config.client_side_validation && beacon_user_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'beacon_user_create_request' when calling PlaidApi.beacon_user_create"
  end
  # resource path
  local_var_path = '/beacon/user/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(beacon_user_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BeaconUserCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.beacon_user_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#beacon_user_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
beacon_user_get(beacon_user_get_request, opts = {}) click to toggle source

Get a Beacon User Fetch a Beacon User. The Beacon User is returned with all of their associated information and a ‘status` based on the Beacon Network duplicate record and fraud checks. @param beacon_user_get_request [BeaconUserGetRequest] @param [Hash] opts the optional parameters @return [BeaconUserGetResponse]

# File lib/plaid/api/plaid_api.rb, line 2203
def beacon_user_get(beacon_user_get_request, opts = {})
  data, _status_code, _headers = beacon_user_get_with_http_info(beacon_user_get_request, opts)
  data
end
beacon_user_get_with_http_info(beacon_user_get_request, opts = {}) click to toggle source

Get a Beacon User Fetch a Beacon User. The Beacon User is returned with all of their associated information and a &#x60;status&#x60; based on the Beacon Network duplicate record and fraud checks. @param beacon_user_get_request [BeaconUserGetRequest] @param [Hash] opts the optional parameters @return [Array<(BeaconUserGetResponse, Integer, Hash)>] BeaconUserGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 2213
def beacon_user_get_with_http_info(beacon_user_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.beacon_user_get ...'
  end
  # verify the required parameter 'beacon_user_get_request' is set
  if @api_client.config.client_side_validation && beacon_user_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'beacon_user_get_request' when calling PlaidApi.beacon_user_get"
  end
  # resource path
  local_var_path = '/beacon/user/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(beacon_user_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BeaconUserGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.beacon_user_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#beacon_user_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
beacon_user_history_list(beacon_user_history_list_request, opts = {}) click to toggle source

List a Beacon User’s history List all changes to the Beacon User in reverse-chronological order. @param beacon_user_history_list_request [BeaconUserHistoryListRequest] @param [Hash] opts the optional parameters @return [BeaconUserHistoryListResponse]

# File lib/plaid/api/plaid_api.rb, line 2271
def beacon_user_history_list(beacon_user_history_list_request, opts = {})
  data, _status_code, _headers = beacon_user_history_list_with_http_info(beacon_user_history_list_request, opts)
  data
end
beacon_user_history_list_with_http_info(beacon_user_history_list_request, opts = {}) click to toggle source

List a Beacon User&#39;s history List all changes to the Beacon User in reverse-chronological order. @param beacon_user_history_list_request [BeaconUserHistoryListRequest] @param [Hash] opts the optional parameters @return [Array<(BeaconUserHistoryListResponse, Integer, Hash)>] BeaconUserHistoryListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 2281
def beacon_user_history_list_with_http_info(beacon_user_history_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.beacon_user_history_list ...'
  end
  # verify the required parameter 'beacon_user_history_list_request' is set
  if @api_client.config.client_side_validation && beacon_user_history_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'beacon_user_history_list_request' when calling PlaidApi.beacon_user_history_list"
  end
  # resource path
  local_var_path = '/beacon/user/history/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(beacon_user_history_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BeaconUserHistoryListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.beacon_user_history_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#beacon_user_history_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
beacon_user_review(beacon_user_review_request, opts = {}) click to toggle source

Review a Beacon User Update the status of a Beacon User. When updating a Beacon User’s status via this endpoint, Plaid validates that the status change is consistent with the related state for this Beacon User. Specifically, we will check: 1. Whether there are any associated Beacon Reports connected to the Beacon User, and 2. Whether there are any confirmed Beacon Report Syndications connected to the Beacon User. When updating a Beacon User’s status to "rejected", we enforce that either a Beacon Report has been created for the Beacon User or a Beacon Report Syndication has been confirmed. When updating a Beacon User’s status to "cleared", we enforce that there are no active Beacon Reports or confirmed Beacon Report Syndications associated with the user. If you previously created a Beacon Report for this user, you must delete it before updating the Beacon User’s status to "cleared". There are no restrictions on updating a Beacon User’s status to "pending_review". If these conditions are not met, the request will be rejected with an error explaining the issue. @param beacon_user_review_request [BeaconUserReviewRequest] @param [Hash] opts the optional parameters @return [BeaconUserGetResponse]

# File lib/plaid/api/plaid_api.rb, line 2339
def beacon_user_review(beacon_user_review_request, opts = {})
  data, _status_code, _headers = beacon_user_review_with_http_info(beacon_user_review_request, opts)
  data
end
beacon_user_review_with_http_info(beacon_user_review_request, opts = {}) click to toggle source

Review a Beacon User Update the status of a Beacon User. When updating a Beacon User&#39;s status via this endpoint, Plaid validates that the status change is consistent with the related state for this Beacon User. Specifically, we will check: 1. Whether there are any associated Beacon Reports connected to the Beacon User, and 2. Whether there are any confirmed Beacon Report Syndications connected to the Beacon User. When updating a Beacon User&#39;s status to "rejected&quot;, we enforce that either a Beacon Report has been created for the Beacon User or a Beacon Report Syndication has been confirmed. When updating a Beacon User&#39;s status to "cleared&quot;, we enforce that there are no active Beacon Reports or confirmed Beacon Report Syndications associated with the user. If you previously created a Beacon Report for this user, you must delete it before updating the Beacon User&#39;s status to "cleared&quot;. There are no restrictions on updating a Beacon User&#39;s status to "pending_review&quot;. If these conditions are not met, the request will be rejected with an error explaining the issue. @param beacon_user_review_request [BeaconUserReviewRequest] @param [Hash] opts the optional parameters @return [Array<(BeaconUserGetResponse, Integer, Hash)>] BeaconUserGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 2349
def beacon_user_review_with_http_info(beacon_user_review_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.beacon_user_review ...'
  end
  # verify the required parameter 'beacon_user_review_request' is set
  if @api_client.config.client_side_validation && beacon_user_review_request.nil?
    fail ArgumentError, "Missing the required parameter 'beacon_user_review_request' when calling PlaidApi.beacon_user_review"
  end
  # resource path
  local_var_path = '/beacon/user/review'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(beacon_user_review_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BeaconUserGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.beacon_user_review",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#beacon_user_review\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
beacon_user_update(beacon_user_update_request, opts = {}) click to toggle source

Update the identity data of a Beacon User Update the identity data for a Beacon User in your Beacon Program or add new accounts to the Beacon User. Similar to ‘/beacon/user/create`, several checks are performed immediately when you submit an identity data change to `/beacon/user/update`: - The user’s updated PII is searched against all other users within the Beacon Program you specified. If a match is found that violates your program’s "Duplicate Information Filtering" settings, the user will be returned with a status of ‘pending_review`. - The user’s updated PII is also searched against all fraud reports created by your organization across all of your Beacon Programs. If the user’s data matches a fraud report that your team created, the user will be returned with a status of ‘rejected`. - Finally, the user’s PII is searched against all fraud report shared with the Beacon Network by other companies. If a matching fraud report is found, the user will be returned with a ‘pending_review` status if your program has enabled automatic flagging based on network fraud. Plaid maintains a version history for each Beacon User, so the Beacon User’s identity data before and after the update is retained as separate versions. @param beacon_user_update_request [BeaconUserUpdateRequest] @param [Hash] opts the optional parameters @return [BeaconUserUpdateResponse]

# File lib/plaid/api/plaid_api.rb, line 2407
def beacon_user_update(beacon_user_update_request, opts = {})
  data, _status_code, _headers = beacon_user_update_with_http_info(beacon_user_update_request, opts)
  data
end
beacon_user_update_with_http_info(beacon_user_update_request, opts = {}) click to toggle source

Update the identity data of a Beacon User Update the identity data for a Beacon User in your Beacon Program or add new accounts to the Beacon User. Similar to &#x60;/beacon/user/create&#x60;, several checks are performed immediately when you submit an identity data change to &#x60;/beacon/user/update&#x60;: - The user&#39;s updated PII is searched against all other users within the Beacon Program you specified. If a match is found that violates your program&#39;s "Duplicate Information Filtering&quot; settings, the user will be returned with a status of &#x60;pending_review&#x60;. - The user&#39;s updated PII is also searched against all fraud reports created by your organization across all of your Beacon Programs. If the user&#39;s data matches a fraud report that your team created, the user will be returned with a status of &#x60;rejected&#x60;. - Finally, the user&#39;s PII is searched against all fraud report shared with the Beacon Network by other companies. If a matching fraud report is found, the user will be returned with a &#x60;pending_review&#x60; status if your program has enabled automatic flagging based on network fraud. Plaid maintains a version history for each Beacon User, so the Beacon User&#39;s identity data before and after the update is retained as separate versions. @param beacon_user_update_request [BeaconUserUpdateRequest] @param [Hash] opts the optional parameters @return [Array<(BeaconUserUpdateResponse, Integer, Hash)>] BeaconUserUpdateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 2417
def beacon_user_update_with_http_info(beacon_user_update_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.beacon_user_update ...'
  end
  # verify the required parameter 'beacon_user_update_request' is set
  if @api_client.config.client_side_validation && beacon_user_update_request.nil?
    fail ArgumentError, "Missing the required parameter 'beacon_user_update_request' when calling PlaidApi.beacon_user_update"
  end
  # resource path
  local_var_path = '/beacon/user/update'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(beacon_user_update_request)

  # return_type
  return_type = opts[:debug_return_type] || 'BeaconUserUpdateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.beacon_user_update",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#beacon_user_update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
categories_get(body, opts = {}) click to toggle source

Get categories Send a request to the ‘/categories/get` endpoint to get detailed information on categories returned by Plaid. This endpoint does not require authentication. All implementations are recommended to use the newer `personal_finance_category` taxonomy instead of the older `category` taxonomy supported by this endpoint. The [`personal_finance_category taxonomy` CSV file](plaid.com/documents/transactions-personal-finance-category-taxonomy.csv) is available for download and is not accessible via API. @param body [Object] @param [Hash] opts the optional parameters @return [CategoriesGetResponse]

# File lib/plaid/api/plaid_api.rb, line 2475
def categories_get(body, opts = {})
  data, _status_code, _headers = categories_get_with_http_info(body, opts)
  data
end
categories_get_with_http_info(body, opts = {}) click to toggle source

Get categories Send a request to the &#x60;/categories/get&#x60; endpoint to get detailed information on categories returned by Plaid. This endpoint does not require authentication. All implementations are recommended to use the newer &#x60;personal_finance_category&#x60; taxonomy instead of the older &#x60;category&#x60; taxonomy supported by this endpoint. The [&#x60;personal_finance_category taxonomy&#x60; CSV file](plaid.com/documents/transactions-personal-finance-category-taxonomy.csv) is available for download and is not accessible via API. @param body [Object] @param [Hash] opts the optional parameters @return [Array<(CategoriesGetResponse, Integer, Hash)>] CategoriesGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 2485
def categories_get_with_http_info(body, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.categories_get ...'
  end
  # verify the required parameter 'body' is set
  if @api_client.config.client_side_validation && body.nil?
    fail ArgumentError, "Missing the required parameter 'body' when calling PlaidApi.categories_get"
  end
  # resource path
  local_var_path = '/categories/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(body)

  # return_type
  return_type = opts[:debug_return_type] || 'CategoriesGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || []

  new_options = opts.merge(
    :operation => :"PlaidApi.categories_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#categories_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
consumer_report_pdf_get(consumer_report_pdf_get_request, opts = {}) click to toggle source

Retrieve a PDF Reports Retrieves all existing CRB Bank Income and Base reports for the consumer in PDF format. Response is PDF binary data. The ‘request_id` is returned in the `Plaid-Request-ID` header. @param consumer_report_pdf_get_request [ConsumerReportPDFGetRequest] @param [Hash] opts the optional parameters @return [File]

# File lib/plaid/api/plaid_api.rb, line 2611
def consumer_report_pdf_get(consumer_report_pdf_get_request, opts = {})
  data, _status_code, _headers = consumer_report_pdf_get_with_http_info(consumer_report_pdf_get_request, opts)
  data
end
consumer_report_pdf_get_with_http_info(consumer_report_pdf_get_request, opts = {}) click to toggle source

Retrieve a PDF Reports Retrieves all existing CRB Bank Income and Base reports for the consumer in PDF format. Response is PDF binary data. The &#x60;request_id&#x60; is returned in the &#x60;Plaid-Request-ID&#x60; header. @param consumer_report_pdf_get_request [ConsumerReportPDFGetRequest] @param [Hash] opts the optional parameters @return [Array<(File, Integer, Hash)>] File data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 2621
def consumer_report_pdf_get_with_http_info(consumer_report_pdf_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.consumer_report_pdf_get ...'
  end
  # verify the required parameter 'consumer_report_pdf_get_request' is set
  if @api_client.config.client_side_validation && consumer_report_pdf_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'consumer_report_pdf_get_request' when calling PlaidApi.consumer_report_pdf_get"
  end
  # resource path
  local_var_path = '/consumer_report/pdf/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/pdf'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(consumer_report_pdf_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'File'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.consumer_report_pdf_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#consumer_report_pdf_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_bank_income_create(cra_bank_income_create_request, opts = {}) click to toggle source

Create a CRA report for income verification ‘/cra/bank_income/create` creates a CRA report for income verification @param cra_bank_income_create_request [CraBankIncomeCreateRequest] @param [Hash] opts the optional parameters @return [CraBankIncomeCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 2679
def cra_bank_income_create(cra_bank_income_create_request, opts = {})
  data, _status_code, _headers = cra_bank_income_create_with_http_info(cra_bank_income_create_request, opts)
  data
end
cra_bank_income_create_with_http_info(cra_bank_income_create_request, opts = {}) click to toggle source

Create a CRA report for income verification &#x60;/cra/bank_income/create&#x60; creates a CRA report for income verification @param cra_bank_income_create_request [CraBankIncomeCreateRequest] @param [Hash] opts the optional parameters @return [Array<(CraBankIncomeCreateResponse, Integer, Hash)>] CraBankIncomeCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 2689
def cra_bank_income_create_with_http_info(cra_bank_income_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_bank_income_create ...'
  end
  # verify the required parameter 'cra_bank_income_create_request' is set
  if @api_client.config.client_side_validation && cra_bank_income_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_bank_income_create_request' when calling PlaidApi.cra_bank_income_create"
  end
  # resource path
  local_var_path = '/cra/bank_income/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_bank_income_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraBankIncomeCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_bank_income_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_bank_income_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_bank_income_get(cra_bank_income_get_request, opts = {}) click to toggle source

Retrieve information from the bank accounts used for income verification ‘/cra/bank_income/get` returns the bank income report(s) for a specified user. @param cra_bank_income_get_request [CraBankIncomeGetRequest] @param [Hash] opts the optional parameters @return [CraBankIncomeGetResponse]

# File lib/plaid/api/plaid_api.rb, line 2747
def cra_bank_income_get(cra_bank_income_get_request, opts = {})
  data, _status_code, _headers = cra_bank_income_get_with_http_info(cra_bank_income_get_request, opts)
  data
end
cra_bank_income_get_with_http_info(cra_bank_income_get_request, opts = {}) click to toggle source

Retrieve information from the bank accounts used for income verification &#x60;/cra/bank_income/get&#x60; returns the bank income report(s) for a specified user. @param cra_bank_income_get_request [CraBankIncomeGetRequest] @param [Hash] opts the optional parameters @return [Array<(CraBankIncomeGetResponse, Integer, Hash)>] CraBankIncomeGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 2757
def cra_bank_income_get_with_http_info(cra_bank_income_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_bank_income_get ...'
  end
  # verify the required parameter 'cra_bank_income_get_request' is set
  if @api_client.config.client_side_validation && cra_bank_income_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_bank_income_get_request' when calling PlaidApi.cra_bank_income_get"
  end
  # resource path
  local_var_path = '/cra/bank_income/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_bank_income_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraBankIncomeGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_bank_income_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_bank_income_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_base_report_create(cra_base_report_create_request, opts = {}) click to toggle source

Create a Base Report This endpoint allows the customer to create a Base Report by passing in a user token. The Base Report will be generated based on the most recently linked item from the user token. @param cra_base_report_create_request [CraBaseReportCreateRequest] @param [Hash] opts the optional parameters @return [CraBaseReportCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 2815
def cra_base_report_create(cra_base_report_create_request, opts = {})
  data, _status_code, _headers = cra_base_report_create_with_http_info(cra_base_report_create_request, opts)
  data
end
cra_base_report_create_with_http_info(cra_base_report_create_request, opts = {}) click to toggle source

Create a Base Report This endpoint allows the customer to create a Base Report by passing in a user token. The Base Report will be generated based on the most recently linked item from the user token. @param cra_base_report_create_request [CraBaseReportCreateRequest] @param [Hash] opts the optional parameters @return [Array<(CraBaseReportCreateResponse, Integer, Hash)>] CraBaseReportCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 2825
def cra_base_report_create_with_http_info(cra_base_report_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_base_report_create ...'
  end
  # verify the required parameter 'cra_base_report_create_request' is set
  if @api_client.config.client_side_validation && cra_base_report_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_base_report_create_request' when calling PlaidApi.cra_base_report_create"
  end
  # resource path
  local_var_path = '/cra/base_report/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_base_report_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraBaseReportCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_base_report_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_base_report_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_base_report_get(cra_base_report_get_request, opts = {}) click to toggle source

Retrieve a Base Report This endpoint allows the customer to retrieve a Base Report. Customers should pass in the ‘user_token` created in `/user/create`. @param cra_base_report_get_request [CraBaseReportGetRequest] @param [Hash] opts the optional parameters @return [CraBaseReportGetResponse]

# File lib/plaid/api/plaid_api.rb, line 2883
def cra_base_report_get(cra_base_report_get_request, opts = {})
  data, _status_code, _headers = cra_base_report_get_with_http_info(cra_base_report_get_request, opts)
  data
end
cra_base_report_get_with_http_info(cra_base_report_get_request, opts = {}) click to toggle source

Retrieve a Base Report This endpoint allows the customer to retrieve a Base Report. Customers should pass in the &#x60;user_token&#x60; created in &#x60;/user/create&#x60;. @param cra_base_report_get_request [CraBaseReportGetRequest] @param [Hash] opts the optional parameters @return [Array<(CraBaseReportGetResponse, Integer, Hash)>] CraBaseReportGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 2893
def cra_base_report_get_with_http_info(cra_base_report_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_base_report_get ...'
  end
  # verify the required parameter 'cra_base_report_get_request' is set
  if @api_client.config.client_side_validation && cra_base_report_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_base_report_get_request' when calling PlaidApi.cra_base_report_get"
  end
  # resource path
  local_var_path = '/cra/base_report/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_base_report_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraBaseReportGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_base_report_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_base_report_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_check_report_base_report_get(cra_check_report_base_report_get_request, opts = {}) click to toggle source

Retrieve a Base Report This endpoint allows you to retrieve the Base Report for your user, allowing you to receive comprehensive bank account and cash flow data. You should call this endpoint after you’ve received a ‘CHECK_REPORT_READY` webhook, either after the Link session for the user or after calling `/cra/check_report/create`. If the most recent consumer report for the user doesn’t have sufficient data to generate the base report, or the consumer report has expired, you will receive an error indicating that you should create a new consumer report by calling ‘/cra/check_report/create`. @param cra_check_report_base_report_get_request [CraCheckReportBaseReportGetRequest] @param [Hash] opts the optional parameters @return [CraCheckReportBaseReportGetResponse]

# File lib/plaid/api/plaid_api.rb, line 2951
def cra_check_report_base_report_get(cra_check_report_base_report_get_request, opts = {})
  data, _status_code, _headers = cra_check_report_base_report_get_with_http_info(cra_check_report_base_report_get_request, opts)
  data
end
cra_check_report_base_report_get_with_http_info(cra_check_report_base_report_get_request, opts = {}) click to toggle source

Retrieve a Base Report This endpoint allows you to retrieve the Base Report for your user, allowing you to receive comprehensive bank account and cash flow data. You should call this endpoint after you&#39;ve received a &#x60;CHECK_REPORT_READY&#x60; webhook, either after the Link session for the user or after calling &#x60;/cra/check_report/create&#x60;. If the most recent consumer report for the user doesn&#39;t have sufficient data to generate the base report, or the consumer report has expired, you will receive an error indicating that you should create a new consumer report by calling &#x60;/cra/check_report/create&#x60;. @param cra_check_report_base_report_get_request [CraCheckReportBaseReportGetRequest] @param [Hash] opts the optional parameters @return [Array<(CraCheckReportBaseReportGetResponse, Integer, Hash)>] CraCheckReportBaseReportGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 2961
def cra_check_report_base_report_get_with_http_info(cra_check_report_base_report_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_check_report_base_report_get ...'
  end
  # verify the required parameter 'cra_check_report_base_report_get_request' is set
  if @api_client.config.client_side_validation && cra_check_report_base_report_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_check_report_base_report_get_request' when calling PlaidApi.cra_check_report_base_report_get"
  end
  # resource path
  local_var_path = '/cra/check_report/base_report/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_check_report_base_report_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraCheckReportBaseReportGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_check_report_base_report_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_check_report_base_report_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_check_report_create(cra_check_report_create_request, opts = {}) click to toggle source

Create a Consumer Report ‘/cra/check_report/create` creates a Consumer Report powered by Plaid Check. You can call this endpoint to create a new report if `consumer_report_permissible_purpose` was omitted during Link token creation. If you did provide a `consumer_report_permissible_purpose` during Link token creation, then Plaid Check will automatically begin creating a Consumer Report once the user completes the Link process, and it is not necessary to call `/cra/check_report/create` before retrieving the report. `/cra/check_report/create` can also be used to refresh data in an existing report. A Consumer Report will last for 24 hours before expiring; you should call any `/get` endpoints on the report before it expires. If a report expires, you can call `/cra/check_report/create` again to re-generate it. Note that refreshing or regenerating a report is a billable event. @param cra_check_report_create_request [CraCheckReportCreateRequest] @param [Hash] opts the optional parameters @return [CraCheckReportCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 3019
def cra_check_report_create(cra_check_report_create_request, opts = {})
  data, _status_code, _headers = cra_check_report_create_with_http_info(cra_check_report_create_request, opts)
  data
end
cra_check_report_create_with_http_info(cra_check_report_create_request, opts = {}) click to toggle source

Create a Consumer Report &#x60;/cra/check_report/create&#x60; creates a Consumer Report powered by Plaid Check. You can call this endpoint to create a new report if &#x60;consumer_report_permissible_purpose&#x60; was omitted during Link token creation. If you did provide a &#x60;consumer_report_permissible_purpose&#x60; during Link token creation, then Plaid Check will automatically begin creating a Consumer Report once the user completes the Link process, and it is not necessary to call &#x60;/cra/check_report/create&#x60; before retrieving the report. &#x60;/cra/check_report/create&#x60; can also be used to refresh data in an existing report. A Consumer Report will last for 24 hours before expiring; you should call any &#x60;/get&#x60; endpoints on the report before it expires. If a report expires, you can call &#x60;/cra/check_report/create&#x60; again to re-generate it. Note that refreshing or regenerating a report is a billable event. @param cra_check_report_create_request [CraCheckReportCreateRequest] @param [Hash] opts the optional parameters @return [Array<(CraCheckReportCreateResponse, Integer, Hash)>] CraCheckReportCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 3029
def cra_check_report_create_with_http_info(cra_check_report_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_check_report_create ...'
  end
  # verify the required parameter 'cra_check_report_create_request' is set
  if @api_client.config.client_side_validation && cra_check_report_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_check_report_create_request' when calling PlaidApi.cra_check_report_create"
  end
  # resource path
  local_var_path = '/cra/check_report/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_check_report_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraCheckReportCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_check_report_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_check_report_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_check_report_income_insights_get(cra_check_report_income_insights_get_request, opts = {}) click to toggle source

Retrieve cash flow information from your user’s banks This endpoint allows you to retrieve the Income Insights report for your user. You should call this endpoint after you’ve received a ‘CHECK_REPORT_READY` webhook, either after the Link session for the user or after calling `/cra/check_report/create`. If the most recent consumer report for the user doesn’t have sufficient data to generate the base report, or the consumer report has expired, you will receive an error indicating that you should create a new consumer report by calling `/cra/check_report/create`. @param cra_check_report_income_insights_get_request [CraCheckReportIncomeInsightsGetRequest] @param [Hash] opts the optional parameters @return [CraCheckReportIncomeInsightsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 3087
def cra_check_report_income_insights_get(cra_check_report_income_insights_get_request, opts = {})
  data, _status_code, _headers = cra_check_report_income_insights_get_with_http_info(cra_check_report_income_insights_get_request, opts)
  data
end
cra_check_report_income_insights_get_with_http_info(cra_check_report_income_insights_get_request, opts = {}) click to toggle source

Retrieve cash flow information from your user&#39;s banks This endpoint allows you to retrieve the Income Insights report for your user. You should call this endpoint after you&#39;ve received a &#x60;CHECK_REPORT_READY&#x60; webhook, either after the Link session for the user or after calling &#x60;/cra/check_report/create&#x60;. If the most recent consumer report for the user doesn’t have sufficient data to generate the base report, or the consumer report has expired, you will receive an error indicating that you should create a new consumer report by calling &#x60;/cra/check_report/create&#x60;. @param cra_check_report_income_insights_get_request [CraCheckReportIncomeInsightsGetRequest] @param [Hash] opts the optional parameters @return [Array<(CraCheckReportIncomeInsightsGetResponse, Integer, Hash)>] CraCheckReportIncomeInsightsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 3097
def cra_check_report_income_insights_get_with_http_info(cra_check_report_income_insights_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_check_report_income_insights_get ...'
  end
  # verify the required parameter 'cra_check_report_income_insights_get_request' is set
  if @api_client.config.client_side_validation && cra_check_report_income_insights_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_check_report_income_insights_get_request' when calling PlaidApi.cra_check_report_income_insights_get"
  end
  # resource path
  local_var_path = '/cra/check_report/income_insights/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_check_report_income_insights_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraCheckReportIncomeInsightsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_check_report_income_insights_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_check_report_income_insights_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_check_report_network_insights_get(cra_check_report_network_insights_get_request, opts = {}) click to toggle source

Retrieve network attributes for the user This endpoint allows you to retrieve the Network Insights product for your user. You should call this endpoint after you’ve received the ‘CHECK_REPORT_READY` webhook, either after the Link session for the user or after calling `/cra/check_report/create`. If the most recent consumer report for the user doesn’t have sufficient data to generate the report, or the consumer report has expired, you will receive an error indicating that you should create a new consumer report by calling `/cra/check_report/create`. If you did not initialize Link with the `cra_network_attributes` product or have generated a report using `/cra/check_report/create`, we will generate the attributes when you call this endpoint. @param cra_check_report_network_insights_get_request [CraCheckReportNetworkInsightsGetRequest] @param [Hash] opts the optional parameters @return [CraCheckReportNetworkInsightsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 3155
def cra_check_report_network_insights_get(cra_check_report_network_insights_get_request, opts = {})
  data, _status_code, _headers = cra_check_report_network_insights_get_with_http_info(cra_check_report_network_insights_get_request, opts)
  data
end
cra_check_report_network_insights_get_with_http_info(cra_check_report_network_insights_get_request, opts = {}) click to toggle source

Retrieve network attributes for the user This endpoint allows you to retrieve the Network Insights product for your user. You should call this endpoint after you&#39;ve received the &#x60;CHECK_REPORT_READY&#x60; webhook, either after the Link session for the user or after calling &#x60;/cra/check_report/create&#x60;. If the most recent consumer report for the user doesn’t have sufficient data to generate the report, or the consumer report has expired, you will receive an error indicating that you should create a new consumer report by calling &#x60;/cra/check_report/create&#x60;. If you did not initialize Link with the &#x60;cra_network_attributes&#x60; product or have generated a report using &#x60;/cra/check_report/create&#x60;, we will generate the attributes when you call this endpoint. @param cra_check_report_network_insights_get_request [CraCheckReportNetworkInsightsGetRequest] @param [Hash] opts the optional parameters @return [Array<(CraCheckReportNetworkInsightsGetResponse, Integer, Hash)>] CraCheckReportNetworkInsightsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 3165
def cra_check_report_network_insights_get_with_http_info(cra_check_report_network_insights_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_check_report_network_insights_get ...'
  end
  # verify the required parameter 'cra_check_report_network_insights_get_request' is set
  if @api_client.config.client_side_validation && cra_check_report_network_insights_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_check_report_network_insights_get_request' when calling PlaidApi.cra_check_report_network_insights_get"
  end
  # resource path
  local_var_path = '/cra/check_report/network_insights/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_check_report_network_insights_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraCheckReportNetworkInsightsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_check_report_network_insights_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_check_report_network_insights_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_check_report_partner_insights_get(cra_check_report_partner_insights_get_request, opts = {}) click to toggle source

Retrieve cash flow insights from partners This endpoint allows you to retrieve the Partner Insights report for your user. You should call this endpoint after you’ve received the ‘CHECK_REPORT_READY` webhook, either after the Link session for the user or after calling `/cra/check_report/create`. If the most recent consumer report for the user doesn’t have sufficient data to generate the base report, or the consumer report has expired, you will receive an error indicating that you should create a new consumer report by calling `/cra/check_report/create`. If you did not initialize Link with the `credit_partner_insights` product or have generated a report using `/cra/check_report/create`, we will call our partners to generate the insights when you call this endpoint. In this case, you may optionally provide parameters under `options` to configure which insights you want to receive. @param cra_check_report_partner_insights_get_request [CraCheckReportPartnerInsightsGetRequest] @param [Hash] opts the optional parameters @return [CraCheckReportPartnerInsightsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 3223
def cra_check_report_partner_insights_get(cra_check_report_partner_insights_get_request, opts = {})
  data, _status_code, _headers = cra_check_report_partner_insights_get_with_http_info(cra_check_report_partner_insights_get_request, opts)
  data
end
cra_check_report_partner_insights_get_with_http_info(cra_check_report_partner_insights_get_request, opts = {}) click to toggle source

Retrieve cash flow insights from partners This endpoint allows you to retrieve the Partner Insights report for your user. You should call this endpoint after you&#39;ve received the &#x60;CHECK_REPORT_READY&#x60; webhook, either after the Link session for the user or after calling &#x60;/cra/check_report/create&#x60;. If the most recent consumer report for the user doesn’t have sufficient data to generate the base report, or the consumer report has expired, you will receive an error indicating that you should create a new consumer report by calling &#x60;/cra/check_report/create&#x60;. If you did not initialize Link with the &#x60;credit_partner_insights&#x60; product or have generated a report using &#x60;/cra/check_report/create&#x60;, we will call our partners to generate the insights when you call this endpoint. In this case, you may optionally provide parameters under &#x60;options&#x60; to configure which insights you want to receive. @param cra_check_report_partner_insights_get_request [CraCheckReportPartnerInsightsGetRequest] @param [Hash] opts the optional parameters @return [Array<(CraCheckReportPartnerInsightsGetResponse, Integer, Hash)>] CraCheckReportPartnerInsightsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 3233
def cra_check_report_partner_insights_get_with_http_info(cra_check_report_partner_insights_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_check_report_partner_insights_get ...'
  end
  # verify the required parameter 'cra_check_report_partner_insights_get_request' is set
  if @api_client.config.client_side_validation && cra_check_report_partner_insights_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_check_report_partner_insights_get_request' when calling PlaidApi.cra_check_report_partner_insights_get"
  end
  # resource path
  local_var_path = '/cra/check_report/partner_insights/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_check_report_partner_insights_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraCheckReportPartnerInsightsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_check_report_partner_insights_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_check_report_partner_insights_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_check_report_pdf_get(cra_check_report_pdf_get_request, opts = {}) click to toggle source

Retrieve Consumer Reports as a PDF ‘/cra/check_report/pdf/get` retrieves the most recent Consumer Report in PDF format. By default, the most recent Base Report (if it exists) for the user will be returned. To request that the most recent Income Insights report be included in the PDF as well, use the `add-ons` field. @param cra_check_report_pdf_get_request [CraCheckReportPDFGetRequest] @param [Hash] opts the optional parameters @return [File]

# File lib/plaid/api/plaid_api.rb, line 3291
def cra_check_report_pdf_get(cra_check_report_pdf_get_request, opts = {})
  data, _status_code, _headers = cra_check_report_pdf_get_with_http_info(cra_check_report_pdf_get_request, opts)
  data
end
cra_check_report_pdf_get_with_http_info(cra_check_report_pdf_get_request, opts = {}) click to toggle source

Retrieve Consumer Reports as a PDF &#x60;/cra/check_report/pdf/get&#x60; retrieves the most recent Consumer Report in PDF format. By default, the most recent Base Report (if it exists) for the user will be returned. To request that the most recent Income Insights report be included in the PDF as well, use the &#x60;add-ons&#x60; field. @param cra_check_report_pdf_get_request [CraCheckReportPDFGetRequest] @param [Hash] opts the optional parameters @return [Array<(File, Integer, Hash)>] File data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 3301
def cra_check_report_pdf_get_with_http_info(cra_check_report_pdf_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_check_report_pdf_get ...'
  end
  # verify the required parameter 'cra_check_report_pdf_get_request' is set
  if @api_client.config.client_side_validation && cra_check_report_pdf_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_check_report_pdf_get_request' when calling PlaidApi.cra_check_report_pdf_get"
  end
  # resource path
  local_var_path = '/cra/check_report/pdf/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/pdf'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_check_report_pdf_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'File'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_check_report_pdf_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_check_report_pdf_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_loans_applications_register(cra_loans_applications_register_request, opts = {}) click to toggle source

Register loan applications and decisions. ‘/cra/loans/applications/register` registers loan applications and decisions. @param cra_loans_applications_register_request [CraLoansApplicationsRegisterRequest] @param [Hash] opts the optional parameters @return [CraLoansApplicationsRegisterResponse]

# File lib/plaid/api/plaid_api.rb, line 3359
def cra_loans_applications_register(cra_loans_applications_register_request, opts = {})
  data, _status_code, _headers = cra_loans_applications_register_with_http_info(cra_loans_applications_register_request, opts)
  data
end
cra_loans_applications_register_with_http_info(cra_loans_applications_register_request, opts = {}) click to toggle source

Register loan applications and decisions. &#x60;/cra/loans/applications/register&#x60; registers loan applications and decisions. @param cra_loans_applications_register_request [CraLoansApplicationsRegisterRequest] @param [Hash] opts the optional parameters @return [Array<(CraLoansApplicationsRegisterResponse, Integer, Hash)>] CraLoansApplicationsRegisterResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 3369
def cra_loans_applications_register_with_http_info(cra_loans_applications_register_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_loans_applications_register ...'
  end
  # verify the required parameter 'cra_loans_applications_register_request' is set
  if @api_client.config.client_side_validation && cra_loans_applications_register_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_loans_applications_register_request' when calling PlaidApi.cra_loans_applications_register"
  end
  # resource path
  local_var_path = '/cra/loans/applications/register'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_loans_applications_register_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraLoansApplicationsRegisterResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_loans_applications_register",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_loans_applications_register\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_loans_register(cra_loans_register_request, opts = {}) click to toggle source

Register a list of loans to their applicants. ‘/cra/loans/register` registers a list of loans to their applicants. @param cra_loans_register_request [CRALoansRegisterRequest] @param [Hash] opts the optional parameters @return [CraLoansRegisterResponse]

# File lib/plaid/api/plaid_api.rb, line 3427
def cra_loans_register(cra_loans_register_request, opts = {})
  data, _status_code, _headers = cra_loans_register_with_http_info(cra_loans_register_request, opts)
  data
end
cra_loans_register_with_http_info(cra_loans_register_request, opts = {}) click to toggle source

Register a list of loans to their applicants. &#x60;/cra/loans/register&#x60; registers a list of loans to their applicants. @param cra_loans_register_request [CRALoansRegisterRequest] @param [Hash] opts the optional parameters @return [Array<(CraLoansRegisterResponse, Integer, Hash)>] CraLoansRegisterResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 3437
def cra_loans_register_with_http_info(cra_loans_register_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_loans_register ...'
  end
  # verify the required parameter 'cra_loans_register_request' is set
  if @api_client.config.client_side_validation && cra_loans_register_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_loans_register_request' when calling PlaidApi.cra_loans_register"
  end
  # resource path
  local_var_path = '/cra/loans/register'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_loans_register_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraLoansRegisterResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_loans_register",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_loans_register\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_loans_unregister(cra_loans_unregister_request, opts = {}) click to toggle source

Unregister a list of loans. ‘/cra/loans/unregister` indicates the loans have reached a final status and no further updates are expected. @param cra_loans_unregister_request [CraLoansUnregisterRequest] @param [Hash] opts the optional parameters @return [CraLoanUnregisterResponse]

# File lib/plaid/api/plaid_api.rb, line 3495
def cra_loans_unregister(cra_loans_unregister_request, opts = {})
  data, _status_code, _headers = cra_loans_unregister_with_http_info(cra_loans_unregister_request, opts)
  data
end
cra_loans_unregister_with_http_info(cra_loans_unregister_request, opts = {}) click to toggle source

Unregister a list of loans. &#x60;/cra/loans/unregister&#x60; indicates the loans have reached a final status and no further updates are expected. @param cra_loans_unregister_request [CraLoansUnregisterRequest] @param [Hash] opts the optional parameters @return [Array<(CraLoanUnregisterResponse, Integer, Hash)>] CraLoanUnregisterResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 3505
def cra_loans_unregister_with_http_info(cra_loans_unregister_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_loans_unregister ...'
  end
  # verify the required parameter 'cra_loans_unregister_request' is set
  if @api_client.config.client_side_validation && cra_loans_unregister_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_loans_unregister_request' when calling PlaidApi.cra_loans_unregister"
  end
  # resource path
  local_var_path = '/cra/loans/unregister'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_loans_unregister_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraLoanUnregisterResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_loans_unregister",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_loans_unregister\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_loans_update(cra_loans_update_request, opts = {}) click to toggle source

Updates loan data. ‘/cra/loans/update` updates loan information such as the status and payment history. @param cra_loans_update_request [CraLoansUpdateRequest] @param [Hash] opts the optional parameters @return [CraLoansUpdateResponse]

# File lib/plaid/api/plaid_api.rb, line 3563
def cra_loans_update(cra_loans_update_request, opts = {})
  data, _status_code, _headers = cra_loans_update_with_http_info(cra_loans_update_request, opts)
  data
end
cra_loans_update_with_http_info(cra_loans_update_request, opts = {}) click to toggle source

Updates loan data. &#x60;/cra/loans/update&#x60; updates loan information such as the status and payment history. @param cra_loans_update_request [CraLoansUpdateRequest] @param [Hash] opts the optional parameters @return [Array<(CraLoansUpdateResponse, Integer, Hash)>] CraLoansUpdateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 3573
def cra_loans_update_with_http_info(cra_loans_update_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_loans_update ...'
  end
  # verify the required parameter 'cra_loans_update_request' is set
  if @api_client.config.client_side_validation && cra_loans_update_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_loans_update_request' when calling PlaidApi.cra_loans_update"
  end
  # resource path
  local_var_path = '/cra/loans/update'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_loans_update_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraLoansUpdateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_loans_update",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_loans_update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_monitoring_insights_get(cra_monitoring_insights_get_request, opts = {}) click to toggle source

Retrieve a Monitoring Insights Report This endpoint allows you to retrieve a Monitoring Insights report by passing in the ‘user_token` referred to in the webhook you received. @param cra_monitoring_insights_get_request [CraMonitoringInsightsGetRequest] @param [Hash] opts the optional parameters @return [CraMonitoringInsightsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 3631
def cra_monitoring_insights_get(cra_monitoring_insights_get_request, opts = {})
  data, _status_code, _headers = cra_monitoring_insights_get_with_http_info(cra_monitoring_insights_get_request, opts)
  data
end
cra_monitoring_insights_get_with_http_info(cra_monitoring_insights_get_request, opts = {}) click to toggle source

Retrieve a Monitoring Insights Report This endpoint allows you to retrieve a Monitoring Insights report by passing in the &#x60;user_token&#x60; referred to in the webhook you received. @param cra_monitoring_insights_get_request [CraMonitoringInsightsGetRequest] @param [Hash] opts the optional parameters @return [Array<(CraMonitoringInsightsGetResponse, Integer, Hash)>] CraMonitoringInsightsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 3641
def cra_monitoring_insights_get_with_http_info(cra_monitoring_insights_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_monitoring_insights_get ...'
  end
  # verify the required parameter 'cra_monitoring_insights_get_request' is set
  if @api_client.config.client_side_validation && cra_monitoring_insights_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_monitoring_insights_get_request' when calling PlaidApi.cra_monitoring_insights_get"
  end
  # resource path
  local_var_path = '/cra/monitoring_insights/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_monitoring_insights_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraMonitoringInsightsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_monitoring_insights_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_monitoring_insights_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_monitoring_insights_subscribe(cra_monitoring_insights_subscribe_request, opts = {}) click to toggle source

Subscribe to Monitoring Insights This endpoint allows you to subscribe to insights for a user’s linked CRA items, which are updated every 14 days. @param cra_monitoring_insights_subscribe_request [CraMonitoringInsightsSubscribeRequest] @param [Hash] opts the optional parameters @return [CraMonitoringInsightsSubscribeResponse]

# File lib/plaid/api/plaid_api.rb, line 3699
def cra_monitoring_insights_subscribe(cra_monitoring_insights_subscribe_request, opts = {})
  data, _status_code, _headers = cra_monitoring_insights_subscribe_with_http_info(cra_monitoring_insights_subscribe_request, opts)
  data
end
cra_monitoring_insights_subscribe_with_http_info(cra_monitoring_insights_subscribe_request, opts = {}) click to toggle source

Subscribe to Monitoring Insights This endpoint allows you to subscribe to insights for a user&#39;s linked CRA items, which are updated every 14 days. @param cra_monitoring_insights_subscribe_request [CraMonitoringInsightsSubscribeRequest] @param [Hash] opts the optional parameters @return [Array<(CraMonitoringInsightsSubscribeResponse, Integer, Hash)>] CraMonitoringInsightsSubscribeResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 3709
def cra_monitoring_insights_subscribe_with_http_info(cra_monitoring_insights_subscribe_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_monitoring_insights_subscribe ...'
  end
  # verify the required parameter 'cra_monitoring_insights_subscribe_request' is set
  if @api_client.config.client_side_validation && cra_monitoring_insights_subscribe_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_monitoring_insights_subscribe_request' when calling PlaidApi.cra_monitoring_insights_subscribe"
  end
  # resource path
  local_var_path = '/cra/monitoring_insights/subscribe'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_monitoring_insights_subscribe_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraMonitoringInsightsSubscribeResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_monitoring_insights_subscribe",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_monitoring_insights_subscribe\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_monitoring_insights_unsubscribe(cra_monitoring_insights_unsubscribe_request, opts = {}) click to toggle source

Unsubscribe from Monitoring Insights This endpoint allows you to unsubscribe from previously subscribed Monitoring Insights. @param cra_monitoring_insights_unsubscribe_request [CraMonitoringInsightsUnsubscribeRequest] @param [Hash] opts the optional parameters @return [CraMonitoringInsightsUnsubscribeResponse]

# File lib/plaid/api/plaid_api.rb, line 3767
def cra_monitoring_insights_unsubscribe(cra_monitoring_insights_unsubscribe_request, opts = {})
  data, _status_code, _headers = cra_monitoring_insights_unsubscribe_with_http_info(cra_monitoring_insights_unsubscribe_request, opts)
  data
end
cra_monitoring_insights_unsubscribe_with_http_info(cra_monitoring_insights_unsubscribe_request, opts = {}) click to toggle source

Unsubscribe from Monitoring Insights This endpoint allows you to unsubscribe from previously subscribed Monitoring Insights. @param cra_monitoring_insights_unsubscribe_request [CraMonitoringInsightsUnsubscribeRequest] @param [Hash] opts the optional parameters @return [Array<(CraMonitoringInsightsUnsubscribeResponse, Integer, Hash)>] CraMonitoringInsightsUnsubscribeResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 3777
def cra_monitoring_insights_unsubscribe_with_http_info(cra_monitoring_insights_unsubscribe_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_monitoring_insights_unsubscribe ...'
  end
  # verify the required parameter 'cra_monitoring_insights_unsubscribe_request' is set
  if @api_client.config.client_side_validation && cra_monitoring_insights_unsubscribe_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_monitoring_insights_unsubscribe_request' when calling PlaidApi.cra_monitoring_insights_unsubscribe"
  end
  # resource path
  local_var_path = '/cra/monitoring_insights/unsubscribe'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_monitoring_insights_unsubscribe_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraMonitoringInsightsUnsubscribeResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_monitoring_insights_unsubscribe",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_monitoring_insights_unsubscribe\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
cra_partner_insights_get(cra_partner_insights_get_request, opts = {}) click to toggle source

Retrieve cash flow insights from the bank accounts used for income verification ‘/cra/partner_insights/get` returns cash flow insights for a specified user. @param cra_partner_insights_get_request [CraPartnerInsightsGetRequest] @param [Hash] opts the optional parameters @return [CraPartnerInsightsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 3835
def cra_partner_insights_get(cra_partner_insights_get_request, opts = {})
  data, _status_code, _headers = cra_partner_insights_get_with_http_info(cra_partner_insights_get_request, opts)
  data
end
cra_partner_insights_get_with_http_info(cra_partner_insights_get_request, opts = {}) click to toggle source

Retrieve cash flow insights from the bank accounts used for income verification &#x60;/cra/partner_insights/get&#x60; returns cash flow insights for a specified user. @param cra_partner_insights_get_request [CraPartnerInsightsGetRequest] @param [Hash] opts the optional parameters @return [Array<(CraPartnerInsightsGetResponse, Integer, Hash)>] CraPartnerInsightsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 3845
def cra_partner_insights_get_with_http_info(cra_partner_insights_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.cra_partner_insights_get ...'
  end
  # verify the required parameter 'cra_partner_insights_get_request' is set
  if @api_client.config.client_side_validation && cra_partner_insights_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'cra_partner_insights_get_request' when calling PlaidApi.cra_partner_insights_get"
  end
  # resource path
  local_var_path = '/cra/partner_insights/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(cra_partner_insights_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CraPartnerInsightsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.cra_partner_insights_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#cra_partner_insights_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
create_payment_token(payment_initiation_payment_token_create_request, opts = {}) click to toggle source

Create payment token The ‘/payment_initiation/payment/token/create` endpoint has been deprecated. New Plaid customers will be unable to use this endpoint, and existing customers are encouraged to migrate to the newer, `link_token`-based flow. The recommended flow is to provide the `payment_id` to `/link/token/create`, which returns a `link_token` used to initialize Link. The `/payment_initiation/payment/token/create` is used to create a `payment_token`, which can then be used in Link initialization to enter a payment initiation flow. You can only use a `payment_token` once. If this attempt fails, the end user aborts the flow, or the token expires, you will need to create a new payment token. Creating a new payment token does not require end user input. @param payment_initiation_payment_token_create_request [PaymentInitiationPaymentTokenCreateRequest] @param [Hash] opts the optional parameters @return [PaymentInitiationPaymentTokenCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 3903
def create_payment_token(payment_initiation_payment_token_create_request, opts = {})
  data, _status_code, _headers = create_payment_token_with_http_info(payment_initiation_payment_token_create_request, opts)
  data
end
create_payment_token_with_http_info(payment_initiation_payment_token_create_request, opts = {}) click to toggle source

Create payment token The &#x60;/payment_initiation/payment/token/create&#x60; endpoint has been deprecated. New Plaid customers will be unable to use this endpoint, and existing customers are encouraged to migrate to the newer, &#x60;link_token&#x60;-based flow. The recommended flow is to provide the &#x60;payment_id&#x60; to &#x60;/link/token/create&#x60;, which returns a &#x60;link_token&#x60; used to initialize Link. The &#x60;/payment_initiation/payment/token/create&#x60; is used to create a &#x60;payment_token&#x60;, which can then be used in Link initialization to enter a payment initiation flow. You can only use a &#x60;payment_token&#x60; once. If this attempt fails, the end user aborts the flow, or the token expires, you will need to create a new payment token. Creating a new payment token does not require end user input. @param payment_initiation_payment_token_create_request [PaymentInitiationPaymentTokenCreateRequest] @param [Hash] opts the optional parameters @return [Array<(PaymentInitiationPaymentTokenCreateResponse, Integer, Hash)>] PaymentInitiationPaymentTokenCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 3913
def create_payment_token_with_http_info(payment_initiation_payment_token_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.create_payment_token ...'
  end
  # verify the required parameter 'payment_initiation_payment_token_create_request' is set
  if @api_client.config.client_side_validation && payment_initiation_payment_token_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'payment_initiation_payment_token_create_request' when calling PlaidApi.create_payment_token"
  end
  # resource path
  local_var_path = '/payment_initiation/payment/token/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(payment_initiation_payment_token_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'PaymentInitiationPaymentTokenCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.create_payment_token",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#create_payment_token\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_asset_report_freddie_mac_get(request_body, opts = {}) click to toggle source

Retrieve an Asset Report with Freddie Mac format. Only Freddie Mac can use this endpoint. The ‘credit/asset_report/freddie_mac/get` endpoint retrieves the Asset Report in Freddie Mac’s JSON format. @param request_body [Hash<String, Object>] @param [Hash] opts the optional parameters @return [AssetReportFreddieGetResponse]

# File lib/plaid/api/plaid_api.rb, line 3971
def credit_asset_report_freddie_mac_get(request_body, opts = {})
  data, _status_code, _headers = credit_asset_report_freddie_mac_get_with_http_info(request_body, opts)
  data
end
credit_asset_report_freddie_mac_get_with_http_info(request_body, opts = {}) click to toggle source

Retrieve an Asset Report with Freddie Mac format. Only Freddie Mac can use this endpoint. The &#x60;credit/asset_report/freddie_mac/get&#x60; endpoint retrieves the Asset Report in Freddie Mac&#39;s JSON format. @param request_body [Hash<String, Object>] @param [Hash] opts the optional parameters @return [Array<(AssetReportFreddieGetResponse, Integer, Hash)>] AssetReportFreddieGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 3981
def credit_asset_report_freddie_mac_get_with_http_info(request_body, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_asset_report_freddie_mac_get ...'
  end
  # verify the required parameter 'request_body' is set
  if @api_client.config.client_side_validation && request_body.nil?
    fail ArgumentError, "Missing the required parameter 'request_body' when calling PlaidApi.credit_asset_report_freddie_mac_get"
  end
  # resource path
  local_var_path = '/credit/asset_report/freddie_mac/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(request_body)

  # return_type
  return_type = opts[:debug_return_type] || 'AssetReportFreddieGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_asset_report_freddie_mac_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_asset_report_freddie_mac_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_audit_copy_token_create(credit_audit_copy_token_create_request, opts = {}) click to toggle source

Create Asset or Income Report Audit Copy Token Plaid can create an Audit Copy token of an Asset Report and/or Income Report to share with participating Government Sponsored Entity (GSE). If you participate in the Day 1 Certainty™ program, Plaid can supply an Audit Copy token directly to Fannie Mae on your behalf. An Audit Copy token contains the same underlying data as the Asset Report and/or Income Report (result of /credit/payroll_income/get). Use the ‘/credit/audit_copy_token/create` endpoint to create an `audit_copy_token` and then pass that token to the GSE who needs access. @param credit_audit_copy_token_create_request [CreditAuditCopyTokenCreateRequest] @param [Hash] opts the optional parameters @return [CreditAuditCopyTokenCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 4039
def credit_audit_copy_token_create(credit_audit_copy_token_create_request, opts = {})
  data, _status_code, _headers = credit_audit_copy_token_create_with_http_info(credit_audit_copy_token_create_request, opts)
  data
end
credit_audit_copy_token_create_with_http_info(credit_audit_copy_token_create_request, opts = {}) click to toggle source

Create Asset or Income Report Audit Copy Token Plaid can create an Audit Copy token of an Asset Report and/or Income Report to share with participating Government Sponsored Entity (GSE). If you participate in the Day 1 Certainty™ program, Plaid can supply an Audit Copy token directly to Fannie Mae on your behalf. An Audit Copy token contains the same underlying data as the Asset Report and/or Income Report (result of /credit/payroll_income/get). Use the &#x60;/credit/audit_copy_token/create&#x60; endpoint to create an &#x60;audit_copy_token&#x60; and then pass that token to the GSE who needs access. @param credit_audit_copy_token_create_request [CreditAuditCopyTokenCreateRequest] @param [Hash] opts the optional parameters @return [Array<(CreditAuditCopyTokenCreateResponse, Integer, Hash)>] CreditAuditCopyTokenCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 4049
def credit_audit_copy_token_create_with_http_info(credit_audit_copy_token_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_audit_copy_token_create ...'
  end
  # verify the required parameter 'credit_audit_copy_token_create_request' is set
  if @api_client.config.client_side_validation && credit_audit_copy_token_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_audit_copy_token_create_request' when calling PlaidApi.credit_audit_copy_token_create"
  end
  # resource path
  local_var_path = '/credit/audit_copy_token/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_audit_copy_token_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditAuditCopyTokenCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_audit_copy_token_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_audit_copy_token_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_audit_copy_token_update(credit_audit_copy_token_update_request, opts = {}) click to toggle source

Update an Audit Copy Token The ‘/credit/audit_copy_token/update` endpoint updates an existing Audit Copy Token by adding the report tokens in the `report_tokens` field to the `audit_copy_token`. If the Audit Copy Token already contains a report of a certain type, it will be replaced with the token provided in the `report_tokens` field. @param credit_audit_copy_token_update_request [CreditAuditCopyTokenUpdateRequest] @param [Hash] opts the optional parameters @return [CreditAuditCopyTokenUpdateResponse]

# File lib/plaid/api/plaid_api.rb, line 4107
def credit_audit_copy_token_update(credit_audit_copy_token_update_request, opts = {})
  data, _status_code, _headers = credit_audit_copy_token_update_with_http_info(credit_audit_copy_token_update_request, opts)
  data
end
credit_audit_copy_token_update_with_http_info(credit_audit_copy_token_update_request, opts = {}) click to toggle source

Update an Audit Copy Token The &#x60;/credit/audit_copy_token/update&#x60; endpoint updates an existing Audit Copy Token by adding the report tokens in the &#x60;report_tokens&#x60; field to the &#x60;audit_copy_token&#x60;. If the Audit Copy Token already contains a report of a certain type, it will be replaced with the token provided in the &#x60;report_tokens&#x60; field. @param credit_audit_copy_token_update_request [CreditAuditCopyTokenUpdateRequest] @param [Hash] opts the optional parameters @return [Array<(CreditAuditCopyTokenUpdateResponse, Integer, Hash)>] CreditAuditCopyTokenUpdateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 4117
def credit_audit_copy_token_update_with_http_info(credit_audit_copy_token_update_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_audit_copy_token_update ...'
  end
  # verify the required parameter 'credit_audit_copy_token_update_request' is set
  if @api_client.config.client_side_validation && credit_audit_copy_token_update_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_audit_copy_token_update_request' when calling PlaidApi.credit_audit_copy_token_update"
  end
  # resource path
  local_var_path = '/credit/audit_copy_token/update'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_audit_copy_token_update_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditAuditCopyTokenUpdateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_audit_copy_token_update",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_audit_copy_token_update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_bank_employment_get(credit_bank_employment_get_request, opts = {}) click to toggle source

Retrieve information from the bank accounts used for employment verification ‘/credit/bank_employment/get` returns the employment report(s) derived from bank transaction data for a specified user. @param credit_bank_employment_get_request [CreditBankEmploymentGetRequest] @param [Hash] opts the optional parameters @return [CreditBankEmploymentGetResponse]

# File lib/plaid/api/plaid_api.rb, line 4175
def credit_bank_employment_get(credit_bank_employment_get_request, opts = {})
  data, _status_code, _headers = credit_bank_employment_get_with_http_info(credit_bank_employment_get_request, opts)
  data
end
credit_bank_employment_get_with_http_info(credit_bank_employment_get_request, opts = {}) click to toggle source

Retrieve information from the bank accounts used for employment verification &#x60;/credit/bank_employment/get&#x60; returns the employment report(s) derived from bank transaction data for a specified user. @param credit_bank_employment_get_request [CreditBankEmploymentGetRequest] @param [Hash] opts the optional parameters @return [Array<(CreditBankEmploymentGetResponse, Integer, Hash)>] CreditBankEmploymentGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 4185
def credit_bank_employment_get_with_http_info(credit_bank_employment_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_bank_employment_get ...'
  end
  # verify the required parameter 'credit_bank_employment_get_request' is set
  if @api_client.config.client_side_validation && credit_bank_employment_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_bank_employment_get_request' when calling PlaidApi.credit_bank_employment_get"
  end
  # resource path
  local_var_path = '/beta/credit/v1/bank_employment/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_bank_employment_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditBankEmploymentGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_bank_employment_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_bank_employment_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_bank_income_get(credit_bank_income_get_request, opts = {}) click to toggle source

Retrieve information from the bank accounts used for income verification ‘/credit/bank_income/get` returns the bank income report(s) for a specified user. A single report corresponds to all institutions linked in a single Link session. To include multiple institutions in a single report, use [Multi-Item Link](plaid.com/docs/link/multi-item-link). To return older reports, use the `options.count` field. @param credit_bank_income_get_request [CreditBankIncomeGetRequest] @param [Hash] opts the optional parameters @return [CreditBankIncomeGetResponse]

# File lib/plaid/api/plaid_api.rb, line 4243
def credit_bank_income_get(credit_bank_income_get_request, opts = {})
  data, _status_code, _headers = credit_bank_income_get_with_http_info(credit_bank_income_get_request, opts)
  data
end
credit_bank_income_get_with_http_info(credit_bank_income_get_request, opts = {}) click to toggle source

Retrieve information from the bank accounts used for income verification &#x60;/credit/bank_income/get&#x60; returns the bank income report(s) for a specified user. A single report corresponds to all institutions linked in a single Link session. To include multiple institutions in a single report, use [Multi-Item Link](plaid.com/docs/link/multi-item-link). To return older reports, use the &#x60;options.count&#x60; field. @param credit_bank_income_get_request [CreditBankIncomeGetRequest] @param [Hash] opts the optional parameters @return [Array<(CreditBankIncomeGetResponse, Integer, Hash)>] CreditBankIncomeGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 4253
def credit_bank_income_get_with_http_info(credit_bank_income_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_bank_income_get ...'
  end
  # verify the required parameter 'credit_bank_income_get_request' is set
  if @api_client.config.client_side_validation && credit_bank_income_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_bank_income_get_request' when calling PlaidApi.credit_bank_income_get"
  end
  # resource path
  local_var_path = '/credit/bank_income/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_bank_income_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditBankIncomeGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_bank_income_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_bank_income_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_bank_income_pdf_get(credit_bank_income_pdf_get_request, opts = {}) click to toggle source

Retrieve information from the bank accounts used for income verification in PDF format ‘/credit/bank_income/pdf/get` returns the most recent bank income report for a specified user in PDF format. A single report corresponds to all institutions linked in a single Link session. To include multiple institutions in a single report, use [Multi-Item Link](plaid.com/docs/link/multi-item-link). @param credit_bank_income_pdf_get_request [CreditBankIncomePDFGetRequest] @param [Hash] opts the optional parameters @return [File]

# File lib/plaid/api/plaid_api.rb, line 4311
def credit_bank_income_pdf_get(credit_bank_income_pdf_get_request, opts = {})
  data, _status_code, _headers = credit_bank_income_pdf_get_with_http_info(credit_bank_income_pdf_get_request, opts)
  data
end
credit_bank_income_pdf_get_with_http_info(credit_bank_income_pdf_get_request, opts = {}) click to toggle source

Retrieve information from the bank accounts used for income verification in PDF format &#x60;/credit/bank_income/pdf/get&#x60; returns the most recent bank income report for a specified user in PDF format. A single report corresponds to all institutions linked in a single Link session. To include multiple institutions in a single report, use [Multi-Item Link](plaid.com/docs/link/multi-item-link). @param credit_bank_income_pdf_get_request [CreditBankIncomePDFGetRequest] @param [Hash] opts the optional parameters @return [Array<(File, Integer, Hash)>] File data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 4321
def credit_bank_income_pdf_get_with_http_info(credit_bank_income_pdf_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_bank_income_pdf_get ...'
  end
  # verify the required parameter 'credit_bank_income_pdf_get_request' is set
  if @api_client.config.client_side_validation && credit_bank_income_pdf_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_bank_income_pdf_get_request' when calling PlaidApi.credit_bank_income_pdf_get"
  end
  # resource path
  local_var_path = '/credit/bank_income/pdf/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/pdf'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_bank_income_pdf_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'File'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_bank_income_pdf_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_bank_income_pdf_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_bank_income_refresh(credit_bank_income_refresh_request, opts = {}) click to toggle source

Refresh a user’s bank income information ‘/credit/bank_income/refresh` refreshes the most recent bank income report data for a specific user. If the most recent bank income report is no longer valid (i.e. deleted), the endpoint will refresh the most recent valid report instead. @param credit_bank_income_refresh_request [CreditBankIncomeRefreshRequest] @param [Hash] opts the optional parameters @return [CreditBankIncomeRefreshResponse]

# File lib/plaid/api/plaid_api.rb, line 4379
def credit_bank_income_refresh(credit_bank_income_refresh_request, opts = {})
  data, _status_code, _headers = credit_bank_income_refresh_with_http_info(credit_bank_income_refresh_request, opts)
  data
end
credit_bank_income_refresh_with_http_info(credit_bank_income_refresh_request, opts = {}) click to toggle source

Refresh a user&#39;s bank income information &#x60;/credit/bank_income/refresh&#x60; refreshes the most recent bank income report data for a specific user. If the most recent bank income report is no longer valid (i.e. deleted), the endpoint will refresh the most recent valid report instead. @param credit_bank_income_refresh_request [CreditBankIncomeRefreshRequest] @param [Hash] opts the optional parameters @return [Array<(CreditBankIncomeRefreshResponse, Integer, Hash)>] CreditBankIncomeRefreshResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 4389
def credit_bank_income_refresh_with_http_info(credit_bank_income_refresh_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_bank_income_refresh ...'
  end
  # verify the required parameter 'credit_bank_income_refresh_request' is set
  if @api_client.config.client_side_validation && credit_bank_income_refresh_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_bank_income_refresh_request' when calling PlaidApi.credit_bank_income_refresh"
  end
  # resource path
  local_var_path = '/credit/bank_income/refresh'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_bank_income_refresh_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditBankIncomeRefreshResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_bank_income_refresh",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_bank_income_refresh\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_bank_income_webhook_update(credit_bank_income_webhook_update_request, opts = {}) click to toggle source

Subscribe and unsubscribe to proactive notifications for a user’s income profile ‘/credit/bank_income/webhook/update` allows you to subscribe or unsubscribe a user for income webhook notifications. By default, all users start out unsubscribed. If a user is subscribed, on significant changes to the user’s income profile, you will receive a ‘BANK_INCOME_REFRESH_UPDATE` webhook, prompting you to refresh bank income data for the user. @param credit_bank_income_webhook_update_request [CreditBankIncomeWebhookUpdateRequest] @param [Hash] opts the optional parameters @return [CreditBankIncomeWebhookUpdateResponse]

# File lib/plaid/api/plaid_api.rb, line 4447
def credit_bank_income_webhook_update(credit_bank_income_webhook_update_request, opts = {})
  data, _status_code, _headers = credit_bank_income_webhook_update_with_http_info(credit_bank_income_webhook_update_request, opts)
  data
end
credit_bank_income_webhook_update_with_http_info(credit_bank_income_webhook_update_request, opts = {}) click to toggle source

Subscribe and unsubscribe to proactive notifications for a user&#39;s income profile &#x60;/credit/bank_income/webhook/update&#x60; allows you to subscribe or unsubscribe a user for income webhook notifications. By default, all users start out unsubscribed. If a user is subscribed, on significant changes to the user&#39;s income profile, you will receive a &#x60;BANK_INCOME_REFRESH_UPDATE&#x60; webhook, prompting you to refresh bank income data for the user. @param credit_bank_income_webhook_update_request [CreditBankIncomeWebhookUpdateRequest] @param [Hash] opts the optional parameters @return [Array<(CreditBankIncomeWebhookUpdateResponse, Integer, Hash)>] CreditBankIncomeWebhookUpdateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 4457
def credit_bank_income_webhook_update_with_http_info(credit_bank_income_webhook_update_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_bank_income_webhook_update ...'
  end
  # verify the required parameter 'credit_bank_income_webhook_update_request' is set
  if @api_client.config.client_side_validation && credit_bank_income_webhook_update_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_bank_income_webhook_update_request' when calling PlaidApi.credit_bank_income_webhook_update"
  end
  # resource path
  local_var_path = '/credit/bank_income/webhook/update'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_bank_income_webhook_update_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditBankIncomeWebhookUpdateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_bank_income_webhook_update",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_bank_income_webhook_update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_bank_statements_uploads_get(credit_bank_statements_uploads_get_request, opts = {}) click to toggle source

Retrieve data for a user’s uploaded bank statements ‘/credit/bank_statements/uploads/get` returns parsed data from bank statements uploaded by users as part of the Document Income flow. If your account is not enabled for Document Parsing, contact your account manager to request access. @param credit_bank_statements_uploads_get_request [CreditBankStatementsUploadsGetRequest] @param [Hash] opts the optional parameters @return [CreditBankStatementsUploadsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 4515
def credit_bank_statements_uploads_get(credit_bank_statements_uploads_get_request, opts = {})
  data, _status_code, _headers = credit_bank_statements_uploads_get_with_http_info(credit_bank_statements_uploads_get_request, opts)
  data
end
credit_bank_statements_uploads_get_with_http_info(credit_bank_statements_uploads_get_request, opts = {}) click to toggle source

Retrieve data for a user&#39;s uploaded bank statements &#x60;/credit/bank_statements/uploads/get&#x60; returns parsed data from bank statements uploaded by users as part of the Document Income flow. If your account is not enabled for Document Parsing, contact your account manager to request access. @param credit_bank_statements_uploads_get_request [CreditBankStatementsUploadsGetRequest] @param [Hash] opts the optional parameters @return [Array<(CreditBankStatementsUploadsGetResponse, Integer, Hash)>] CreditBankStatementsUploadsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 4525
def credit_bank_statements_uploads_get_with_http_info(credit_bank_statements_uploads_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_bank_statements_uploads_get ...'
  end
  # verify the required parameter 'credit_bank_statements_uploads_get_request' is set
  if @api_client.config.client_side_validation && credit_bank_statements_uploads_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_bank_statements_uploads_get_request' when calling PlaidApi.credit_bank_statements_uploads_get"
  end
  # resource path
  local_var_path = '/credit/bank_statements/uploads/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_bank_statements_uploads_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditBankStatementsUploadsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_bank_statements_uploads_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_bank_statements_uploads_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_employment_get(credit_employment_get_request, opts = {}) click to toggle source

Retrieve a summary of an individual’s employment information ‘/credit/employment/get` returns a list of items with employment information from a user’s payroll provider that was verified by an end user. @param credit_employment_get_request [CreditEmploymentGetRequest] @param [Hash] opts the optional parameters @return [CreditEmploymentGetResponse]

# File lib/plaid/api/plaid_api.rb, line 4583
def credit_employment_get(credit_employment_get_request, opts = {})
  data, _status_code, _headers = credit_employment_get_with_http_info(credit_employment_get_request, opts)
  data
end
credit_employment_get_with_http_info(credit_employment_get_request, opts = {}) click to toggle source

Retrieve a summary of an individual&#39;s employment information &#x60;/credit/employment/get&#x60; returns a list of items with employment information from a user&#39;s payroll provider that was verified by an end user. @param credit_employment_get_request [CreditEmploymentGetRequest] @param [Hash] opts the optional parameters @return [Array<(CreditEmploymentGetResponse, Integer, Hash)>] CreditEmploymentGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 4593
def credit_employment_get_with_http_info(credit_employment_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_employment_get ...'
  end
  # verify the required parameter 'credit_employment_get_request' is set
  if @api_client.config.client_side_validation && credit_employment_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_employment_get_request' when calling PlaidApi.credit_employment_get"
  end
  # resource path
  local_var_path = '/credit/employment/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_employment_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditEmploymentGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_employment_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_employment_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_freddie_mac_reports_get(credit_freddie_mac_reports_get_request, opts = {}) click to toggle source

Retrieve an Asset Report with Freddie Mac format (aka VOA - Verification Of Assets), and a Verification Of Employment (VOE) report if this one is available. Only Freddie Mac can use this endpoint. The ‘credit/asset_report/freddie_mac/get` endpoint retrieves the Verification of Assets and Verification of Employment reports. @param credit_freddie_mac_reports_get_request [CreditFreddieMacReportsGetRequest] @param [Hash] opts the optional parameters @return [CreditFreddieMacReportsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 4651
def credit_freddie_mac_reports_get(credit_freddie_mac_reports_get_request, opts = {})
  data, _status_code, _headers = credit_freddie_mac_reports_get_with_http_info(credit_freddie_mac_reports_get_request, opts)
  data
end
credit_freddie_mac_reports_get_with_http_info(credit_freddie_mac_reports_get_request, opts = {}) click to toggle source

Retrieve an Asset Report with Freddie Mac format (aka VOA - Verification Of Assets), and a Verification Of Employment (VOE) report if this one is available. Only Freddie Mac can use this endpoint. The &#x60;credit/asset_report/freddie_mac/get&#x60; endpoint retrieves the Verification of Assets and Verification of Employment reports. @param credit_freddie_mac_reports_get_request [CreditFreddieMacReportsGetRequest] @param [Hash] opts the optional parameters @return [Array<(CreditFreddieMacReportsGetResponse, Integer, Hash)>] CreditFreddieMacReportsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 4661
def credit_freddie_mac_reports_get_with_http_info(credit_freddie_mac_reports_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_freddie_mac_reports_get ...'
  end
  # verify the required parameter 'credit_freddie_mac_reports_get_request' is set
  if @api_client.config.client_side_validation && credit_freddie_mac_reports_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_freddie_mac_reports_get_request' when calling PlaidApi.credit_freddie_mac_reports_get"
  end
  # resource path
  local_var_path = '/credit/freddie_mac/reports/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_freddie_mac_reports_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditFreddieMacReportsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_freddie_mac_reports_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_freddie_mac_reports_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_payroll_income_get(credit_payroll_income_get_request, opts = {}) click to toggle source

Retrieve a user’s payroll information This endpoint gets payroll income information for a specific user, either as a result of the user connecting to their payroll provider or uploading a pay related document. @param credit_payroll_income_get_request [CreditPayrollIncomeGetRequest] @param [Hash] opts the optional parameters @return [CreditPayrollIncomeGetResponse]

# File lib/plaid/api/plaid_api.rb, line 4719
def credit_payroll_income_get(credit_payroll_income_get_request, opts = {})
  data, _status_code, _headers = credit_payroll_income_get_with_http_info(credit_payroll_income_get_request, opts)
  data
end
credit_payroll_income_get_with_http_info(credit_payroll_income_get_request, opts = {}) click to toggle source

Retrieve a user&#39;s payroll information This endpoint gets payroll income information for a specific user, either as a result of the user connecting to their payroll provider or uploading a pay related document. @param credit_payroll_income_get_request [CreditPayrollIncomeGetRequest] @param [Hash] opts the optional parameters @return [Array<(CreditPayrollIncomeGetResponse, Integer, Hash)>] CreditPayrollIncomeGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 4729
def credit_payroll_income_get_with_http_info(credit_payroll_income_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_payroll_income_get ...'
  end
  # verify the required parameter 'credit_payroll_income_get_request' is set
  if @api_client.config.client_side_validation && credit_payroll_income_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_payroll_income_get_request' when calling PlaidApi.credit_payroll_income_get"
  end
  # resource path
  local_var_path = '/credit/payroll_income/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_payroll_income_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditPayrollIncomeGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_payroll_income_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_payroll_income_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_payroll_income_parsing_config_update(request_body, opts = {}) click to toggle source

Update the parsing configuration for a document income verification ‘/credit/payroll_income/parsing_config/update` updates the parsing configuration for a document income verification. @param request_body [Hash<String, Object>] @param [Hash] opts the optional parameters @return [CreditPayrollIncomeParsingConfigUpdateResponse]

# File lib/plaid/api/plaid_api.rb, line 4787
def credit_payroll_income_parsing_config_update(request_body, opts = {})
  data, _status_code, _headers = credit_payroll_income_parsing_config_update_with_http_info(request_body, opts)
  data
end
credit_payroll_income_parsing_config_update_with_http_info(request_body, opts = {}) click to toggle source

Update the parsing configuration for a document income verification &#x60;/credit/payroll_income/parsing_config/update&#x60; updates the parsing configuration for a document income verification. @param request_body [Hash<String, Object>] @param [Hash] opts the optional parameters @return [Array<(CreditPayrollIncomeParsingConfigUpdateResponse, Integer, Hash)>] CreditPayrollIncomeParsingConfigUpdateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 4797
def credit_payroll_income_parsing_config_update_with_http_info(request_body, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_payroll_income_parsing_config_update ...'
  end
  # verify the required parameter 'request_body' is set
  if @api_client.config.client_side_validation && request_body.nil?
    fail ArgumentError, "Missing the required parameter 'request_body' when calling PlaidApi.credit_payroll_income_parsing_config_update"
  end
  # resource path
  local_var_path = '/credit/payroll_income/parsing_config/update'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(request_body)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditPayrollIncomeParsingConfigUpdateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_payroll_income_parsing_config_update",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_payroll_income_parsing_config_update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_payroll_income_precheck(credit_payroll_income_precheck_request, opts = {}) click to toggle source

Check income verification eligibility and optimize conversion ‘/credit/payroll_income/precheck` is an optional endpoint that can be called before initializing a Link session for income verification. It evaluates whether a given user is supportable by digital income verification. If the user is eligible for digital verification, that information will be associated with the user token, and in this way will generate a Link UI optimized for the end user and their specific employer. If the user cannot be confirmed as eligible, the user can still use the income verification flow, but they may be required to manually upload a paystub to verify their income. While all request fields are optional, providing `employer` data will increase the chance of receiving a useful result. When testing in Sandbox, you can control the results by providing special test values in the `employer` and `access_tokens` fields. `employer_good` and `employer_bad` will result in `HIGH` and `LOW` confidence values, respectively. `employer_multi` will result in a `HIGH` confidence with multiple payroll options. Likewise, `access_good` and `access_bad` will result in `HIGH` and `LOW` confidence values, respectively. Any other value for `employer` and `access_tokens` in Sandbox will result in `UNKNOWN` confidence. @param credit_payroll_income_precheck_request [CreditPayrollIncomePrecheckRequest] @param [Hash] opts the optional parameters @return [CreditPayrollIncomePrecheckResponse]

# File lib/plaid/api/plaid_api.rb, line 4855
def credit_payroll_income_precheck(credit_payroll_income_precheck_request, opts = {})
  data, _status_code, _headers = credit_payroll_income_precheck_with_http_info(credit_payroll_income_precheck_request, opts)
  data
end
credit_payroll_income_precheck_with_http_info(credit_payroll_income_precheck_request, opts = {}) click to toggle source

Check income verification eligibility and optimize conversion &#x60;/credit/payroll_income/precheck&#x60; is an optional endpoint that can be called before initializing a Link session for income verification. It evaluates whether a given user is supportable by digital income verification. If the user is eligible for digital verification, that information will be associated with the user token, and in this way will generate a Link UI optimized for the end user and their specific employer. If the user cannot be confirmed as eligible, the user can still use the income verification flow, but they may be required to manually upload a paystub to verify their income. While all request fields are optional, providing &#x60;employer&#x60; data will increase the chance of receiving a useful result. When testing in Sandbox, you can control the results by providing special test values in the &#x60;employer&#x60; and &#x60;access_tokens&#x60; fields. &#x60;employer_good&#x60; and &#x60;employer_bad&#x60; will result in &#x60;HIGH&#x60; and &#x60;LOW&#x60; confidence values, respectively. &#x60;employer_multi&#x60; will result in a &#x60;HIGH&#x60; confidence with multiple payroll options. Likewise, &#x60;access_good&#x60; and &#x60;access_bad&#x60; will result in &#x60;HIGH&#x60; and &#x60;LOW&#x60; confidence values, respectively. Any other value for &#x60;employer&#x60; and &#x60;access_tokens&#x60; in Sandbox will result in &#x60;UNKNOWN&#x60; confidence. @param credit_payroll_income_precheck_request [CreditPayrollIncomePrecheckRequest] @param [Hash] opts the optional parameters @return [Array<(CreditPayrollIncomePrecheckResponse, Integer, Hash)>] CreditPayrollIncomePrecheckResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 4865
def credit_payroll_income_precheck_with_http_info(credit_payroll_income_precheck_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_payroll_income_precheck ...'
  end
  # verify the required parameter 'credit_payroll_income_precheck_request' is set
  if @api_client.config.client_side_validation && credit_payroll_income_precheck_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_payroll_income_precheck_request' when calling PlaidApi.credit_payroll_income_precheck"
  end
  # resource path
  local_var_path = '/credit/payroll_income/precheck'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_payroll_income_precheck_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditPayrollIncomePrecheckResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_payroll_income_precheck",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_payroll_income_precheck\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_payroll_income_refresh(credit_payroll_income_refresh_request, opts = {}) click to toggle source

Refresh a digital payroll income verification ‘/credit/payroll_income/refresh` refreshes a given digital payroll income verification. @param credit_payroll_income_refresh_request [CreditPayrollIncomeRefreshRequest] @param [Hash] opts the optional parameters @return [CreditPayrollIncomeRefreshResponse]

# File lib/plaid/api/plaid_api.rb, line 4923
def credit_payroll_income_refresh(credit_payroll_income_refresh_request, opts = {})
  data, _status_code, _headers = credit_payroll_income_refresh_with_http_info(credit_payroll_income_refresh_request, opts)
  data
end
credit_payroll_income_refresh_with_http_info(credit_payroll_income_refresh_request, opts = {}) click to toggle source

Refresh a digital payroll income verification &#x60;/credit/payroll_income/refresh&#x60; refreshes a given digital payroll income verification. @param credit_payroll_income_refresh_request [CreditPayrollIncomeRefreshRequest] @param [Hash] opts the optional parameters @return [Array<(CreditPayrollIncomeRefreshResponse, Integer, Hash)>] CreditPayrollIncomeRefreshResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 4933
def credit_payroll_income_refresh_with_http_info(credit_payroll_income_refresh_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_payroll_income_refresh ...'
  end
  # verify the required parameter 'credit_payroll_income_refresh_request' is set
  if @api_client.config.client_side_validation && credit_payroll_income_refresh_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_payroll_income_refresh_request' when calling PlaidApi.credit_payroll_income_refresh"
  end
  # resource path
  local_var_path = '/credit/payroll_income/refresh'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_payroll_income_refresh_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditPayrollIncomeRefreshResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_payroll_income_refresh",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_payroll_income_refresh\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_payroll_income_risk_signals_get(credit_payroll_income_risk_signals_get_request, opts = {}) click to toggle source

Retrieve fraud insights for a user’s manually uploaded document(s). ‘/credit/payroll_income/risk_signals/get` can be used as part of the Document Income flow to assess a user-uploaded document for signs of potential fraud or tampering. It returns a risk score for each uploaded document that indicates the likelihood of the document being fraudulent, in addition to details on the individual risk signals contributing to the score. To trigger risk signal generation for an Item, call `/link/token/create` with `parsing_config` set to include `risk_signals`, or call `/credit/payroll_income/parsing_config/update`. Once risk signal generation has been triggered, `/credit/payroll_income/risk_signals/get` can be called at any time after the `INCOME_VERIFICATION_RISK_SIGNALS` webhook has been fired. `/credit/payroll_income/risk_signals/get` is offered as an add-on to Document Income and is billed separately. To request access to this endpoint, submit a product access request or contact your Plaid account manager. @param credit_payroll_income_risk_signals_get_request [CreditPayrollIncomeRiskSignalsGetRequest] @param [Hash] opts the optional parameters @return [CreditPayrollIncomeRiskSignalsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 4991
def credit_payroll_income_risk_signals_get(credit_payroll_income_risk_signals_get_request, opts = {})
  data, _status_code, _headers = credit_payroll_income_risk_signals_get_with_http_info(credit_payroll_income_risk_signals_get_request, opts)
  data
end
credit_payroll_income_risk_signals_get_with_http_info(credit_payroll_income_risk_signals_get_request, opts = {}) click to toggle source

Retrieve fraud insights for a user&#39;s manually uploaded document(s). &#x60;/credit/payroll_income/risk_signals/get&#x60; can be used as part of the Document Income flow to assess a user-uploaded document for signs of potential fraud or tampering. It returns a risk score for each uploaded document that indicates the likelihood of the document being fraudulent, in addition to details on the individual risk signals contributing to the score. To trigger risk signal generation for an Item, call &#x60;/link/token/create&#x60; with &#x60;parsing_config&#x60; set to include &#x60;risk_signals&#x60;, or call &#x60;/credit/payroll_income/parsing_config/update&#x60;. Once risk signal generation has been triggered, &#x60;/credit/payroll_income/risk_signals/get&#x60; can be called at any time after the &#x60;INCOME_VERIFICATION_RISK_SIGNALS&#x60; webhook has been fired. &#x60;/credit/payroll_income/risk_signals/get&#x60; is offered as an add-on to Document Income and is billed separately. To request access to this endpoint, submit a product access request or contact your Plaid account manager. @param credit_payroll_income_risk_signals_get_request [CreditPayrollIncomeRiskSignalsGetRequest] @param [Hash] opts the optional parameters @return [Array<(CreditPayrollIncomeRiskSignalsGetResponse, Integer, Hash)>] CreditPayrollIncomeRiskSignalsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 5001
def credit_payroll_income_risk_signals_get_with_http_info(credit_payroll_income_risk_signals_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_payroll_income_risk_signals_get ...'
  end
  # verify the required parameter 'credit_payroll_income_risk_signals_get_request' is set
  if @api_client.config.client_side_validation && credit_payroll_income_risk_signals_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_payroll_income_risk_signals_get_request' when calling PlaidApi.credit_payroll_income_risk_signals_get"
  end
  # resource path
  local_var_path = '/credit/payroll_income/risk_signals/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_payroll_income_risk_signals_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditPayrollIncomeRiskSignalsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_payroll_income_risk_signals_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_payroll_income_risk_signals_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_relay_create(credit_relay_create_request, opts = {}) click to toggle source

Create a relay token to share an Asset Report with a partner client Plaid can share an Asset Report directly with a participating third party on your behalf. The shared Asset Report is the exact same Asset Report originally created in ‘/asset_report/create`. To grant a third party access to an Asset Report, use the `/credit/relay/create` endpoint to create a `relay_token` and then pass that token to your third party. Each third party has its own `secondary_client_id`; for example, `ce5bd328dcd34123456`. You’ll need to create a separate ‘relay_token` for each third party that needs access to the report on your behalf. @param credit_relay_create_request [CreditRelayCreateRequest] @param [Hash] opts the optional parameters @return [CreditRelayCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 5059
def credit_relay_create(credit_relay_create_request, opts = {})
  data, _status_code, _headers = credit_relay_create_with_http_info(credit_relay_create_request, opts)
  data
end
credit_relay_create_with_http_info(credit_relay_create_request, opts = {}) click to toggle source

Create a relay token to share an Asset Report with a partner client Plaid can share an Asset Report directly with a participating third party on your behalf. The shared Asset Report is the exact same Asset Report originally created in &#x60;/asset_report/create&#x60;. To grant a third party access to an Asset Report, use the &#x60;/credit/relay/create&#x60; endpoint to create a &#x60;relay_token&#x60; and then pass that token to your third party. Each third party has its own &#x60;secondary_client_id&#x60;; for example, &#x60;ce5bd328dcd34123456&#x60;. You&#39;ll need to create a separate &#x60;relay_token&#x60; for each third party that needs access to the report on your behalf. @param credit_relay_create_request [CreditRelayCreateRequest] @param [Hash] opts the optional parameters @return [Array<(CreditRelayCreateResponse, Integer, Hash)>] CreditRelayCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 5069
def credit_relay_create_with_http_info(credit_relay_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_relay_create ...'
  end
  # verify the required parameter 'credit_relay_create_request' is set
  if @api_client.config.client_side_validation && credit_relay_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_relay_create_request' when calling PlaidApi.credit_relay_create"
  end
  # resource path
  local_var_path = '/credit/relay/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_relay_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditRelayCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_relay_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_relay_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_relay_get(credit_relay_get_request, opts = {}) click to toggle source

Retrieve the reports associated with a relay token that was shared with you ‘/credit/relay/get` allows third parties to receive a report that was shared with them, using a `relay_token` that was created by the report owner. @param credit_relay_get_request [CreditRelayGetRequest] @param [Hash] opts the optional parameters @return [AssetReportGetResponse]

# File lib/plaid/api/plaid_api.rb, line 5127
def credit_relay_get(credit_relay_get_request, opts = {})
  data, _status_code, _headers = credit_relay_get_with_http_info(credit_relay_get_request, opts)
  data
end
credit_relay_get_with_http_info(credit_relay_get_request, opts = {}) click to toggle source

Retrieve the reports associated with a relay token that was shared with you &#x60;/credit/relay/get&#x60; allows third parties to receive a report that was shared with them, using a &#x60;relay_token&#x60; that was created by the report owner. @param credit_relay_get_request [CreditRelayGetRequest] @param [Hash] opts the optional parameters @return [Array<(AssetReportGetResponse, Integer, Hash)>] AssetReportGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 5137
def credit_relay_get_with_http_info(credit_relay_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_relay_get ...'
  end
  # verify the required parameter 'credit_relay_get_request' is set
  if @api_client.config.client_side_validation && credit_relay_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_relay_get_request' when calling PlaidApi.credit_relay_get"
  end
  # resource path
  local_var_path = '/credit/relay/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_relay_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'AssetReportGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_relay_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_relay_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_relay_pdf_get(credit_relay_pdf_get_request, opts = {}) click to toggle source

Retrieve the pdf reports associated with a relay token that was shared with you (beta) ‘/credit/relay/pdf/get` allows third parties to receive a pdf report that was shared with them, using a `relay_token` that was created by the report owner. The `/credit/relay/pdf/get` endpoint retrieves the Asset Report in PDF format. Before calling `/credit/relay/pdf/get`, you must first create the Asset Report using `/credit/relay/create` and then wait for the [`PRODUCT_READY`](plaid.com/docs/api/products/assets/#product_ready) webhook to fire, indicating that the Report is ready to be retrieved. The response to `/credit/relay/pdf/get` is the PDF binary data. The `request_id` is returned in the `Plaid-Request-ID` header. [View a sample PDF Asset Report](plaid.com/documents/sample-asset-report.pdf). @param credit_relay_pdf_get_request [CreditRelayPDFGetRequest] @param [Hash] opts the optional parameters @return [File]

# File lib/plaid/api/plaid_api.rb, line 5195
def credit_relay_pdf_get(credit_relay_pdf_get_request, opts = {})
  data, _status_code, _headers = credit_relay_pdf_get_with_http_info(credit_relay_pdf_get_request, opts)
  data
end
credit_relay_pdf_get_with_http_info(credit_relay_pdf_get_request, opts = {}) click to toggle source

Retrieve the pdf reports associated with a relay token that was shared with you (beta) &#x60;/credit/relay/pdf/get&#x60; allows third parties to receive a pdf report that was shared with them, using a &#x60;relay_token&#x60; that was created by the report owner. The &#x60;/credit/relay/pdf/get&#x60; endpoint retrieves the Asset Report in PDF format. Before calling &#x60;/credit/relay/pdf/get&#x60;, you must first create the Asset Report using &#x60;/credit/relay/create&#x60; and then wait for the [&#x60;PRODUCT_READY&#x60;](plaid.com/docs/api/products/assets/#product_ready) webhook to fire, indicating that the Report is ready to be retrieved. The response to &#x60;/credit/relay/pdf/get&#x60; is the PDF binary data. The &#x60;request_id&#x60; is returned in the &#x60;Plaid-Request-ID&#x60; header. [View a sample PDF Asset Report](plaid.com/documents/sample-asset-report.pdf). @param credit_relay_pdf_get_request [CreditRelayPDFGetRequest] @param [Hash] opts the optional parameters @return [Array<(File, Integer, Hash)>] File data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 5205
def credit_relay_pdf_get_with_http_info(credit_relay_pdf_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_relay_pdf_get ...'
  end
  # verify the required parameter 'credit_relay_pdf_get_request' is set
  if @api_client.config.client_side_validation && credit_relay_pdf_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_relay_pdf_get_request' when calling PlaidApi.credit_relay_pdf_get"
  end
  # resource path
  local_var_path = '/credit/relay/pdf/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/pdf'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_relay_pdf_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'File'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_relay_pdf_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_relay_pdf_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_relay_refresh(credit_relay_refresh_request, opts = {}) click to toggle source

Refresh a report of a relay token The ‘/credit/relay/refresh` endpoint allows third parties to refresh a report that was relayed to them, using a `relay_token` that was created by the report owner. A new report will be created with the original report parameters, but with the most recent data available based on the `days_requested` value of the original report. @param credit_relay_refresh_request [CreditRelayRefreshRequest] @param [Hash] opts the optional parameters @return [CreditRelayRefreshResponse]

# File lib/plaid/api/plaid_api.rb, line 5263
def credit_relay_refresh(credit_relay_refresh_request, opts = {})
  data, _status_code, _headers = credit_relay_refresh_with_http_info(credit_relay_refresh_request, opts)
  data
end
credit_relay_refresh_with_http_info(credit_relay_refresh_request, opts = {}) click to toggle source

Refresh a report of a relay token The &#x60;/credit/relay/refresh&#x60; endpoint allows third parties to refresh a report that was relayed to them, using a &#x60;relay_token&#x60; that was created by the report owner. A new report will be created with the original report parameters, but with the most recent data available based on the &#x60;days_requested&#x60; value of the original report. @param credit_relay_refresh_request [CreditRelayRefreshRequest] @param [Hash] opts the optional parameters @return [Array<(CreditRelayRefreshResponse, Integer, Hash)>] CreditRelayRefreshResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 5273
def credit_relay_refresh_with_http_info(credit_relay_refresh_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_relay_refresh ...'
  end
  # verify the required parameter 'credit_relay_refresh_request' is set
  if @api_client.config.client_side_validation && credit_relay_refresh_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_relay_refresh_request' when calling PlaidApi.credit_relay_refresh"
  end
  # resource path
  local_var_path = '/credit/relay/refresh'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_relay_refresh_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditRelayRefreshResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_relay_refresh",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_relay_refresh\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_relay_remove(credit_relay_remove_request, opts = {}) click to toggle source

Remove relay token The ‘/credit/relay/remove` endpoint allows you to invalidate a `relay_token`. The third party holding the token will no longer be able to access or refresh the reports which the `relay_token` gives access to. The original report, associated Items, and other relay tokens that provide access to the same report are not affected and will remain accessible after removing the given `relay_token`. @param credit_relay_remove_request [CreditRelayRemoveRequest] @param [Hash] opts the optional parameters @return [CreditRelayRemoveResponse]

# File lib/plaid/api/plaid_api.rb, line 5331
def credit_relay_remove(credit_relay_remove_request, opts = {})
  data, _status_code, _headers = credit_relay_remove_with_http_info(credit_relay_remove_request, opts)
  data
end
credit_relay_remove_with_http_info(credit_relay_remove_request, opts = {}) click to toggle source

Remove relay token The &#x60;/credit/relay/remove&#x60; endpoint allows you to invalidate a &#x60;relay_token&#x60;. The third party holding the token will no longer be able to access or refresh the reports which the &#x60;relay_token&#x60; gives access to. The original report, associated Items, and other relay tokens that provide access to the same report are not affected and will remain accessible after removing the given &#x60;relay_token&#x60;. @param credit_relay_remove_request [CreditRelayRemoveRequest] @param [Hash] opts the optional parameters @return [Array<(CreditRelayRemoveResponse, Integer, Hash)>] CreditRelayRemoveResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 5341
def credit_relay_remove_with_http_info(credit_relay_remove_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_relay_remove ...'
  end
  # verify the required parameter 'credit_relay_remove_request' is set
  if @api_client.config.client_side_validation && credit_relay_remove_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_relay_remove_request' when calling PlaidApi.credit_relay_remove"
  end
  # resource path
  local_var_path = '/credit/relay/remove'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_relay_remove_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditRelayRemoveResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_relay_remove",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_relay_remove\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_report_audit_copy_remove(credit_audit_copy_token_remove_request, opts = {}) click to toggle source

Remove an Audit Copy token The ‘/credit/audit_copy_token/remove` endpoint allows you to remove an Audit Copy. Removing an Audit Copy invalidates the `audit_copy_token` associated with it, meaning both you and any third parties holding the token will no longer be able to use it to access Report data. Items associated with the Report data and other Audit Copies of it are not affected and will remain accessible after removing the given Audit Copy. @param credit_audit_copy_token_remove_request [CreditAuditCopyTokenRemoveRequest] @param [Hash] opts the optional parameters @return [CreditAuditCopyTokenRemoveResponse]

# File lib/plaid/api/plaid_api.rb, line 5399
def credit_report_audit_copy_remove(credit_audit_copy_token_remove_request, opts = {})
  data, _status_code, _headers = credit_report_audit_copy_remove_with_http_info(credit_audit_copy_token_remove_request, opts)
  data
end
credit_report_audit_copy_remove_with_http_info(credit_audit_copy_token_remove_request, opts = {}) click to toggle source

Remove an Audit Copy token The &#x60;/credit/audit_copy_token/remove&#x60; endpoint allows you to remove an Audit Copy. Removing an Audit Copy invalidates the &#x60;audit_copy_token&#x60; associated with it, meaning both you and any third parties holding the token will no longer be able to use it to access Report data. Items associated with the Report data and other Audit Copies of it are not affected and will remain accessible after removing the given Audit Copy. @param credit_audit_copy_token_remove_request [CreditAuditCopyTokenRemoveRequest] @param [Hash] opts the optional parameters @return [Array<(CreditAuditCopyTokenRemoveResponse, Integer, Hash)>] CreditAuditCopyTokenRemoveResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 5409
def credit_report_audit_copy_remove_with_http_info(credit_audit_copy_token_remove_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_report_audit_copy_remove ...'
  end
  # verify the required parameter 'credit_audit_copy_token_remove_request' is set
  if @api_client.config.client_side_validation && credit_audit_copy_token_remove_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_audit_copy_token_remove_request' when calling PlaidApi.credit_report_audit_copy_remove"
  end
  # resource path
  local_var_path = '/credit/audit_copy_token/remove'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_audit_copy_token_remove_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditAuditCopyTokenRemoveResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_report_audit_copy_remove",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_report_audit_copy_remove\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
credit_sessions_get(credit_sessions_get_request, opts = {}) click to toggle source

Retrieve Link sessions for your user This endpoint can be used for your end users after they complete the Link flow. This endpoint returns a list of Link sessions that your user completed, where each session includes the results from the Link flow. These results include details about the Item that was created and some product related metadata (showing, for example, whether the user finished the bank income verification step). @param credit_sessions_get_request [CreditSessionsGetRequest] @param [Hash] opts the optional parameters @return [CreditSessionsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 5467
def credit_sessions_get(credit_sessions_get_request, opts = {})
  data, _status_code, _headers = credit_sessions_get_with_http_info(credit_sessions_get_request, opts)
  data
end
credit_sessions_get_with_http_info(credit_sessions_get_request, opts = {}) click to toggle source

Retrieve Link sessions for your user This endpoint can be used for your end users after they complete the Link flow. This endpoint returns a list of Link sessions that your user completed, where each session includes the results from the Link flow. These results include details about the Item that was created and some product related metadata (showing, for example, whether the user finished the bank income verification step). @param credit_sessions_get_request [CreditSessionsGetRequest] @param [Hash] opts the optional parameters @return [Array<(CreditSessionsGetResponse, Integer, Hash)>] CreditSessionsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 5477
def credit_sessions_get_with_http_info(credit_sessions_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.credit_sessions_get ...'
  end
  # verify the required parameter 'credit_sessions_get_request' is set
  if @api_client.config.client_side_validation && credit_sessions_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'credit_sessions_get_request' when calling PlaidApi.credit_sessions_get"
  end
  # resource path
  local_var_path = '/credit/sessions/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(credit_sessions_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'CreditSessionsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.credit_sessions_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#credit_sessions_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
dashboard_user_get(dashboard_user_get_request, opts = {}) click to toggle source

Retrieve a dashboard user The ‘/dashboard_user/get` endpoint provides details (such as email address) about a specific Dashboard user based on the `dashboard_user_id` field, which is returned in the `audit_trail` object of certain Monitor and Beacon endpoints. This can be used to identify the specific reviewer who performed a Dashboard action. @param dashboard_user_get_request [DashboardUserGetRequest] @param [Hash] opts the optional parameters @return [DashboardUserGetResponse]

# File lib/plaid/api/plaid_api.rb, line 5535
def dashboard_user_get(dashboard_user_get_request, opts = {})
  data, _status_code, _headers = dashboard_user_get_with_http_info(dashboard_user_get_request, opts)
  data
end
dashboard_user_get_with_http_info(dashboard_user_get_request, opts = {}) click to toggle source

Retrieve a dashboard user The &#x60;/dashboard_user/get&#x60; endpoint provides details (such as email address) about a specific Dashboard user based on the &#x60;dashboard_user_id&#x60; field, which is returned in the &#x60;audit_trail&#x60; object of certain Monitor and Beacon endpoints. This can be used to identify the specific reviewer who performed a Dashboard action. @param dashboard_user_get_request [DashboardUserGetRequest] @param [Hash] opts the optional parameters @return [Array<(DashboardUserGetResponse, Integer, Hash)>] DashboardUserGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 5545
def dashboard_user_get_with_http_info(dashboard_user_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.dashboard_user_get ...'
  end
  # verify the required parameter 'dashboard_user_get_request' is set
  if @api_client.config.client_side_validation && dashboard_user_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'dashboard_user_get_request' when calling PlaidApi.dashboard_user_get"
  end
  # resource path
  local_var_path = '/dashboard_user/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(dashboard_user_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'DashboardUserGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.dashboard_user_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#dashboard_user_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
dashboard_user_list(dashboard_user_list_request, opts = {}) click to toggle source

List dashboard users The ‘/dashboard_user/list` endpoint provides details (such as email address) all Dashboard users associated with your account. This can use used to audit or track the list of reviewers for Monitor, Beacon, and Identity Verification products. @param dashboard_user_list_request [DashboardUserListRequest] @param [Hash] opts the optional parameters @return [DashboardUserListResponse]

# File lib/plaid/api/plaid_api.rb, line 5603
def dashboard_user_list(dashboard_user_list_request, opts = {})
  data, _status_code, _headers = dashboard_user_list_with_http_info(dashboard_user_list_request, opts)
  data
end
dashboard_user_list_with_http_info(dashboard_user_list_request, opts = {}) click to toggle source

List dashboard users The &#x60;/dashboard_user/list&#x60; endpoint provides details (such as email address) all Dashboard users associated with your account. This can use used to audit or track the list of reviewers for Monitor, Beacon, and Identity Verification products. @param dashboard_user_list_request [DashboardUserListRequest] @param [Hash] opts the optional parameters @return [Array<(DashboardUserListResponse, Integer, Hash)>] DashboardUserListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 5613
def dashboard_user_list_with_http_info(dashboard_user_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.dashboard_user_list ...'
  end
  # verify the required parameter 'dashboard_user_list_request' is set
  if @api_client.config.client_side_validation && dashboard_user_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'dashboard_user_list_request' when calling PlaidApi.dashboard_user_list"
  end
  # resource path
  local_var_path = '/dashboard_user/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(dashboard_user_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'DashboardUserListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.dashboard_user_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#dashboard_user_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
deposit_switch_alt_create(deposit_switch_alt_create_request, opts = {}) click to toggle source

(Deprecated) Create a deposit switch without using Plaid Exchange This endpoint provides an alternative to ‘/deposit_switch/create` for customers who have not yet fully integrated with Plaid Exchange. Like `/deposit_switch/create`, it creates a deposit switch entity that will be persisted throughout the lifecycle of the switch. @param deposit_switch_alt_create_request [DepositSwitchAltCreateRequest] @param [Hash] opts the optional parameters @return [DepositSwitchAltCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 5671
def deposit_switch_alt_create(deposit_switch_alt_create_request, opts = {})
  data, _status_code, _headers = deposit_switch_alt_create_with_http_info(deposit_switch_alt_create_request, opts)
  data
end
deposit_switch_alt_create_with_http_info(deposit_switch_alt_create_request, opts = {}) click to toggle source

(Deprecated) Create a deposit switch without using Plaid Exchange This endpoint provides an alternative to &#x60;/deposit_switch/create&#x60; for customers who have not yet fully integrated with Plaid Exchange. Like &#x60;/deposit_switch/create&#x60;, it creates a deposit switch entity that will be persisted throughout the lifecycle of the switch. @param deposit_switch_alt_create_request [DepositSwitchAltCreateRequest] @param [Hash] opts the optional parameters @return [Array<(DepositSwitchAltCreateResponse, Integer, Hash)>] DepositSwitchAltCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 5681
def deposit_switch_alt_create_with_http_info(deposit_switch_alt_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.deposit_switch_alt_create ...'
  end
  # verify the required parameter 'deposit_switch_alt_create_request' is set
  if @api_client.config.client_side_validation && deposit_switch_alt_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'deposit_switch_alt_create_request' when calling PlaidApi.deposit_switch_alt_create"
  end
  # resource path
  local_var_path = '/deposit_switch/alt/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(deposit_switch_alt_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'DepositSwitchAltCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.deposit_switch_alt_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#deposit_switch_alt_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
deposit_switch_create(deposit_switch_create_request, opts = {}) click to toggle source

(Deprecated) Create a deposit switch This endpoint creates a deposit switch entity that will be persisted throughout the lifecycle of the switch. @param deposit_switch_create_request [DepositSwitchCreateRequest] @param [Hash] opts the optional parameters @return [DepositSwitchCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 5739
def deposit_switch_create(deposit_switch_create_request, opts = {})
  data, _status_code, _headers = deposit_switch_create_with_http_info(deposit_switch_create_request, opts)
  data
end
deposit_switch_create_with_http_info(deposit_switch_create_request, opts = {}) click to toggle source

(Deprecated) Create a deposit switch This endpoint creates a deposit switch entity that will be persisted throughout the lifecycle of the switch. @param deposit_switch_create_request [DepositSwitchCreateRequest] @param [Hash] opts the optional parameters @return [Array<(DepositSwitchCreateResponse, Integer, Hash)>] DepositSwitchCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 5749
def deposit_switch_create_with_http_info(deposit_switch_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.deposit_switch_create ...'
  end
  # verify the required parameter 'deposit_switch_create_request' is set
  if @api_client.config.client_side_validation && deposit_switch_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'deposit_switch_create_request' when calling PlaidApi.deposit_switch_create"
  end
  # resource path
  local_var_path = '/deposit_switch/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(deposit_switch_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'DepositSwitchCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.deposit_switch_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#deposit_switch_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
deposit_switch_get(deposit_switch_get_request, opts = {}) click to toggle source

(Deprecated) Retrieve a deposit switch This endpoint returns information related to how the user has configured their payroll allocation and the state of the switch. You can use this information to build logic related to the user’s direct deposit allocation preferences. @param deposit_switch_get_request [DepositSwitchGetRequest] @param [Hash] opts the optional parameters @return [DepositSwitchGetResponse]

# File lib/plaid/api/plaid_api.rb, line 5807
def deposit_switch_get(deposit_switch_get_request, opts = {})
  data, _status_code, _headers = deposit_switch_get_with_http_info(deposit_switch_get_request, opts)
  data
end
deposit_switch_get_with_http_info(deposit_switch_get_request, opts = {}) click to toggle source

(Deprecated) Retrieve a deposit switch This endpoint returns information related to how the user has configured their payroll allocation and the state of the switch. You can use this information to build logic related to the user&#39;s direct deposit allocation preferences. @param deposit_switch_get_request [DepositSwitchGetRequest] @param [Hash] opts the optional parameters @return [Array<(DepositSwitchGetResponse, Integer, Hash)>] DepositSwitchGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 5817
def deposit_switch_get_with_http_info(deposit_switch_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.deposit_switch_get ...'
  end
  # verify the required parameter 'deposit_switch_get_request' is set
  if @api_client.config.client_side_validation && deposit_switch_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'deposit_switch_get_request' when calling PlaidApi.deposit_switch_get"
  end
  # resource path
  local_var_path = '/deposit_switch/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(deposit_switch_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'DepositSwitchGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.deposit_switch_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#deposit_switch_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
deposit_switch_token_create(deposit_switch_token_create_request, opts = {}) click to toggle source

(Deprecated) Create a deposit switch token In order for the end user to take action, you will need to create a public token representing the deposit switch. This token is used to initialize Link. It can be used one time and expires after 30 minutes. @param deposit_switch_token_create_request [DepositSwitchTokenCreateRequest] @param [Hash] opts the optional parameters @return [DepositSwitchTokenCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 5875
def deposit_switch_token_create(deposit_switch_token_create_request, opts = {})
  data, _status_code, _headers = deposit_switch_token_create_with_http_info(deposit_switch_token_create_request, opts)
  data
end
deposit_switch_token_create_with_http_info(deposit_switch_token_create_request, opts = {}) click to toggle source

(Deprecated) Create a deposit switch token In order for the end user to take action, you will need to create a public token representing the deposit switch. This token is used to initialize Link. It can be used one time and expires after 30 minutes. @param deposit_switch_token_create_request [DepositSwitchTokenCreateRequest] @param [Hash] opts the optional parameters @return [Array<(DepositSwitchTokenCreateResponse, Integer, Hash)>] DepositSwitchTokenCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 5885
def deposit_switch_token_create_with_http_info(deposit_switch_token_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.deposit_switch_token_create ...'
  end
  # verify the required parameter 'deposit_switch_token_create_request' is set
  if @api_client.config.client_side_validation && deposit_switch_token_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'deposit_switch_token_create_request' when calling PlaidApi.deposit_switch_token_create"
  end
  # resource path
  local_var_path = '/deposit_switch/token/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(deposit_switch_token_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'DepositSwitchTokenCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.deposit_switch_token_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#deposit_switch_token_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
employers_search_with_http_info(employers_search_request, opts = {}) click to toggle source

Search employer database &#x60;/employers/search&#x60; allows you the ability to search Plaid’s database of known employers, for use with Deposit Switch. You can use this endpoint to look up a user&#39;s employer in order to confirm that they are supported. Users with non-supported employers can then be routed out of the Deposit Switch flow. The data in the employer database is currently limited. As the Deposit Switch and Income products progress through their respective beta periods, more employers are being regularly added. Because the employer database is frequently updated, we recommend that you do not cache or store data from this endpoint for more than a day. @param employers_search_request [EmployersSearchRequest] @param [Hash] opts the optional parameters @return [Array<(EmployersSearchResponse, Integer, Hash)>] EmployersSearchResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 5953
def employers_search_with_http_info(employers_search_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.employers_search ...'
  end
  # verify the required parameter 'employers_search_request' is set
  if @api_client.config.client_side_validation && employers_search_request.nil?
    fail ArgumentError, "Missing the required parameter 'employers_search_request' when calling PlaidApi.employers_search"
  end
  # resource path
  local_var_path = '/employers/search'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(employers_search_request)

  # return_type
  return_type = opts[:debug_return_type] || 'EmployersSearchResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.employers_search",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#employers_search\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
employment_verification_get(employment_verification_get_request, opts = {}) click to toggle source

(Deprecated) Retrieve a summary of an individual’s employment information ‘/employment/verification/get` returns a list of employments through a user payroll that was verified by an end user. This endpoint has been deprecated; new integrations should use `/credit/employment/get` instead. @param employment_verification_get_request [EmploymentVerificationGetRequest] @param [Hash] opts the optional parameters @return [EmploymentVerificationGetResponse]

# File lib/plaid/api/plaid_api.rb, line 6011
def employment_verification_get(employment_verification_get_request, opts = {})
  data, _status_code, _headers = employment_verification_get_with_http_info(employment_verification_get_request, opts)
  data
end
employment_verification_get_with_http_info(employment_verification_get_request, opts = {}) click to toggle source

(Deprecated) Retrieve a summary of an individual&#39;s employment information &#x60;/employment/verification/get&#x60; returns a list of employments through a user payroll that was verified by an end user. This endpoint has been deprecated; new integrations should use &#x60;/credit/employment/get&#x60; instead. @param employment_verification_get_request [EmploymentVerificationGetRequest] @param [Hash] opts the optional parameters @return [Array<(EmploymentVerificationGetResponse, Integer, Hash)>] EmploymentVerificationGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 6021
def employment_verification_get_with_http_info(employment_verification_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.employment_verification_get ...'
  end
  # verify the required parameter 'employment_verification_get_request' is set
  if @api_client.config.client_side_validation && employment_verification_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'employment_verification_get_request' when calling PlaidApi.employment_verification_get"
  end
  # resource path
  local_var_path = '/employment/verification/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(employment_verification_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'EmploymentVerificationGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.employment_verification_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#employment_verification_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
fdx_notifications(fdx_notification, opts = {}) click to toggle source

Webhook receiver for fdx notifications A generic webhook receiver endpoint for FDX Event Notifications @param fdx_notification [FDXNotification] @param [Hash] opts the optional parameters @return [nil]

# File lib/plaid/api/plaid_api.rb, line 6079
def fdx_notifications(fdx_notification, opts = {})
  fdx_notifications_with_http_info(fdx_notification, opts)
  nil
end
fdx_notifications_with_http_info(fdx_notification, opts = {}) click to toggle source

Webhook receiver for fdx notifications A generic webhook receiver endpoint for FDX Event Notifications @param fdx_notification [FDXNotification] @param [Hash] opts the optional parameters @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 6089
def fdx_notifications_with_http_info(fdx_notification, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.fdx_notifications ...'
  end
  # verify the required parameter 'fdx_notification' is set
  if @api_client.config.client_side_validation && fdx_notification.nil?
    fail ArgumentError, "Missing the required parameter 'fdx_notification' when calling PlaidApi.fdx_notifications"
  end
  # resource path
  local_var_path = '/fdx/notifications'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(fdx_notification)

  # return_type
  return_type = opts[:debug_return_type]

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.fdx_notifications",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#fdx_notifications\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
get_recipient(recipient_id, opts = {}) click to toggle source

Get Recipient Get a specific recipient @param recipient_id [String] Recipient Identifier. Uniquely identifies the recipient @param [Hash] opts the optional parameters @option opts [String] :oauth_state_id The value that is passed into the OAuth URI &#39;state&#39; query parameter. @return [GetRecipientResponse]

# File lib/plaid/api/plaid_api.rb, line 6148
def get_recipient(recipient_id, opts = {})
  data, _status_code, _headers = get_recipient_with_http_info(recipient_id, opts)
  data
end
get_recipient_with_http_info(recipient_id, opts = {}) click to toggle source

Get Recipient Get a specific recipient @param recipient_id [String] Recipient Identifier. Uniquely identifies the recipient @param [Hash] opts the optional parameters @option opts [String] :oauth_state_id The value that is passed into the OAuth URI &#39;state&#39; query parameter. @return [Array<(GetRecipientResponse, Integer, Hash)>] GetRecipientResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 6159
def get_recipient_with_http_info(recipient_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.get_recipient ...'
  end
  # verify the required parameter 'recipient_id' is set
  if @api_client.config.client_side_validation && recipient_id.nil?
    fail ArgumentError, "Missing the required parameter 'recipient_id' when calling PlaidApi.get_recipient"
  end
  # resource path
  local_var_path = '/fdx/recipient/{recipientId}'.sub('{' + 'recipientId' + '}', CGI.escape(recipient_id.to_s))

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  header_params[:'OAUTH-STATE-ID'] = opts[:'oauth_state_id'] if !opts[:'oauth_state_id'].nil?

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body]

  # return_type
  return_type = opts[:debug_return_type] || 'GetRecipientResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.get_recipient",
    :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: PlaidApi#get_recipient\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
get_recipients(opts = {}) click to toggle source

Get Recipients Returns a list of Recipients @param [Hash] opts the optional parameters @return [GetRecipientsResponse]

# File lib/plaid/api/plaid_api.rb, line 6212
def get_recipients(opts = {})
  data, _status_code, _headers = get_recipients_with_http_info(opts)
  data
end
get_recipients_with_http_info(opts = {}) click to toggle source

Get Recipients Returns a list of Recipients @param [Hash] opts the optional parameters @return [Array<(GetRecipientsResponse, Integer, Hash)>] GetRecipientsResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 6221
def get_recipients_with_http_info(opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.get_recipients ...'
  end
  # resource path
  local_var_path = '/fdx/recipients'

  # query parameters
  query_params = opts[:query_params] || {}

  # 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] || 'GetRecipientsResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.get_recipients",
    :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: PlaidApi#get_recipients\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
identity_documents_uploads_get(identity_documents_uploads_get_request, opts = {}) click to toggle source

Returns uploaded document identity Use ‘/identity/documents/uploads/get` to retrieve identity details when using [Identity Document Upload](plaid.com/docs/identity/identity-document-upload/). @param identity_documents_uploads_get_request [IdentityDocumentsUploadsGetRequest] @param [Hash] opts the optional parameters @return [IdentityDocumentsUploadsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 6270
def identity_documents_uploads_get(identity_documents_uploads_get_request, opts = {})
  data, _status_code, _headers = identity_documents_uploads_get_with_http_info(identity_documents_uploads_get_request, opts)
  data
end
identity_documents_uploads_get_with_http_info(identity_documents_uploads_get_request, opts = {}) click to toggle source

Returns uploaded document identity Use &#x60;/identity/documents/uploads/get&#x60; to retrieve identity details when using [Identity Document Upload](plaid.com/docs/identity/identity-document-upload/). @param identity_documents_uploads_get_request [IdentityDocumentsUploadsGetRequest] @param [Hash] opts the optional parameters @return [Array<(IdentityDocumentsUploadsGetResponse, Integer, Hash)>] IdentityDocumentsUploadsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 6280
def identity_documents_uploads_get_with_http_info(identity_documents_uploads_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.identity_documents_uploads_get ...'
  end
  # verify the required parameter 'identity_documents_uploads_get_request' is set
  if @api_client.config.client_side_validation && identity_documents_uploads_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'identity_documents_uploads_get_request' when calling PlaidApi.identity_documents_uploads_get"
  end
  # resource path
  local_var_path = '/identity/documents/uploads/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(identity_documents_uploads_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'IdentityDocumentsUploadsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.identity_documents_uploads_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#identity_documents_uploads_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
identity_get(identity_get_request, opts = {}) click to toggle source

Retrieve identity data The ‘/identity/get` endpoint allows you to retrieve various account holder information on file with the financial institution, including names, emails, phone numbers, and addresses. Only name data is guaranteed to be returned; other fields will be empty arrays if not provided by the institution. Note: In API versions 2018-05-22 and earlier, the `owners` object is not returned, and instead identity information is returned in the top level `identity` object. For more details, see [Plaid API versioning](plaid.com/docs/api/versioning/#version-2019-05-29). @param identity_get_request [IdentityGetRequest] @param [Hash] opts the optional parameters @return [IdentityGetResponse]

# File lib/plaid/api/plaid_api.rb, line 6338
def identity_get(identity_get_request, opts = {})
  data, _status_code, _headers = identity_get_with_http_info(identity_get_request, opts)
  data
end
identity_get_with_http_info(identity_get_request, opts = {}) click to toggle source

Retrieve identity data The &#x60;/identity/get&#x60; endpoint allows you to retrieve various account holder information on file with the financial institution, including names, emails, phone numbers, and addresses. Only name data is guaranteed to be returned; other fields will be empty arrays if not provided by the institution. Note: In API versions 2018-05-22 and earlier, the &#x60;owners&#x60; object is not returned, and instead identity information is returned in the top level &#x60;identity&#x60; object. For more details, see [Plaid API versioning](plaid.com/docs/api/versioning/#version-2019-05-29). @param identity_get_request [IdentityGetRequest] @param [Hash] opts the optional parameters @return [Array<(IdentityGetResponse, Integer, Hash)>] IdentityGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 6348
def identity_get_with_http_info(identity_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.identity_get ...'
  end
  # verify the required parameter 'identity_get_request' is set
  if @api_client.config.client_side_validation && identity_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'identity_get_request' when calling PlaidApi.identity_get"
  end
  # resource path
  local_var_path = '/identity/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(identity_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'IdentityGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.identity_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#identity_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
identity_match(identity_match_request, opts = {}) click to toggle source

Retrieve identity match score The ‘/identity/match` endpoint generates a match score, which indicates how well the provided identity data matches the identity information on file with the account holder’s financial institution. Fields within the ‘balances` object will always be null when retrieved by `/identity/match`. Instead, use the free `/accounts/get` endpoint to request balance cached data, or `/accounts/balance/get` for real-time data. @param identity_match_request [IdentityMatchRequest] @param [Hash] opts the optional parameters @return [IdentityMatchResponse]

# File lib/plaid/api/plaid_api.rb, line 6406
def identity_match(identity_match_request, opts = {})
  data, _status_code, _headers = identity_match_with_http_info(identity_match_request, opts)
  data
end
identity_match_with_http_info(identity_match_request, opts = {}) click to toggle source

Retrieve identity match score The &#x60;/identity/match&#x60; endpoint generates a match score, which indicates how well the provided identity data matches the identity information on file with the account holder&#39;s financial institution. Fields within the &#x60;balances&#x60; object will always be null when retrieved by &#x60;/identity/match&#x60;. Instead, use the free &#x60;/accounts/get&#x60; endpoint to request balance cached data, or &#x60;/accounts/balance/get&#x60; for real-time data. @param identity_match_request [IdentityMatchRequest] @param [Hash] opts the optional parameters @return [Array<(IdentityMatchResponse, Integer, Hash)>] IdentityMatchResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 6416
def identity_match_with_http_info(identity_match_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.identity_match ...'
  end
  # verify the required parameter 'identity_match_request' is set
  if @api_client.config.client_side_validation && identity_match_request.nil?
    fail ArgumentError, "Missing the required parameter 'identity_match_request' when calling PlaidApi.identity_match"
  end
  # resource path
  local_var_path = '/identity/match'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(identity_match_request)

  # return_type
  return_type = opts[:debug_return_type] || 'IdentityMatchResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.identity_match",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#identity_match\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
identity_refresh(identity_refresh_request, opts = {}) click to toggle source

Refresh identity data ‘/identity/refresh` is an optional endpoint for users of the Identity product. It initiates an on-demand extraction to fetch the most up to date Identity information from the Financial Institution. This on-demand extraction takes place in addition to the periodic extractions that automatically occur for any Identity-enabled Item. If changes to Identity are discovered after calling `/identity/refresh`, Plaid will fire a webhook [`DEFAULT_UPDATE`](plaid.com/docs/api/products/identity/#default_update). As this endpoint triggers a synchronous request for fresh data, latency may be higher than for other Plaid endpoints (typically less than 10 seconds, but occasionally up to 30 seconds or more); if you encounter errors, you may find it necessary to adjust your timeout period when making requests. `/identity/refresh` is offered as an add-on to Identity and has a separate [fee model](/docs/account/billing/#per-request-flat-fee). To request access to this endpoint, submit a [product access request](dashboard.plaid.com/team/products) or contact your Plaid account manager. @param identity_refresh_request [IdentityRefreshRequest] @param [Hash] opts the optional parameters @return [IdentityRefreshResponse]

# File lib/plaid/api/plaid_api.rb, line 6474
def identity_refresh(identity_refresh_request, opts = {})
  data, _status_code, _headers = identity_refresh_with_http_info(identity_refresh_request, opts)
  data
end
identity_refresh_with_http_info(identity_refresh_request, opts = {}) click to toggle source

Refresh identity data &#x60;/identity/refresh&#x60; is an optional endpoint for users of the Identity product. It initiates an on-demand extraction to fetch the most up to date Identity information from the Financial Institution. This on-demand extraction takes place in addition to the periodic extractions that automatically occur for any Identity-enabled Item. If changes to Identity are discovered after calling &#x60;/identity/refresh&#x60;, Plaid will fire a webhook [&#x60;DEFAULT_UPDATE&#x60;](plaid.com/docs/api/products/identity/#default_update). As this endpoint triggers a synchronous request for fresh data, latency may be higher than for other Plaid endpoints (typically less than 10 seconds, but occasionally up to 30 seconds or more); if you encounter errors, you may find it necessary to adjust your timeout period when making requests. &#x60;/identity/refresh&#x60; is offered as an add-on to Identity and has a separate [fee model](/docs/account/billing/#per-request-flat-fee). To request access to this endpoint, submit a [product access request](dashboard.plaid.com/team/products) or contact your Plaid account manager. @param identity_refresh_request [IdentityRefreshRequest] @param [Hash] opts the optional parameters @return [Array<(IdentityRefreshResponse, Integer, Hash)>] IdentityRefreshResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 6484
def identity_refresh_with_http_info(identity_refresh_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.identity_refresh ...'
  end
  # verify the required parameter 'identity_refresh_request' is set
  if @api_client.config.client_side_validation && identity_refresh_request.nil?
    fail ArgumentError, "Missing the required parameter 'identity_refresh_request' when calling PlaidApi.identity_refresh"
  end
  # resource path
  local_var_path = '/identity/refresh'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(identity_refresh_request)

  # return_type
  return_type = opts[:debug_return_type] || 'IdentityRefreshResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.identity_refresh",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#identity_refresh\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
identity_verification_autofill_create(identity_verification_autofill_create_request, opts = {}) click to toggle source

Create autofill for an Identity Verification Try to autofill an Identity Verification based of the provided phone number, date of birth and country of residence. @param identity_verification_autofill_create_request [IdentityVerificationAutofillCreateRequest] @param [Hash] opts the optional parameters @return [IdentityVerificationAutofillCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 6542
def identity_verification_autofill_create(identity_verification_autofill_create_request, opts = {})
  data, _status_code, _headers = identity_verification_autofill_create_with_http_info(identity_verification_autofill_create_request, opts)
  data
end
identity_verification_autofill_create_with_http_info(identity_verification_autofill_create_request, opts = {}) click to toggle source

Create autofill for an Identity Verification Try to autofill an Identity Verification based of the provided phone number, date of birth and country of residence. @param identity_verification_autofill_create_request [IdentityVerificationAutofillCreateRequest] @param [Hash] opts the optional parameters @return [Array<(IdentityVerificationAutofillCreateResponse, Integer, Hash)>] IdentityVerificationAutofillCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 6552
def identity_verification_autofill_create_with_http_info(identity_verification_autofill_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.identity_verification_autofill_create ...'
  end
  # verify the required parameter 'identity_verification_autofill_create_request' is set
  if @api_client.config.client_side_validation && identity_verification_autofill_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'identity_verification_autofill_create_request' when calling PlaidApi.identity_verification_autofill_create"
  end
  # resource path
  local_var_path = '/identity_verification/autofill/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(identity_verification_autofill_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'IdentityVerificationAutofillCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.identity_verification_autofill_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#identity_verification_autofill_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
identity_verification_create(identity_verification_create_request, opts = {}) click to toggle source

Create a new Identity Verification Create a new Identity Verification for the user specified by the ‘client_user_id` field. The requirements and behavior of the verification are determined by the `template_id` provided. If you don’t know whether the associated user already has an active Identity Verification, you can specify ‘"is_idempotent": true` in the request body. With idempotency enabled, a new Identity Verification will only be created if one does not already exist for the associated `client_user_id` and `template_id`. If an Identity Verification is found, it will be returned unmodified with an `200 OK` HTTP status code. You can also use this endpoint to supply information you already have collected about the user; if any of these fields are specified, the screens prompting the user to enter them will be skipped during the Link flow. @param identity_verification_create_request [IdentityVerificationCreateRequest] @param [Hash] opts the optional parameters @return [IdentityVerificationCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 6610
def identity_verification_create(identity_verification_create_request, opts = {})
  data, _status_code, _headers = identity_verification_create_with_http_info(identity_verification_create_request, opts)
  data
end
identity_verification_create_with_http_info(identity_verification_create_request, opts = {}) click to toggle source

Create a new Identity Verification Create a new Identity Verification for the user specified by the &#x60;client_user_id&#x60; field. The requirements and behavior of the verification are determined by the &#x60;template_id&#x60; provided. If you don&#39;t know whether the associated user already has an active Identity Verification, you can specify &#x60;&quot;is_idempotent&quot;: true&#x60; in the request body. With idempotency enabled, a new Identity Verification will only be created if one does not already exist for the associated &#x60;client_user_id&#x60; and &#x60;template_id&#x60;. If an Identity Verification is found, it will be returned unmodified with an &#x60;200 OK&#x60; HTTP status code. You can also use this endpoint to supply information you already have collected about the user; if any of these fields are specified, the screens prompting the user to enter them will be skipped during the Link flow. @param identity_verification_create_request [IdentityVerificationCreateRequest] @param [Hash] opts the optional parameters @return [Array<(IdentityVerificationCreateResponse, Integer, Hash)>] IdentityVerificationCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 6620
def identity_verification_create_with_http_info(identity_verification_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.identity_verification_create ...'
  end
  # verify the required parameter 'identity_verification_create_request' is set
  if @api_client.config.client_side_validation && identity_verification_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'identity_verification_create_request' when calling PlaidApi.identity_verification_create"
  end
  # resource path
  local_var_path = '/identity_verification/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(identity_verification_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'IdentityVerificationCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.identity_verification_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#identity_verification_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
identity_verification_get(identity_verification_get_request, opts = {}) click to toggle source

Retrieve Identity Verification Retrieve a previously created Identity Verification. @param identity_verification_get_request [IdentityVerificationGetRequest] @param [Hash] opts the optional parameters @return [IdentityVerificationGetResponse]

# File lib/plaid/api/plaid_api.rb, line 6678
def identity_verification_get(identity_verification_get_request, opts = {})
  data, _status_code, _headers = identity_verification_get_with_http_info(identity_verification_get_request, opts)
  data
end
identity_verification_get_with_http_info(identity_verification_get_request, opts = {}) click to toggle source

Retrieve Identity Verification Retrieve a previously created Identity Verification. @param identity_verification_get_request [IdentityVerificationGetRequest] @param [Hash] opts the optional parameters @return [Array<(IdentityVerificationGetResponse, Integer, Hash)>] IdentityVerificationGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 6688
def identity_verification_get_with_http_info(identity_verification_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.identity_verification_get ...'
  end
  # verify the required parameter 'identity_verification_get_request' is set
  if @api_client.config.client_side_validation && identity_verification_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'identity_verification_get_request' when calling PlaidApi.identity_verification_get"
  end
  # resource path
  local_var_path = '/identity_verification/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(identity_verification_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'IdentityVerificationGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.identity_verification_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#identity_verification_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
identity_verification_list(identity_verification_list_request, opts = {}) click to toggle source

List Identity Verifications Filter and list Identity Verifications created by your account @param identity_verification_list_request [IdentityVerificationListRequest] @param [Hash] opts the optional parameters @return [IdentityVerificationListResponse]

# File lib/plaid/api/plaid_api.rb, line 6746
def identity_verification_list(identity_verification_list_request, opts = {})
  data, _status_code, _headers = identity_verification_list_with_http_info(identity_verification_list_request, opts)
  data
end
identity_verification_list_with_http_info(identity_verification_list_request, opts = {}) click to toggle source

List Identity Verifications Filter and list Identity Verifications created by your account @param identity_verification_list_request [IdentityVerificationListRequest] @param [Hash] opts the optional parameters @return [Array<(IdentityVerificationListResponse, Integer, Hash)>] IdentityVerificationListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 6756
def identity_verification_list_with_http_info(identity_verification_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.identity_verification_list ...'
  end
  # verify the required parameter 'identity_verification_list_request' is set
  if @api_client.config.client_side_validation && identity_verification_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'identity_verification_list_request' when calling PlaidApi.identity_verification_list"
  end
  # resource path
  local_var_path = '/identity_verification/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(identity_verification_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'IdentityVerificationListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.identity_verification_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#identity_verification_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
identity_verification_retry(identity_verification_retry_request, opts = {}) click to toggle source

Retry an Identity Verification Allow a customer to retry their Identity Verification @param identity_verification_retry_request [IdentityVerificationRetryRequest] @param [Hash] opts the optional parameters @return [IdentityVerificationRetryResponse]

# File lib/plaid/api/plaid_api.rb, line 6814
def identity_verification_retry(identity_verification_retry_request, opts = {})
  data, _status_code, _headers = identity_verification_retry_with_http_info(identity_verification_retry_request, opts)
  data
end
identity_verification_retry_with_http_info(identity_verification_retry_request, opts = {}) click to toggle source

Retry an Identity Verification Allow a customer to retry their Identity Verification @param identity_verification_retry_request [IdentityVerificationRetryRequest] @param [Hash] opts the optional parameters @return [Array<(IdentityVerificationRetryResponse, Integer, Hash)>] IdentityVerificationRetryResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 6824
def identity_verification_retry_with_http_info(identity_verification_retry_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.identity_verification_retry ...'
  end
  # verify the required parameter 'identity_verification_retry_request' is set
  if @api_client.config.client_side_validation && identity_verification_retry_request.nil?
    fail ArgumentError, "Missing the required parameter 'identity_verification_retry_request' when calling PlaidApi.identity_verification_retry"
  end
  # resource path
  local_var_path = '/identity_verification/retry'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(identity_verification_retry_request)

  # return_type
  return_type = opts[:debug_return_type] || 'IdentityVerificationRetryResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.identity_verification_retry",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#identity_verification_retry\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
income_verification_create(income_verification_create_request, opts = {}) click to toggle source

(Deprecated) Create an income verification instance ‘/income/verification/create` begins the income verification process by returning an `income_verification_id`. You can then provide the `income_verification_id` to `/link/token/create` under the `income_verification` parameter in order to create a Link instance that will prompt the user to go through the income verification flow. Plaid will fire an `INCOME` webhook once the user completes the Payroll Income flow, or when the uploaded documents in the Document Income flow have finished processing. @param income_verification_create_request [IncomeVerificationCreateRequest] @param [Hash] opts the optional parameters @return [IncomeVerificationCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 6882
def income_verification_create(income_verification_create_request, opts = {})
  data, _status_code, _headers = income_verification_create_with_http_info(income_verification_create_request, opts)
  data
end
income_verification_create_with_http_info(income_verification_create_request, opts = {}) click to toggle source

(Deprecated) Create an income verification instance &#x60;/income/verification/create&#x60; begins the income verification process by returning an &#x60;income_verification_id&#x60;. You can then provide the &#x60;income_verification_id&#x60; to &#x60;/link/token/create&#x60; under the &#x60;income_verification&#x60; parameter in order to create a Link instance that will prompt the user to go through the income verification flow. Plaid will fire an &#x60;INCOME&#x60; webhook once the user completes the Payroll Income flow, or when the uploaded documents in the Document Income flow have finished processing. @param income_verification_create_request [IncomeVerificationCreateRequest] @param [Hash] opts the optional parameters @return [Array<(IncomeVerificationCreateResponse, Integer, Hash)>] IncomeVerificationCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 6892
def income_verification_create_with_http_info(income_verification_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.income_verification_create ...'
  end
  # verify the required parameter 'income_verification_create_request' is set
  if @api_client.config.client_side_validation && income_verification_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'income_verification_create_request' when calling PlaidApi.income_verification_create"
  end
  # resource path
  local_var_path = '/income/verification/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(income_verification_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'IncomeVerificationCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.income_verification_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#income_verification_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
income_verification_documents_download(income_verification_documents_download_request, opts = {}) click to toggle source

(Deprecated) Download the original documents used for income verification ‘/income/verification/documents/download` provides the ability to download the source documents associated with the verification. If Document Income was used, the documents will be those the user provided in Link. For Payroll Income, the most recent files available for download from the payroll provider will be available from this endpoint. The response to `/income/verification/documents/download` is a ZIP file in binary data. If a `document_id` is passed, a single document will be contained in this file. If not, the response will contain all documents associated with the verification. The `request_id` is returned in the `Plaid-Request-ID` header. @param income_verification_documents_download_request [IncomeVerificationDocumentsDownloadRequest] @param [Hash] opts the optional parameters @return [File]

# File lib/plaid/api/plaid_api.rb, line 6950
def income_verification_documents_download(income_verification_documents_download_request, opts = {})
  data, _status_code, _headers = income_verification_documents_download_with_http_info(income_verification_documents_download_request, opts)
  data
end
income_verification_documents_download_with_http_info(income_verification_documents_download_request, opts = {}) click to toggle source

(Deprecated) Download the original documents used for income verification &#x60;/income/verification/documents/download&#x60; provides the ability to download the source documents associated with the verification. If Document Income was used, the documents will be those the user provided in Link. For Payroll Income, the most recent files available for download from the payroll provider will be available from this endpoint. The response to &#x60;/income/verification/documents/download&#x60; is a ZIP file in binary data. If a &#x60;document_id&#x60; is passed, a single document will be contained in this file. If not, the response will contain all documents associated with the verification. The &#x60;request_id&#x60; is returned in the &#x60;Plaid-Request-ID&#x60; header. @param income_verification_documents_download_request [IncomeVerificationDocumentsDownloadRequest] @param [Hash] opts the optional parameters @return [Array<(File, Integer, Hash)>] File data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 6960
def income_verification_documents_download_with_http_info(income_verification_documents_download_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.income_verification_documents_download ...'
  end
  # verify the required parameter 'income_verification_documents_download_request' is set
  if @api_client.config.client_side_validation && income_verification_documents_download_request.nil?
    fail ArgumentError, "Missing the required parameter 'income_verification_documents_download_request' when calling PlaidApi.income_verification_documents_download"
  end
  # resource path
  local_var_path = '/income/verification/documents/download'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/zip'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(income_verification_documents_download_request)

  # return_type
  return_type = opts[:debug_return_type] || 'File'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.income_verification_documents_download",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#income_verification_documents_download\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
income_verification_paystubs_get(income_verification_paystubs_get_request, opts = {}) click to toggle source

(Deprecated) Retrieve information from the paystubs used for income verification ‘/income/verification/paystubs/get` returns the information collected from the paystubs that were used to verify an end user’s income. It can be called once the status of the verification has been set to ‘VERIFICATION_STATUS_PROCESSING_COMPLETE`, as reported by the `INCOME: verification_status` webhook. Attempting to call the endpoint before verification has been completed will result in an error. This endpoint has been deprecated; new integrations should use `/credit/payroll_income/get` instead. @param income_verification_paystubs_get_request [IncomeVerificationPaystubsGetRequest] @param [Hash] opts the optional parameters @return [IncomeVerificationPaystubsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 7018
def income_verification_paystubs_get(income_verification_paystubs_get_request, opts = {})
  data, _status_code, _headers = income_verification_paystubs_get_with_http_info(income_verification_paystubs_get_request, opts)
  data
end
income_verification_paystubs_get_with_http_info(income_verification_paystubs_get_request, opts = {}) click to toggle source

(Deprecated) Retrieve information from the paystubs used for income verification &#x60;/income/verification/paystubs/get&#x60; returns the information collected from the paystubs that were used to verify an end user&#39;s income. It can be called once the status of the verification has been set to &#x60;VERIFICATION_STATUS_PROCESSING_COMPLETE&#x60;, as reported by the &#x60;INCOME: verification_status&#x60; webhook. Attempting to call the endpoint before verification has been completed will result in an error. This endpoint has been deprecated; new integrations should use &#x60;/credit/payroll_income/get&#x60; instead. @param income_verification_paystubs_get_request [IncomeVerificationPaystubsGetRequest] @param [Hash] opts the optional parameters @return [Array<(IncomeVerificationPaystubsGetResponse, Integer, Hash)>] IncomeVerificationPaystubsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 7028
def income_verification_paystubs_get_with_http_info(income_verification_paystubs_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.income_verification_paystubs_get ...'
  end
  # verify the required parameter 'income_verification_paystubs_get_request' is set
  if @api_client.config.client_side_validation && income_verification_paystubs_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'income_verification_paystubs_get_request' when calling PlaidApi.income_verification_paystubs_get"
  end
  # resource path
  local_var_path = '/income/verification/paystubs/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(income_verification_paystubs_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'IncomeVerificationPaystubsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.income_verification_paystubs_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#income_verification_paystubs_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
income_verification_precheck(income_verification_precheck_request, opts = {}) click to toggle source

(Deprecated) Check digital income verification eligibility and optimize conversion ‘/income/verification/precheck` is an optional endpoint that can be called before initializing a Link session for income verification. It evaluates whether a given user is supportable by digital income verification and returns a `precheck_id` that can be provided to `/link/token/create`. If the user is eligible for digital verification, providing the `precheck_id` in this way will generate a Link UI optimized for the end user and their specific employer. If the user cannot be confirmed as eligible, the `precheck_id` can still be provided to `/link/token/create` and the user can still use the income verification flow, but they may be required to manually upload a paystub to verify their income. While all request fields are optional, providing either `employer` or `transactions_access_tokens` data will increase the chance of receiving a useful result. This endpoint has been deprecated; new integrations should use `/credit/payroll_income/precheck` instead. @param income_verification_precheck_request [IncomeVerificationPrecheckRequest] @param [Hash] opts the optional parameters @return [IncomeVerificationPrecheckResponse]

# File lib/plaid/api/plaid_api.rb, line 7086
def income_verification_precheck(income_verification_precheck_request, opts = {})
  data, _status_code, _headers = income_verification_precheck_with_http_info(income_verification_precheck_request, opts)
  data
end
income_verification_precheck_with_http_info(income_verification_precheck_request, opts = {}) click to toggle source

(Deprecated) Check digital income verification eligibility and optimize conversion &#x60;/income/verification/precheck&#x60; is an optional endpoint that can be called before initializing a Link session for income verification. It evaluates whether a given user is supportable by digital income verification and returns a &#x60;precheck_id&#x60; that can be provided to &#x60;/link/token/create&#x60;. If the user is eligible for digital verification, providing the &#x60;precheck_id&#x60; in this way will generate a Link UI optimized for the end user and their specific employer. If the user cannot be confirmed as eligible, the &#x60;precheck_id&#x60; can still be provided to &#x60;/link/token/create&#x60; and the user can still use the income verification flow, but they may be required to manually upload a paystub to verify their income. While all request fields are optional, providing either &#x60;employer&#x60; or &#x60;transactions_access_tokens&#x60; data will increase the chance of receiving a useful result. This endpoint has been deprecated; new integrations should use &#x60;/credit/payroll_income/precheck&#x60; instead. @param income_verification_precheck_request [IncomeVerificationPrecheckRequest] @param [Hash] opts the optional parameters @return [Array<(IncomeVerificationPrecheckResponse, Integer, Hash)>] IncomeVerificationPrecheckResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 7096
def income_verification_precheck_with_http_info(income_verification_precheck_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.income_verification_precheck ...'
  end
  # verify the required parameter 'income_verification_precheck_request' is set
  if @api_client.config.client_side_validation && income_verification_precheck_request.nil?
    fail ArgumentError, "Missing the required parameter 'income_verification_precheck_request' when calling PlaidApi.income_verification_precheck"
  end
  # resource path
  local_var_path = '/income/verification/precheck'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(income_verification_precheck_request)

  # return_type
  return_type = opts[:debug_return_type] || 'IncomeVerificationPrecheckResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.income_verification_precheck",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#income_verification_precheck\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
income_verification_taxforms_get(income_verification_taxforms_get_request, opts = {}) click to toggle source

(Deprecated) Retrieve information from the tax documents used for income verification ‘/income/verification/taxforms/get` returns the information collected from forms that were used to verify an end user”s income. It can be called once the status of the verification has been set to `VERIFICATION_STATUS_PROCESSING_COMPLETE`, as reported by the `INCOME: verification_status` webhook. Attempting to call the endpoint before verification has been completed will result in an error. This endpoint has been deprecated; new integrations should use `/credit/payroll_income/get` instead. @param income_verification_taxforms_get_request [IncomeVerificationTaxformsGetRequest] @param [Hash] opts the optional parameters @return [IncomeVerificationTaxformsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 7154
def income_verification_taxforms_get(income_verification_taxforms_get_request, opts = {})
  data, _status_code, _headers = income_verification_taxforms_get_with_http_info(income_verification_taxforms_get_request, opts)
  data
end
income_verification_taxforms_get_with_http_info(income_verification_taxforms_get_request, opts = {}) click to toggle source

(Deprecated) Retrieve information from the tax documents used for income verification &#x60;/income/verification/taxforms/get&#x60; returns the information collected from forms that were used to verify an end user&#39;&#39;s income. It can be called once the status of the verification has been set to &#x60;VERIFICATION_STATUS_PROCESSING_COMPLETE&#x60;, as reported by the &#x60;INCOME: verification_status&#x60; webhook. Attempting to call the endpoint before verification has been completed will result in an error. This endpoint has been deprecated; new integrations should use &#x60;/credit/payroll_income/get&#x60; instead. @param income_verification_taxforms_get_request [IncomeVerificationTaxformsGetRequest] @param [Hash] opts the optional parameters @return [Array<(IncomeVerificationTaxformsGetResponse, Integer, Hash)>] IncomeVerificationTaxformsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 7164
def income_verification_taxforms_get_with_http_info(income_verification_taxforms_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.income_verification_taxforms_get ...'
  end
  # verify the required parameter 'income_verification_taxforms_get_request' is set
  if @api_client.config.client_side_validation && income_verification_taxforms_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'income_verification_taxforms_get_request' when calling PlaidApi.income_verification_taxforms_get"
  end
  # resource path
  local_var_path = '/income/verification/taxforms/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(income_verification_taxforms_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'IncomeVerificationTaxformsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.income_verification_taxforms_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#income_verification_taxforms_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
institutions_get(institutions_get_request, opts = {}) click to toggle source

Get details of all supported institutions Returns a JSON response containing details on all financial institutions currently supported by Plaid. Because Plaid supports thousands of institutions, results are paginated. If there is no overlap between an institution’s enabled products and a client’s enabled products, then the institution will be filtered out from the response. As a result, the number of institutions returned may not match the count specified in the call. @param institutions_get_request [InstitutionsGetRequest] @param [Hash] opts the optional parameters @return [InstitutionsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 7222
def institutions_get(institutions_get_request, opts = {})
  data, _status_code, _headers = institutions_get_with_http_info(institutions_get_request, opts)
  data
end
institutions_get_by_id(institutions_get_by_id_request, opts = {}) click to toggle source

Get details of an institution Returns a JSON response containing details on a specified financial institution currently supported by Plaid. Versioning note: API versions 2019-05-29 and earlier allow use of the ‘public_key` parameter instead of the `client_id` and `secret` to authenticate to this endpoint. The `public_key` has been deprecated; all customers are encouraged to use `client_id` and `secret` instead. @param institutions_get_by_id_request [InstitutionsGetByIdRequest] @param [Hash] opts the optional parameters @return [InstitutionsGetByIdResponse]

# File lib/plaid/api/plaid_api.rb, line 7290
def institutions_get_by_id(institutions_get_by_id_request, opts = {})
  data, _status_code, _headers = institutions_get_by_id_with_http_info(institutions_get_by_id_request, opts)
  data
end
institutions_get_by_id_with_http_info(institutions_get_by_id_request, opts = {}) click to toggle source

Get details of an institution Returns a JSON response containing details on a specified financial institution currently supported by Plaid. Versioning note: API versions 2019-05-29 and earlier allow use of the &#x60;public_key&#x60; parameter instead of the &#x60;client_id&#x60; and &#x60;secret&#x60; to authenticate to this endpoint. The &#x60;public_key&#x60; has been deprecated; all customers are encouraged to use &#x60;client_id&#x60; and &#x60;secret&#x60; instead. @param institutions_get_by_id_request [InstitutionsGetByIdRequest] @param [Hash] opts the optional parameters @return [Array<(InstitutionsGetByIdResponse, Integer, Hash)>] InstitutionsGetByIdResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 7300
def institutions_get_by_id_with_http_info(institutions_get_by_id_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.institutions_get_by_id ...'
  end
  # verify the required parameter 'institutions_get_by_id_request' is set
  if @api_client.config.client_side_validation && institutions_get_by_id_request.nil?
    fail ArgumentError, "Missing the required parameter 'institutions_get_by_id_request' when calling PlaidApi.institutions_get_by_id"
  end
  # resource path
  local_var_path = '/institutions/get_by_id'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(institutions_get_by_id_request)

  # return_type
  return_type = opts[:debug_return_type] || 'InstitutionsGetByIdResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.institutions_get_by_id",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#institutions_get_by_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
institutions_get_with_http_info(institutions_get_request, opts = {}) click to toggle source

Get details of all supported institutions Returns a JSON response containing details on all financial institutions currently supported by Plaid. Because Plaid supports thousands of institutions, results are paginated. If there is no overlap between an institution’s enabled products and a client’s enabled products, then the institution will be filtered out from the response. As a result, the number of institutions returned may not match the count specified in the call. @param institutions_get_request [InstitutionsGetRequest] @param [Hash] opts the optional parameters @return [Array<(InstitutionsGetResponse, Integer, Hash)>] InstitutionsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 7232
def institutions_get_with_http_info(institutions_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.institutions_get ...'
  end
  # verify the required parameter 'institutions_get_request' is set
  if @api_client.config.client_side_validation && institutions_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'institutions_get_request' when calling PlaidApi.institutions_get"
  end
  # resource path
  local_var_path = '/institutions/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(institutions_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'InstitutionsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.institutions_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#institutions_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
institutions_search_with_http_info(institutions_search_request, opts = {}) click to toggle source

Search institutions Returns a JSON response containing details for institutions that match the query parameters, up to a maximum of ten institutions per query. Versioning note: API versions 2019-05-29 and earlier allow use of the &#x60;public_key&#x60; parameter instead of the &#x60;client_id&#x60; and &#x60;secret&#x60; parameters to authenticate to this endpoint. The &#x60;public_key&#x60; parameter has since been deprecated; all customers are encouraged to use &#x60;client_id&#x60; and &#x60;secret&#x60; instead. @param institutions_search_request [InstitutionsSearchRequest] @param [Hash] opts the optional parameters @return [Array<(InstitutionsSearchResponse, Integer, Hash)>] InstitutionsSearchResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 7368
def institutions_search_with_http_info(institutions_search_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.institutions_search ...'
  end
  # verify the required parameter 'institutions_search_request' is set
  if @api_client.config.client_side_validation && institutions_search_request.nil?
    fail ArgumentError, "Missing the required parameter 'institutions_search_request' when calling PlaidApi.institutions_search"
  end
  # resource path
  local_var_path = '/institutions/search'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(institutions_search_request)

  # return_type
  return_type = opts[:debug_return_type] || 'InstitutionsSearchResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.institutions_search",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#institutions_search\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
investments_auth_get(investments_auth_get_request, opts = {}) click to toggle source

Get data needed to authorize an investments transfer The ‘/investments/auth/get` endpoint allows developers to receive user-authorized data to facilitate the transfer of holdings @param investments_auth_get_request [InvestmentsAuthGetRequest] @param [Hash] opts the optional parameters @return [InvestmentsAuthGetResponse]

# File lib/plaid/api/plaid_api.rb, line 7426
def investments_auth_get(investments_auth_get_request, opts = {})
  data, _status_code, _headers = investments_auth_get_with_http_info(investments_auth_get_request, opts)
  data
end
investments_auth_get_with_http_info(investments_auth_get_request, opts = {}) click to toggle source

Get data needed to authorize an investments transfer The &#x60;/investments/auth/get&#x60; endpoint allows developers to receive user-authorized data to facilitate the transfer of holdings @param investments_auth_get_request [InvestmentsAuthGetRequest] @param [Hash] opts the optional parameters @return [Array<(InvestmentsAuthGetResponse, Integer, Hash)>] InvestmentsAuthGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 7436
def investments_auth_get_with_http_info(investments_auth_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.investments_auth_get ...'
  end
  # verify the required parameter 'investments_auth_get_request' is set
  if @api_client.config.client_side_validation && investments_auth_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'investments_auth_get_request' when calling PlaidApi.investments_auth_get"
  end
  # resource path
  local_var_path = '/investments/auth/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(investments_auth_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'InvestmentsAuthGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.investments_auth_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#investments_auth_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
investments_holdings_get(investments_holdings_get_request, opts = {}) click to toggle source

Get Investment holdings The ‘/investments/holdings/get` endpoint allows developers to receive user-authorized stock position data for `investment`-type accounts. @param investments_holdings_get_request [InvestmentsHoldingsGetRequest] @param [Hash] opts the optional parameters @return [InvestmentsHoldingsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 7494
def investments_holdings_get(investments_holdings_get_request, opts = {})
  data, _status_code, _headers = investments_holdings_get_with_http_info(investments_holdings_get_request, opts)
  data
end
investments_holdings_get_with_http_info(investments_holdings_get_request, opts = {}) click to toggle source

Get Investment holdings The &#x60;/investments/holdings/get&#x60; endpoint allows developers to receive user-authorized stock position data for &#x60;investment&#x60;-type accounts. @param investments_holdings_get_request [InvestmentsHoldingsGetRequest] @param [Hash] opts the optional parameters @return [Array<(InvestmentsHoldingsGetResponse, Integer, Hash)>] InvestmentsHoldingsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 7504
def investments_holdings_get_with_http_info(investments_holdings_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.investments_holdings_get ...'
  end
  # verify the required parameter 'investments_holdings_get_request' is set
  if @api_client.config.client_side_validation && investments_holdings_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'investments_holdings_get_request' when calling PlaidApi.investments_holdings_get"
  end
  # resource path
  local_var_path = '/investments/holdings/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(investments_holdings_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'InvestmentsHoldingsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.investments_holdings_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#investments_holdings_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
investments_refresh(investments_refresh_request, opts = {}) click to toggle source

Refresh investment data ‘/investments/refresh` is an optional endpoint for users of the Investments product. It initiates an on-demand extraction to fetch the newest investment holdings and transactions for an Item. This on-demand extraction takes place in addition to the periodic extractions that automatically occur one or more times per day for any Investments-enabled Item. If changes to investments are discovered after calling `/investments/refresh`, Plaid will fire webhooks: [`HOLDINGS: DEFAULT_UPDATE`](plaid.com/docs/api/products/investments/#holdings-default_update) if any new holdings are detected, and [`INVESTMENTS_TRANSACTIONS: DEFAULT_UPDATE`](plaid.com/docs/api/products/investments/#investments_transactions-default_update) if any new investment transactions are detected. Updated holdings and investment transactions can be fetched by calling `/investments/holdings/get` and `/investments/transactions/get`. Note that the `/investments/refresh` endpoint is not supported by all institutions. If called on an Item from an institution that does not support this functionality, it will return a `PRODUCT_NOT_SUPPORTED` error. As this endpoint triggers a synchronous request for fresh data, latency may be higher than for other Plaid endpoints (typically less than 10 seconds, but occasionally up to 30 seconds or more); if you encounter errors, you may find it necessary to adjust your timeout period when making requests. `/investments/refresh` is offered as an add-on to Investments and has a separate [fee model](/docs/account/billing/#per-request-flat-fee). To request access to this endpoint, submit a [product access request](dashboard.plaid.com/team/products) or contact your Plaid account manager. @param investments_refresh_request [InvestmentsRefreshRequest] @param [Hash] opts the optional parameters @return [InvestmentsRefreshResponse]

# File lib/plaid/api/plaid_api.rb, line 7562
def investments_refresh(investments_refresh_request, opts = {})
  data, _status_code, _headers = investments_refresh_with_http_info(investments_refresh_request, opts)
  data
end
investments_refresh_with_http_info(investments_refresh_request, opts = {}) click to toggle source

Refresh investment data &#x60;/investments/refresh&#x60; is an optional endpoint for users of the Investments product. It initiates an on-demand extraction to fetch the newest investment holdings and transactions for an Item. This on-demand extraction takes place in addition to the periodic extractions that automatically occur one or more times per day for any Investments-enabled Item. If changes to investments are discovered after calling &#x60;/investments/refresh&#x60;, Plaid will fire webhooks: [&#x60;HOLDINGS: DEFAULT_UPDATE&#x60;](plaid.com/docs/api/products/investments/#holdings-default_update) if any new holdings are detected, and [&#x60;INVESTMENTS_TRANSACTIONS: DEFAULT_UPDATE&#x60;](plaid.com/docs/api/products/investments/#investments_transactions-default_update) if any new investment transactions are detected. Updated holdings and investment transactions can be fetched by calling &#x60;/investments/holdings/get&#x60; and &#x60;/investments/transactions/get&#x60;. Note that the &#x60;/investments/refresh&#x60; endpoint is not supported by all institutions. If called on an Item from an institution that does not support this functionality, it will return a &#x60;PRODUCT_NOT_SUPPORTED&#x60; error. As this endpoint triggers a synchronous request for fresh data, latency may be higher than for other Plaid endpoints (typically less than 10 seconds, but occasionally up to 30 seconds or more); if you encounter errors, you may find it necessary to adjust your timeout period when making requests. &#x60;/investments/refresh&#x60; is offered as an add-on to Investments and has a separate [fee model](/docs/account/billing/#per-request-flat-fee). To request access to this endpoint, submit a [product access request](dashboard.plaid.com/team/products) or contact your Plaid account manager. @param investments_refresh_request [InvestmentsRefreshRequest] @param [Hash] opts the optional parameters @return [Array<(InvestmentsRefreshResponse, Integer, Hash)>] InvestmentsRefreshResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 7572
def investments_refresh_with_http_info(investments_refresh_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.investments_refresh ...'
  end
  # verify the required parameter 'investments_refresh_request' is set
  if @api_client.config.client_side_validation && investments_refresh_request.nil?
    fail ArgumentError, "Missing the required parameter 'investments_refresh_request' when calling PlaidApi.investments_refresh"
  end
  # resource path
  local_var_path = '/investments/refresh'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(investments_refresh_request)

  # return_type
  return_type = opts[:debug_return_type] || 'InvestmentsRefreshResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.investments_refresh",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#investments_refresh\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
investments_transactions_get(investments_transactions_get_request, opts = {}) click to toggle source

Get investment transactions The ‘/investments/transactions/get` endpoint allows developers to retrieve up to 24 months of user-authorized transaction data for investment accounts. Transactions are returned in reverse-chronological order, and the sequence of transaction ordering is stable and will not shift. Due to the potentially large number of investment transactions associated with an Item, results are paginated. Manipulate the count and offset parameters in conjunction with the `total_investment_transactions` response body field to fetch all available investment transactions. Note that Investments does not have a webhook to indicate when initial transaction data has loaded (unless you use the `async_update` option). Instead, if transactions data is not ready when `/investments/transactions/get` is first called, Plaid will wait for the data. For this reason, calling `/investments/transactions/get` immediately after Link may take up to one to two minutes to return. Data returned by the asynchronous investments extraction flow (when `async_update` is set to true) may not be immediately available to `/investments/transactions/get`. To be alerted when the data is ready to be fetched, listen for the `HISTORICAL_UPDATE` webhook. If no investments history is ready when `/investments/transactions/get` is called, it will return a `PRODUCT_NOT_READY` error. @param investments_transactions_get_request [InvestmentsTransactionsGetRequest] @param [Hash] opts the optional parameters @return [InvestmentsTransactionsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 7630
def investments_transactions_get(investments_transactions_get_request, opts = {})
  data, _status_code, _headers = investments_transactions_get_with_http_info(investments_transactions_get_request, opts)
  data
end
investments_transactions_get_with_http_info(investments_transactions_get_request, opts = {}) click to toggle source

Get investment transactions The &#x60;/investments/transactions/get&#x60; endpoint allows developers to retrieve up to 24 months of user-authorized transaction data for investment accounts. Transactions are returned in reverse-chronological order, and the sequence of transaction ordering is stable and will not shift. Due to the potentially large number of investment transactions associated with an Item, results are paginated. Manipulate the count and offset parameters in conjunction with the &#x60;total_investment_transactions&#x60; response body field to fetch all available investment transactions. Note that Investments does not have a webhook to indicate when initial transaction data has loaded (unless you use the &#x60;async_update&#x60; option). Instead, if transactions data is not ready when &#x60;/investments/transactions/get&#x60; is first called, Plaid will wait for the data. For this reason, calling &#x60;/investments/transactions/get&#x60; immediately after Link may take up to one to two minutes to return. Data returned by the asynchronous investments extraction flow (when &#x60;async_update&#x60; is set to true) may not be immediately available to &#x60;/investments/transactions/get&#x60;. To be alerted when the data is ready to be fetched, listen for the &#x60;HISTORICAL_UPDATE&#x60; webhook. If no investments history is ready when &#x60;/investments/transactions/get&#x60; is called, it will return a &#x60;PRODUCT_NOT_READY&#x60; error. @param investments_transactions_get_request [InvestmentsTransactionsGetRequest] @param [Hash] opts the optional parameters @return [Array<(InvestmentsTransactionsGetResponse, Integer, Hash)>] InvestmentsTransactionsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 7640
def investments_transactions_get_with_http_info(investments_transactions_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.investments_transactions_get ...'
  end
  # verify the required parameter 'investments_transactions_get_request' is set
  if @api_client.config.client_side_validation && investments_transactions_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'investments_transactions_get_request' when calling PlaidApi.investments_transactions_get"
  end
  # resource path
  local_var_path = '/investments/transactions/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(investments_transactions_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'InvestmentsTransactionsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.investments_transactions_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#investments_transactions_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
issues_get(issues_get_request, opts = {}) click to toggle source

Get an Issue Retrieve detailed information about a specific ‘Issue`. This endpoint returns a single `Issue` object. @param issues_get_request [IssuesGetRequest] @param [Hash] opts the optional parameters @return [IssuesGetResponse]

# File lib/plaid/api/plaid_api.rb, line 7698
def issues_get(issues_get_request, opts = {})
  data, _status_code, _headers = issues_get_with_http_info(issues_get_request, opts)
  data
end
issues_get_with_http_info(issues_get_request, opts = {}) click to toggle source

Get an Issue Retrieve detailed information about a specific &#x60;Issue&#x60;. This endpoint returns a single &#x60;Issue&#x60; object. @param issues_get_request [IssuesGetRequest] @param [Hash] opts the optional parameters @return [Array<(IssuesGetResponse, Integer, Hash)>] IssuesGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 7708
def issues_get_with_http_info(issues_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.issues_get ...'
  end
  # verify the required parameter 'issues_get_request' is set
  if @api_client.config.client_side_validation && issues_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'issues_get_request' when calling PlaidApi.issues_get"
  end
  # resource path
  local_var_path = '/issues/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(issues_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'IssuesGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.issues_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#issues_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
issues_search_with_http_info(issues_search_request, opts = {}) click to toggle source

Search for an Issue Search for an issue associated with one of the following identifiers: &#x60;item_id&#x60;, &#x60;link_session_id&#x60; or Link session &#x60;request_id&#x60;. This endpoint returns a list of &#x60;Issue&#x60; objects, with an empty list indicating that no issues are associated with the provided identifier. At least one of the identifiers must be provided to perform the search. @param issues_search_request [IssuesSearchRequest] @param [Hash] opts the optional parameters @return [Array<(IssuesSearchResponse, Integer, Hash)>] IssuesSearchResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 7776
def issues_search_with_http_info(issues_search_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.issues_search ...'
  end
  # verify the required parameter 'issues_search_request' is set
  if @api_client.config.client_side_validation && issues_search_request.nil?
    fail ArgumentError, "Missing the required parameter 'issues_search_request' when calling PlaidApi.issues_search"
  end
  # resource path
  local_var_path = '/issues/search'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(issues_search_request)

  # return_type
  return_type = opts[:debug_return_type] || 'IssuesSearchResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.issues_search",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#issues_search\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
issues_subscribe(issues_subscribe_request, opts = {}) click to toggle source

Subscribe to an Issue Allows a user to subscribe to updates on a specific ‘Issue` using a POST method. Subscribers will receive webhook notifications when the issue status changes, particularly when resolved. @param issues_subscribe_request [IssuesSubscribeRequest] @param [Hash] opts the optional parameters @return [IssuesSubscribeResponse]

# File lib/plaid/api/plaid_api.rb, line 7834
def issues_subscribe(issues_subscribe_request, opts = {})
  data, _status_code, _headers = issues_subscribe_with_http_info(issues_subscribe_request, opts)
  data
end
issues_subscribe_with_http_info(issues_subscribe_request, opts = {}) click to toggle source

Subscribe to an Issue Allows a user to subscribe to updates on a specific &#x60;Issue&#x60; using a POST method. Subscribers will receive webhook notifications when the issue status changes, particularly when resolved. @param issues_subscribe_request [IssuesSubscribeRequest] @param [Hash] opts the optional parameters @return [Array<(IssuesSubscribeResponse, Integer, Hash)>] IssuesSubscribeResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 7844
def issues_subscribe_with_http_info(issues_subscribe_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.issues_subscribe ...'
  end
  # verify the required parameter 'issues_subscribe_request' is set
  if @api_client.config.client_side_validation && issues_subscribe_request.nil?
    fail ArgumentError, "Missing the required parameter 'issues_subscribe_request' when calling PlaidApi.issues_subscribe"
  end
  # resource path
  local_var_path = '/issues/subscribe'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(issues_subscribe_request)

  # return_type
  return_type = opts[:debug_return_type] || 'IssuesSubscribeResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.issues_subscribe",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#issues_subscribe\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
item_access_token_invalidate(item_access_token_invalidate_request, opts = {}) click to toggle source

Invalidate access_token By default, the ‘access_token` associated with an Item does not expire and should be stored in a persistent, secure manner. You can use the `/item/access_token/invalidate` endpoint to rotate the `access_token` associated with an Item. The endpoint returns a new `access_token` and immediately invalidates the previous `access_token`. @param item_access_token_invalidate_request [ItemAccessTokenInvalidateRequest] @param [Hash] opts the optional parameters @return [ItemAccessTokenInvalidateResponse]

# File lib/plaid/api/plaid_api.rb, line 7902
def item_access_token_invalidate(item_access_token_invalidate_request, opts = {})
  data, _status_code, _headers = item_access_token_invalidate_with_http_info(item_access_token_invalidate_request, opts)
  data
end
item_access_token_invalidate_with_http_info(item_access_token_invalidate_request, opts = {}) click to toggle source

Invalidate access_token By default, the &#x60;access_token&#x60; associated with an Item does not expire and should be stored in a persistent, secure manner. You can use the &#x60;/item/access_token/invalidate&#x60; endpoint to rotate the &#x60;access_token&#x60; associated with an Item. The endpoint returns a new &#x60;access_token&#x60; and immediately invalidates the previous &#x60;access_token&#x60;. @param item_access_token_invalidate_request [ItemAccessTokenInvalidateRequest] @param [Hash] opts the optional parameters @return [Array<(ItemAccessTokenInvalidateResponse, Integer, Hash)>] ItemAccessTokenInvalidateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 7912
def item_access_token_invalidate_with_http_info(item_access_token_invalidate_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.item_access_token_invalidate ...'
  end
  # verify the required parameter 'item_access_token_invalidate_request' is set
  if @api_client.config.client_side_validation && item_access_token_invalidate_request.nil?
    fail ArgumentError, "Missing the required parameter 'item_access_token_invalidate_request' when calling PlaidApi.item_access_token_invalidate"
  end
  # resource path
  local_var_path = '/item/access_token/invalidate'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(item_access_token_invalidate_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ItemAccessTokenInvalidateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.item_access_token_invalidate",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#item_access_token_invalidate\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
item_activity_list(item_activity_list_request, opts = {}) click to toggle source

List a historical log of user consent events List a historical log of user consent events @param item_activity_list_request [ItemActivityListRequest] @param [Hash] opts the optional parameters @return [ItemActivityListResponse]

# File lib/plaid/api/plaid_api.rb, line 7970
def item_activity_list(item_activity_list_request, opts = {})
  data, _status_code, _headers = item_activity_list_with_http_info(item_activity_list_request, opts)
  data
end
item_activity_list_with_http_info(item_activity_list_request, opts = {}) click to toggle source

List a historical log of user consent events List a historical log of user consent events @param item_activity_list_request [ItemActivityListRequest] @param [Hash] opts the optional parameters @return [Array<(ItemActivityListResponse, Integer, Hash)>] ItemActivityListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 7980
def item_activity_list_with_http_info(item_activity_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.item_activity_list ...'
  end
  # verify the required parameter 'item_activity_list_request' is set
  if @api_client.config.client_side_validation && item_activity_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'item_activity_list_request' when calling PlaidApi.item_activity_list"
  end
  # resource path
  local_var_path = '/item/activity/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(item_activity_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ItemActivityListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.item_activity_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#item_activity_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
item_application_list(item_application_list_request, opts = {}) click to toggle source

List a user’s connected applications List a user’s connected applications @param item_application_list_request [ItemApplicationListRequest] @param [Hash] opts the optional parameters @return [ItemApplicationListResponse]

# File lib/plaid/api/plaid_api.rb, line 8038
def item_application_list(item_application_list_request, opts = {})
  data, _status_code, _headers = item_application_list_with_http_info(item_application_list_request, opts)
  data
end
item_application_list_with_http_info(item_application_list_request, opts = {}) click to toggle source

List a user’s connected applications List a user’s connected applications @param item_application_list_request [ItemApplicationListRequest] @param [Hash] opts the optional parameters @return [Array<(ItemApplicationListResponse, Integer, Hash)>] ItemApplicationListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 8048
def item_application_list_with_http_info(item_application_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.item_application_list ...'
  end
  # verify the required parameter 'item_application_list_request' is set
  if @api_client.config.client_side_validation && item_application_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'item_application_list_request' when calling PlaidApi.item_application_list"
  end
  # resource path
  local_var_path = '/item/application/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(item_application_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ItemApplicationListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.item_application_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#item_application_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
item_application_scopes_update(item_application_scopes_update_request, opts = {}) click to toggle source

Update the scopes of access for a particular application Enable consumers to update product access on selected accounts for an application. @param item_application_scopes_update_request [ItemApplicationScopesUpdateRequest] @param [Hash] opts the optional parameters @return [ItemApplicationScopesUpdateResponse]

# File lib/plaid/api/plaid_api.rb, line 8106
def item_application_scopes_update(item_application_scopes_update_request, opts = {})
  data, _status_code, _headers = item_application_scopes_update_with_http_info(item_application_scopes_update_request, opts)
  data
end
item_application_scopes_update_with_http_info(item_application_scopes_update_request, opts = {}) click to toggle source

Update the scopes of access for a particular application Enable consumers to update product access on selected accounts for an application. @param item_application_scopes_update_request [ItemApplicationScopesUpdateRequest] @param [Hash] opts the optional parameters @return [Array<(ItemApplicationScopesUpdateResponse, Integer, Hash)>] ItemApplicationScopesUpdateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 8116
def item_application_scopes_update_with_http_info(item_application_scopes_update_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.item_application_scopes_update ...'
  end
  # verify the required parameter 'item_application_scopes_update_request' is set
  if @api_client.config.client_side_validation && item_application_scopes_update_request.nil?
    fail ArgumentError, "Missing the required parameter 'item_application_scopes_update_request' when calling PlaidApi.item_application_scopes_update"
  end
  # resource path
  local_var_path = '/item/application/scopes/update'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(item_application_scopes_update_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ItemApplicationScopesUpdateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.item_application_scopes_update",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#item_application_scopes_update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
item_create_public_token(item_public_token_create_request, opts = {}) click to toggle source

Create public token Note: As of July 2020, the ‘/item/public_token/create` endpoint is deprecated. Instead, use `/link/token/create` with an `access_token` to create a Link token for use with [update mode](plaid.com/docs/link/update-mode). If you need your user to take action to restore or resolve an error associated with an Item, generate a public token with the `/item/public_token/create` endpoint and then initialize Link with that `public_token`. A `public_token` is one-time use and expires after 30 minutes. You use a `public_token` to initialize Link in [update mode](plaid.com/docs/link/update-mode) for a particular Item. You can generate a `public_token` for an Item even if you did not use Link to create the Item originally. The `/item/public_token/create` endpoint is not used to create your initial `public_token`. If you have not already received an `access_token` for a specific Item, use Link to obtain your `public_token` instead. See the [Quickstart](plaid.com/docs/quickstart) for more information. @param item_public_token_create_request [ItemPublicTokenCreateRequest] @param [Hash] opts the optional parameters @return [ItemPublicTokenCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 8242
def item_create_public_token(item_public_token_create_request, opts = {})
  data, _status_code, _headers = item_create_public_token_with_http_info(item_public_token_create_request, opts)
  data
end
item_create_public_token_with_http_info(item_public_token_create_request, opts = {}) click to toggle source

Create public token Note: As of July 2020, the &#x60;/item/public_token/create&#x60; endpoint is deprecated. Instead, use &#x60;/link/token/create&#x60; with an &#x60;access_token&#x60; to create a Link token for use with [update mode](plaid.com/docs/link/update-mode). If you need your user to take action to restore or resolve an error associated with an Item, generate a public token with the &#x60;/item/public_token/create&#x60; endpoint and then initialize Link with that &#x60;public_token&#x60;. A &#x60;public_token&#x60; is one-time use and expires after 30 minutes. You use a &#x60;public_token&#x60; to initialize Link in [update mode](plaid.com/docs/link/update-mode) for a particular Item. You can generate a &#x60;public_token&#x60; for an Item even if you did not use Link to create the Item originally. The &#x60;/item/public_token/create&#x60; endpoint is not used to create your initial &#x60;public_token&#x60;. If you have not already received an &#x60;access_token&#x60; for a specific Item, use Link to obtain your &#x60;public_token&#x60; instead. See the [Quickstart](plaid.com/docs/quickstart) for more information. @param item_public_token_create_request [ItemPublicTokenCreateRequest] @param [Hash] opts the optional parameters @return [Array<(ItemPublicTokenCreateResponse, Integer, Hash)>] ItemPublicTokenCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 8252
def item_create_public_token_with_http_info(item_public_token_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.item_create_public_token ...'
  end
  # verify the required parameter 'item_public_token_create_request' is set
  if @api_client.config.client_side_validation && item_public_token_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'item_public_token_create_request' when calling PlaidApi.item_create_public_token"
  end
  # resource path
  local_var_path = '/item/public_token/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(item_public_token_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ItemPublicTokenCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.item_create_public_token",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#item_create_public_token\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
item_get(item_get_request, opts = {}) click to toggle source

Retrieve an Item Returns information about the status of an Item. @param item_get_request [ItemGetRequest] @param [Hash] opts the optional parameters @return [ItemGetResponse]

# File lib/plaid/api/plaid_api.rb, line 8310
def item_get(item_get_request, opts = {})
  data, _status_code, _headers = item_get_with_http_info(item_get_request, opts)
  data
end
item_get_with_http_info(item_get_request, opts = {}) click to toggle source

Retrieve an Item Returns information about the status of an Item. @param item_get_request [ItemGetRequest] @param [Hash] opts the optional parameters @return [Array<(ItemGetResponse, Integer, Hash)>] ItemGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 8320
def item_get_with_http_info(item_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.item_get ...'
  end
  # verify the required parameter 'item_get_request' is set
  if @api_client.config.client_side_validation && item_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'item_get_request' when calling PlaidApi.item_get"
  end
  # resource path
  local_var_path = '/item/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(item_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ItemGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.item_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#item_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
item_import(item_import_request, opts = {}) click to toggle source

Import Item ‘/item/import` creates an Item via your Plaid Exchange Integration and returns an `access_token`. As part of an `/item/import` request, you will include a User ID (`user_auth.user_id`) and Authentication Token (`user_auth.auth_token`) that enable data aggregation through your Plaid Exchange API endpoints. These authentication principals are to be chosen by you. Upon creating an Item via `/item/import`, Plaid will automatically begin an extraction of that Item through the Plaid Exchange infrastructure you have already integrated. @param item_import_request [ItemImportRequest] @param [Hash] opts the optional parameters @return [ItemImportResponse]

# File lib/plaid/api/plaid_api.rb, line 8378
def item_import(item_import_request, opts = {})
  data, _status_code, _headers = item_import_with_http_info(item_import_request, opts)
  data
end
item_import_with_http_info(item_import_request, opts = {}) click to toggle source

Import Item &#x60;/item/import&#x60; creates an Item via your Plaid Exchange Integration and returns an &#x60;access_token&#x60;. As part of an &#x60;/item/import&#x60; request, you will include a User ID (&#x60;user_auth.user_id&#x60;) and Authentication Token (&#x60;user_auth.auth_token&#x60;) that enable data aggregation through your Plaid Exchange API endpoints. These authentication principals are to be chosen by you. Upon creating an Item via &#x60;/item/import&#x60;, Plaid will automatically begin an extraction of that Item through the Plaid Exchange infrastructure you have already integrated. @param item_import_request [ItemImportRequest] @param [Hash] opts the optional parameters @return [Array<(ItemImportResponse, Integer, Hash)>] ItemImportResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 8388
def item_import_with_http_info(item_import_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.item_import ...'
  end
  # verify the required parameter 'item_import_request' is set
  if @api_client.config.client_side_validation && item_import_request.nil?
    fail ArgumentError, "Missing the required parameter 'item_import_request' when calling PlaidApi.item_import"
  end
  # resource path
  local_var_path = '/item/import'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(item_import_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ItemImportResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.item_import",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#item_import\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
item_public_token_exchange(item_public_token_exchange_request, opts = {}) click to toggle source

Exchange public token for an access token Exchange a Link ‘public_token` for an API `access_token`. Link hands off the `public_token` client-side via the `onSuccess` callback once a user has successfully created an Item. The `public_token` is ephemeral and expires after 30 minutes. An `access_token` does not expire, but can be revoked by calling `/item/remove`. The response also includes an `item_id` that should be stored with the `access_token`. The `item_id` is used to identify an Item in a webhook. The `item_id` can also be retrieved by making an `/item/get` request. @param item_public_token_exchange_request [ItemPublicTokenExchangeRequest] @param [Hash] opts the optional parameters @return [ItemPublicTokenExchangeResponse]

# File lib/plaid/api/plaid_api.rb, line 8446
def item_public_token_exchange(item_public_token_exchange_request, opts = {})
  data, _status_code, _headers = item_public_token_exchange_with_http_info(item_public_token_exchange_request, opts)
  data
end
item_public_token_exchange_with_http_info(item_public_token_exchange_request, opts = {}) click to toggle source

Exchange public token for an access token Exchange a Link &#x60;public_token&#x60; for an API &#x60;access_token&#x60;. Link hands off the &#x60;public_token&#x60; client-side via the &#x60;onSuccess&#x60; callback once a user has successfully created an Item. The &#x60;public_token&#x60; is ephemeral and expires after 30 minutes. An &#x60;access_token&#x60; does not expire, but can be revoked by calling &#x60;/item/remove&#x60;. The response also includes an &#x60;item_id&#x60; that should be stored with the &#x60;access_token&#x60;. The &#x60;item_id&#x60; is used to identify an Item in a webhook. The &#x60;item_id&#x60; can also be retrieved by making an &#x60;/item/get&#x60; request. @param item_public_token_exchange_request [ItemPublicTokenExchangeRequest] @param [Hash] opts the optional parameters @return [Array<(ItemPublicTokenExchangeResponse, Integer, Hash)>] ItemPublicTokenExchangeResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 8456
def item_public_token_exchange_with_http_info(item_public_token_exchange_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.item_public_token_exchange ...'
  end
  # verify the required parameter 'item_public_token_exchange_request' is set
  if @api_client.config.client_side_validation && item_public_token_exchange_request.nil?
    fail ArgumentError, "Missing the required parameter 'item_public_token_exchange_request' when calling PlaidApi.item_public_token_exchange"
  end
  # resource path
  local_var_path = '/item/public_token/exchange'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(item_public_token_exchange_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ItemPublicTokenExchangeResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.item_public_token_exchange",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#item_public_token_exchange\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
item_remove(item_remove_request, opts = {}) click to toggle source

Remove an Item The ‘/item/remove` endpoint allows you to remove an Item. Once removed, the `access_token`, as well as any processor tokens or bank account tokens associated with the Item, is no longer valid and cannot be used to access any data that was associated with the Item. Calling `/item/remove` is a recommended best practice when offboarding users or if a user chooses to disconnect an account linked via Plaid. For subscription products, such as Transactions, Liabilities, and Investments, calling `/item/remove` is required to end subscription billing for the Item. In Limited Production, calling `/item/remove` does not impact the number of remaining Limited Production Items you have available. Removing an Item does not affect any Asset Reports or Audit Copies you have already created, which will remain accessible until you remove access to them specifically using the `/asset_report/remove` endpoint. Also note that for certain OAuth-based institutions, an Item removed via `/item/remove` may still show as an active connection in the institution’s OAuth permission manager. API versions 2019-05-29 and earlier return a ‘removed` boolean as part of the response. @param item_remove_request [ItemRemoveRequest] @param [Hash] opts the optional parameters @return [ItemRemoveResponse]

# File lib/plaid/api/plaid_api.rb, line 8514
def item_remove(item_remove_request, opts = {})
  data, _status_code, _headers = item_remove_with_http_info(item_remove_request, opts)
  data
end
item_remove_with_http_info(item_remove_request, opts = {}) click to toggle source

Remove an Item The &#x60;/item/remove&#x60; endpoint allows you to remove an Item. Once removed, the &#x60;access_token&#x60;, as well as any processor tokens or bank account tokens associated with the Item, is no longer valid and cannot be used to access any data that was associated with the Item. Calling &#x60;/item/remove&#x60; is a recommended best practice when offboarding users or if a user chooses to disconnect an account linked via Plaid. For subscription products, such as Transactions, Liabilities, and Investments, calling &#x60;/item/remove&#x60; is required to end subscription billing for the Item. In Limited Production, calling &#x60;/item/remove&#x60; does not impact the number of remaining Limited Production Items you have available. Removing an Item does not affect any Asset Reports or Audit Copies you have already created, which will remain accessible until you remove access to them specifically using the &#x60;/asset_report/remove&#x60; endpoint. Also note that for certain OAuth-based institutions, an Item removed via &#x60;/item/remove&#x60; may still show as an active connection in the institution&#39;s OAuth permission manager. API versions 2019-05-29 and earlier return a &#x60;removed&#x60; boolean as part of the response. @param item_remove_request [ItemRemoveRequest] @param [Hash] opts the optional parameters @return [Array<(ItemRemoveResponse, Integer, Hash)>] ItemRemoveResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 8524
def item_remove_with_http_info(item_remove_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.item_remove ...'
  end
  # verify the required parameter 'item_remove_request' is set
  if @api_client.config.client_side_validation && item_remove_request.nil?
    fail ArgumentError, "Missing the required parameter 'item_remove_request' when calling PlaidApi.item_remove"
  end
  # resource path
  local_var_path = '/item/remove'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(item_remove_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ItemRemoveResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.item_remove",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#item_remove\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
item_webhook_update(item_webhook_update_request, opts = {}) click to toggle source

Update Webhook URL The POST ‘/item/webhook/update` allows you to update the webhook URL associated with an Item. This request triggers a [`WEBHOOK_UPDATE_ACKNOWLEDGED`](plaid.com/docs/api/items/#webhook_update_acknowledged) webhook to the newly specified webhook URL. @param item_webhook_update_request [ItemWebhookUpdateRequest] @param [Hash] opts the optional parameters @return [ItemWebhookUpdateResponse]

# File lib/plaid/api/plaid_api.rb, line 8582
def item_webhook_update(item_webhook_update_request, opts = {})
  data, _status_code, _headers = item_webhook_update_with_http_info(item_webhook_update_request, opts)
  data
end
item_webhook_update_with_http_info(item_webhook_update_request, opts = {}) click to toggle source

Update Webhook URL The POST &#x60;/item/webhook/update&#x60; allows you to update the webhook URL associated with an Item. This request triggers a [&#x60;WEBHOOK_UPDATE_ACKNOWLEDGED&#x60;](plaid.com/docs/api/items/#webhook_update_acknowledged) webhook to the newly specified webhook URL. @param item_webhook_update_request [ItemWebhookUpdateRequest] @param [Hash] opts the optional parameters @return [Array<(ItemWebhookUpdateResponse, Integer, Hash)>] ItemWebhookUpdateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 8592
def item_webhook_update_with_http_info(item_webhook_update_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.item_webhook_update ...'
  end
  # verify the required parameter 'item_webhook_update_request' is set
  if @api_client.config.client_side_validation && item_webhook_update_request.nil?
    fail ArgumentError, "Missing the required parameter 'item_webhook_update_request' when calling PlaidApi.item_webhook_update"
  end
  # resource path
  local_var_path = '/item/webhook/update'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(item_webhook_update_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ItemWebhookUpdateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.item_webhook_update",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#item_webhook_update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
liabilities_get(liabilities_get_request, opts = {}) click to toggle source

Retrieve Liabilities data The ‘/liabilities/get` endpoint returns various details about an Item with loan or credit accounts. Liabilities data is available primarily for US financial institutions, with some limited coverage of Canadian institutions. Currently supported account types are account type `credit` with account subtype `credit card` or `paypal`, and account type `loan` with account subtype `student` or `mortgage`. To limit accounts listed in Link to types and subtypes supported by Liabilities, you can use the `account_filters` parameter when [creating a Link token](plaid.com/docs/api/link/#linktokencreate). The types of information returned by Liabilities can include balances and due dates, loan terms, and account details such as original loan amount and guarantor. Data is refreshed approximately once per day; the latest data can be retrieved by calling `/liabilities/get`. @param liabilities_get_request [LiabilitiesGetRequest] @param [Hash] opts the optional parameters @return [LiabilitiesGetResponse]

# File lib/plaid/api/plaid_api.rb, line 8650
def liabilities_get(liabilities_get_request, opts = {})
  data, _status_code, _headers = liabilities_get_with_http_info(liabilities_get_request, opts)
  data
end
liabilities_get_with_http_info(liabilities_get_request, opts = {}) click to toggle source

Retrieve Liabilities data The &#x60;/liabilities/get&#x60; endpoint returns various details about an Item with loan or credit accounts. Liabilities data is available primarily for US financial institutions, with some limited coverage of Canadian institutions. Currently supported account types are account type &#x60;credit&#x60; with account subtype &#x60;credit card&#x60; or &#x60;paypal&#x60;, and account type &#x60;loan&#x60; with account subtype &#x60;student&#x60; or &#x60;mortgage&#x60;. To limit accounts listed in Link to types and subtypes supported by Liabilities, you can use the &#x60;account_filters&#x60; parameter when [creating a Link token](plaid.com/docs/api/link/#linktokencreate). The types of information returned by Liabilities can include balances and due dates, loan terms, and account details such as original loan amount and guarantor. Data is refreshed approximately once per day; the latest data can be retrieved by calling &#x60;/liabilities/get&#x60;. @param liabilities_get_request [LiabilitiesGetRequest] @param [Hash] opts the optional parameters @return [Array<(LiabilitiesGetResponse, Integer, Hash)>] LiabilitiesGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 8660
def liabilities_get_with_http_info(liabilities_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.liabilities_get ...'
  end
  # verify the required parameter 'liabilities_get_request' is set
  if @api_client.config.client_side_validation && liabilities_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'liabilities_get_request' when calling PlaidApi.liabilities_get"
  end
  # resource path
  local_var_path = '/liabilities/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(liabilities_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'LiabilitiesGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.liabilities_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#liabilities_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
network_insights_report_get(network_insights_report_get_request, opts = {}) click to toggle source

Retrieve network insights for the provided ‘access_tokens` This endpoint allows you to retrieve the Network Insights from a list of `access_tokens`. @param network_insights_report_get_request [NetworkInsightsReportGetRequest] @param [Hash] opts the optional parameters @return [NetworkInsightsReportGetResponse]

# File lib/plaid/api/plaid_api.rb, line 9126
def network_insights_report_get(network_insights_report_get_request, opts = {})
  data, _status_code, _headers = network_insights_report_get_with_http_info(network_insights_report_get_request, opts)
  data
end
network_insights_report_get_with_http_info(network_insights_report_get_request, opts = {}) click to toggle source

Retrieve network insights for the provided &#x60;access_tokens&#x60; This endpoint allows you to retrieve the Network Insights from a list of &#x60;access_tokens&#x60;. @param network_insights_report_get_request [NetworkInsightsReportGetRequest] @param [Hash] opts the optional parameters @return [Array<(NetworkInsightsReportGetResponse, Integer, Hash)>] NetworkInsightsReportGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 9136
def network_insights_report_get_with_http_info(network_insights_report_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.network_insights_report_get ...'
  end
  # verify the required parameter 'network_insights_report_get_request' is set
  if @api_client.config.client_side_validation && network_insights_report_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'network_insights_report_get_request' when calling PlaidApi.network_insights_report_get"
  end
  # resource path
  local_var_path = '/network_insights/report/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(network_insights_report_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'NetworkInsightsReportGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.network_insights_report_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#network_insights_report_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
partner_customer_create(partner_customer_create_request, opts = {}) click to toggle source

Creates a new end customer for a Plaid reseller. The ‘/partner/customer/create` endpoint is used by reseller partners to create end customers. To create end customers, it should be called in the Production environment only, even when creating Sandbox API keys. If called in the Sandbox environment, it will return a sample response, but no customer will be created and the API keys will not be valid. @param partner_customer_create_request [PartnerCustomerCreateRequest] @param [Hash] opts the optional parameters @return [PartnerCustomerCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 9194
def partner_customer_create(partner_customer_create_request, opts = {})
  data, _status_code, _headers = partner_customer_create_with_http_info(partner_customer_create_request, opts)
  data
end
partner_customer_create_with_http_info(partner_customer_create_request, opts = {}) click to toggle source

Creates a new end customer for a Plaid reseller. The &#x60;/partner/customer/create&#x60; endpoint is used by reseller partners to create end customers. To create end customers, it should be called in the Production environment only, even when creating Sandbox API keys. If called in the Sandbox environment, it will return a sample response, but no customer will be created and the API keys will not be valid. @param partner_customer_create_request [PartnerCustomerCreateRequest] @param [Hash] opts the optional parameters @return [Array<(PartnerCustomerCreateResponse, Integer, Hash)>] PartnerCustomerCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 9204
def partner_customer_create_with_http_info(partner_customer_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.partner_customer_create ...'
  end
  # verify the required parameter 'partner_customer_create_request' is set
  if @api_client.config.client_side_validation && partner_customer_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'partner_customer_create_request' when calling PlaidApi.partner_customer_create"
  end
  # resource path
  local_var_path = '/partner/customer/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(partner_customer_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'PartnerCustomerCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.partner_customer_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#partner_customer_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
partner_customer_enable(partner_customer_enable_request, opts = {}) click to toggle source

Enables a Plaid reseller’s end customer in the Production environment. The ‘/partner/customer/enable` endpoint is used by reseller partners to enable an end customer in the full Production environment. @param partner_customer_enable_request [PartnerCustomerEnableRequest] @param [Hash] opts the optional parameters @return [PartnerCustomerEnableResponse]

# File lib/plaid/api/plaid_api.rb, line 9262
def partner_customer_enable(partner_customer_enable_request, opts = {})
  data, _status_code, _headers = partner_customer_enable_with_http_info(partner_customer_enable_request, opts)
  data
end
partner_customer_enable_with_http_info(partner_customer_enable_request, opts = {}) click to toggle source

Enables a Plaid reseller&#39;s end customer in the Production environment. The &#x60;/partner/customer/enable&#x60; endpoint is used by reseller partners to enable an end customer in the full Production environment. @param partner_customer_enable_request [PartnerCustomerEnableRequest] @param [Hash] opts the optional parameters @return [Array<(PartnerCustomerEnableResponse, Integer, Hash)>] PartnerCustomerEnableResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 9272
def partner_customer_enable_with_http_info(partner_customer_enable_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.partner_customer_enable ...'
  end
  # verify the required parameter 'partner_customer_enable_request' is set
  if @api_client.config.client_side_validation && partner_customer_enable_request.nil?
    fail ArgumentError, "Missing the required parameter 'partner_customer_enable_request' when calling PlaidApi.partner_customer_enable"
  end
  # resource path
  local_var_path = '/partner/customer/enable'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(partner_customer_enable_request)

  # return_type
  return_type = opts[:debug_return_type] || 'PartnerCustomerEnableResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.partner_customer_enable",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#partner_customer_enable\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
partner_customer_get(partner_customer_get_request, opts = {}) click to toggle source

Returns a Plaid reseller’s end customer. The ‘/partner/customer/get` endpoint is used by reseller partners to retrieve data about a single end customer. @param partner_customer_get_request [PartnerCustomerGetRequest] @param [Hash] opts the optional parameters @return [PartnerCustomerGetResponse]

# File lib/plaid/api/plaid_api.rb, line 9330
def partner_customer_get(partner_customer_get_request, opts = {})
  data, _status_code, _headers = partner_customer_get_with_http_info(partner_customer_get_request, opts)
  data
end
partner_customer_get_with_http_info(partner_customer_get_request, opts = {}) click to toggle source

Returns a Plaid reseller&#39;s end customer. The &#x60;/partner/customer/get&#x60; endpoint is used by reseller partners to retrieve data about a single end customer. @param partner_customer_get_request [PartnerCustomerGetRequest] @param [Hash] opts the optional parameters @return [Array<(PartnerCustomerGetResponse, Integer, Hash)>] PartnerCustomerGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 9340
def partner_customer_get_with_http_info(partner_customer_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.partner_customer_get ...'
  end
  # verify the required parameter 'partner_customer_get_request' is set
  if @api_client.config.client_side_validation && partner_customer_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'partner_customer_get_request' when calling PlaidApi.partner_customer_get"
  end
  # resource path
  local_var_path = '/partner/customer/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(partner_customer_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'PartnerCustomerGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.partner_customer_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#partner_customer_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
partner_customer_oauth_institutions_get(partner_customer_o_auth_institutions_get_request, opts = {}) click to toggle source

Returns OAuth-institution registration information for a given end customer. The ‘/partner/customer/oauth_institutions/get` endpoint is used by reseller partners to retrieve OAuth-institution registration information about a single end customer. To learn how to set up a webhook to listen to status update events, visit the [reseller documentation](plaid.com/docs/account/resellers/#enabling-end-customers). @param partner_customer_o_auth_institutions_get_request [PartnerCustomerOAuthInstitutionsGetRequest] @param [Hash] opts the optional parameters @return [PartnerCustomerOAuthInstitutionsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 9398
def partner_customer_oauth_institutions_get(partner_customer_o_auth_institutions_get_request, opts = {})
  data, _status_code, _headers = partner_customer_oauth_institutions_get_with_http_info(partner_customer_o_auth_institutions_get_request, opts)
  data
end
partner_customer_oauth_institutions_get_with_http_info(partner_customer_o_auth_institutions_get_request, opts = {}) click to toggle source

Returns OAuth-institution registration information for a given end customer. The &#x60;/partner/customer/oauth_institutions/get&#x60; endpoint is used by reseller partners to retrieve OAuth-institution registration information about a single end customer. To learn how to set up a webhook to listen to status update events, visit the [reseller documentation](plaid.com/docs/account/resellers/#enabling-end-customers). @param partner_customer_o_auth_institutions_get_request [PartnerCustomerOAuthInstitutionsGetRequest] @param [Hash] opts the optional parameters @return [Array<(PartnerCustomerOAuthInstitutionsGetResponse, Integer, Hash)>] PartnerCustomerOAuthInstitutionsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 9408
def partner_customer_oauth_institutions_get_with_http_info(partner_customer_o_auth_institutions_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.partner_customer_oauth_institutions_get ...'
  end
  # verify the required parameter 'partner_customer_o_auth_institutions_get_request' is set
  if @api_client.config.client_side_validation && partner_customer_o_auth_institutions_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'partner_customer_o_auth_institutions_get_request' when calling PlaidApi.partner_customer_oauth_institutions_get"
  end
  # resource path
  local_var_path = '/partner/customer/oauth_institutions/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(partner_customer_o_auth_institutions_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'PartnerCustomerOAuthInstitutionsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.partner_customer_oauth_institutions_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#partner_customer_oauth_institutions_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
partner_customer_remove(partner_customer_remove_request, opts = {}) click to toggle source

Removes a Plaid reseller’s end customer. The ‘/partner/customer/remove` endpoint is used by reseller partners to remove an end customer. Removing an end customer will remove it from view in the Plaid Dashboard and deactivate its API keys. This endpoint can only be used to remove an end customer that has not yet been enabled in full Production. @param partner_customer_remove_request [PartnerCustomerRemoveRequest] @param [Hash] opts the optional parameters @return [PartnerCustomerRemoveResponse]

# File lib/plaid/api/plaid_api.rb, line 9466
def partner_customer_remove(partner_customer_remove_request, opts = {})
  data, _status_code, _headers = partner_customer_remove_with_http_info(partner_customer_remove_request, opts)
  data
end
partner_customer_remove_with_http_info(partner_customer_remove_request, opts = {}) click to toggle source

Removes a Plaid reseller&#39;s end customer. The &#x60;/partner/customer/remove&#x60; endpoint is used by reseller partners to remove an end customer. Removing an end customer will remove it from view in the Plaid Dashboard and deactivate its API keys. This endpoint can only be used to remove an end customer that has not yet been enabled in full Production. @param partner_customer_remove_request [PartnerCustomerRemoveRequest] @param [Hash] opts the optional parameters @return [Array<(PartnerCustomerRemoveResponse, Integer, Hash)>] PartnerCustomerRemoveResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 9476
def partner_customer_remove_with_http_info(partner_customer_remove_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.partner_customer_remove ...'
  end
  # verify the required parameter 'partner_customer_remove_request' is set
  if @api_client.config.client_side_validation && partner_customer_remove_request.nil?
    fail ArgumentError, "Missing the required parameter 'partner_customer_remove_request' when calling PlaidApi.partner_customer_remove"
  end
  # resource path
  local_var_path = '/partner/customer/remove'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(partner_customer_remove_request)

  # return_type
  return_type = opts[:debug_return_type] || 'PartnerCustomerRemoveResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.partner_customer_remove",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#partner_customer_remove\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
payment_initiation_payment_create(payment_initiation_payment_create_request, opts = {}) click to toggle source

Create a payment After creating a payment recipient, you can use the ‘/payment_initiation/payment/create` endpoint to create a payment to that recipient. Payments can be one-time or standing order (recurring) and can be denominated in either EUR, GBP or other chosen [currency](plaid.com/docs/api/products/payment-initiation/#payment_initiation-payment-create-request-amount-currency). If making domestic GBP-denominated payments, your recipient must have been created with BACS numbers. In general, EUR-denominated payments will be sent via SEPA Credit Transfer, GBP-denominated payments will be sent via the Faster Payments network and for non-Eurozone markets typically via the local payment scheme, but the payment network used will be determined by the institution. Payments sent via Faster Payments will typically arrive immediately, while payments sent via SEPA Credit Transfer or other local payment schemes will typically arrive in one business day. Standing orders (recurring payments) must be denominated in GBP and can only be sent to recipients in the UK. Once created, standing order payments cannot be modified or canceled via the API. An end user can cancel or modify a standing order directly on their banking application or website, or by contacting the bank. Standing orders will follow the payment rules of the underlying rails (Faster Payments in UK). Payments can be sent Monday to Friday, excluding bank holidays. If the pre-arranged date falls on a weekend or bank holiday, the payment is made on the next working day. It is not possible to guarantee the exact time the payment will reach the recipient’s account, although at least 90% of standing order payments are sent by 6am. In Limited Production, payments must be below 5 GBP or other chosen [currency](plaid.com/docs/api/products/payment-initiation/#payment_initiation-payment-create-request-amount-currency), and standing orders, variable recurring payments, and Virtual Accounts are not supported. @param payment_initiation_payment_create_request [PaymentInitiationPaymentCreateRequest] @param [Hash] opts the optional parameters @return [PaymentInitiationPaymentCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 9806
def payment_initiation_payment_create(payment_initiation_payment_create_request, opts = {})
  data, _status_code, _headers = payment_initiation_payment_create_with_http_info(payment_initiation_payment_create_request, opts)
  data
end
payment_initiation_payment_create_with_http_info(payment_initiation_payment_create_request, opts = {}) click to toggle source

Create a payment After creating a payment recipient, you can use the &#x60;/payment_initiation/payment/create&#x60; endpoint to create a payment to that recipient. Payments can be one-time or standing order (recurring) and can be denominated in either EUR, GBP or other chosen [currency](plaid.com/docs/api/products/payment-initiation/#payment_initiation-payment-create-request-amount-currency). If making domestic GBP-denominated payments, your recipient must have been created with BACS numbers. In general, EUR-denominated payments will be sent via SEPA Credit Transfer, GBP-denominated payments will be sent via the Faster Payments network and for non-Eurozone markets typically via the local payment scheme, but the payment network used will be determined by the institution. Payments sent via Faster Payments will typically arrive immediately, while payments sent via SEPA Credit Transfer or other local payment schemes will typically arrive in one business day. Standing orders (recurring payments) must be denominated in GBP and can only be sent to recipients in the UK. Once created, standing order payments cannot be modified or canceled via the API. An end user can cancel or modify a standing order directly on their banking application or website, or by contacting the bank. Standing orders will follow the payment rules of the underlying rails (Faster Payments in UK). Payments can be sent Monday to Friday, excluding bank holidays. If the pre-arranged date falls on a weekend or bank holiday, the payment is made on the next working day. It is not possible to guarantee the exact time the payment will reach the recipient’s account, although at least 90% of standing order payments are sent by 6am. In Limited Production, payments must be below 5 GBP or other chosen [currency](plaid.com/docs/api/products/payment-initiation/#payment_initiation-payment-create-request-amount-currency), and standing orders, variable recurring payments, and Virtual Accounts are not supported. @param payment_initiation_payment_create_request [PaymentInitiationPaymentCreateRequest] @param [Hash] opts the optional parameters @return [Array<(PaymentInitiationPaymentCreateResponse, Integer, Hash)>] PaymentInitiationPaymentCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 9816
def payment_initiation_payment_create_with_http_info(payment_initiation_payment_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.payment_initiation_payment_create ...'
  end
  # verify the required parameter 'payment_initiation_payment_create_request' is set
  if @api_client.config.client_side_validation && payment_initiation_payment_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'payment_initiation_payment_create_request' when calling PlaidApi.payment_initiation_payment_create"
  end
  # resource path
  local_var_path = '/payment_initiation/payment/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(payment_initiation_payment_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'PaymentInitiationPaymentCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.payment_initiation_payment_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#payment_initiation_payment_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
payment_initiation_payment_get(payment_initiation_payment_get_request, opts = {}) click to toggle source

Get payment details The ‘/payment_initiation/payment/get` endpoint can be used to check the status of a payment, as well as to receive basic information such as recipient and payment amount. In the case of standing orders, the `/payment_initiation/payment/get` endpoint will provide information about the status of the overall standing order itself; the API cannot be used to retrieve payment status for individual payments within a standing order. @param payment_initiation_payment_get_request [PaymentInitiationPaymentGetRequest] @param [Hash] opts the optional parameters @return [PaymentInitiationPaymentGetResponse]

# File lib/plaid/api/plaid_api.rb, line 9874
def payment_initiation_payment_get(payment_initiation_payment_get_request, opts = {})
  data, _status_code, _headers = payment_initiation_payment_get_with_http_info(payment_initiation_payment_get_request, opts)
  data
end
payment_initiation_payment_get_with_http_info(payment_initiation_payment_get_request, opts = {}) click to toggle source

Get payment details The &#x60;/payment_initiation/payment/get&#x60; endpoint can be used to check the status of a payment, as well as to receive basic information such as recipient and payment amount. In the case of standing orders, the &#x60;/payment_initiation/payment/get&#x60; endpoint will provide information about the status of the overall standing order itself; the API cannot be used to retrieve payment status for individual payments within a standing order. @param payment_initiation_payment_get_request [PaymentInitiationPaymentGetRequest] @param [Hash] opts the optional parameters @return [Array<(PaymentInitiationPaymentGetResponse, Integer, Hash)>] PaymentInitiationPaymentGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 9884
def payment_initiation_payment_get_with_http_info(payment_initiation_payment_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.payment_initiation_payment_get ...'
  end
  # verify the required parameter 'payment_initiation_payment_get_request' is set
  if @api_client.config.client_side_validation && payment_initiation_payment_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'payment_initiation_payment_get_request' when calling PlaidApi.payment_initiation_payment_get"
  end
  # resource path
  local_var_path = '/payment_initiation/payment/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(payment_initiation_payment_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'PaymentInitiationPaymentGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.payment_initiation_payment_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#payment_initiation_payment_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
payment_initiation_payment_list(payment_initiation_payment_list_request, opts = {}) click to toggle source

List payments The ‘/payment_initiation/payment/list` endpoint can be used to retrieve all created payments. By default, the 10 most recent payments are returned. You can request more payments and paginate through the results using the optional `count` and `cursor` parameters. @param payment_initiation_payment_list_request [PaymentInitiationPaymentListRequest] @param [Hash] opts the optional parameters @return [PaymentInitiationPaymentListResponse]

# File lib/plaid/api/plaid_api.rb, line 9942
def payment_initiation_payment_list(payment_initiation_payment_list_request, opts = {})
  data, _status_code, _headers = payment_initiation_payment_list_with_http_info(payment_initiation_payment_list_request, opts)
  data
end
payment_initiation_payment_list_with_http_info(payment_initiation_payment_list_request, opts = {}) click to toggle source

List payments The &#x60;/payment_initiation/payment/list&#x60; endpoint can be used to retrieve all created payments. By default, the 10 most recent payments are returned. You can request more payments and paginate through the results using the optional &#x60;count&#x60; and &#x60;cursor&#x60; parameters. @param payment_initiation_payment_list_request [PaymentInitiationPaymentListRequest] @param [Hash] opts the optional parameters @return [Array<(PaymentInitiationPaymentListResponse, Integer, Hash)>] PaymentInitiationPaymentListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 9952
def payment_initiation_payment_list_with_http_info(payment_initiation_payment_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.payment_initiation_payment_list ...'
  end
  # verify the required parameter 'payment_initiation_payment_list_request' is set
  if @api_client.config.client_side_validation && payment_initiation_payment_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'payment_initiation_payment_list_request' when calling PlaidApi.payment_initiation_payment_list"
  end
  # resource path
  local_var_path = '/payment_initiation/payment/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(payment_initiation_payment_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'PaymentInitiationPaymentListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.payment_initiation_payment_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#payment_initiation_payment_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
payment_initiation_payment_reverse(payment_initiation_payment_reverse_request, opts = {}) click to toggle source

Reverse an existing payment Reverse a settled payment from a Plaid virtual account. The original payment must be in a settled state to be refunded. To refund partially, specify the amount as part of the request. If the amount is not specified, the refund amount will be equal to all of the remaining payment amount that has not been refunded yet. The refund will go back to the source account that initiated the payment. The original payment must have been initiated to a Plaid virtual account so that this account can be used to initiate the refund. Providing counterparty information such as date of birth and address increases the likelihood of refund being successful without human intervention. @param payment_initiation_payment_reverse_request [PaymentInitiationPaymentReverseRequest] @param [Hash] opts the optional parameters @return [PaymentInitiationPaymentReverseResponse]

# File lib/plaid/api/plaid_api.rb, line 10010
def payment_initiation_payment_reverse(payment_initiation_payment_reverse_request, opts = {})
  data, _status_code, _headers = payment_initiation_payment_reverse_with_http_info(payment_initiation_payment_reverse_request, opts)
  data
end
payment_initiation_payment_reverse_with_http_info(payment_initiation_payment_reverse_request, opts = {}) click to toggle source

Reverse an existing payment Reverse a settled payment from a Plaid virtual account. The original payment must be in a settled state to be refunded. To refund partially, specify the amount as part of the request. If the amount is not specified, the refund amount will be equal to all of the remaining payment amount that has not been refunded yet. The refund will go back to the source account that initiated the payment. The original payment must have been initiated to a Plaid virtual account so that this account can be used to initiate the refund. Providing counterparty information such as date of birth and address increases the likelihood of refund being successful without human intervention. @param payment_initiation_payment_reverse_request [PaymentInitiationPaymentReverseRequest] @param [Hash] opts the optional parameters @return [Array<(PaymentInitiationPaymentReverseResponse, Integer, Hash)>] PaymentInitiationPaymentReverseResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 10020
def payment_initiation_payment_reverse_with_http_info(payment_initiation_payment_reverse_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.payment_initiation_payment_reverse ...'
  end
  # verify the required parameter 'payment_initiation_payment_reverse_request' is set
  if @api_client.config.client_side_validation && payment_initiation_payment_reverse_request.nil?
    fail ArgumentError, "Missing the required parameter 'payment_initiation_payment_reverse_request' when calling PlaidApi.payment_initiation_payment_reverse"
  end
  # resource path
  local_var_path = '/payment_initiation/payment/reverse'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(payment_initiation_payment_reverse_request)

  # return_type
  return_type = opts[:debug_return_type] || 'PaymentInitiationPaymentReverseResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.payment_initiation_payment_reverse",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#payment_initiation_payment_reverse\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
payment_initiation_recipient_create(payment_initiation_recipient_create_request, opts = {}) click to toggle source

Create payment recipient Create a payment recipient for payment initiation. The recipient must be in Europe, within a country that is a member of the Single Euro Payment Area (SEPA) or a non-Eurozone country [supported](plaid.com/global) by Plaid. For a standing order (recurring) payment, the recipient must be in the UK. It is recommended to use ‘bacs` in the UK and `iban` in EU. The endpoint is idempotent: if a developer has already made a request with the same payment details, Plaid will return the same `recipient_id`. @param payment_initiation_recipient_create_request [PaymentInitiationRecipientCreateRequest] @param [Hash] opts the optional parameters @return [PaymentInitiationRecipientCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 10078
def payment_initiation_recipient_create(payment_initiation_recipient_create_request, opts = {})
  data, _status_code, _headers = payment_initiation_recipient_create_with_http_info(payment_initiation_recipient_create_request, opts)
  data
end
payment_initiation_recipient_create_with_http_info(payment_initiation_recipient_create_request, opts = {}) click to toggle source

Create payment recipient Create a payment recipient for payment initiation. The recipient must be in Europe, within a country that is a member of the Single Euro Payment Area (SEPA) or a non-Eurozone country [supported](plaid.com/global) by Plaid. For a standing order (recurring) payment, the recipient must be in the UK. It is recommended to use &#x60;bacs&#x60; in the UK and &#x60;iban&#x60; in EU. The endpoint is idempotent: if a developer has already made a request with the same payment details, Plaid will return the same &#x60;recipient_id&#x60;. @param payment_initiation_recipient_create_request [PaymentInitiationRecipientCreateRequest] @param [Hash] opts the optional parameters @return [Array<(PaymentInitiationRecipientCreateResponse, Integer, Hash)>] PaymentInitiationRecipientCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 10088
def payment_initiation_recipient_create_with_http_info(payment_initiation_recipient_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.payment_initiation_recipient_create ...'
  end
  # verify the required parameter 'payment_initiation_recipient_create_request' is set
  if @api_client.config.client_side_validation && payment_initiation_recipient_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'payment_initiation_recipient_create_request' when calling PlaidApi.payment_initiation_recipient_create"
  end
  # resource path
  local_var_path = '/payment_initiation/recipient/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(payment_initiation_recipient_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'PaymentInitiationRecipientCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.payment_initiation_recipient_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#payment_initiation_recipient_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
payment_initiation_recipient_get(payment_initiation_recipient_get_request, opts = {}) click to toggle source

Get payment recipient Get details about a payment recipient you have previously created. @param payment_initiation_recipient_get_request [PaymentInitiationRecipientGetRequest] @param [Hash] opts the optional parameters @return [PaymentInitiationRecipientGetResponse]

# File lib/plaid/api/plaid_api.rb, line 10146
def payment_initiation_recipient_get(payment_initiation_recipient_get_request, opts = {})
  data, _status_code, _headers = payment_initiation_recipient_get_with_http_info(payment_initiation_recipient_get_request, opts)
  data
end
payment_initiation_recipient_get_with_http_info(payment_initiation_recipient_get_request, opts = {}) click to toggle source

Get payment recipient Get details about a payment recipient you have previously created. @param payment_initiation_recipient_get_request [PaymentInitiationRecipientGetRequest] @param [Hash] opts the optional parameters @return [Array<(PaymentInitiationRecipientGetResponse, Integer, Hash)>] PaymentInitiationRecipientGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 10156
def payment_initiation_recipient_get_with_http_info(payment_initiation_recipient_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.payment_initiation_recipient_get ...'
  end
  # verify the required parameter 'payment_initiation_recipient_get_request' is set
  if @api_client.config.client_side_validation && payment_initiation_recipient_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'payment_initiation_recipient_get_request' when calling PlaidApi.payment_initiation_recipient_get"
  end
  # resource path
  local_var_path = '/payment_initiation/recipient/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(payment_initiation_recipient_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'PaymentInitiationRecipientGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.payment_initiation_recipient_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#payment_initiation_recipient_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
payment_initiation_recipient_list(payment_initiation_recipient_list_request, opts = {}) click to toggle source

List payment recipients The ‘/payment_initiation/recipient/list` endpoint list the payment recipients that you have previously created. @param payment_initiation_recipient_list_request [PaymentInitiationRecipientListRequest] @param [Hash] opts the optional parameters @return [PaymentInitiationRecipientListResponse]

# File lib/plaid/api/plaid_api.rb, line 10214
def payment_initiation_recipient_list(payment_initiation_recipient_list_request, opts = {})
  data, _status_code, _headers = payment_initiation_recipient_list_with_http_info(payment_initiation_recipient_list_request, opts)
  data
end
payment_initiation_recipient_list_with_http_info(payment_initiation_recipient_list_request, opts = {}) click to toggle source

List payment recipients The &#x60;/payment_initiation/recipient/list&#x60; endpoint list the payment recipients that you have previously created. @param payment_initiation_recipient_list_request [PaymentInitiationRecipientListRequest] @param [Hash] opts the optional parameters @return [Array<(PaymentInitiationRecipientListResponse, Integer, Hash)>] PaymentInitiationRecipientListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 10224
def payment_initiation_recipient_list_with_http_info(payment_initiation_recipient_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.payment_initiation_recipient_list ...'
  end
  # verify the required parameter 'payment_initiation_recipient_list_request' is set
  if @api_client.config.client_side_validation && payment_initiation_recipient_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'payment_initiation_recipient_list_request' when calling PlaidApi.payment_initiation_recipient_list"
  end
  # resource path
  local_var_path = '/payment_initiation/recipient/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(payment_initiation_recipient_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'PaymentInitiationRecipientListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.payment_initiation_recipient_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#payment_initiation_recipient_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
payment_profile_create(payment_profile_create_request, opts = {}) click to toggle source

Create payment profile Use ‘/payment_profile/create` endpoint to create a new payment profile. To initiate the account linking experience, call `/link/token/create` and provide the `payment_profile_token` in the `transfer.payment_profile_token` field. You can then use the `payment_profile_token` when creating transfers using `/transfer/authorization/create` and `/transfer/create`. @param payment_profile_create_request [PaymentProfileCreateRequest] @param [Hash] opts the optional parameters @return [PaymentProfileCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 10282
def payment_profile_create(payment_profile_create_request, opts = {})
  data, _status_code, _headers = payment_profile_create_with_http_info(payment_profile_create_request, opts)
  data
end
payment_profile_create_with_http_info(payment_profile_create_request, opts = {}) click to toggle source

Create payment profile Use &#x60;/payment_profile/create&#x60; endpoint to create a new payment profile. To initiate the account linking experience, call &#x60;/link/token/create&#x60; and provide the &#x60;payment_profile_token&#x60; in the &#x60;transfer.payment_profile_token&#x60; field. You can then use the &#x60;payment_profile_token&#x60; when creating transfers using &#x60;/transfer/authorization/create&#x60; and &#x60;/transfer/create&#x60;. @param payment_profile_create_request [PaymentProfileCreateRequest] @param [Hash] opts the optional parameters @return [Array<(PaymentProfileCreateResponse, Integer, Hash)>] PaymentProfileCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 10292
def payment_profile_create_with_http_info(payment_profile_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.payment_profile_create ...'
  end
  # verify the required parameter 'payment_profile_create_request' is set
  if @api_client.config.client_side_validation && payment_profile_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'payment_profile_create_request' when calling PlaidApi.payment_profile_create"
  end
  # resource path
  local_var_path = '/payment_profile/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(payment_profile_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'PaymentProfileCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.payment_profile_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#payment_profile_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
payment_profile_get(payment_profile_get_request, opts = {}) click to toggle source

Get payment profile Use ‘/payment_profile/get` endpoint to get the status of a given Payment Profile. @param payment_profile_get_request [PaymentProfileGetRequest] @param [Hash] opts the optional parameters @return [PaymentProfileGetResponse]

# File lib/plaid/api/plaid_api.rb, line 10350
def payment_profile_get(payment_profile_get_request, opts = {})
  data, _status_code, _headers = payment_profile_get_with_http_info(payment_profile_get_request, opts)
  data
end
payment_profile_get_with_http_info(payment_profile_get_request, opts = {}) click to toggle source

Get payment profile Use &#x60;/payment_profile/get&#x60; endpoint to get the status of a given Payment Profile. @param payment_profile_get_request [PaymentProfileGetRequest] @param [Hash] opts the optional parameters @return [Array<(PaymentProfileGetResponse, Integer, Hash)>] PaymentProfileGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 10360
def payment_profile_get_with_http_info(payment_profile_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.payment_profile_get ...'
  end
  # verify the required parameter 'payment_profile_get_request' is set
  if @api_client.config.client_side_validation && payment_profile_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'payment_profile_get_request' when calling PlaidApi.payment_profile_get"
  end
  # resource path
  local_var_path = '/payment_profile/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(payment_profile_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'PaymentProfileGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.payment_profile_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#payment_profile_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
payment_profile_remove(payment_profile_remove_request, opts = {}) click to toggle source

Remove payment profile Use the ‘/payment_profile/remove` endpoint to remove a given Payment Profile. Once it’s removed, it can no longer be used to create transfers. @param payment_profile_remove_request [PaymentProfileRemoveRequest] @param [Hash] opts the optional parameters @return [PaymentProfileRemoveResponse]

# File lib/plaid/api/plaid_api.rb, line 10418
def payment_profile_remove(payment_profile_remove_request, opts = {})
  data, _status_code, _headers = payment_profile_remove_with_http_info(payment_profile_remove_request, opts)
  data
end
payment_profile_remove_with_http_info(payment_profile_remove_request, opts = {}) click to toggle source

Remove payment profile Use the &#x60;/payment_profile/remove&#x60; endpoint to remove a given Payment Profile. Once it’s removed, it can no longer be used to create transfers. @param payment_profile_remove_request [PaymentProfileRemoveRequest] @param [Hash] opts the optional parameters @return [Array<(PaymentProfileRemoveResponse, Integer, Hash)>] PaymentProfileRemoveResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 10428
def payment_profile_remove_with_http_info(payment_profile_remove_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.payment_profile_remove ...'
  end
  # verify the required parameter 'payment_profile_remove_request' is set
  if @api_client.config.client_side_validation && payment_profile_remove_request.nil?
    fail ArgumentError, "Missing the required parameter 'payment_profile_remove_request' when calling PlaidApi.payment_profile_remove"
  end
  # resource path
  local_var_path = '/payment_profile/remove'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(payment_profile_remove_request)

  # return_type
  return_type = opts[:debug_return_type] || 'PaymentProfileRemoveResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.payment_profile_remove",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#payment_profile_remove\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_account_get(processor_account_get_request, opts = {}) click to toggle source

Retrieve the account associated with a processor token This endpoint returns the account associated with a given processor token. This endpoint retrieves cached information, rather than extracting fresh information from the institution. As a result, the account balance returned may not be up-to-date; for realtime balance information, use ‘/processor/balance/get` instead. Note that some information is nullable. @param processor_account_get_request [ProcessorAccountGetRequest] @param [Hash] opts the optional parameters @return [ProcessorAccountGetResponse]

# File lib/plaid/api/plaid_api.rb, line 10486
def processor_account_get(processor_account_get_request, opts = {})
  data, _status_code, _headers = processor_account_get_with_http_info(processor_account_get_request, opts)
  data
end
processor_account_get_with_http_info(processor_account_get_request, opts = {}) click to toggle source

Retrieve the account associated with a processor token This endpoint returns the account associated with a given processor token. This endpoint retrieves cached information, rather than extracting fresh information from the institution. As a result, the account balance returned may not be up-to-date; for realtime balance information, use &#x60;/processor/balance/get&#x60; instead. Note that some information is nullable. @param processor_account_get_request [ProcessorAccountGetRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorAccountGetResponse, Integer, Hash)>] ProcessorAccountGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 10496
def processor_account_get_with_http_info(processor_account_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_account_get ...'
  end
  # verify the required parameter 'processor_account_get_request' is set
  if @api_client.config.client_side_validation && processor_account_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_account_get_request' when calling PlaidApi.processor_account_get"
  end
  # resource path
  local_var_path = '/processor/account/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_account_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorAccountGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_account_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_account_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_apex_processor_token_create(processor_apex_processor_token_create_request, opts = {}) click to toggle source

Create Apex bank account token Used to create a token suitable for sending to Apex to enable Plaid-Apex integrations. @param processor_apex_processor_token_create_request [ProcessorApexProcessorTokenCreateRequest] @param [Hash] opts the optional parameters @return [ProcessorTokenCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 10554
def processor_apex_processor_token_create(processor_apex_processor_token_create_request, opts = {})
  data, _status_code, _headers = processor_apex_processor_token_create_with_http_info(processor_apex_processor_token_create_request, opts)
  data
end
processor_apex_processor_token_create_with_http_info(processor_apex_processor_token_create_request, opts = {}) click to toggle source

Create Apex bank account token Used to create a token suitable for sending to Apex to enable Plaid-Apex integrations. @param processor_apex_processor_token_create_request [ProcessorApexProcessorTokenCreateRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorTokenCreateResponse, Integer, Hash)>] ProcessorTokenCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 10564
def processor_apex_processor_token_create_with_http_info(processor_apex_processor_token_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_apex_processor_token_create ...'
  end
  # verify the required parameter 'processor_apex_processor_token_create_request' is set
  if @api_client.config.client_side_validation && processor_apex_processor_token_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_apex_processor_token_create_request' when calling PlaidApi.processor_apex_processor_token_create"
  end
  # resource path
  local_var_path = '/processor/apex/processor_token/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_apex_processor_token_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorTokenCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_apex_processor_token_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_apex_processor_token_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_auth_get(processor_auth_get_request, opts = {}) click to toggle source

Retrieve Auth data The ‘/processor/auth/get` endpoint returns the bank account and bank identification number (such as the routing number, for US accounts), for a checking or savings account that”s associated with a given `processor_token`. The endpoint also returns high-level account data and balances when available. Versioning note: API versions 2019-05-29 and earlier use a different schema for the `numbers` object returned by this endpoint. For details, see [Plaid API versioning](plaid.com/docs/api/versioning/#version-2020-09-14). @param processor_auth_get_request [ProcessorAuthGetRequest] @param [Hash] opts the optional parameters @return [ProcessorAuthGetResponse]

# File lib/plaid/api/plaid_api.rb, line 10622
def processor_auth_get(processor_auth_get_request, opts = {})
  data, _status_code, _headers = processor_auth_get_with_http_info(processor_auth_get_request, opts)
  data
end
processor_auth_get_with_http_info(processor_auth_get_request, opts = {}) click to toggle source

Retrieve Auth data The &#x60;/processor/auth/get&#x60; endpoint returns the bank account and bank identification number (such as the routing number, for US accounts), for a checking or savings account that&#39;&#39;s associated with a given &#x60;processor_token&#x60;. The endpoint also returns high-level account data and balances when available. Versioning note: API versions 2019-05-29 and earlier use a different schema for the &#x60;numbers&#x60; object returned by this endpoint. For details, see [Plaid API versioning](plaid.com/docs/api/versioning/#version-2020-09-14). @param processor_auth_get_request [ProcessorAuthGetRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorAuthGetResponse, Integer, Hash)>] ProcessorAuthGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 10632
def processor_auth_get_with_http_info(processor_auth_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_auth_get ...'
  end
  # verify the required parameter 'processor_auth_get_request' is set
  if @api_client.config.client_side_validation && processor_auth_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_auth_get_request' when calling PlaidApi.processor_auth_get"
  end
  # resource path
  local_var_path = '/processor/auth/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_auth_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorAuthGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_auth_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_auth_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_balance_get(processor_balance_get_request, opts = {}) click to toggle source

Retrieve Balance data The ‘/processor/balance/get` endpoint returns the real-time balance for each of an Item’s accounts. While other endpoints may return a balance object, only ‘/processor/balance/get` forces the available and current balance fields to be refreshed rather than cached. @param processor_balance_get_request [ProcessorBalanceGetRequest] The &#x60;/processor/balance/get&#x60; endpoint returns the real-time balance for the account associated with a given &#x60;processor_token&#x60;. The current balance is the total amount of funds in the account. The available balance is the current balance less any outstanding holds or debits that have not yet posted to the account. Note that not all institutions calculate the available balance. In the event that available balance is unavailable from the institution, Plaid will return an available balance value of &#x60;null&#x60;. @param [Hash] opts the optional parameters @return [ProcessorBalanceGetResponse]

# File lib/plaid/api/plaid_api.rb, line 10690
def processor_balance_get(processor_balance_get_request, opts = {})
  data, _status_code, _headers = processor_balance_get_with_http_info(processor_balance_get_request, opts)
  data
end
processor_balance_get_with_http_info(processor_balance_get_request, opts = {}) click to toggle source

Retrieve Balance data The &#x60;/processor/balance/get&#x60; endpoint returns the real-time balance for each of an Item&#39;s accounts. While other endpoints may return a balance object, only &#x60;/processor/balance/get&#x60; forces the available and current balance fields to be refreshed rather than cached. @param processor_balance_get_request [ProcessorBalanceGetRequest] The &#x60;/processor/balance/get&#x60; endpoint returns the real-time balance for the account associated with a given &#x60;processor_token&#x60;. The current balance is the total amount of funds in the account. The available balance is the current balance less any outstanding holds or debits that have not yet posted to the account. Note that not all institutions calculate the available balance. In the event that available balance is unavailable from the institution, Plaid will return an available balance value of &#x60;null&#x60;. @param [Hash] opts the optional parameters @return [Array<(ProcessorBalanceGetResponse, Integer, Hash)>] ProcessorBalanceGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 10700
def processor_balance_get_with_http_info(processor_balance_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_balance_get ...'
  end
  # verify the required parameter 'processor_balance_get_request' is set
  if @api_client.config.client_side_validation && processor_balance_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_balance_get_request' when calling PlaidApi.processor_balance_get"
  end
  # resource path
  local_var_path = '/processor/balance/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_balance_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorBalanceGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_balance_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_balance_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_bank_transfer_create(processor_bank_transfer_create_request, opts = {}) click to toggle source

Create a bank transfer as a processor Use the ‘/processor/bank_transfer/create` endpoint to initiate a new bank transfer as a processor @param processor_bank_transfer_create_request [ProcessorBankTransferCreateRequest] @param [Hash] opts the optional parameters @return [ProcessorBankTransferCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 10758
def processor_bank_transfer_create(processor_bank_transfer_create_request, opts = {})
  data, _status_code, _headers = processor_bank_transfer_create_with_http_info(processor_bank_transfer_create_request, opts)
  data
end
processor_bank_transfer_create_with_http_info(processor_bank_transfer_create_request, opts = {}) click to toggle source

Create a bank transfer as a processor Use the &#x60;/processor/bank_transfer/create&#x60; endpoint to initiate a new bank transfer as a processor @param processor_bank_transfer_create_request [ProcessorBankTransferCreateRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorBankTransferCreateResponse, Integer, Hash)>] ProcessorBankTransferCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 10768
def processor_bank_transfer_create_with_http_info(processor_bank_transfer_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_bank_transfer_create ...'
  end
  # verify the required parameter 'processor_bank_transfer_create_request' is set
  if @api_client.config.client_side_validation && processor_bank_transfer_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_bank_transfer_create_request' when calling PlaidApi.processor_bank_transfer_create"
  end
  # resource path
  local_var_path = '/processor/bank_transfer/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_bank_transfer_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorBankTransferCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_bank_transfer_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_bank_transfer_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_identity_get(processor_identity_get_request, opts = {}) click to toggle source

Retrieve Identity data The ‘/processor/identity/get` endpoint allows you to retrieve various account holder information on file with the financial institution, including names, emails, phone numbers, and addresses. @param processor_identity_get_request [ProcessorIdentityGetRequest] @param [Hash] opts the optional parameters @return [ProcessorIdentityGetResponse]

# File lib/plaid/api/plaid_api.rb, line 10826
def processor_identity_get(processor_identity_get_request, opts = {})
  data, _status_code, _headers = processor_identity_get_with_http_info(processor_identity_get_request, opts)
  data
end
processor_identity_get_with_http_info(processor_identity_get_request, opts = {}) click to toggle source

Retrieve Identity data The &#x60;/processor/identity/get&#x60; endpoint allows you to retrieve various account holder information on file with the financial institution, including names, emails, phone numbers, and addresses. @param processor_identity_get_request [ProcessorIdentityGetRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorIdentityGetResponse, Integer, Hash)>] ProcessorIdentityGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 10836
def processor_identity_get_with_http_info(processor_identity_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_identity_get ...'
  end
  # verify the required parameter 'processor_identity_get_request' is set
  if @api_client.config.client_side_validation && processor_identity_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_identity_get_request' when calling PlaidApi.processor_identity_get"
  end
  # resource path
  local_var_path = '/processor/identity/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_identity_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorIdentityGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_identity_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_identity_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_identity_match(processor_identity_match_request, opts = {}) click to toggle source

Retrieve identity match score The ‘/processor/identity/match` endpoint generates a match score, which indicates how well the provided identity data matches the identity information on file with the account holder’s financial institution. Fields within the ‘balances` object will always be null when retrieved by `/identity/match`. Instead, use the free `/accounts/get` endpoint to request balance cached data, or `/accounts/balance/get` for real-time data. @param processor_identity_match_request [ProcessorIdentityMatchRequest] @param [Hash] opts the optional parameters @return [ProcessorIdentityMatchResponse]

# File lib/plaid/api/plaid_api.rb, line 10894
def processor_identity_match(processor_identity_match_request, opts = {})
  data, _status_code, _headers = processor_identity_match_with_http_info(processor_identity_match_request, opts)
  data
end
processor_identity_match_with_http_info(processor_identity_match_request, opts = {}) click to toggle source

Retrieve identity match score The &#x60;/processor/identity/match&#x60; endpoint generates a match score, which indicates how well the provided identity data matches the identity information on file with the account holder&#39;s financial institution. Fields within the &#x60;balances&#x60; object will always be null when retrieved by &#x60;/identity/match&#x60;. Instead, use the free &#x60;/accounts/get&#x60; endpoint to request balance cached data, or &#x60;/accounts/balance/get&#x60; for real-time data. @param processor_identity_match_request [ProcessorIdentityMatchRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorIdentityMatchResponse, Integer, Hash)>] ProcessorIdentityMatchResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 10904
def processor_identity_match_with_http_info(processor_identity_match_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_identity_match ...'
  end
  # verify the required parameter 'processor_identity_match_request' is set
  if @api_client.config.client_side_validation && processor_identity_match_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_identity_match_request' when calling PlaidApi.processor_identity_match"
  end
  # resource path
  local_var_path = '/processor/identity/match'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_identity_match_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorIdentityMatchResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_identity_match",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_identity_match\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_liabilities_get(processor_liabilities_get_request, opts = {}) click to toggle source

Retrieve Liabilities data The ‘/processor/liabilities/get` endpoint returns various details about a loan or credit account. Liabilities data is available primarily for US financial institutions, with some limited coverage of Canadian institutions. Currently supported account types are account type `credit` with account subtype `credit card` or `paypal`, and account type `loan` with account subtype `student` or `mortgage`. The types of information returned by Liabilities can include balances and due dates, loan terms, and account details such as original loan amount and guarantor. Data is refreshed approximately once per day; the latest data can be retrieved by calling `/processor/liabilities/get`. Note: This request may take some time to complete if `liabilities` was not specified as an initial product when creating the processor token. This is because Plaid must communicate directly with the institution to retrieve the additional data. @param processor_liabilities_get_request [ProcessorLiabilitiesGetRequest] @param [Hash] opts the optional parameters @return [ProcessorLiabilitiesGetResponse]

# File lib/plaid/api/plaid_api.rb, line 10962
def processor_liabilities_get(processor_liabilities_get_request, opts = {})
  data, _status_code, _headers = processor_liabilities_get_with_http_info(processor_liabilities_get_request, opts)
  data
end
processor_liabilities_get_with_http_info(processor_liabilities_get_request, opts = {}) click to toggle source

Retrieve Liabilities data The &#x60;/processor/liabilities/get&#x60; endpoint returns various details about a loan or credit account. Liabilities data is available primarily for US financial institutions, with some limited coverage of Canadian institutions. Currently supported account types are account type &#x60;credit&#x60; with account subtype &#x60;credit card&#x60; or &#x60;paypal&#x60;, and account type &#x60;loan&#x60; with account subtype &#x60;student&#x60; or &#x60;mortgage&#x60;. The types of information returned by Liabilities can include balances and due dates, loan terms, and account details such as original loan amount and guarantor. Data is refreshed approximately once per day; the latest data can be retrieved by calling &#x60;/processor/liabilities/get&#x60;. Note: This request may take some time to complete if &#x60;liabilities&#x60; was not specified as an initial product when creating the processor token. This is because Plaid must communicate directly with the institution to retrieve the additional data. @param processor_liabilities_get_request [ProcessorLiabilitiesGetRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorLiabilitiesGetResponse, Integer, Hash)>] ProcessorLiabilitiesGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 10972
def processor_liabilities_get_with_http_info(processor_liabilities_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_liabilities_get ...'
  end
  # verify the required parameter 'processor_liabilities_get_request' is set
  if @api_client.config.client_side_validation && processor_liabilities_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_liabilities_get_request' when calling PlaidApi.processor_liabilities_get"
  end
  # resource path
  local_var_path = '/processor/liabilities/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_liabilities_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorLiabilitiesGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_liabilities_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_liabilities_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_signal_decision_report(processor_signal_decision_report_request, opts = {}) click to toggle source

Report whether you initiated an ACH transaction After calling ‘/processor/signal/evaluate`, call `/processor/signal/decision/report` to report whether the transaction was initiated. If you are using the [Plaid Transfer product](www.plaid.com/docs/transfer) to create transfers, it is not necessary to use this endpoint, as Plaid already knows whether the transfer was initiated. @param processor_signal_decision_report_request [ProcessorSignalDecisionReportRequest] @param [Hash] opts the optional parameters @return [ProcessorSignalDecisionReportResponse]

# File lib/plaid/api/plaid_api.rb, line 11030
def processor_signal_decision_report(processor_signal_decision_report_request, opts = {})
  data, _status_code, _headers = processor_signal_decision_report_with_http_info(processor_signal_decision_report_request, opts)
  data
end
processor_signal_decision_report_with_http_info(processor_signal_decision_report_request, opts = {}) click to toggle source

Report whether you initiated an ACH transaction After calling &#x60;/processor/signal/evaluate&#x60;, call &#x60;/processor/signal/decision/report&#x60; to report whether the transaction was initiated. If you are using the [Plaid Transfer product](www.plaid.com/docs/transfer) to create transfers, it is not necessary to use this endpoint, as Plaid already knows whether the transfer was initiated. @param processor_signal_decision_report_request [ProcessorSignalDecisionReportRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorSignalDecisionReportResponse, Integer, Hash)>] ProcessorSignalDecisionReportResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 11040
def processor_signal_decision_report_with_http_info(processor_signal_decision_report_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_signal_decision_report ...'
  end
  # verify the required parameter 'processor_signal_decision_report_request' is set
  if @api_client.config.client_side_validation && processor_signal_decision_report_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_signal_decision_report_request' when calling PlaidApi.processor_signal_decision_report"
  end
  # resource path
  local_var_path = '/processor/signal/decision/report'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_signal_decision_report_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorSignalDecisionReportResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_signal_decision_report",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_signal_decision_report\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_signal_evaluate(processor_signal_evaluate_request, opts = {}) click to toggle source

Evaluate a planned ACH transaction Use ‘/processor/signal/evaluate` to evaluate a planned ACH transaction as a processor to get a return risk assessment (such as a risk score and risk tier) and additional risk signals. In order to obtain a valid score for an ACH transaction, Plaid must have an access token for the account, and the Item must be healthy (receiving product updates) or have recently been in a healthy state. If the transaction does not meet eligibility requirements, an error will be returned corresponding to the underlying cause. If `/processor/signal/evaluate` is called on the same transaction multiple times within a 24-hour period, cached results may be returned. For more information please refer to our error documentation on [item errors](/docs/errors/item/) and [Link in Update Mode](/docs/link/update-mode/). Note: This request may take some time to complete if Signal is being added to an existing Item. This is because Plaid must communicate directly with the institution when retrieving the data for the first time. To reduce this latency, you can call `/signal/prepare` on the Item before you need to request Signal data. @param processor_signal_evaluate_request [ProcessorSignalEvaluateRequest] @param [Hash] opts the optional parameters @return [ProcessorSignalEvaluateResponse]

# File lib/plaid/api/plaid_api.rb, line 11098
def processor_signal_evaluate(processor_signal_evaluate_request, opts = {})
  data, _status_code, _headers = processor_signal_evaluate_with_http_info(processor_signal_evaluate_request, opts)
  data
end
processor_signal_evaluate_with_http_info(processor_signal_evaluate_request, opts = {}) click to toggle source

Evaluate a planned ACH transaction Use &#x60;/processor/signal/evaluate&#x60; to evaluate a planned ACH transaction as a processor to get a return risk assessment (such as a risk score and risk tier) and additional risk signals. In order to obtain a valid score for an ACH transaction, Plaid must have an access token for the account, and the Item must be healthy (receiving product updates) or have recently been in a healthy state. If the transaction does not meet eligibility requirements, an error will be returned corresponding to the underlying cause. If &#x60;/processor/signal/evaluate&#x60; is called on the same transaction multiple times within a 24-hour period, cached results may be returned. For more information please refer to our error documentation on [item errors](/docs/errors/item/) and [Link in Update Mode](/docs/link/update-mode/). Note: This request may take some time to complete if Signal is being added to an existing Item. This is because Plaid must communicate directly with the institution when retrieving the data for the first time. To reduce this latency, you can call &#x60;/signal/prepare&#x60; on the Item before you need to request Signal data. @param processor_signal_evaluate_request [ProcessorSignalEvaluateRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorSignalEvaluateResponse, Integer, Hash)>] ProcessorSignalEvaluateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 11108
def processor_signal_evaluate_with_http_info(processor_signal_evaluate_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_signal_evaluate ...'
  end
  # verify the required parameter 'processor_signal_evaluate_request' is set
  if @api_client.config.client_side_validation && processor_signal_evaluate_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_signal_evaluate_request' when calling PlaidApi.processor_signal_evaluate"
  end
  # resource path
  local_var_path = '/processor/signal/evaluate'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_signal_evaluate_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorSignalEvaluateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_signal_evaluate",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_signal_evaluate\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_signal_prepare(processor_signal_prepare_request, opts = {}) click to toggle source

Opt-in a processor token to Signal When a processor token is not initialized with Signal, call ‘/processor/signal/prepare` to opt-in that processor token to the Signal data collection process, which will improve the accuracy of the Signal score. If this endpoint is called with a processor token that is already initialized with Signal, it will return a 200 response and will not modify the processor token. @param processor_signal_prepare_request [ProcessorSignalPrepareRequest] @param [Hash] opts the optional parameters @return [ProcessorSignalPrepareResponse]

# File lib/plaid/api/plaid_api.rb, line 11166
def processor_signal_prepare(processor_signal_prepare_request, opts = {})
  data, _status_code, _headers = processor_signal_prepare_with_http_info(processor_signal_prepare_request, opts)
  data
end
processor_signal_prepare_with_http_info(processor_signal_prepare_request, opts = {}) click to toggle source

Opt-in a processor token to Signal When a processor token is not initialized with Signal, call &#x60;/processor/signal/prepare&#x60; to opt-in that processor token to the Signal data collection process, which will improve the accuracy of the Signal score. If this endpoint is called with a processor token that is already initialized with Signal, it will return a 200 response and will not modify the processor token. @param processor_signal_prepare_request [ProcessorSignalPrepareRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorSignalPrepareResponse, Integer, Hash)>] ProcessorSignalPrepareResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 11176
def processor_signal_prepare_with_http_info(processor_signal_prepare_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_signal_prepare ...'
  end
  # verify the required parameter 'processor_signal_prepare_request' is set
  if @api_client.config.client_side_validation && processor_signal_prepare_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_signal_prepare_request' when calling PlaidApi.processor_signal_prepare"
  end
  # resource path
  local_var_path = '/processor/signal/prepare'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_signal_prepare_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorSignalPrepareResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_signal_prepare",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_signal_prepare\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_signal_return_report(processor_signal_return_report_request, opts = {}) click to toggle source

Report a return for an ACH transaction Call the ‘/processor/signal/return/report` endpoint to report a returned transaction that was previously sent to the `/processor/signal/evaluate` endpoint. Your feedback will be used by the model to incorporate the latest risk trend in your portfolio. If you are using the [Plaid Transfer product](www.plaid.com/docs/transfer) to create transfers, it is not necessary to use this endpoint, as Plaid already knows whether the transfer was returned. @param processor_signal_return_report_request [ProcessorSignalReturnReportRequest] @param [Hash] opts the optional parameters @return [ProcessorSignalReturnReportResponse]

# File lib/plaid/api/plaid_api.rb, line 11234
def processor_signal_return_report(processor_signal_return_report_request, opts = {})
  data, _status_code, _headers = processor_signal_return_report_with_http_info(processor_signal_return_report_request, opts)
  data
end
processor_signal_return_report_with_http_info(processor_signal_return_report_request, opts = {}) click to toggle source

Report a return for an ACH transaction Call the &#x60;/processor/signal/return/report&#x60; endpoint to report a returned transaction that was previously sent to the &#x60;/processor/signal/evaluate&#x60; endpoint. Your feedback will be used by the model to incorporate the latest risk trend in your portfolio. If you are using the [Plaid Transfer product](www.plaid.com/docs/transfer) to create transfers, it is not necessary to use this endpoint, as Plaid already knows whether the transfer was returned. @param processor_signal_return_report_request [ProcessorSignalReturnReportRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorSignalReturnReportResponse, Integer, Hash)>] ProcessorSignalReturnReportResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 11244
def processor_signal_return_report_with_http_info(processor_signal_return_report_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_signal_return_report ...'
  end
  # verify the required parameter 'processor_signal_return_report_request' is set
  if @api_client.config.client_side_validation && processor_signal_return_report_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_signal_return_report_request' when calling PlaidApi.processor_signal_return_report"
  end
  # resource path
  local_var_path = '/processor/signal/return/report'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_signal_return_report_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorSignalReturnReportResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_signal_return_report",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_signal_return_report\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_stripe_bank_account_token_create(processor_stripe_bank_account_token_create_request, opts = {}) click to toggle source

Create Stripe bank account token

Used to create a token suitable for sending to Stripe to enable Plaid-Stripe integrations. For a detailed guide on integrating Stripe, see [Add Stripe to your app](https://plaid.com/docs/auth/partnerships/stripe/).  Note that the Stripe bank account token is a one-time use token. To store bank account information for later use, you can use a Stripe customer object and create an associated bank account from the token, or you can use a Stripe Custom account and create an associated external bank account from the token. This bank account information should work indefinitely, unless the user's bank account information changes or they revoke Plaid's permissions to access their account. Stripe bank account information cannot be modified once the bank account token has been created. If you ever need to change the bank account details used by Stripe for a specific customer, have the user go through Link again and create a new bank account token from the new `access_token`.  To revoke a bank account token, the entire underlying access token must be revoked using `/item/remove`.

@param processor_stripe_bank_account_token_create_request [ProcessorStripeBankAccountTokenCreateRequest] @param [Hash] opts the optional parameters @return [ProcessorStripeBankAccountTokenCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 11302
def processor_stripe_bank_account_token_create(processor_stripe_bank_account_token_create_request, opts = {})
  data, _status_code, _headers = processor_stripe_bank_account_token_create_with_http_info(processor_stripe_bank_account_token_create_request, opts)
  data
end
processor_stripe_bank_account_token_create_with_http_info(processor_stripe_bank_account_token_create_request, opts = {}) click to toggle source

Create Stripe bank account token

Used to create a token suitable for sending to Stripe to enable Plaid-Stripe integrations. For a detailed guide on integrating Stripe, see [Add Stripe to your app](https://plaid.com/docs/auth/partnerships/stripe/).  Note that the Stripe bank account token is a one-time use token. To store bank account information for later use, you can use a Stripe customer object and create an associated bank account from the token, or you can use a Stripe Custom account and create an associated external bank account from the token. This bank account information should work indefinitely, unless the user&#39;s bank account information changes or they revoke Plaid&#39;s permissions to access their account. Stripe bank account information cannot be modified once the bank account token has been created. If you ever need to change the bank account details used by Stripe for a specific customer, have the user go through Link again and create a new bank account token from the new &#x60;access_token&#x60;.  To revoke a bank account token, the entire underlying access token must be revoked using &#x60;/item/remove&#x60;.

@param processor_stripe_bank_account_token_create_request [ProcessorStripeBankAccountTokenCreateRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorStripeBankAccountTokenCreateResponse, Integer, Hash)>] ProcessorStripeBankAccountTokenCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 11312
def processor_stripe_bank_account_token_create_with_http_info(processor_stripe_bank_account_token_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_stripe_bank_account_token_create ...'
  end
  # verify the required parameter 'processor_stripe_bank_account_token_create_request' is set
  if @api_client.config.client_side_validation && processor_stripe_bank_account_token_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_stripe_bank_account_token_create_request' when calling PlaidApi.processor_stripe_bank_account_token_create"
  end
  # resource path
  local_var_path = '/processor/stripe/bank_account_token/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_stripe_bank_account_token_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorStripeBankAccountTokenCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_stripe_bank_account_token_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_stripe_bank_account_token_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_token_create(processor_token_create_request, opts = {}) click to toggle source

Create processor token Used to create a token suitable for sending to one of Plaid’s partners to enable integrations. Note that Stripe partnerships use bank account tokens instead; see ‘/processor/stripe/bank_account_token/create` for creating tokens for use with Stripe integrations. If using multiple processors, multiple different processor tokens can be created for a single access token. Once created, a processor token for a given Item cannot be modified or updated. To revoke the processor’s access, the entire Item must be deleted by calling ‘/item/remove`. @param processor_token_create_request [ProcessorTokenCreateRequest] @param [Hash] opts the optional parameters @return [ProcessorTokenCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 11370
def processor_token_create(processor_token_create_request, opts = {})
  data, _status_code, _headers = processor_token_create_with_http_info(processor_token_create_request, opts)
  data
end
processor_token_create_with_http_info(processor_token_create_request, opts = {}) click to toggle source

Create processor token Used to create a token suitable for sending to one of Plaid&#39;s partners to enable integrations. Note that Stripe partnerships use bank account tokens instead; see &#x60;/processor/stripe/bank_account_token/create&#x60; for creating tokens for use with Stripe integrations. If using multiple processors, multiple different processor tokens can be created for a single access token. Once created, a processor token for a given Item cannot be modified or updated. To revoke the processor&#39;s access, the entire Item must be deleted by calling &#x60;/item/remove&#x60;. @param processor_token_create_request [ProcessorTokenCreateRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorTokenCreateResponse, Integer, Hash)>] ProcessorTokenCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 11380
def processor_token_create_with_http_info(processor_token_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_token_create ...'
  end
  # verify the required parameter 'processor_token_create_request' is set
  if @api_client.config.client_side_validation && processor_token_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_token_create_request' when calling PlaidApi.processor_token_create"
  end
  # resource path
  local_var_path = '/processor/token/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_token_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorTokenCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_token_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_token_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_token_permissions_get(processor_token_permissions_get_request, opts = {}) click to toggle source

Get a processor token’s product permissions Used to get a processor token’s product permissions. The ‘products` field will be an empty list if the processor can access all available products. @param processor_token_permissions_get_request [ProcessorTokenPermissionsGetRequest] @param [Hash] opts the optional parameters @return [ProcessorTokenPermissionsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 11438
def processor_token_permissions_get(processor_token_permissions_get_request, opts = {})
  data, _status_code, _headers = processor_token_permissions_get_with_http_info(processor_token_permissions_get_request, opts)
  data
end
processor_token_permissions_get_with_http_info(processor_token_permissions_get_request, opts = {}) click to toggle source

Get a processor token&#39;s product permissions Used to get a processor token&#39;s product permissions. The &#x60;products&#x60; field will be an empty list if the processor can access all available products. @param processor_token_permissions_get_request [ProcessorTokenPermissionsGetRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorTokenPermissionsGetResponse, Integer, Hash)>] ProcessorTokenPermissionsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 11448
def processor_token_permissions_get_with_http_info(processor_token_permissions_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_token_permissions_get ...'
  end
  # verify the required parameter 'processor_token_permissions_get_request' is set
  if @api_client.config.client_side_validation && processor_token_permissions_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_token_permissions_get_request' when calling PlaidApi.processor_token_permissions_get"
  end
  # resource path
  local_var_path = '/processor/token/permissions/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_token_permissions_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorTokenPermissionsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_token_permissions_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_token_permissions_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_token_permissions_set(processor_token_permissions_set_request, opts = {}) click to toggle source

Control a processor’s access to products Used to control a processor’s access to products on the given processor token. By default, a processor will have access to all available products on the corresponding item. To restrict access to a particular set of products, call this endpoint with the desired products. To restore access to all available products, call this endpoint with an empty list. This endpoint can be called multiple times as your needs and your processor’s needs change. @param processor_token_permissions_set_request [ProcessorTokenPermissionsSetRequest] @param [Hash] opts the optional parameters @return [ProcessorTokenPermissionsSetResponse]

# File lib/plaid/api/plaid_api.rb, line 11506
def processor_token_permissions_set(processor_token_permissions_set_request, opts = {})
  data, _status_code, _headers = processor_token_permissions_set_with_http_info(processor_token_permissions_set_request, opts)
  data
end
processor_token_permissions_set_with_http_info(processor_token_permissions_set_request, opts = {}) click to toggle source

Control a processor&#39;s access to products Used to control a processor&#39;s access to products on the given processor token. By default, a processor will have access to all available products on the corresponding item. To restrict access to a particular set of products, call this endpoint with the desired products. To restore access to all available products, call this endpoint with an empty list. This endpoint can be called multiple times as your needs and your processor&#39;s needs change. @param processor_token_permissions_set_request [ProcessorTokenPermissionsSetRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorTokenPermissionsSetResponse, Integer, Hash)>] ProcessorTokenPermissionsSetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 11516
def processor_token_permissions_set_with_http_info(processor_token_permissions_set_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_token_permissions_set ...'
  end
  # verify the required parameter 'processor_token_permissions_set_request' is set
  if @api_client.config.client_side_validation && processor_token_permissions_set_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_token_permissions_set_request' when calling PlaidApi.processor_token_permissions_set"
  end
  # resource path
  local_var_path = '/processor/token/permissions/set'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_token_permissions_set_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorTokenPermissionsSetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_token_permissions_set",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_token_permissions_set\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_token_webhook_update(processor_token_webhook_update_request, opts = {}) click to toggle source

Update a processor token’s webhook URL This endpoint allows you, the processor, to update the webhook URL associated with a processor token. This request triggers a ‘WEBHOOK_UPDATE_ACKNOWLEDGED` webhook to the newly specified webhook URL. @param processor_token_webhook_update_request [ProcessorTokenWebhookUpdateRequest] @param [Hash] opts the optional parameters @return [ProcessorTokenWebhookUpdateResponse]

# File lib/plaid/api/plaid_api.rb, line 11574
def processor_token_webhook_update(processor_token_webhook_update_request, opts = {})
  data, _status_code, _headers = processor_token_webhook_update_with_http_info(processor_token_webhook_update_request, opts)
  data
end
processor_token_webhook_update_with_http_info(processor_token_webhook_update_request, opts = {}) click to toggle source

Update a processor token&#39;s webhook URL This endpoint allows you, the processor, to update the webhook URL associated with a processor token. This request triggers a &#x60;WEBHOOK_UPDATE_ACKNOWLEDGED&#x60; webhook to the newly specified webhook URL. @param processor_token_webhook_update_request [ProcessorTokenWebhookUpdateRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorTokenWebhookUpdateResponse, Integer, Hash)>] ProcessorTokenWebhookUpdateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 11584
def processor_token_webhook_update_with_http_info(processor_token_webhook_update_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_token_webhook_update ...'
  end
  # verify the required parameter 'processor_token_webhook_update_request' is set
  if @api_client.config.client_side_validation && processor_token_webhook_update_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_token_webhook_update_request' when calling PlaidApi.processor_token_webhook_update"
  end
  # resource path
  local_var_path = '/processor/token/webhook/update'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_token_webhook_update_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorTokenWebhookUpdateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_token_webhook_update",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_token_webhook_update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_transactions_get(processor_transactions_get_request, opts = {}) click to toggle source

Get transaction data The ‘/processor/transactions/get` endpoint allows developers to receive user-authorized transaction data for credit, depository, and some loan-type accounts (only those with account subtype `student`; coverage may be limited). Transaction data is standardized across financial institutions, and in many cases transactions are linked to a clean name, entity type, location, and category. Similarly, account data is standardized and returned with a clean name, number, balance, and other meta information where available. Transactions are returned in reverse-chronological order, and the sequence of transaction ordering is stable and will not shift. Transactions are not immutable and can also be removed altogether by the institution; a removed transaction will no longer appear in `/processor/transactions/get`. For more details, see [Pending and posted transactions](plaid.com/docs/transactions/transactions-data/#pending-and-posted-transactions). Due to the potentially large number of transactions associated with a processor token, results are paginated. Manipulate the `count` and `offset` parameters in conjunction with the `total_transactions` response body field to fetch all available transactions. Data returned by `/processor/transactions/get` will be the data available for the processor token as of the most recent successful check for new transactions. Plaid typically checks for new data multiple times a day, but these checks may occur less frequently, such as once a day, depending on the institution. To force Plaid to check for new transactions, you can use the `/processor/transactions/refresh` endpoint. Note that data may not be immediately available to `/processor/transactions/get`. Plaid will begin to prepare transactions data upon Item link, if Link was initialized with `transactions`, or upon the first call to `/processor/transactions/get`, if it wasn’t. If no transaction history is ready when ‘/processor/transactions/get` is called, it will return a `PRODUCT_NOT_READY` error. To receive Transactions webhooks for a processor token, set its webhook URL via the [`/processor/token/webhook/update`](plaid.com/docs/api/processor-partners/#processortokenwebhookupdate) endpoint. @param processor_transactions_get_request [ProcessorTransactionsGetRequest] @param [Hash] opts the optional parameters @return [ProcessorTransactionsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 11642
def processor_transactions_get(processor_transactions_get_request, opts = {})
  data, _status_code, _headers = processor_transactions_get_with_http_info(processor_transactions_get_request, opts)
  data
end
processor_transactions_get_with_http_info(processor_transactions_get_request, opts = {}) click to toggle source

Get transaction data The &#x60;/processor/transactions/get&#x60; endpoint allows developers to receive user-authorized transaction data for credit, depository, and some loan-type accounts (only those with account subtype &#x60;student&#x60;; coverage may be limited). Transaction data is standardized across financial institutions, and in many cases transactions are linked to a clean name, entity type, location, and category. Similarly, account data is standardized and returned with a clean name, number, balance, and other meta information where available. Transactions are returned in reverse-chronological order, and the sequence of transaction ordering is stable and will not shift. Transactions are not immutable and can also be removed altogether by the institution; a removed transaction will no longer appear in &#x60;/processor/transactions/get&#x60;. For more details, see [Pending and posted transactions](plaid.com/docs/transactions/transactions-data/#pending-and-posted-transactions). Due to the potentially large number of transactions associated with a processor token, results are paginated. Manipulate the &#x60;count&#x60; and &#x60;offset&#x60; parameters in conjunction with the &#x60;total_transactions&#x60; response body field to fetch all available transactions. Data returned by &#x60;/processor/transactions/get&#x60; will be the data available for the processor token as of the most recent successful check for new transactions. Plaid typically checks for new data multiple times a day, but these checks may occur less frequently, such as once a day, depending on the institution. To force Plaid to check for new transactions, you can use the &#x60;/processor/transactions/refresh&#x60; endpoint. Note that data may not be immediately available to &#x60;/processor/transactions/get&#x60;. Plaid will begin to prepare transactions data upon Item link, if Link was initialized with &#x60;transactions&#x60;, or upon the first call to &#x60;/processor/transactions/get&#x60;, if it wasn&#39;t. If no transaction history is ready when &#x60;/processor/transactions/get&#x60; is called, it will return a &#x60;PRODUCT_NOT_READY&#x60; error. To receive Transactions webhooks for a processor token, set its webhook URL via the [&#x60;/processor/token/webhook/update&#x60;](plaid.com/docs/api/processor-partners/#processortokenwebhookupdate) endpoint. @param processor_transactions_get_request [ProcessorTransactionsGetRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorTransactionsGetResponse, Integer, Hash)>] ProcessorTransactionsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 11652
def processor_transactions_get_with_http_info(processor_transactions_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_transactions_get ...'
  end
  # verify the required parameter 'processor_transactions_get_request' is set
  if @api_client.config.client_side_validation && processor_transactions_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_transactions_get_request' when calling PlaidApi.processor_transactions_get"
  end
  # resource path
  local_var_path = '/processor/transactions/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_transactions_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorTransactionsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_transactions_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_transactions_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_transactions_recurring_get(processor_transactions_recurring_get_request, opts = {}) click to toggle source

Fetch recurring transaction streams The ‘/processor/transactions/recurring/get` endpoint allows developers to receive a summary of the recurring outflow and inflow streams (expenses and deposits) from a user’s checking, savings or credit card accounts. Additionally, Plaid provides key insights about each recurring stream including the category, merchant, last amount, and more. Developers can use these insights to build tools and experiences that help their users better manage cash flow, monitor subscriptions, reduce spend, and stay on track with bill payments. This endpoint is offered as an add-on to Transactions. To request access to this endpoint, submit a [product access request](dashboard.plaid.com/team/products) or contact your Plaid account manager. This endpoint can only be called on a processor token that has already been initialized with Transactions (either during Link, by specifying it in `/link/token/create`; or after Link, by calling `/processor/transactions/get` or `/processor/transactions/sync`). Once all historical transactions have been fetched, call `/processor/transactions/recurring/get` to receive the Recurring Transactions streams and subscribe to the [`RECURRING_TRANSACTIONS_UPDATE`](plaid.com/docs/api/products/transactions/#recurring_transactions_update) webhook. To know when historical transactions have been fetched, if you are using `/processor/transactions/sync` listen for the [`SYNC_UPDATES_AVAILABLE`](plaid.com/docs/api/products/transactions/#SyncUpdatesAvailableWebhook-historical-update-complete) webhook and check that the `historical_update_complete` field in the payload is `true`. If using `/processor/transactions/get`, listen for the [`HISTORICAL_UPDATE`](plaid.com/docs/api/products/transactions/#historical_update) webhook. After the initial call, you can call `/processor/transactions/recurring/get` endpoint at any point in the future to retrieve the latest summary of recurring streams. Listen to the [`RECURRING_TRANSACTIONS_UPDATE`](plaid.com/docs/api/products/transactions/#recurring_transactions_update) webhook to be notified when new updates are available. To receive Transactions webhooks for a processor token, set its webhook URL via the [`/processor/token/webhook/update`](plaid.com/docs/api/processor-partners/#processortokenwebhookupdate) endpoint. @param processor_transactions_recurring_get_request [ProcessorTransactionsRecurringGetRequest] @param [Hash] opts the optional parameters @return [ProcessorTransactionsRecurringGetResponse]

# File lib/plaid/api/plaid_api.rb, line 11710
def processor_transactions_recurring_get(processor_transactions_recurring_get_request, opts = {})
  data, _status_code, _headers = processor_transactions_recurring_get_with_http_info(processor_transactions_recurring_get_request, opts)
  data
end
processor_transactions_recurring_get_with_http_info(processor_transactions_recurring_get_request, opts = {}) click to toggle source

Fetch recurring transaction streams The &#x60;/processor/transactions/recurring/get&#x60; endpoint allows developers to receive a summary of the recurring outflow and inflow streams (expenses and deposits) from a user’s checking, savings or credit card accounts. Additionally, Plaid provides key insights about each recurring stream including the category, merchant, last amount, and more. Developers can use these insights to build tools and experiences that help their users better manage cash flow, monitor subscriptions, reduce spend, and stay on track with bill payments. This endpoint is offered as an add-on to Transactions. To request access to this endpoint, submit a [product access request](dashboard.plaid.com/team/products) or contact your Plaid account manager. This endpoint can only be called on a processor token that has already been initialized with Transactions (either during Link, by specifying it in &#x60;/link/token/create&#x60;; or after Link, by calling &#x60;/processor/transactions/get&#x60; or &#x60;/processor/transactions/sync&#x60;). Once all historical transactions have been fetched, call &#x60;/processor/transactions/recurring/get&#x60; to receive the Recurring Transactions streams and subscribe to the [&#x60;RECURRING_TRANSACTIONS_UPDATE&#x60;](plaid.com/docs/api/products/transactions/#recurring_transactions_update) webhook. To know when historical transactions have been fetched, if you are using &#x60;/processor/transactions/sync&#x60; listen for the [&#x60;SYNC_UPDATES_AVAILABLE&#x60;](plaid.com/docs/api/products/transactions/#SyncUpdatesAvailableWebhook-historical-update-complete) webhook and check that the &#x60;historical_update_complete&#x60; field in the payload is &#x60;true&#x60;. If using &#x60;/processor/transactions/get&#x60;, listen for the [&#x60;HISTORICAL_UPDATE&#x60;](plaid.com/docs/api/products/transactions/#historical_update) webhook. After the initial call, you can call &#x60;/processor/transactions/recurring/get&#x60; endpoint at any point in the future to retrieve the latest summary of recurring streams. Listen to the [&#x60;RECURRING_TRANSACTIONS_UPDATE&#x60;](plaid.com/docs/api/products/transactions/#recurring_transactions_update) webhook to be notified when new updates are available. To receive Transactions webhooks for a processor token, set its webhook URL via the [&#x60;/processor/token/webhook/update&#x60;](plaid.com/docs/api/processor-partners/#processortokenwebhookupdate) endpoint. @param processor_transactions_recurring_get_request [ProcessorTransactionsRecurringGetRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorTransactionsRecurringGetResponse, Integer, Hash)>] ProcessorTransactionsRecurringGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 11720
def processor_transactions_recurring_get_with_http_info(processor_transactions_recurring_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_transactions_recurring_get ...'
  end
  # verify the required parameter 'processor_transactions_recurring_get_request' is set
  if @api_client.config.client_side_validation && processor_transactions_recurring_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_transactions_recurring_get_request' when calling PlaidApi.processor_transactions_recurring_get"
  end
  # resource path
  local_var_path = '/processor/transactions/recurring/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_transactions_recurring_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorTransactionsRecurringGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_transactions_recurring_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_transactions_recurring_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_transactions_refresh(processor_transactions_refresh_request, opts = {}) click to toggle source

Refresh transaction data ‘/processor/transactions/refresh` is an optional endpoint for users of the Transactions product. It initiates an on-demand extraction to fetch the newest transactions for a processor token. This on-demand extraction takes place in addition to the periodic extractions that automatically occur one or more times per day for any Transactions-enabled processor token. If changes to transactions are discovered after calling `/processor/transactions/refresh`, Plaid will fire a webhook: for `/transactions/sync` users, [`SYNC_UPDATES_AVAILABLE`](plaid.com/docs/api/products/transactions/#sync_updates_available) will be fired if there are any transactions updated, added, or removed. For users of both `/processor/transactions/sync` and `/processor/transactions/get`, [`TRANSACTIONS_REMOVED`](plaid.com/docs/api/products/transactions/#transactions_removed) will be fired if any removed transactions are detected, and [`DEFAULT_UPDATE`](plaid.com/docs/api/products/transactions/#default_update) will be fired if any new transactions are detected. New transactions can be fetched by calling `/processor/transactions/get` or `/processor/transactions/sync`. Note that the `/transactions/refresh` endpoint is not supported for Capital One (`ins_128026`) non-depository accounts and will result in a `PRODUCTS_NOT_SUPPORTED` error if called on an Item that contains only non-depository accounts from that institution. As this endpoint triggers a synchronous request for fresh data, latency may be higher than for other Plaid endpoints (typically less than 10 seconds, but occasionally up to 30 seconds or more); if you encounter errors, you may find it necessary to adjust your timeout period when making requests. `/processor/transactions/refresh` is offered as an add-on to Transactions and has a separate [fee model](/docs/account/billing/#per-request-flat-fee). To request access to this endpoint, submit a [product access request](dashboard.plaid.com/team/products) or contact your Plaid account manager. @param processor_transactions_refresh_request [ProcessorTransactionsRefreshRequest] @param [Hash] opts the optional parameters @return [ProcessorTransactionsRefreshResponse]

# File lib/plaid/api/plaid_api.rb, line 11778
def processor_transactions_refresh(processor_transactions_refresh_request, opts = {})
  data, _status_code, _headers = processor_transactions_refresh_with_http_info(processor_transactions_refresh_request, opts)
  data
end
processor_transactions_refresh_with_http_info(processor_transactions_refresh_request, opts = {}) click to toggle source

Refresh transaction data &#x60;/processor/transactions/refresh&#x60; is an optional endpoint for users of the Transactions product. It initiates an on-demand extraction to fetch the newest transactions for a processor token. This on-demand extraction takes place in addition to the periodic extractions that automatically occur one or more times per day for any Transactions-enabled processor token. If changes to transactions are discovered after calling &#x60;/processor/transactions/refresh&#x60;, Plaid will fire a webhook: for &#x60;/transactions/sync&#x60; users, [&#x60;SYNC_UPDATES_AVAILABLE&#x60;](plaid.com/docs/api/products/transactions/#sync_updates_available) will be fired if there are any transactions updated, added, or removed. For users of both &#x60;/processor/transactions/sync&#x60; and &#x60;/processor/transactions/get&#x60;, [&#x60;TRANSACTIONS_REMOVED&#x60;](plaid.com/docs/api/products/transactions/#transactions_removed) will be fired if any removed transactions are detected, and [&#x60;DEFAULT_UPDATE&#x60;](plaid.com/docs/api/products/transactions/#default_update) will be fired if any new transactions are detected. New transactions can be fetched by calling &#x60;/processor/transactions/get&#x60; or &#x60;/processor/transactions/sync&#x60;. Note that the &#x60;/transactions/refresh&#x60; endpoint is not supported for Capital One (&#x60;ins_128026&#x60;) non-depository accounts and will result in a &#x60;PRODUCTS_NOT_SUPPORTED&#x60; error if called on an Item that contains only non-depository accounts from that institution. As this endpoint triggers a synchronous request for fresh data, latency may be higher than for other Plaid endpoints (typically less than 10 seconds, but occasionally up to 30 seconds or more); if you encounter errors, you may find it necessary to adjust your timeout period when making requests. &#x60;/processor/transactions/refresh&#x60; is offered as an add-on to Transactions and has a separate [fee model](/docs/account/billing/#per-request-flat-fee). To request access to this endpoint, submit a [product access request](dashboard.plaid.com/team/products) or contact your Plaid account manager. @param processor_transactions_refresh_request [ProcessorTransactionsRefreshRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorTransactionsRefreshResponse, Integer, Hash)>] ProcessorTransactionsRefreshResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 11788
def processor_transactions_refresh_with_http_info(processor_transactions_refresh_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_transactions_refresh ...'
  end
  # verify the required parameter 'processor_transactions_refresh_request' is set
  if @api_client.config.client_side_validation && processor_transactions_refresh_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_transactions_refresh_request' when calling PlaidApi.processor_transactions_refresh"
  end
  # resource path
  local_var_path = '/processor/transactions/refresh'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_transactions_refresh_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorTransactionsRefreshResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_transactions_refresh",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_transactions_refresh\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
processor_transactions_sync(processor_transactions_sync_request, opts = {}) click to toggle source

Get incremental transaction updates on a processor token This endpoint replaces ‘/processor/transactions/get` and its associated webhooks for most common use-cases. The `/processor/transactions/sync` endpoint allows developers to subscribe to all transactions associated with a processor token and get updates synchronously in a stream-like manner, using a cursor to track which updates have already been seen. `/processor/transactions/sync` provides the same functionality as `/processor/transactions/get` and can be used instead of `/processor/transactions/get` to simplify the process of tracking transactions updates. This endpoint provides user-authorized transaction data for `credit`, `depository`, and some loan-type accounts (only those with account subtype `student`; coverage may be limited). For transaction history from `investments` accounts, use `/investments/transactions/get` instead. Returned transactions data is grouped into three types of update, indicating whether the transaction was added, removed, or modified since the last call to the API. In the first call to `/processor/transactions/sync` for a processor token, the endpoint will return all historical transactions data associated with that processor token up until the time of the API call (as "adds"), which then generates a `next_cursor` for that processor token. In subsequent calls, send the `next_cursor` to receive only the changes that have occurred since the previous call. Due to the potentially large number of transactions associated with a processor token, results are paginated. The `has_more` field specifies if additional calls are necessary to fetch all available transaction updates. Call `/processor/transactions/sync` with the new cursor, pulling all updates, until `has_more` is `false`. When retrieving paginated updates, track both the `next_cursor` from the latest response and the original cursor from the first call in which `has_more` was `true`; if a call to `/processor/transactions/sync` fails when retrieving a paginated update, which can occur as a result of the [`TRANSACTIONS_SYNC_MUTATION_DURING_PAGINATION`](plaid.com/docs/errors/transactions/#transactions_sync_mutation_during_pagination) error, the entire pagination request loop must be restarted beginning with the cursor for the first page of the update, rather than retrying only the single request that failed. Whenever new or updated transaction data becomes available, `/processor/transactions/sync` will provide these updates. Plaid typically checks for new data multiple times a day, but these checks may occur less frequently, such as once a day, depending on the institution. To force Plaid to check for new transactions, use the `/processor/transactions/refresh` endpoint. Note that for newly created processor tokens, data may not be immediately available to `/processor/transactions/sync`. Plaid begins preparing transactions data when the corresponding Item is created, but the process can take anywhere from a few seconds to several minutes to complete, depending on the number of transactions available. To receive Transactions webhooks for a processor token, set its webhook URL via the [`/processor/token/webhook/update`](plaid.com/docs/api/processor-partners/#processortokenwebhookupdate) endpoint. @param processor_transactions_sync_request [ProcessorTransactionsSyncRequest] @param [Hash] opts the optional parameters @return [ProcessorTransactionsSyncResponse]

# File lib/plaid/api/plaid_api.rb, line 11846
def processor_transactions_sync(processor_transactions_sync_request, opts = {})
  data, _status_code, _headers = processor_transactions_sync_with_http_info(processor_transactions_sync_request, opts)
  data
end
processor_transactions_sync_with_http_info(processor_transactions_sync_request, opts = {}) click to toggle source

Get incremental transaction updates on a processor token This endpoint replaces &#x60;/processor/transactions/get&#x60; and its associated webhooks for most common use-cases. The &#x60;/processor/transactions/sync&#x60; endpoint allows developers to subscribe to all transactions associated with a processor token and get updates synchronously in a stream-like manner, using a cursor to track which updates have already been seen. &#x60;/processor/transactions/sync&#x60; provides the same functionality as &#x60;/processor/transactions/get&#x60; and can be used instead of &#x60;/processor/transactions/get&#x60; to simplify the process of tracking transactions updates. This endpoint provides user-authorized transaction data for &#x60;credit&#x60;, &#x60;depository&#x60;, and some loan-type accounts (only those with account subtype &#x60;student&#x60;; coverage may be limited). For transaction history from &#x60;investments&#x60; accounts, use &#x60;/investments/transactions/get&#x60; instead. Returned transactions data is grouped into three types of update, indicating whether the transaction was added, removed, or modified since the last call to the API. In the first call to &#x60;/processor/transactions/sync&#x60; for a processor token, the endpoint will return all historical transactions data associated with that processor token up until the time of the API call (as "adds&quot;), which then generates a &#x60;next_cursor&#x60; for that processor token. In subsequent calls, send the &#x60;next_cursor&#x60; to receive only the changes that have occurred since the previous call. Due to the potentially large number of transactions associated with a processor token, results are paginated. The &#x60;has_more&#x60; field specifies if additional calls are necessary to fetch all available transaction updates. Call &#x60;/processor/transactions/sync&#x60; with the new cursor, pulling all updates, until &#x60;has_more&#x60; is &#x60;false&#x60;. When retrieving paginated updates, track both the &#x60;next_cursor&#x60; from the latest response and the original cursor from the first call in which &#x60;has_more&#x60; was &#x60;true&#x60;; if a call to &#x60;/processor/transactions/sync&#x60; fails when retrieving a paginated update, which can occur as a result of the [&#x60;TRANSACTIONS_SYNC_MUTATION_DURING_PAGINATION&#x60;](plaid.com/docs/errors/transactions/#transactions_sync_mutation_during_pagination) error, the entire pagination request loop must be restarted beginning with the cursor for the first page of the update, rather than retrying only the single request that failed. Whenever new or updated transaction data becomes available, &#x60;/processor/transactions/sync&#x60; will provide these updates. Plaid typically checks for new data multiple times a day, but these checks may occur less frequently, such as once a day, depending on the institution. To force Plaid to check for new transactions, use the &#x60;/processor/transactions/refresh&#x60; endpoint. Note that for newly created processor tokens, data may not be immediately available to &#x60;/processor/transactions/sync&#x60;. Plaid begins preparing transactions data when the corresponding Item is created, but the process can take anywhere from a few seconds to several minutes to complete, depending on the number of transactions available. To receive Transactions webhooks for a processor token, set its webhook URL via the [&#x60;/processor/token/webhook/update&#x60;](plaid.com/docs/api/processor-partners/#processortokenwebhookupdate) endpoint. @param processor_transactions_sync_request [ProcessorTransactionsSyncRequest] @param [Hash] opts the optional parameters @return [Array<(ProcessorTransactionsSyncResponse, Integer, Hash)>] ProcessorTransactionsSyncResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 11856
def processor_transactions_sync_with_http_info(processor_transactions_sync_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.processor_transactions_sync ...'
  end
  # verify the required parameter 'processor_transactions_sync_request' is set
  if @api_client.config.client_side_validation && processor_transactions_sync_request.nil?
    fail ArgumentError, "Missing the required parameter 'processor_transactions_sync_request' when calling PlaidApi.processor_transactions_sync"
  end
  # resource path
  local_var_path = '/processor/transactions/sync'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(processor_transactions_sync_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProcessorTransactionsSyncResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.processor_transactions_sync",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#processor_transactions_sync\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
profile_get(profile_get_request, opts = {}) click to toggle source

Retrieve a Profile Returns user permissioned profile data including identity and item access tokens. @param profile_get_request [ProfileGetRequest] @param [Hash] opts the optional parameters @return [ProfileGetResponse]

# File lib/plaid/api/plaid_api.rb, line 11914
def profile_get(profile_get_request, opts = {})
  data, _status_code, _headers = profile_get_with_http_info(profile_get_request, opts)
  data
end
profile_get_with_http_info(profile_get_request, opts = {}) click to toggle source

Retrieve a Profile Returns user permissioned profile data including identity and item access tokens. @param profile_get_request [ProfileGetRequest] @param [Hash] opts the optional parameters @return [Array<(ProfileGetResponse, Integer, Hash)>] ProfileGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 11924
def profile_get_with_http_info(profile_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.profile_get ...'
  end
  # verify the required parameter 'profile_get_request' is set
  if @api_client.config.client_side_validation && profile_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'profile_get_request' when calling PlaidApi.profile_get"
  end
  # resource path
  local_var_path = '/profile/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(profile_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProfileGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.profile_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#profile_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
profile_network_status_get(profile_network_status_get_request, opts = {}) click to toggle source

Check a user’s Plaid Network status The ‘/profile/network_status/get` endpoint can be used to check whether Plaid has a matching profile for the user. @param profile_network_status_get_request [ProfileNetworkStatusGetRequest] @param [Hash] opts the optional parameters @return [ProfileNetworkStatusGetResponse]

# File lib/plaid/api/plaid_api.rb, line 11982
def profile_network_status_get(profile_network_status_get_request, opts = {})
  data, _status_code, _headers = profile_network_status_get_with_http_info(profile_network_status_get_request, opts)
  data
end
profile_network_status_get_with_http_info(profile_network_status_get_request, opts = {}) click to toggle source

Check a user&#39;s Plaid Network status The &#x60;/profile/network_status/get&#x60; endpoint can be used to check whether Plaid has a matching profile for the user. @param profile_network_status_get_request [ProfileNetworkStatusGetRequest] @param [Hash] opts the optional parameters @return [Array<(ProfileNetworkStatusGetResponse, Integer, Hash)>] ProfileNetworkStatusGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 11992
def profile_network_status_get_with_http_info(profile_network_status_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.profile_network_status_get ...'
  end
  # verify the required parameter 'profile_network_status_get_request' is set
  if @api_client.config.client_side_validation && profile_network_status_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'profile_network_status_get_request' when calling PlaidApi.profile_network_status_get"
  end
  # resource path
  local_var_path = '/profile/network_status/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(profile_network_status_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'ProfileNetworkStatusGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.profile_network_status_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#profile_network_status_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_bank_income_fire_webhook(sandbox_bank_income_fire_webhook_request, opts = {}) click to toggle source

Manually fire a bank income webhook in sandbox Use the ‘/sandbox/bank_income/fire_webhook` endpoint to manually trigger a Bank Income webhook in the Sandbox environment. @param sandbox_bank_income_fire_webhook_request [SandboxBankIncomeFireWebhookRequest] @param [Hash] opts the optional parameters @return [SandboxBankIncomeFireWebhookResponse]

# File lib/plaid/api/plaid_api.rb, line 12050
def sandbox_bank_income_fire_webhook(sandbox_bank_income_fire_webhook_request, opts = {})
  data, _status_code, _headers = sandbox_bank_income_fire_webhook_with_http_info(sandbox_bank_income_fire_webhook_request, opts)
  data
end
sandbox_bank_income_fire_webhook_with_http_info(sandbox_bank_income_fire_webhook_request, opts = {}) click to toggle source

Manually fire a bank income webhook in sandbox Use the &#x60;/sandbox/bank_income/fire_webhook&#x60; endpoint to manually trigger a Bank Income webhook in the Sandbox environment. @param sandbox_bank_income_fire_webhook_request [SandboxBankIncomeFireWebhookRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxBankIncomeFireWebhookResponse, Integer, Hash)>] SandboxBankIncomeFireWebhookResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 12060
def sandbox_bank_income_fire_webhook_with_http_info(sandbox_bank_income_fire_webhook_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_bank_income_fire_webhook ...'
  end
  # verify the required parameter 'sandbox_bank_income_fire_webhook_request' is set
  if @api_client.config.client_side_validation && sandbox_bank_income_fire_webhook_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_bank_income_fire_webhook_request' when calling PlaidApi.sandbox_bank_income_fire_webhook"
  end
  # resource path
  local_var_path = '/sandbox/bank_income/fire_webhook'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_bank_income_fire_webhook_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxBankIncomeFireWebhookResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_bank_income_fire_webhook",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_bank_income_fire_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_bank_transfer_fire_webhook(sandbox_bank_transfer_fire_webhook_request, opts = {}) click to toggle source

Manually fire a Bank Transfer webhook Use the ‘/sandbox/bank_transfer/fire_webhook` endpoint to manually trigger a Bank Transfers webhook in the Sandbox environment. @param sandbox_bank_transfer_fire_webhook_request [SandboxBankTransferFireWebhookRequest] @param [Hash] opts the optional parameters @return [SandboxBankTransferFireWebhookResponse]

# File lib/plaid/api/plaid_api.rb, line 12118
def sandbox_bank_transfer_fire_webhook(sandbox_bank_transfer_fire_webhook_request, opts = {})
  data, _status_code, _headers = sandbox_bank_transfer_fire_webhook_with_http_info(sandbox_bank_transfer_fire_webhook_request, opts)
  data
end
sandbox_bank_transfer_fire_webhook_with_http_info(sandbox_bank_transfer_fire_webhook_request, opts = {}) click to toggle source

Manually fire a Bank Transfer webhook Use the &#x60;/sandbox/bank_transfer/fire_webhook&#x60; endpoint to manually trigger a Bank Transfers webhook in the Sandbox environment. @param sandbox_bank_transfer_fire_webhook_request [SandboxBankTransferFireWebhookRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxBankTransferFireWebhookResponse, Integer, Hash)>] SandboxBankTransferFireWebhookResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 12128
def sandbox_bank_transfer_fire_webhook_with_http_info(sandbox_bank_transfer_fire_webhook_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_bank_transfer_fire_webhook ...'
  end
  # verify the required parameter 'sandbox_bank_transfer_fire_webhook_request' is set
  if @api_client.config.client_side_validation && sandbox_bank_transfer_fire_webhook_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_bank_transfer_fire_webhook_request' when calling PlaidApi.sandbox_bank_transfer_fire_webhook"
  end
  # resource path
  local_var_path = '/sandbox/bank_transfer/fire_webhook'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_bank_transfer_fire_webhook_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxBankTransferFireWebhookResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_bank_transfer_fire_webhook",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_bank_transfer_fire_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_bank_transfer_simulate(sandbox_bank_transfer_simulate_request, opts = {}) click to toggle source

Simulate a bank transfer event in Sandbox Use the ‘/sandbox/bank_transfer/simulate` endpoint to simulate a bank transfer event in the Sandbox environment. Note that while an event will be simulated and will appear when using endpoints such as `/bank_transfer/event/sync` or `/bank_transfer/event/list`, no transactions will actually take place and funds will not move between accounts, even within the Sandbox. @param sandbox_bank_transfer_simulate_request [SandboxBankTransferSimulateRequest] @param [Hash] opts the optional parameters @return [SandboxBankTransferSimulateResponse]

# File lib/plaid/api/plaid_api.rb, line 12186
def sandbox_bank_transfer_simulate(sandbox_bank_transfer_simulate_request, opts = {})
  data, _status_code, _headers = sandbox_bank_transfer_simulate_with_http_info(sandbox_bank_transfer_simulate_request, opts)
  data
end
sandbox_bank_transfer_simulate_with_http_info(sandbox_bank_transfer_simulate_request, opts = {}) click to toggle source

Simulate a bank transfer event in Sandbox Use the &#x60;/sandbox/bank_transfer/simulate&#x60; endpoint to simulate a bank transfer event in the Sandbox environment. Note that while an event will be simulated and will appear when using endpoints such as &#x60;/bank_transfer/event/sync&#x60; or &#x60;/bank_transfer/event/list&#x60;, no transactions will actually take place and funds will not move between accounts, even within the Sandbox. @param sandbox_bank_transfer_simulate_request [SandboxBankTransferSimulateRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxBankTransferSimulateResponse, Integer, Hash)>] SandboxBankTransferSimulateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 12196
def sandbox_bank_transfer_simulate_with_http_info(sandbox_bank_transfer_simulate_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_bank_transfer_simulate ...'
  end
  # verify the required parameter 'sandbox_bank_transfer_simulate_request' is set
  if @api_client.config.client_side_validation && sandbox_bank_transfer_simulate_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_bank_transfer_simulate_request' when calling PlaidApi.sandbox_bank_transfer_simulate"
  end
  # resource path
  local_var_path = '/sandbox/bank_transfer/simulate'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_bank_transfer_simulate_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxBankTransferSimulateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_bank_transfer_simulate",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_bank_transfer_simulate\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_income_fire_webhook(sandbox_income_fire_webhook_request, opts = {}) click to toggle source

Manually fire an Income webhook Use the ‘/sandbox/income/fire_webhook` endpoint to manually trigger a Payroll or Document Income webhook in the Sandbox environment. @param sandbox_income_fire_webhook_request [SandboxIncomeFireWebhookRequest] @param [Hash] opts the optional parameters @return [SandboxIncomeFireWebhookResponse]

# File lib/plaid/api/plaid_api.rb, line 12254
def sandbox_income_fire_webhook(sandbox_income_fire_webhook_request, opts = {})
  data, _status_code, _headers = sandbox_income_fire_webhook_with_http_info(sandbox_income_fire_webhook_request, opts)
  data
end
sandbox_income_fire_webhook_with_http_info(sandbox_income_fire_webhook_request, opts = {}) click to toggle source

Manually fire an Income webhook Use the &#x60;/sandbox/income/fire_webhook&#x60; endpoint to manually trigger a Payroll or Document Income webhook in the Sandbox environment. @param sandbox_income_fire_webhook_request [SandboxIncomeFireWebhookRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxIncomeFireWebhookResponse, Integer, Hash)>] SandboxIncomeFireWebhookResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 12264
def sandbox_income_fire_webhook_with_http_info(sandbox_income_fire_webhook_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_income_fire_webhook ...'
  end
  # verify the required parameter 'sandbox_income_fire_webhook_request' is set
  if @api_client.config.client_side_validation && sandbox_income_fire_webhook_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_income_fire_webhook_request' when calling PlaidApi.sandbox_income_fire_webhook"
  end
  # resource path
  local_var_path = '/sandbox/income/fire_webhook'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_income_fire_webhook_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxIncomeFireWebhookResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_income_fire_webhook",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_income_fire_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_item_fire_webhook(sandbox_item_fire_webhook_request, opts = {}) click to toggle source

Fire a test webhook The ‘/sandbox/item/fire_webhook` endpoint is used to test that code correctly handles webhooks. This endpoint can trigger the following webhooks: `DEFAULT_UPDATE`: Webhook to be fired for a given Sandbox Item simulating a default update event for the respective product as specified with the `webhook_type` in the request body. Valid Sandbox `DEFAULT_UPDATE` webhook types include: `AUTH`, `IDENTITY`, `TRANSACTIONS`, `INVESTMENTS_TRANSACTIONS`, `LIABILITIES`, `HOLDINGS`. If the Item does not support the product, a `SANDBOX_PRODUCT_NOT_ENABLED` error will result. `NEW_ACCOUNTS_AVAILABLE`: Fired to indicate that a new account is available on the Item and you can launch update mode to request access to it. `SMS_MICRODEPOSITS_VERIFICATION`: Fired when a given same day micro-deposit item is verified via SMS verification. `LOGIN_REPAIRED`: Fired when an Item recovers from the `ITEM_LOGIN_REQUIRED` without the user going through update mode in your app. `PENDING_DISCONNECT`: Fired when an Item will stop working in the near future (e.g. due to a planned bank migration) and must be sent through update mode to continue working. `RECURRING_TRANSACTIONS_UPDATE`: Recurring Transactions webhook to be fired for a given Sandbox Item. If the Item does not support Recurring Transactions, a `SANDBOX_PRODUCT_NOT_ENABLED` error will result. `SYNC_UPDATES_AVAILABLE`: Transactions webhook to be fired for a given Sandbox Item. If the Item does not support Transactions, a `SANDBOX_PRODUCT_NOT_ENABLED` error will result. `PRODUCT_READY`: Assets webhook to be fired when a given asset report has been successfully generated. If the Item does not support Assets, a `SANDBOX_PRODUCT_NOT_ENABLED` error will result. `ERROR`: Assets webhook to be fired when asset report generation has failed. If the Item does not support Assets, a `SANDBOX_PRODUCT_NOT_ENABLED` error will result. Note that this endpoint is provided for developer ease-of-use and is not required for testing webhooks; webhooks will also fire in Sandbox under the same conditions that they would in Production (except for webhooks of type `TRANSFER`). @param sandbox_item_fire_webhook_request [SandboxItemFireWebhookRequest] @param [Hash] opts the optional parameters @return [SandboxItemFireWebhookResponse]

# File lib/plaid/api/plaid_api.rb, line 12322
def sandbox_item_fire_webhook(sandbox_item_fire_webhook_request, opts = {})
  data, _status_code, _headers = sandbox_item_fire_webhook_with_http_info(sandbox_item_fire_webhook_request, opts)
  data
end
sandbox_item_fire_webhook_with_http_info(sandbox_item_fire_webhook_request, opts = {}) click to toggle source

Fire a test webhook The &#x60;/sandbox/item/fire_webhook&#x60; endpoint is used to test that code correctly handles webhooks. This endpoint can trigger the following webhooks: &#x60;DEFAULT_UPDATE&#x60;: Webhook to be fired for a given Sandbox Item simulating a default update event for the respective product as specified with the &#x60;webhook_type&#x60; in the request body. Valid Sandbox &#x60;DEFAULT_UPDATE&#x60; webhook types include: &#x60;AUTH&#x60;, &#x60;IDENTITY&#x60;, &#x60;TRANSACTIONS&#x60;, &#x60;INVESTMENTS_TRANSACTIONS&#x60;, &#x60;LIABILITIES&#x60;, &#x60;HOLDINGS&#x60;. If the Item does not support the product, a &#x60;SANDBOX_PRODUCT_NOT_ENABLED&#x60; error will result. &#x60;NEW_ACCOUNTS_AVAILABLE&#x60;: Fired to indicate that a new account is available on the Item and you can launch update mode to request access to it. &#x60;SMS_MICRODEPOSITS_VERIFICATION&#x60;: Fired when a given same day micro-deposit item is verified via SMS verification. &#x60;LOGIN_REPAIRED&#x60;: Fired when an Item recovers from the &#x60;ITEM_LOGIN_REQUIRED&#x60; without the user going through update mode in your app. &#x60;PENDING_DISCONNECT&#x60;: Fired when an Item will stop working in the near future (e.g. due to a planned bank migration) and must be sent through update mode to continue working. &#x60;RECURRING_TRANSACTIONS_UPDATE&#x60;: Recurring Transactions webhook to be fired for a given Sandbox Item. If the Item does not support Recurring Transactions, a &#x60;SANDBOX_PRODUCT_NOT_ENABLED&#x60; error will result. &#x60;SYNC_UPDATES_AVAILABLE&#x60;: Transactions webhook to be fired for a given Sandbox Item. If the Item does not support Transactions, a &#x60;SANDBOX_PRODUCT_NOT_ENABLED&#x60; error will result. &#x60;PRODUCT_READY&#x60;: Assets webhook to be fired when a given asset report has been successfully generated. If the Item does not support Assets, a &#x60;SANDBOX_PRODUCT_NOT_ENABLED&#x60; error will result. &#x60;ERROR&#x60;: Assets webhook to be fired when asset report generation has failed. If the Item does not support Assets, a &#x60;SANDBOX_PRODUCT_NOT_ENABLED&#x60; error will result. Note that this endpoint is provided for developer ease-of-use and is not required for testing webhooks; webhooks will also fire in Sandbox under the same conditions that they would in Production (except for webhooks of type &#x60;TRANSFER&#x60;). @param sandbox_item_fire_webhook_request [SandboxItemFireWebhookRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxItemFireWebhookResponse, Integer, Hash)>] SandboxItemFireWebhookResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 12332
def sandbox_item_fire_webhook_with_http_info(sandbox_item_fire_webhook_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_item_fire_webhook ...'
  end
  # verify the required parameter 'sandbox_item_fire_webhook_request' is set
  if @api_client.config.client_side_validation && sandbox_item_fire_webhook_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_item_fire_webhook_request' when calling PlaidApi.sandbox_item_fire_webhook"
  end
  # resource path
  local_var_path = '/sandbox/item/fire_webhook'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_item_fire_webhook_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxItemFireWebhookResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_item_fire_webhook",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_item_fire_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_item_reset_login(sandbox_item_reset_login_request, opts = {}) click to toggle source

Force a Sandbox Item into an error state ‘/sandbox/item/reset_login/` forces an Item into an `ITEM_LOGIN_REQUIRED` state in order to simulate an Item whose login is no longer valid. This makes it easy to test Link’s [update mode](plaid.com/docs/link/update-mode) flow in the Sandbox environment. After calling ‘/sandbox/item/reset_login`, You can then use Plaid Link update mode to restore the Item to a good state. An `ITEM_LOGIN_REQUIRED` webhook will also be fired after a call to this endpoint, if one is associated with the Item. In the Sandbox, Items will transition to an `ITEM_LOGIN_REQUIRED` error state automatically after 30 days, even if this endpoint is not called. @param sandbox_item_reset_login_request [SandboxItemResetLoginRequest] @param [Hash] opts the optional parameters @return [SandboxItemResetLoginResponse]

# File lib/plaid/api/plaid_api.rb, line 12390
def sandbox_item_reset_login(sandbox_item_reset_login_request, opts = {})
  data, _status_code, _headers = sandbox_item_reset_login_with_http_info(sandbox_item_reset_login_request, opts)
  data
end
sandbox_item_reset_login_with_http_info(sandbox_item_reset_login_request, opts = {}) click to toggle source

Force a Sandbox Item into an error state &#x60;/sandbox/item/reset_login/&#x60; forces an Item into an &#x60;ITEM_LOGIN_REQUIRED&#x60; state in order to simulate an Item whose login is no longer valid. This makes it easy to test Link&#39;s [update mode](plaid.com/docs/link/update-mode) flow in the Sandbox environment. After calling &#x60;/sandbox/item/reset_login&#x60;, You can then use Plaid Link update mode to restore the Item to a good state. An &#x60;ITEM_LOGIN_REQUIRED&#x60; webhook will also be fired after a call to this endpoint, if one is associated with the Item. In the Sandbox, Items will transition to an &#x60;ITEM_LOGIN_REQUIRED&#x60; error state automatically after 30 days, even if this endpoint is not called. @param sandbox_item_reset_login_request [SandboxItemResetLoginRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxItemResetLoginResponse, Integer, Hash)>] SandboxItemResetLoginResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 12400
def sandbox_item_reset_login_with_http_info(sandbox_item_reset_login_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_item_reset_login ...'
  end
  # verify the required parameter 'sandbox_item_reset_login_request' is set
  if @api_client.config.client_side_validation && sandbox_item_reset_login_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_item_reset_login_request' when calling PlaidApi.sandbox_item_reset_login"
  end
  # resource path
  local_var_path = '/sandbox/item/reset_login'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_item_reset_login_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxItemResetLoginResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_item_reset_login",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_item_reset_login\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_item_set_verification_status(sandbox_item_set_verification_status_request, opts = {}) click to toggle source

Set verification status for Sandbox account The ‘/sandbox/item/set_verification_status` endpoint can be used to change the verification status of an Item in in the Sandbox in order to simulate the Automated Micro-deposit flow. For more information on testing Automated Micro-deposits in Sandbox, see [Auth full coverage testing](plaid.com/docs/auth/coverage/testing#). @param sandbox_item_set_verification_status_request [SandboxItemSetVerificationStatusRequest] @param [Hash] opts the optional parameters @return [SandboxItemSetVerificationStatusResponse]

# File lib/plaid/api/plaid_api.rb, line 12458
def sandbox_item_set_verification_status(sandbox_item_set_verification_status_request, opts = {})
  data, _status_code, _headers = sandbox_item_set_verification_status_with_http_info(sandbox_item_set_verification_status_request, opts)
  data
end
sandbox_item_set_verification_status_with_http_info(sandbox_item_set_verification_status_request, opts = {}) click to toggle source

Set verification status for Sandbox account The &#x60;/sandbox/item/set_verification_status&#x60; endpoint can be used to change the verification status of an Item in in the Sandbox in order to simulate the Automated Micro-deposit flow. For more information on testing Automated Micro-deposits in Sandbox, see [Auth full coverage testing](plaid.com/docs/auth/coverage/testing#). @param sandbox_item_set_verification_status_request [SandboxItemSetVerificationStatusRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxItemSetVerificationStatusResponse, Integer, Hash)>] SandboxItemSetVerificationStatusResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 12468
def sandbox_item_set_verification_status_with_http_info(sandbox_item_set_verification_status_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_item_set_verification_status ...'
  end
  # verify the required parameter 'sandbox_item_set_verification_status_request' is set
  if @api_client.config.client_side_validation && sandbox_item_set_verification_status_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_item_set_verification_status_request' when calling PlaidApi.sandbox_item_set_verification_status"
  end
  # resource path
  local_var_path = '/sandbox/item/set_verification_status'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_item_set_verification_status_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxItemSetVerificationStatusResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_item_set_verification_status",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_item_set_verification_status\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_oauth_select_accounts(sandbox_oauth_select_accounts_request, opts = {}) click to toggle source

Save the selected accounts when connecting to the Platypus Oauth institution Save the selected accounts when connecting to the Platypus Oauth institution @param sandbox_oauth_select_accounts_request [SandboxOauthSelectAccountsRequest] @param [Hash] opts the optional parameters @return [Hash<String, Object>]

# File lib/plaid/api/plaid_api.rb, line 12526
def sandbox_oauth_select_accounts(sandbox_oauth_select_accounts_request, opts = {})
  data, _status_code, _headers = sandbox_oauth_select_accounts_with_http_info(sandbox_oauth_select_accounts_request, opts)
  data
end
sandbox_oauth_select_accounts_with_http_info(sandbox_oauth_select_accounts_request, opts = {}) click to toggle source

Save the selected accounts when connecting to the Platypus Oauth institution Save the selected accounts when connecting to the Platypus Oauth institution @param sandbox_oauth_select_accounts_request [SandboxOauthSelectAccountsRequest] @param [Hash] opts the optional parameters @return [Array<(Hash<String, Object>, Integer, Hash)>] Hash<String, Object> data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 12536
def sandbox_oauth_select_accounts_with_http_info(sandbox_oauth_select_accounts_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_oauth_select_accounts ...'
  end
  # verify the required parameter 'sandbox_oauth_select_accounts_request' is set
  if @api_client.config.client_side_validation && sandbox_oauth_select_accounts_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_oauth_select_accounts_request' when calling PlaidApi.sandbox_oauth_select_accounts"
  end
  # resource path
  local_var_path = '/sandbox/oauth/select_accounts'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_oauth_select_accounts_request)

  # return_type
  return_type = opts[:debug_return_type] || 'Hash<String, Object>'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_oauth_select_accounts",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_oauth_select_accounts\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_payment_profile_reset_login(sandbox_payment_profile_reset_login_request, opts = {}) click to toggle source

Reset the login of a Payment Profile ‘/sandbox/payment_profile/reset_login/` forces a Payment Profile into a state where the login is no longer valid. This makes it easy to test update mode for Payment Profile in the Sandbox environment. After calling `/sandbox/payment_profile/reset_login`, calls to the `/transfer/authorization/create` with the Payment Profile will result in a `decision_rationale` `PAYMENT_PROFILE_LOGIN_REQUIRED`. You can then use update mode for Payment Profile to restore it into a good state. In order to invoke this endpoint, you must first [create a Payment Profile](plaid.com/docs/transfer/add-to-app/#create-a-payment-profile-optional) and [go through the Link flow](plaid.com/docs/transfer/add-to-app/#create-a-link-token). @param sandbox_payment_profile_reset_login_request [SandboxPaymentProfileResetLoginRequest] @param [Hash] opts the optional parameters @return [SandboxPaymentProfileResetLoginResponse]

# File lib/plaid/api/plaid_api.rb, line 12594
def sandbox_payment_profile_reset_login(sandbox_payment_profile_reset_login_request, opts = {})
  data, _status_code, _headers = sandbox_payment_profile_reset_login_with_http_info(sandbox_payment_profile_reset_login_request, opts)
  data
end
sandbox_payment_profile_reset_login_with_http_info(sandbox_payment_profile_reset_login_request, opts = {}) click to toggle source

Reset the login of a Payment Profile &#x60;/sandbox/payment_profile/reset_login/&#x60; forces a Payment Profile into a state where the login is no longer valid. This makes it easy to test update mode for Payment Profile in the Sandbox environment. After calling &#x60;/sandbox/payment_profile/reset_login&#x60;, calls to the &#x60;/transfer/authorization/create&#x60; with the Payment Profile will result in a &#x60;decision_rationale&#x60; &#x60;PAYMENT_PROFILE_LOGIN_REQUIRED&#x60;. You can then use update mode for Payment Profile to restore it into a good state. In order to invoke this endpoint, you must first [create a Payment Profile](plaid.com/docs/transfer/add-to-app/#create-a-payment-profile-optional) and [go through the Link flow](plaid.com/docs/transfer/add-to-app/#create-a-link-token). @param sandbox_payment_profile_reset_login_request [SandboxPaymentProfileResetLoginRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxPaymentProfileResetLoginResponse, Integer, Hash)>] SandboxPaymentProfileResetLoginResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 12604
def sandbox_payment_profile_reset_login_with_http_info(sandbox_payment_profile_reset_login_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_payment_profile_reset_login ...'
  end
  # verify the required parameter 'sandbox_payment_profile_reset_login_request' is set
  if @api_client.config.client_side_validation && sandbox_payment_profile_reset_login_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_payment_profile_reset_login_request' when calling PlaidApi.sandbox_payment_profile_reset_login"
  end
  # resource path
  local_var_path = '/sandbox/payment_profile/reset_login'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_payment_profile_reset_login_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxPaymentProfileResetLoginResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_payment_profile_reset_login",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_payment_profile_reset_login\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_processor_token_create(sandbox_processor_token_create_request, opts = {}) click to toggle source

Create a test Item and processor token Use the ‘/sandbox/processor_token/create` endpoint to create a valid `processor_token` for an arbitrary institution ID and test credentials. The created `processor_token` corresponds to a new Sandbox Item. You can then use this `processor_token` with the `/processor/` API endpoints in Sandbox. You can also use `/sandbox/processor_token/create` with the [`user_custom` test username](plaid.com/docs/sandbox/user-custom) to generate a test account with custom data. @param sandbox_processor_token_create_request [SandboxProcessorTokenCreateRequest] @param [Hash] opts the optional parameters @return [SandboxProcessorTokenCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 12662
def sandbox_processor_token_create(sandbox_processor_token_create_request, opts = {})
  data, _status_code, _headers = sandbox_processor_token_create_with_http_info(sandbox_processor_token_create_request, opts)
  data
end
sandbox_processor_token_create_with_http_info(sandbox_processor_token_create_request, opts = {}) click to toggle source

Create a test Item and processor token Use the &#x60;/sandbox/processor_token/create&#x60; endpoint to create a valid &#x60;processor_token&#x60; for an arbitrary institution ID and test credentials. The created &#x60;processor_token&#x60; corresponds to a new Sandbox Item. You can then use this &#x60;processor_token&#x60; with the &#x60;/processor/&#x60; API endpoints in Sandbox. You can also use &#x60;/sandbox/processor_token/create&#x60; with the [&#x60;user_custom&#x60; test username](plaid.com/docs/sandbox/user-custom) to generate a test account with custom data. @param sandbox_processor_token_create_request [SandboxProcessorTokenCreateRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxProcessorTokenCreateResponse, Integer, Hash)>] SandboxProcessorTokenCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 12672
def sandbox_processor_token_create_with_http_info(sandbox_processor_token_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_processor_token_create ...'
  end
  # verify the required parameter 'sandbox_processor_token_create_request' is set
  if @api_client.config.client_side_validation && sandbox_processor_token_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_processor_token_create_request' when calling PlaidApi.sandbox_processor_token_create"
  end
  # resource path
  local_var_path = '/sandbox/processor_token/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_processor_token_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxProcessorTokenCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_processor_token_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_processor_token_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_public_token_create(sandbox_public_token_create_request, opts = {}) click to toggle source

Create a test Item Use the ‘/sandbox/public_token/create` endpoint to create a valid `public_token` for an arbitrary institution ID, initial products, and test credentials. The created `public_token` maps to a new Sandbox Item. You can then call `/item/public_token/exchange` to exchange the `public_token` for an `access_token` and perform all API actions. `/sandbox/public_token/create` can also be used with the [`user_custom` test username](plaid.com/docs/sandbox/user-custom) to generate a test account with custom data, or with Plaid’s [pre-populated Sandbox test accounts](plaid.com/docs/sandbox/test-credentials/). @param sandbox_public_token_create_request [SandboxPublicTokenCreateRequest] @param [Hash] opts the optional parameters @return [SandboxPublicTokenCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 12730
def sandbox_public_token_create(sandbox_public_token_create_request, opts = {})
  data, _status_code, _headers = sandbox_public_token_create_with_http_info(sandbox_public_token_create_request, opts)
  data
end
sandbox_public_token_create_with_http_info(sandbox_public_token_create_request, opts = {}) click to toggle source

Create a test Item Use the &#x60;/sandbox/public_token/create&#x60; endpoint to create a valid &#x60;public_token&#x60; for an arbitrary institution ID, initial products, and test credentials. The created &#x60;public_token&#x60; maps to a new Sandbox Item. You can then call &#x60;/item/public_token/exchange&#x60; to exchange the &#x60;public_token&#x60; for an &#x60;access_token&#x60; and perform all API actions. &#x60;/sandbox/public_token/create&#x60; can also be used with the [&#x60;user_custom&#x60; test username](plaid.com/docs/sandbox/user-custom) to generate a test account with custom data, or with Plaid&#39;s [pre-populated Sandbox test accounts](plaid.com/docs/sandbox/test-credentials/). @param sandbox_public_token_create_request [SandboxPublicTokenCreateRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxPublicTokenCreateResponse, Integer, Hash)>] SandboxPublicTokenCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 12740
def sandbox_public_token_create_with_http_info(sandbox_public_token_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_public_token_create ...'
  end
  # verify the required parameter 'sandbox_public_token_create_request' is set
  if @api_client.config.client_side_validation && sandbox_public_token_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_public_token_create_request' when calling PlaidApi.sandbox_public_token_create"
  end
  # resource path
  local_var_path = '/sandbox/public_token/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_public_token_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxPublicTokenCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_public_token_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_public_token_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_transfer_fire_webhook(sandbox_transfer_fire_webhook_request, opts = {}) click to toggle source

Manually fire a Transfer webhook Use the ‘/sandbox/transfer/fire_webhook` endpoint to manually trigger a `TRANSFER_EVENTS_UPDATE` webhook in the Sandbox environment. @param sandbox_transfer_fire_webhook_request [SandboxTransferFireWebhookRequest] @param [Hash] opts the optional parameters @return [SandboxTransferFireWebhookResponse]

# File lib/plaid/api/plaid_api.rb, line 12798
def sandbox_transfer_fire_webhook(sandbox_transfer_fire_webhook_request, opts = {})
  data, _status_code, _headers = sandbox_transfer_fire_webhook_with_http_info(sandbox_transfer_fire_webhook_request, opts)
  data
end
sandbox_transfer_fire_webhook_with_http_info(sandbox_transfer_fire_webhook_request, opts = {}) click to toggle source

Manually fire a Transfer webhook Use the &#x60;/sandbox/transfer/fire_webhook&#x60; endpoint to manually trigger a &#x60;TRANSFER_EVENTS_UPDATE&#x60; webhook in the Sandbox environment. @param sandbox_transfer_fire_webhook_request [SandboxTransferFireWebhookRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxTransferFireWebhookResponse, Integer, Hash)>] SandboxTransferFireWebhookResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 12808
def sandbox_transfer_fire_webhook_with_http_info(sandbox_transfer_fire_webhook_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_transfer_fire_webhook ...'
  end
  # verify the required parameter 'sandbox_transfer_fire_webhook_request' is set
  if @api_client.config.client_side_validation && sandbox_transfer_fire_webhook_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_transfer_fire_webhook_request' when calling PlaidApi.sandbox_transfer_fire_webhook"
  end
  # resource path
  local_var_path = '/sandbox/transfer/fire_webhook'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_transfer_fire_webhook_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxTransferFireWebhookResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_transfer_fire_webhook",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_transfer_fire_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_transfer_ledger_deposit_simulate(sandbox_transfer_ledger_deposit_simulate_request, opts = {}) click to toggle source

Simulate a ledger deposit event in Sandbox Use the ‘/sandbox/transfer/ledger/deposit/simulate` endpoint to simulate a ledger deposit event in the Sandbox environment. @param sandbox_transfer_ledger_deposit_simulate_request [SandboxTransferLedgerDepositSimulateRequest] @param [Hash] opts the optional parameters @return [SandboxTransferLedgerDepositSimulateResponse]

# File lib/plaid/api/plaid_api.rb, line 12866
def sandbox_transfer_ledger_deposit_simulate(sandbox_transfer_ledger_deposit_simulate_request, opts = {})
  data, _status_code, _headers = sandbox_transfer_ledger_deposit_simulate_with_http_info(sandbox_transfer_ledger_deposit_simulate_request, opts)
  data
end
sandbox_transfer_ledger_deposit_simulate_with_http_info(sandbox_transfer_ledger_deposit_simulate_request, opts = {}) click to toggle source

Simulate a ledger deposit event in Sandbox Use the &#x60;/sandbox/transfer/ledger/deposit/simulate&#x60; endpoint to simulate a ledger deposit event in the Sandbox environment. @param sandbox_transfer_ledger_deposit_simulate_request [SandboxTransferLedgerDepositSimulateRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxTransferLedgerDepositSimulateResponse, Integer, Hash)>] SandboxTransferLedgerDepositSimulateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 12876
def sandbox_transfer_ledger_deposit_simulate_with_http_info(sandbox_transfer_ledger_deposit_simulate_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_transfer_ledger_deposit_simulate ...'
  end
  # verify the required parameter 'sandbox_transfer_ledger_deposit_simulate_request' is set
  if @api_client.config.client_side_validation && sandbox_transfer_ledger_deposit_simulate_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_transfer_ledger_deposit_simulate_request' when calling PlaidApi.sandbox_transfer_ledger_deposit_simulate"
  end
  # resource path
  local_var_path = '/sandbox/transfer/ledger/deposit/simulate'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_transfer_ledger_deposit_simulate_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxTransferLedgerDepositSimulateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_transfer_ledger_deposit_simulate",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_transfer_ledger_deposit_simulate\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_transfer_ledger_simulate_available(sandbox_transfer_ledger_simulate_available_request, opts = {}) click to toggle source

Simulate converting pending balance to available balance Use the ‘/sandbox/transfer/ledger/simulate_available` endpoint to simulate converting pending balance to available balance for all originators in the Sandbox environment. @param sandbox_transfer_ledger_simulate_available_request [SandboxTransferLedgerSimulateAvailableRequest] @param [Hash] opts the optional parameters @return [SandboxTransferLedgerSimulateAvailableResponse]

# File lib/plaid/api/plaid_api.rb, line 12934
def sandbox_transfer_ledger_simulate_available(sandbox_transfer_ledger_simulate_available_request, opts = {})
  data, _status_code, _headers = sandbox_transfer_ledger_simulate_available_with_http_info(sandbox_transfer_ledger_simulate_available_request, opts)
  data
end
sandbox_transfer_ledger_simulate_available_with_http_info(sandbox_transfer_ledger_simulate_available_request, opts = {}) click to toggle source

Simulate converting pending balance to available balance Use the &#x60;/sandbox/transfer/ledger/simulate_available&#x60; endpoint to simulate converting pending balance to available balance for all originators in the Sandbox environment. @param sandbox_transfer_ledger_simulate_available_request [SandboxTransferLedgerSimulateAvailableRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxTransferLedgerSimulateAvailableResponse, Integer, Hash)>] SandboxTransferLedgerSimulateAvailableResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 12944
def sandbox_transfer_ledger_simulate_available_with_http_info(sandbox_transfer_ledger_simulate_available_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_transfer_ledger_simulate_available ...'
  end
  # verify the required parameter 'sandbox_transfer_ledger_simulate_available_request' is set
  if @api_client.config.client_side_validation && sandbox_transfer_ledger_simulate_available_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_transfer_ledger_simulate_available_request' when calling PlaidApi.sandbox_transfer_ledger_simulate_available"
  end
  # resource path
  local_var_path = '/sandbox/transfer/ledger/simulate_available'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_transfer_ledger_simulate_available_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxTransferLedgerSimulateAvailableResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_transfer_ledger_simulate_available",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_transfer_ledger_simulate_available\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_transfer_ledger_withdraw_simulate(sandbox_transfer_ledger_withdraw_simulate_request, opts = {}) click to toggle source

Simulate a ledger withdraw event in Sandbox Use the ‘/sandbox/transfer/ledger/withdraw/simulate` endpoint to simulate a ledger withdraw event in the Sandbox environment. @param sandbox_transfer_ledger_withdraw_simulate_request [SandboxTransferLedgerWithdrawSimulateRequest] @param [Hash] opts the optional parameters @return [SandboxTransferLedgerWithdrawSimulateResponse]

# File lib/plaid/api/plaid_api.rb, line 13002
def sandbox_transfer_ledger_withdraw_simulate(sandbox_transfer_ledger_withdraw_simulate_request, opts = {})
  data, _status_code, _headers = sandbox_transfer_ledger_withdraw_simulate_with_http_info(sandbox_transfer_ledger_withdraw_simulate_request, opts)
  data
end
sandbox_transfer_ledger_withdraw_simulate_with_http_info(sandbox_transfer_ledger_withdraw_simulate_request, opts = {}) click to toggle source

Simulate a ledger withdraw event in Sandbox Use the &#x60;/sandbox/transfer/ledger/withdraw/simulate&#x60; endpoint to simulate a ledger withdraw event in the Sandbox environment. @param sandbox_transfer_ledger_withdraw_simulate_request [SandboxTransferLedgerWithdrawSimulateRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxTransferLedgerWithdrawSimulateResponse, Integer, Hash)>] SandboxTransferLedgerWithdrawSimulateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 13012
def sandbox_transfer_ledger_withdraw_simulate_with_http_info(sandbox_transfer_ledger_withdraw_simulate_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_transfer_ledger_withdraw_simulate ...'
  end
  # verify the required parameter 'sandbox_transfer_ledger_withdraw_simulate_request' is set
  if @api_client.config.client_side_validation && sandbox_transfer_ledger_withdraw_simulate_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_transfer_ledger_withdraw_simulate_request' when calling PlaidApi.sandbox_transfer_ledger_withdraw_simulate"
  end
  # resource path
  local_var_path = '/sandbox/transfer/ledger/withdraw/simulate'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_transfer_ledger_withdraw_simulate_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxTransferLedgerWithdrawSimulateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_transfer_ledger_withdraw_simulate",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_transfer_ledger_withdraw_simulate\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_transfer_refund_simulate(sandbox_transfer_refund_simulate_request, opts = {}) click to toggle source

Simulate a refund event in Sandbox Use the ‘/sandbox/transfer/refund/simulate` endpoint to simulate a refund event in the Sandbox environment. Note that while an event will be simulated and will appear when using endpoints such as `/transfer/event/sync` or `/transfer/event/list`, no transactions will actually take place and funds will not move between accounts, even within the Sandbox. @param sandbox_transfer_refund_simulate_request [SandboxTransferRefundSimulateRequest] @param [Hash] opts the optional parameters @return [SandboxTransferRefundSimulateResponse]

# File lib/plaid/api/plaid_api.rb, line 13070
def sandbox_transfer_refund_simulate(sandbox_transfer_refund_simulate_request, opts = {})
  data, _status_code, _headers = sandbox_transfer_refund_simulate_with_http_info(sandbox_transfer_refund_simulate_request, opts)
  data
end
sandbox_transfer_refund_simulate_with_http_info(sandbox_transfer_refund_simulate_request, opts = {}) click to toggle source

Simulate a refund event in Sandbox Use the &#x60;/sandbox/transfer/refund/simulate&#x60; endpoint to simulate a refund event in the Sandbox environment. Note that while an event will be simulated and will appear when using endpoints such as &#x60;/transfer/event/sync&#x60; or &#x60;/transfer/event/list&#x60;, no transactions will actually take place and funds will not move between accounts, even within the Sandbox. @param sandbox_transfer_refund_simulate_request [SandboxTransferRefundSimulateRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxTransferRefundSimulateResponse, Integer, Hash)>] SandboxTransferRefundSimulateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 13080
def sandbox_transfer_refund_simulate_with_http_info(sandbox_transfer_refund_simulate_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_transfer_refund_simulate ...'
  end
  # verify the required parameter 'sandbox_transfer_refund_simulate_request' is set
  if @api_client.config.client_side_validation && sandbox_transfer_refund_simulate_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_transfer_refund_simulate_request' when calling PlaidApi.sandbox_transfer_refund_simulate"
  end
  # resource path
  local_var_path = '/sandbox/transfer/refund/simulate'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_transfer_refund_simulate_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxTransferRefundSimulateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_transfer_refund_simulate",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_transfer_refund_simulate\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_transfer_repayment_simulate(sandbox_transfer_repayment_simulate_request, opts = {}) click to toggle source

Trigger the creation of a repayment Use the ‘/sandbox/transfer/repayment/simulate` endpoint to trigger the creation of a repayment. As a side effect of calling this route, a repayment is created that includes all unreimbursed returns of guaranteed transfers. If there are no such returns, an 400 error is returned. @param sandbox_transfer_repayment_simulate_request [SandboxTransferRepaymentSimulateRequest] @param [Hash] opts the optional parameters @return [SandboxTransferRepaymentSimulateResponse]

# File lib/plaid/api/plaid_api.rb, line 13138
def sandbox_transfer_repayment_simulate(sandbox_transfer_repayment_simulate_request, opts = {})
  data, _status_code, _headers = sandbox_transfer_repayment_simulate_with_http_info(sandbox_transfer_repayment_simulate_request, opts)
  data
end
sandbox_transfer_repayment_simulate_with_http_info(sandbox_transfer_repayment_simulate_request, opts = {}) click to toggle source

Trigger the creation of a repayment Use the &#x60;/sandbox/transfer/repayment/simulate&#x60; endpoint to trigger the creation of a repayment. As a side effect of calling this route, a repayment is created that includes all unreimbursed returns of guaranteed transfers. If there are no such returns, an 400 error is returned. @param sandbox_transfer_repayment_simulate_request [SandboxTransferRepaymentSimulateRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxTransferRepaymentSimulateResponse, Integer, Hash)>] SandboxTransferRepaymentSimulateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 13148
def sandbox_transfer_repayment_simulate_with_http_info(sandbox_transfer_repayment_simulate_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_transfer_repayment_simulate ...'
  end
  # verify the required parameter 'sandbox_transfer_repayment_simulate_request' is set
  if @api_client.config.client_side_validation && sandbox_transfer_repayment_simulate_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_transfer_repayment_simulate_request' when calling PlaidApi.sandbox_transfer_repayment_simulate"
  end
  # resource path
  local_var_path = '/sandbox/transfer/repayment/simulate'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_transfer_repayment_simulate_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxTransferRepaymentSimulateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_transfer_repayment_simulate",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_transfer_repayment_simulate\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_transfer_simulate(sandbox_transfer_simulate_request, opts = {}) click to toggle source

Simulate a transfer event in Sandbox Use the ‘/sandbox/transfer/simulate` endpoint to simulate a transfer event in the Sandbox environment. Note that while an event will be simulated and will appear when using endpoints such as `/transfer/event/sync` or `/transfer/event/list`, no transactions will actually take place and funds will not move between accounts, even within the Sandbox. @param sandbox_transfer_simulate_request [SandboxTransferSimulateRequest] @param [Hash] opts the optional parameters @return [SandboxTransferSimulateResponse]

# File lib/plaid/api/plaid_api.rb, line 13206
def sandbox_transfer_simulate(sandbox_transfer_simulate_request, opts = {})
  data, _status_code, _headers = sandbox_transfer_simulate_with_http_info(sandbox_transfer_simulate_request, opts)
  data
end
sandbox_transfer_simulate_with_http_info(sandbox_transfer_simulate_request, opts = {}) click to toggle source

Simulate a transfer event in Sandbox Use the &#x60;/sandbox/transfer/simulate&#x60; endpoint to simulate a transfer event in the Sandbox environment. Note that while an event will be simulated and will appear when using endpoints such as &#x60;/transfer/event/sync&#x60; or &#x60;/transfer/event/list&#x60;, no transactions will actually take place and funds will not move between accounts, even within the Sandbox. @param sandbox_transfer_simulate_request [SandboxTransferSimulateRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxTransferSimulateResponse, Integer, Hash)>] SandboxTransferSimulateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 13216
def sandbox_transfer_simulate_with_http_info(sandbox_transfer_simulate_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_transfer_simulate ...'
  end
  # verify the required parameter 'sandbox_transfer_simulate_request' is set
  if @api_client.config.client_side_validation && sandbox_transfer_simulate_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_transfer_simulate_request' when calling PlaidApi.sandbox_transfer_simulate"
  end
  # resource path
  local_var_path = '/sandbox/transfer/simulate'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_transfer_simulate_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxTransferSimulateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_transfer_simulate",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_transfer_simulate\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_transfer_sweep_simulate(sandbox_transfer_sweep_simulate_request, opts = {}) click to toggle source

Simulate creating a sweep Use the ‘/sandbox/transfer/sweep/simulate` endpoint to create a sweep and associated events in the Sandbox environment. Upon calling this endpoint, all transfers with a sweep status of `swept` will become `swept_settled`, all `posted` or `pending` transfers with a sweep status of `unswept` will become `swept`, and all `returned` transfers with a sweep status of `swept` will become `return_swept`. @param sandbox_transfer_sweep_simulate_request [SandboxTransferSweepSimulateRequest] @param [Hash] opts the optional parameters @return [SandboxTransferSweepSimulateResponse]

# File lib/plaid/api/plaid_api.rb, line 13274
def sandbox_transfer_sweep_simulate(sandbox_transfer_sweep_simulate_request, opts = {})
  data, _status_code, _headers = sandbox_transfer_sweep_simulate_with_http_info(sandbox_transfer_sweep_simulate_request, opts)
  data
end
sandbox_transfer_sweep_simulate_with_http_info(sandbox_transfer_sweep_simulate_request, opts = {}) click to toggle source

Simulate creating a sweep Use the &#x60;/sandbox/transfer/sweep/simulate&#x60; endpoint to create a sweep and associated events in the Sandbox environment. Upon calling this endpoint, all transfers with a sweep status of &#x60;swept&#x60; will become &#x60;swept_settled&#x60;, all &#x60;posted&#x60; or &#x60;pending&#x60; transfers with a sweep status of &#x60;unswept&#x60; will become &#x60;swept&#x60;, and all &#x60;returned&#x60; transfers with a sweep status of &#x60;swept&#x60; will become &#x60;return_swept&#x60;. @param sandbox_transfer_sweep_simulate_request [SandboxTransferSweepSimulateRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxTransferSweepSimulateResponse, Integer, Hash)>] SandboxTransferSweepSimulateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 13284
def sandbox_transfer_sweep_simulate_with_http_info(sandbox_transfer_sweep_simulate_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_transfer_sweep_simulate ...'
  end
  # verify the required parameter 'sandbox_transfer_sweep_simulate_request' is set
  if @api_client.config.client_side_validation && sandbox_transfer_sweep_simulate_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_transfer_sweep_simulate_request' when calling PlaidApi.sandbox_transfer_sweep_simulate"
  end
  # resource path
  local_var_path = '/sandbox/transfer/sweep/simulate'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_transfer_sweep_simulate_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxTransferSweepSimulateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_transfer_sweep_simulate",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_transfer_sweep_simulate\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_transfer_test_clock_advance(sandbox_transfer_test_clock_advance_request, opts = {}) click to toggle source

Advance a test clock Use the ‘/sandbox/transfer/test_clock/advance` endpoint to advance a `test_clock` in the Sandbox environment. A test clock object represents an independent timeline and has a `virtual_time` field indicating the current timestamp of the timeline. A test clock can be advanced by incrementing `virtual_time`, but may never go back to a lower `virtual_time`. If a test clock is advanced, we will simulate the changes that ought to occur during the time that elapsed. For example, a client creates a weekly recurring transfer with a test clock set at t. When the client advances the test clock by setting `virtual_time` = t + 15 days, 2 new originations should be created, along with the webhook events. The advancement of the test clock from its current `virtual_time` should be limited such that there are no more than 20 originations resulting from the advance operation on each `recurring_transfer` associated with the `test_clock`. For example, if the recurring transfer associated with this test clock originates once every 4 weeks, you can advance the `virtual_time` up to 80 weeks on each API call. @param sandbox_transfer_test_clock_advance_request [SandboxTransferTestClockAdvanceRequest] @param [Hash] opts the optional parameters @return [SandboxTransferTestClockAdvanceResponse]

# File lib/plaid/api/plaid_api.rb, line 13342
def sandbox_transfer_test_clock_advance(sandbox_transfer_test_clock_advance_request, opts = {})
  data, _status_code, _headers = sandbox_transfer_test_clock_advance_with_http_info(sandbox_transfer_test_clock_advance_request, opts)
  data
end
sandbox_transfer_test_clock_advance_with_http_info(sandbox_transfer_test_clock_advance_request, opts = {}) click to toggle source

Advance a test clock Use the &#x60;/sandbox/transfer/test_clock/advance&#x60; endpoint to advance a &#x60;test_clock&#x60; in the Sandbox environment. A test clock object represents an independent timeline and has a &#x60;virtual_time&#x60; field indicating the current timestamp of the timeline. A test clock can be advanced by incrementing &#x60;virtual_time&#x60;, but may never go back to a lower &#x60;virtual_time&#x60;. If a test clock is advanced, we will simulate the changes that ought to occur during the time that elapsed. For example, a client creates a weekly recurring transfer with a test clock set at t. When the client advances the test clock by setting &#x60;virtual_time&#x60; &#x3D; t + 15 days, 2 new originations should be created, along with the webhook events. The advancement of the test clock from its current &#x60;virtual_time&#x60; should be limited such that there are no more than 20 originations resulting from the advance operation on each &#x60;recurring_transfer&#x60; associated with the &#x60;test_clock&#x60;. For example, if the recurring transfer associated with this test clock originates once every 4 weeks, you can advance the &#x60;virtual_time&#x60; up to 80 weeks on each API call. @param sandbox_transfer_test_clock_advance_request [SandboxTransferTestClockAdvanceRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxTransferTestClockAdvanceResponse, Integer, Hash)>] SandboxTransferTestClockAdvanceResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 13352
def sandbox_transfer_test_clock_advance_with_http_info(sandbox_transfer_test_clock_advance_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_transfer_test_clock_advance ...'
  end
  # verify the required parameter 'sandbox_transfer_test_clock_advance_request' is set
  if @api_client.config.client_side_validation && sandbox_transfer_test_clock_advance_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_transfer_test_clock_advance_request' when calling PlaidApi.sandbox_transfer_test_clock_advance"
  end
  # resource path
  local_var_path = '/sandbox/transfer/test_clock/advance'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_transfer_test_clock_advance_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxTransferTestClockAdvanceResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_transfer_test_clock_advance",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_transfer_test_clock_advance\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_transfer_test_clock_create(sandbox_transfer_test_clock_create_request, opts = {}) click to toggle source

Create a test clock Use the ‘/sandbox/transfer/test_clock/create` endpoint to create a `test_clock` in the Sandbox environment. A test clock object represents an independent timeline and has a `virtual_time` field indicating the current timestamp of the timeline. Test clocks are used for testing recurring transfers in Sandbox. A test clock can be associated with up to 5 recurring transfers. @param sandbox_transfer_test_clock_create_request [SandboxTransferTestClockCreateRequest] @param [Hash] opts the optional parameters @return [SandboxTransferTestClockCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 13410
def sandbox_transfer_test_clock_create(sandbox_transfer_test_clock_create_request, opts = {})
  data, _status_code, _headers = sandbox_transfer_test_clock_create_with_http_info(sandbox_transfer_test_clock_create_request, opts)
  data
end
sandbox_transfer_test_clock_create_with_http_info(sandbox_transfer_test_clock_create_request, opts = {}) click to toggle source

Create a test clock Use the &#x60;/sandbox/transfer/test_clock/create&#x60; endpoint to create a &#x60;test_clock&#x60; in the Sandbox environment. A test clock object represents an independent timeline and has a &#x60;virtual_time&#x60; field indicating the current timestamp of the timeline. Test clocks are used for testing recurring transfers in Sandbox. A test clock can be associated with up to 5 recurring transfers. @param sandbox_transfer_test_clock_create_request [SandboxTransferTestClockCreateRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxTransferTestClockCreateResponse, Integer, Hash)>] SandboxTransferTestClockCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 13420
def sandbox_transfer_test_clock_create_with_http_info(sandbox_transfer_test_clock_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_transfer_test_clock_create ...'
  end
  # verify the required parameter 'sandbox_transfer_test_clock_create_request' is set
  if @api_client.config.client_side_validation && sandbox_transfer_test_clock_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_transfer_test_clock_create_request' when calling PlaidApi.sandbox_transfer_test_clock_create"
  end
  # resource path
  local_var_path = '/sandbox/transfer/test_clock/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_transfer_test_clock_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxTransferTestClockCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_transfer_test_clock_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_transfer_test_clock_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_transfer_test_clock_get(sandbox_transfer_test_clock_get_request, opts = {}) click to toggle source

Get a test clock Use the ‘/sandbox/transfer/test_clock/get` endpoint to get a `test_clock` in the Sandbox environment. @param sandbox_transfer_test_clock_get_request [SandboxTransferTestClockGetRequest] @param [Hash] opts the optional parameters @return [SandboxTransferTestClockGetResponse]

# File lib/plaid/api/plaid_api.rb, line 13478
def sandbox_transfer_test_clock_get(sandbox_transfer_test_clock_get_request, opts = {})
  data, _status_code, _headers = sandbox_transfer_test_clock_get_with_http_info(sandbox_transfer_test_clock_get_request, opts)
  data
end
sandbox_transfer_test_clock_get_with_http_info(sandbox_transfer_test_clock_get_request, opts = {}) click to toggle source

Get a test clock Use the &#x60;/sandbox/transfer/test_clock/get&#x60; endpoint to get a &#x60;test_clock&#x60; in the Sandbox environment. @param sandbox_transfer_test_clock_get_request [SandboxTransferTestClockGetRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxTransferTestClockGetResponse, Integer, Hash)>] SandboxTransferTestClockGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 13488
def sandbox_transfer_test_clock_get_with_http_info(sandbox_transfer_test_clock_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_transfer_test_clock_get ...'
  end
  # verify the required parameter 'sandbox_transfer_test_clock_get_request' is set
  if @api_client.config.client_side_validation && sandbox_transfer_test_clock_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_transfer_test_clock_get_request' when calling PlaidApi.sandbox_transfer_test_clock_get"
  end
  # resource path
  local_var_path = '/sandbox/transfer/test_clock/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_transfer_test_clock_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxTransferTestClockGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_transfer_test_clock_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_transfer_test_clock_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_transfer_test_clock_list(sandbox_transfer_test_clock_list_request, opts = {}) click to toggle source

List test clocks Use the ‘/sandbox/transfer/test_clock/list` endpoint to see a list of all your test clocks in the Sandbox environment, by ascending `virtual_time`. Results are paginated; use the `count` and `offset` query parameters to retrieve the desired test clocks. @param sandbox_transfer_test_clock_list_request [SandboxTransferTestClockListRequest] @param [Hash] opts the optional parameters @return [SandboxTransferTestClockListResponse]

# File lib/plaid/api/plaid_api.rb, line 13546
def sandbox_transfer_test_clock_list(sandbox_transfer_test_clock_list_request, opts = {})
  data, _status_code, _headers = sandbox_transfer_test_clock_list_with_http_info(sandbox_transfer_test_clock_list_request, opts)
  data
end
sandbox_transfer_test_clock_list_with_http_info(sandbox_transfer_test_clock_list_request, opts = {}) click to toggle source

List test clocks Use the &#x60;/sandbox/transfer/test_clock/list&#x60; endpoint to see a list of all your test clocks in the Sandbox environment, by ascending &#x60;virtual_time&#x60;. Results are paginated; use the &#x60;count&#x60; and &#x60;offset&#x60; query parameters to retrieve the desired test clocks. @param sandbox_transfer_test_clock_list_request [SandboxTransferTestClockListRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxTransferTestClockListResponse, Integer, Hash)>] SandboxTransferTestClockListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 13556
def sandbox_transfer_test_clock_list_with_http_info(sandbox_transfer_test_clock_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_transfer_test_clock_list ...'
  end
  # verify the required parameter 'sandbox_transfer_test_clock_list_request' is set
  if @api_client.config.client_side_validation && sandbox_transfer_test_clock_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_transfer_test_clock_list_request' when calling PlaidApi.sandbox_transfer_test_clock_list"
  end
  # resource path
  local_var_path = '/sandbox/transfer/test_clock/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_transfer_test_clock_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxTransferTestClockListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_transfer_test_clock_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_transfer_test_clock_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
sandbox_user_reset_login(sandbox_user_reset_login_request, opts = {}) click to toggle source

Force item(s) for a Sandbox User into an error state ‘/sandbox/user/reset_login/` functions the same as `/sandbox/item/reset_login`, but will modify Items related to a User. This endpoint forces each Item into an `ITEM_LOGIN_REQUIRED` state in order to simulate an Item whose login is no longer valid. This makes it easy to test Link’s [update mode](plaid.com/docs/link/update-mode) flow in the Sandbox environment. After calling ‘/sandbox/user/reset_login`, You can then use Plaid Link update mode to restore Items associated with the User to a good state. An `ITEM_LOGIN_REQUIRED` webhook will also be fired after a call to this endpoint, if one is associated with the Item. In the Sandbox, Items will transition to an `ITEM_LOGIN_REQUIRED` error state automatically after 30 days, even if this endpoint is not called. @param sandbox_user_reset_login_request [SandboxUserResetLoginRequest] @param [Hash] opts the optional parameters @return [SandboxUserResetLoginResponse]

# File lib/plaid/api/plaid_api.rb, line 13614
def sandbox_user_reset_login(sandbox_user_reset_login_request, opts = {})
  data, _status_code, _headers = sandbox_user_reset_login_with_http_info(sandbox_user_reset_login_request, opts)
  data
end
sandbox_user_reset_login_with_http_info(sandbox_user_reset_login_request, opts = {}) click to toggle source

Force item(s) for a Sandbox User into an error state &#x60;/sandbox/user/reset_login/&#x60; functions the same as &#x60;/sandbox/item/reset_login&#x60;, but will modify Items related to a User. This endpoint forces each Item into an &#x60;ITEM_LOGIN_REQUIRED&#x60; state in order to simulate an Item whose login is no longer valid. This makes it easy to test Link&#39;s [update mode](plaid.com/docs/link/update-mode) flow in the Sandbox environment. After calling &#x60;/sandbox/user/reset_login&#x60;, You can then use Plaid Link update mode to restore Items associated with the User to a good state. An &#x60;ITEM_LOGIN_REQUIRED&#x60; webhook will also be fired after a call to this endpoint, if one is associated with the Item. In the Sandbox, Items will transition to an &#x60;ITEM_LOGIN_REQUIRED&#x60; error state automatically after 30 days, even if this endpoint is not called. @param sandbox_user_reset_login_request [SandboxUserResetLoginRequest] @param [Hash] opts the optional parameters @return [Array<(SandboxUserResetLoginResponse, Integer, Hash)>] SandboxUserResetLoginResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 13624
def sandbox_user_reset_login_with_http_info(sandbox_user_reset_login_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.sandbox_user_reset_login ...'
  end
  # verify the required parameter 'sandbox_user_reset_login_request' is set
  if @api_client.config.client_side_validation && sandbox_user_reset_login_request.nil?
    fail ArgumentError, "Missing the required parameter 'sandbox_user_reset_login_request' when calling PlaidApi.sandbox_user_reset_login"
  end
  # resource path
  local_var_path = '/sandbox/user/reset_login'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(sandbox_user_reset_login_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SandboxUserResetLoginResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.sandbox_user_reset_login",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#sandbox_user_reset_login\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
signal_decision_report(signal_decision_report_request, opts = {}) click to toggle source

Report whether you initiated an ACH transaction After calling ‘/signal/evaluate`, call `/signal/decision/report` to report whether the transaction was initiated. @param signal_decision_report_request [SignalDecisionReportRequest] @param [Hash] opts the optional parameters @return [SignalDecisionReportResponse]

# File lib/plaid/api/plaid_api.rb, line 13682
def signal_decision_report(signal_decision_report_request, opts = {})
  data, _status_code, _headers = signal_decision_report_with_http_info(signal_decision_report_request, opts)
  data
end
signal_decision_report_with_http_info(signal_decision_report_request, opts = {}) click to toggle source

Report whether you initiated an ACH transaction After calling &#x60;/signal/evaluate&#x60;, call &#x60;/signal/decision/report&#x60; to report whether the transaction was initiated. @param signal_decision_report_request [SignalDecisionReportRequest] @param [Hash] opts the optional parameters @return [Array<(SignalDecisionReportResponse, Integer, Hash)>] SignalDecisionReportResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 13692
def signal_decision_report_with_http_info(signal_decision_report_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.signal_decision_report ...'
  end
  # verify the required parameter 'signal_decision_report_request' is set
  if @api_client.config.client_side_validation && signal_decision_report_request.nil?
    fail ArgumentError, "Missing the required parameter 'signal_decision_report_request' when calling PlaidApi.signal_decision_report"
  end
  # resource path
  local_var_path = '/signal/decision/report'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(signal_decision_report_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SignalDecisionReportResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.signal_decision_report",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#signal_decision_report\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
signal_evaluate(signal_evaluate_request, opts = {}) click to toggle source

Evaluate a planned ACH transaction Use ‘/signal/evaluate` to evaluate a planned ACH transaction to get a return risk assessment (such as a risk score and risk tier) and additional risk signals. In order to obtain a valid score for an ACH transaction, Plaid must have an access token for the account, and the Item must be healthy (receiving product updates) or have recently been in a healthy state. If the transaction does not meet eligibility requirements, an error will be returned corresponding to the underlying cause. If `/signal/evaluate` is called on the same transaction multiple times within a 24-hour period, cached results may be returned. For more information please refer to the error documentation on [Item errors](/docs/errors/item/) and [Link in Update Mode](/docs/link/update-mode/). Note: This request may take some time to complete if Signal is being added to an existing Item. This is because Plaid must communicate directly with the institution when retrieving the data for the first time. @param signal_evaluate_request [SignalEvaluateRequest] @param [Hash] opts the optional parameters @return [SignalEvaluateResponse]

# File lib/plaid/api/plaid_api.rb, line 13750
def signal_evaluate(signal_evaluate_request, opts = {})
  data, _status_code, _headers = signal_evaluate_with_http_info(signal_evaluate_request, opts)
  data
end
signal_evaluate_with_http_info(signal_evaluate_request, opts = {}) click to toggle source

Evaluate a planned ACH transaction Use &#x60;/signal/evaluate&#x60; to evaluate a planned ACH transaction to get a return risk assessment (such as a risk score and risk tier) and additional risk signals. In order to obtain a valid score for an ACH transaction, Plaid must have an access token for the account, and the Item must be healthy (receiving product updates) or have recently been in a healthy state. If the transaction does not meet eligibility requirements, an error will be returned corresponding to the underlying cause. If &#x60;/signal/evaluate&#x60; is called on the same transaction multiple times within a 24-hour period, cached results may be returned. For more information please refer to the error documentation on [Item errors](/docs/errors/item/) and [Link in Update Mode](/docs/link/update-mode/). Note: This request may take some time to complete if Signal is being added to an existing Item. This is because Plaid must communicate directly with the institution when retrieving the data for the first time. @param signal_evaluate_request [SignalEvaluateRequest] @param [Hash] opts the optional parameters @return [Array<(SignalEvaluateResponse, Integer, Hash)>] SignalEvaluateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 13760
def signal_evaluate_with_http_info(signal_evaluate_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.signal_evaluate ...'
  end
  # verify the required parameter 'signal_evaluate_request' is set
  if @api_client.config.client_side_validation && signal_evaluate_request.nil?
    fail ArgumentError, "Missing the required parameter 'signal_evaluate_request' when calling PlaidApi.signal_evaluate"
  end
  # resource path
  local_var_path = '/signal/evaluate'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(signal_evaluate_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SignalEvaluateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.signal_evaluate",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#signal_evaluate\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
signal_prepare(signal_prepare_request, opts = {}) click to toggle source

Opt-in an Item to Signal When an Item is not initialized with Signal, call ‘/signal/prepare` to opt-in that Item to the Signal data collection process, developing a Signal score. This should be done on Items where Signal was added in the `additional_consented_products` array but not in the `products`, `optional_products`, or `required_if_supported_products` array. If `/signal/prepare` is skipped on an Item that is not initialized with Signal, the initial call to `/signal/evaluate` on that Item will be less accurate, because Signal will have access to less data for computing the Signal score. If run on an Item that is already initialized with Signal, this endpoint will return a 200 response and will not modify the Item. @param signal_prepare_request [SignalPrepareRequest] @param [Hash] opts the optional parameters @return [SignalPrepareResponse]

# File lib/plaid/api/plaid_api.rb, line 13818
def signal_prepare(signal_prepare_request, opts = {})
  data, _status_code, _headers = signal_prepare_with_http_info(signal_prepare_request, opts)
  data
end
signal_prepare_with_http_info(signal_prepare_request, opts = {}) click to toggle source

Opt-in an Item to Signal When an Item is not initialized with Signal, call &#x60;/signal/prepare&#x60; to opt-in that Item to the Signal data collection process, developing a Signal score. This should be done on Items where Signal was added in the &#x60;additional_consented_products&#x60; array but not in the &#x60;products&#x60;, &#x60;optional_products&#x60;, or &#x60;required_if_supported_products&#x60; array. If &#x60;/signal/prepare&#x60; is skipped on an Item that is not initialized with Signal, the initial call to &#x60;/signal/evaluate&#x60; on that Item will be less accurate, because Signal will have access to less data for computing the Signal score. If run on an Item that is already initialized with Signal, this endpoint will return a 200 response and will not modify the Item. @param signal_prepare_request [SignalPrepareRequest] @param [Hash] opts the optional parameters @return [Array<(SignalPrepareResponse, Integer, Hash)>] SignalPrepareResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 13828
def signal_prepare_with_http_info(signal_prepare_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.signal_prepare ...'
  end
  # verify the required parameter 'signal_prepare_request' is set
  if @api_client.config.client_side_validation && signal_prepare_request.nil?
    fail ArgumentError, "Missing the required parameter 'signal_prepare_request' when calling PlaidApi.signal_prepare"
  end
  # resource path
  local_var_path = '/signal/prepare'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(signal_prepare_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SignalPrepareResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.signal_prepare",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#signal_prepare\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
signal_return_report(signal_return_report_request, opts = {}) click to toggle source

Report a return for an ACH transaction Call the ‘/signal/return/report` endpoint to report a returned transaction that was previously sent to the `/signal/evaluate` endpoint. Your feedback will be used by the model to incorporate the latest risk trend in your portfolio. @param signal_return_report_request [SignalReturnReportRequest] @param [Hash] opts the optional parameters @return [SignalReturnReportResponse]

# File lib/plaid/api/plaid_api.rb, line 13886
def signal_return_report(signal_return_report_request, opts = {})
  data, _status_code, _headers = signal_return_report_with_http_info(signal_return_report_request, opts)
  data
end
signal_return_report_with_http_info(signal_return_report_request, opts = {}) click to toggle source

Report a return for an ACH transaction Call the &#x60;/signal/return/report&#x60; endpoint to report a returned transaction that was previously sent to the &#x60;/signal/evaluate&#x60; endpoint. Your feedback will be used by the model to incorporate the latest risk trend in your portfolio. @param signal_return_report_request [SignalReturnReportRequest] @param [Hash] opts the optional parameters @return [Array<(SignalReturnReportResponse, Integer, Hash)>] SignalReturnReportResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 13896
def signal_return_report_with_http_info(signal_return_report_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.signal_return_report ...'
  end
  # verify the required parameter 'signal_return_report_request' is set
  if @api_client.config.client_side_validation && signal_return_report_request.nil?
    fail ArgumentError, "Missing the required parameter 'signal_return_report_request' when calling PlaidApi.signal_return_report"
  end
  # resource path
  local_var_path = '/signal/return/report'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(signal_return_report_request)

  # return_type
  return_type = opts[:debug_return_type] || 'SignalReturnReportResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.signal_return_report",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#signal_return_report\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
statements_download(statements_download_request, opts = {}) click to toggle source

Retrieve a single statement. The ‘/statements/download` endpoint retrieves a single statement PDF in binary format. The response will contain a `Plaid-Content-Hash` header containing a SHA 256 checksum of the statement. This can be used to verify that the file being sent by Plaid is the same file that was downloaded to your system. @param statements_download_request [StatementsDownloadRequest] @param [Hash] opts the optional parameters @return [File]

# File lib/plaid/api/plaid_api.rb, line 13954
def statements_download(statements_download_request, opts = {})
  data, _status_code, _headers = statements_download_with_http_info(statements_download_request, opts)
  data
end
statements_download_with_http_info(statements_download_request, opts = {}) click to toggle source

Retrieve a single statement. The &#x60;/statements/download&#x60; endpoint retrieves a single statement PDF in binary format. The response will contain a &#x60;Plaid-Content-Hash&#x60; header containing a SHA 256 checksum of the statement. This can be used to verify that the file being sent by Plaid is the same file that was downloaded to your system. @param statements_download_request [StatementsDownloadRequest] @param [Hash] opts the optional parameters @return [Array<(File, Integer, Hash)>] File data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 13964
def statements_download_with_http_info(statements_download_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.statements_download ...'
  end
  # verify the required parameter 'statements_download_request' is set
  if @api_client.config.client_side_validation && statements_download_request.nil?
    fail ArgumentError, "Missing the required parameter 'statements_download_request' when calling PlaidApi.statements_download"
  end
  # resource path
  local_var_path = '/statements/download'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(statements_download_request)

  # return_type
  return_type = opts[:debug_return_type] || 'File'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.statements_download",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#statements_download\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
statements_list(statements_list_request, opts = {}) click to toggle source

Retrieve a list of all statements associated with an item. The ‘/statements/list` endpoint retrieves a list of all statements associated with an item. @param statements_list_request [StatementsListRequest] @param [Hash] opts the optional parameters @return [StatementsListResponse]

# File lib/plaid/api/plaid_api.rb, line 14022
def statements_list(statements_list_request, opts = {})
  data, _status_code, _headers = statements_list_with_http_info(statements_list_request, opts)
  data
end
statements_list_with_http_info(statements_list_request, opts = {}) click to toggle source

Retrieve a list of all statements associated with an item. The &#x60;/statements/list&#x60; endpoint retrieves a list of all statements associated with an item. @param statements_list_request [StatementsListRequest] @param [Hash] opts the optional parameters @return [Array<(StatementsListResponse, Integer, Hash)>] StatementsListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 14032
def statements_list_with_http_info(statements_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.statements_list ...'
  end
  # verify the required parameter 'statements_list_request' is set
  if @api_client.config.client_side_validation && statements_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'statements_list_request' when calling PlaidApi.statements_list"
  end
  # resource path
  local_var_path = '/statements/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(statements_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'StatementsListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.statements_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#statements_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
statements_refresh(statements_refresh_request, opts = {}) click to toggle source

Refresh statements data. ‘/statements/refresh` initiates an on-demand extraction to fetch the statements for the provided dates. @param statements_refresh_request [StatementsRefreshRequest] @param [Hash] opts the optional parameters @return [StatementsRefreshResponse]

# File lib/plaid/api/plaid_api.rb, line 14090
def statements_refresh(statements_refresh_request, opts = {})
  data, _status_code, _headers = statements_refresh_with_http_info(statements_refresh_request, opts)
  data
end
statements_refresh_with_http_info(statements_refresh_request, opts = {}) click to toggle source

Refresh statements data. &#x60;/statements/refresh&#x60; initiates an on-demand extraction to fetch the statements for the provided dates. @param statements_refresh_request [StatementsRefreshRequest] @param [Hash] opts the optional parameters @return [Array<(StatementsRefreshResponse, Integer, Hash)>] StatementsRefreshResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 14100
def statements_refresh_with_http_info(statements_refresh_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.statements_refresh ...'
  end
  # verify the required parameter 'statements_refresh_request' is set
  if @api_client.config.client_side_validation && statements_refresh_request.nil?
    fail ArgumentError, "Missing the required parameter 'statements_refresh_request' when calling PlaidApi.statements_refresh"
  end
  # resource path
  local_var_path = '/statements/refresh'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(statements_refresh_request)

  # return_type
  return_type = opts[:debug_return_type] || 'StatementsRefreshResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.statements_refresh",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#statements_refresh\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transactions_enhance(transactions_enhance_get_request, opts = {}) click to toggle source

enhance locally-held transaction data The ‘/beta/transactions/v1/enhance` endpoint enriches raw transaction data provided directly by clients. The product is currently in beta. @param transactions_enhance_get_request [TransactionsEnhanceGetRequest] @param [Hash] opts the optional parameters @return [TransactionsEnhanceGetResponse]

# File lib/plaid/api/plaid_api.rb, line 14158
def transactions_enhance(transactions_enhance_get_request, opts = {})
  data, _status_code, _headers = transactions_enhance_with_http_info(transactions_enhance_get_request, opts)
  data
end
transactions_enhance_with_http_info(transactions_enhance_get_request, opts = {}) click to toggle source

enhance locally-held transaction data The &#x60;/beta/transactions/v1/enhance&#x60; endpoint enriches raw transaction data provided directly by clients. The product is currently in beta. @param transactions_enhance_get_request [TransactionsEnhanceGetRequest] @param [Hash] opts the optional parameters @return [Array<(TransactionsEnhanceGetResponse, Integer, Hash)>] TransactionsEnhanceGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 14168
def transactions_enhance_with_http_info(transactions_enhance_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transactions_enhance ...'
  end
  # verify the required parameter 'transactions_enhance_get_request' is set
  if @api_client.config.client_side_validation && transactions_enhance_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'transactions_enhance_get_request' when calling PlaidApi.transactions_enhance"
  end
  # resource path
  local_var_path = '/beta/transactions/v1/enhance'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transactions_enhance_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransactionsEnhanceGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transactions_enhance",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transactions_enhance\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transactions_enrich(transactions_enrich_request, opts = {}) click to toggle source

Enrich locally-held transaction data The ‘/transactions/enrich` endpoint enriches raw transaction data generated by your own banking products or retrieved from other non-Plaid sources. @param transactions_enrich_request [TransactionsEnrichRequest] @param [Hash] opts the optional parameters @return [TransactionsEnrichResponse]

# File lib/plaid/api/plaid_api.rb, line 14226
def transactions_enrich(transactions_enrich_request, opts = {})
  data, _status_code, _headers = transactions_enrich_with_http_info(transactions_enrich_request, opts)
  data
end
transactions_enrich_with_http_info(transactions_enrich_request, opts = {}) click to toggle source

Enrich locally-held transaction data The &#x60;/transactions/enrich&#x60; endpoint enriches raw transaction data generated by your own banking products or retrieved from other non-Plaid sources. @param transactions_enrich_request [TransactionsEnrichRequest] @param [Hash] opts the optional parameters @return [Array<(TransactionsEnrichResponse, Integer, Hash)>] TransactionsEnrichResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 14236
def transactions_enrich_with_http_info(transactions_enrich_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transactions_enrich ...'
  end
  # verify the required parameter 'transactions_enrich_request' is set
  if @api_client.config.client_side_validation && transactions_enrich_request.nil?
    fail ArgumentError, "Missing the required parameter 'transactions_enrich_request' when calling PlaidApi.transactions_enrich"
  end
  # resource path
  local_var_path = '/transactions/enrich'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transactions_enrich_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransactionsEnrichResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transactions_enrich",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transactions_enrich\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transactions_get(transactions_get_request, opts = {}) click to toggle source

Get transaction data Note: All new implementations are encouraged to use ‘/transactions/sync` rather than `/transactions/get`. `/transactions/sync` provides the same functionality as `/transactions/get` and improves developer ease-of-use for handling transactions updates. The `/transactions/get` endpoint allows developers to receive user-authorized transaction data for credit, depository, and some loan-type accounts (only those with account subtype `student`; coverage may be limited). For transaction history from investments accounts, use the [Investments endpoint](plaid.com/docs/api/products/investments/) instead. Transaction data is standardized across financial institutions, and in many cases transactions are linked to a clean name, entity type, location, and category. Similarly, account data is standardized and returned with a clean name, number, balance, and other meta information where available. Transactions are returned in reverse-chronological order, and the sequence of transaction ordering is stable and will not shift. Transactions are not immutable and can also be removed altogether by the institution; a removed transaction will no longer appear in `/transactions/get`. For more details, see [Pending and posted transactions](plaid.com/docs/transactions/transactions-data/#pending-and-posted-transactions). Due to the potentially large number of transactions associated with an Item, results are paginated. Manipulate the `count` and `offset` parameters in conjunction with the `total_transactions` response body field to fetch all available transactions. Data returned by `/transactions/get` will be the data available for the Item as of the most recent successful check for new transactions. Plaid typically checks for new data multiple times a day, but these checks may occur less frequently, such as once a day, depending on the institution. To find out when the Item was last updated, use the [Item Debugger](plaid.com/docs/account/activity/#troubleshooting-with-item-debugger) or call `/item/get`; the `item.status.transactions.last_successful_update` field will show the timestamp of the most recent successful update. To force Plaid to check for new transactions, you can use the `/transactions/refresh` endpoint. Note that data may not be immediately available to `/transactions/get`. Plaid will begin to prepare transactions data upon Item link, if Link was initialized with `transactions`, or upon the first call to `/transactions/get`, if it wasn’t. To be alerted when transaction data is ready to be fetched, listen for the [‘INITIAL_UPDATE`](plaid.com/docs/api/products/transactions/#initial_update) and [`HISTORICAL_UPDATE`](plaid.com/docs/api/products/transactions/#historical_update) webhooks. If no transaction history is ready when `/transactions/get` is called, it will return a `PRODUCT_NOT_READY` error. @param transactions_get_request [TransactionsGetRequest] @param [Hash] opts the optional parameters @return [TransactionsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 14294
def transactions_get(transactions_get_request, opts = {})
  data, _status_code, _headers = transactions_get_with_http_info(transactions_get_request, opts)
  data
end
transactions_get_with_http_info(transactions_get_request, opts = {}) click to toggle source

Get transaction data Note: All new implementations are encouraged to use &#x60;/transactions/sync&#x60; rather than &#x60;/transactions/get&#x60;. &#x60;/transactions/sync&#x60; provides the same functionality as &#x60;/transactions/get&#x60; and improves developer ease-of-use for handling transactions updates. The &#x60;/transactions/get&#x60; endpoint allows developers to receive user-authorized transaction data for credit, depository, and some loan-type accounts (only those with account subtype &#x60;student&#x60;; coverage may be limited). For transaction history from investments accounts, use the [Investments endpoint](plaid.com/docs/api/products/investments/) instead. Transaction data is standardized across financial institutions, and in many cases transactions are linked to a clean name, entity type, location, and category. Similarly, account data is standardized and returned with a clean name, number, balance, and other meta information where available. Transactions are returned in reverse-chronological order, and the sequence of transaction ordering is stable and will not shift. Transactions are not immutable and can also be removed altogether by the institution; a removed transaction will no longer appear in &#x60;/transactions/get&#x60;. For more details, see [Pending and posted transactions](plaid.com/docs/transactions/transactions-data/#pending-and-posted-transactions). Due to the potentially large number of transactions associated with an Item, results are paginated. Manipulate the &#x60;count&#x60; and &#x60;offset&#x60; parameters in conjunction with the &#x60;total_transactions&#x60; response body field to fetch all available transactions. Data returned by &#x60;/transactions/get&#x60; will be the data available for the Item as of the most recent successful check for new transactions. Plaid typically checks for new data multiple times a day, but these checks may occur less frequently, such as once a day, depending on the institution. To find out when the Item was last updated, use the [Item Debugger](plaid.com/docs/account/activity/#troubleshooting-with-item-debugger) or call &#x60;/item/get&#x60;; the &#x60;item.status.transactions.last_successful_update&#x60; field will show the timestamp of the most recent successful update. To force Plaid to check for new transactions, you can use the &#x60;/transactions/refresh&#x60; endpoint. Note that data may not be immediately available to &#x60;/transactions/get&#x60;. Plaid will begin to prepare transactions data upon Item link, if Link was initialized with &#x60;transactions&#x60;, or upon the first call to &#x60;/transactions/get&#x60;, if it wasn&#39;t. To be alerted when transaction data is ready to be fetched, listen for the [&#x60;INITIAL_UPDATE&#x60;](plaid.com/docs/api/products/transactions/#initial_update) and [&#x60;HISTORICAL_UPDATE&#x60;](plaid.com/docs/api/products/transactions/#historical_update) webhooks. If no transaction history is ready when &#x60;/transactions/get&#x60; is called, it will return a &#x60;PRODUCT_NOT_READY&#x60; error. @param transactions_get_request [TransactionsGetRequest] @param [Hash] opts the optional parameters @return [Array<(TransactionsGetResponse, Integer, Hash)>] TransactionsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 14304
def transactions_get_with_http_info(transactions_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transactions_get ...'
  end
  # verify the required parameter 'transactions_get_request' is set
  if @api_client.config.client_side_validation && transactions_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'transactions_get_request' when calling PlaidApi.transactions_get"
  end
  # resource path
  local_var_path = '/transactions/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transactions_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransactionsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transactions_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transactions_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transactions_recurring_get(transactions_recurring_get_request, opts = {}) click to toggle source

Fetch recurring transaction streams The ‘/transactions/recurring/get` endpoint allows developers to receive a summary of the recurring outflow and inflow streams (expenses and deposits) from a user’s checking, savings or credit card accounts. Additionally, Plaid provides key insights about each recurring stream including the category, merchant, last amount, and more. Developers can use these insights to build tools and experiences that help their users better manage cash flow, monitor subscriptions, reduce spend, and stay on track with bill payments. This endpoint is offered as an add-on to Transactions. To request access to this endpoint, submit a [product access request](dashboard.plaid.com/team/products) or contact your Plaid account manager. This endpoint can only be called on an Item that has already been initialized with Transactions (either during Link, by specifying it in `/link/token/create`; or after Link, by calling `/transactions/get` or `/transactions/sync`). When using Recurring Transactions, for best results, make sure to use the [`days_requested`](plaid.com/docs/api/link/#link-token-create-request-transactions-days-requested) parameter to request at least 180 days of history when initializing Items with Transactions. Once all historical transactions have been fetched, call `/transactions/recurring/get` to receive the Recurring Transactions streams and subscribe to the [`RECURRING_TRANSACTIONS_UPDATE`](plaid.com/docs/api/products/transactions/#recurring_transactions_update) webhook. To know when historical transactions have been fetched, if you are using `/transactions/sync` listen for the [`SYNC_UPDATES_AVAILABLE`](plaid.com/docs/api/products/transactions/#SyncUpdatesAvailableWebhook-historical-update-complete) webhook and check that the `historical_update_complete` field in the payload is `true`. If using `/transactions/get`, listen for the [`HISTORICAL_UPDATE`](plaid.com/docs/api/products/transactions/#historical_update) webhook. After the initial call, you can call `/transactions/recurring/get` endpoint at any point in the future to retrieve the latest summary of recurring streams. Listen to the [`RECURRING_TRANSACTIONS_UPDATE`](plaid.com/docs/api/products/transactions/#recurring_transactions_update) webhook to be notified when new updates are available. @param transactions_recurring_get_request [TransactionsRecurringGetRequest] @param [Hash] opts the optional parameters @return [TransactionsRecurringGetResponse]

# File lib/plaid/api/plaid_api.rb, line 14362
def transactions_recurring_get(transactions_recurring_get_request, opts = {})
  data, _status_code, _headers = transactions_recurring_get_with_http_info(transactions_recurring_get_request, opts)
  data
end
transactions_recurring_get_with_http_info(transactions_recurring_get_request, opts = {}) click to toggle source

Fetch recurring transaction streams The &#x60;/transactions/recurring/get&#x60; endpoint allows developers to receive a summary of the recurring outflow and inflow streams (expenses and deposits) from a user’s checking, savings or credit card accounts. Additionally, Plaid provides key insights about each recurring stream including the category, merchant, last amount, and more. Developers can use these insights to build tools and experiences that help their users better manage cash flow, monitor subscriptions, reduce spend, and stay on track with bill payments. This endpoint is offered as an add-on to Transactions. To request access to this endpoint, submit a [product access request](dashboard.plaid.com/team/products) or contact your Plaid account manager. This endpoint can only be called on an Item that has already been initialized with Transactions (either during Link, by specifying it in &#x60;/link/token/create&#x60;; or after Link, by calling &#x60;/transactions/get&#x60; or &#x60;/transactions/sync&#x60;). When using Recurring Transactions, for best results, make sure to use the [&#x60;days_requested&#x60;](plaid.com/docs/api/link/#link-token-create-request-transactions-days-requested) parameter to request at least 180 days of history when initializing Items with Transactions. Once all historical transactions have been fetched, call &#x60;/transactions/recurring/get&#x60; to receive the Recurring Transactions streams and subscribe to the [&#x60;RECURRING_TRANSACTIONS_UPDATE&#x60;](plaid.com/docs/api/products/transactions/#recurring_transactions_update) webhook. To know when historical transactions have been fetched, if you are using &#x60;/transactions/sync&#x60; listen for the [&#x60;SYNC_UPDATES_AVAILABLE&#x60;](plaid.com/docs/api/products/transactions/#SyncUpdatesAvailableWebhook-historical-update-complete) webhook and check that the &#x60;historical_update_complete&#x60; field in the payload is &#x60;true&#x60;. If using &#x60;/transactions/get&#x60;, listen for the [&#x60;HISTORICAL_UPDATE&#x60;](plaid.com/docs/api/products/transactions/#historical_update) webhook. After the initial call, you can call &#x60;/transactions/recurring/get&#x60; endpoint at any point in the future to retrieve the latest summary of recurring streams. Listen to the [&#x60;RECURRING_TRANSACTIONS_UPDATE&#x60;](plaid.com/docs/api/products/transactions/#recurring_transactions_update) webhook to be notified when new updates are available. @param transactions_recurring_get_request [TransactionsRecurringGetRequest] @param [Hash] opts the optional parameters @return [Array<(TransactionsRecurringGetResponse, Integer, Hash)>] TransactionsRecurringGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 14372
def transactions_recurring_get_with_http_info(transactions_recurring_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transactions_recurring_get ...'
  end
  # verify the required parameter 'transactions_recurring_get_request' is set
  if @api_client.config.client_side_validation && transactions_recurring_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'transactions_recurring_get_request' when calling PlaidApi.transactions_recurring_get"
  end
  # resource path
  local_var_path = '/transactions/recurring/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transactions_recurring_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransactionsRecurringGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transactions_recurring_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transactions_recurring_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transactions_refresh(transactions_refresh_request, opts = {}) click to toggle source

Refresh transaction data ‘/transactions/refresh` is an optional endpoint that initiates an on-demand extraction to fetch the newest transactions for an Item. The on-demand extraction takes place in addition to the periodic extractions that automatically occur one or more times per day for any Transactions-enabled Item. The Item must already have Transactions added as a product in order to call `/transactions/refresh`. If changes to transactions are discovered after calling `/transactions/refresh`, Plaid will fire a webhook: for `/transactions/sync` users, [`SYNC_UPDATES_AVAILABLE`](plaid.com/docs/api/products/transactions/#sync_updates_available) will be fired if there are any transactions updated, added, or removed. For users of both `/transactions/sync` and `/transactions/get`, [`TRANSACTIONS_REMOVED`](plaid.com/docs/api/products/transactions/#transactions_removed) will be fired if any removed transactions are detected, and [`DEFAULT_UPDATE`](plaid.com/docs/api/products/transactions/#default_update) will be fired if any new transactions are detected. New transactions can be fetched by calling `/transactions/get` or `/transactions/sync`. Note that the `/transactions/refresh` endpoint is not supported for Capital One (`ins_128026`) non-depository accounts and will result in a `PRODUCTS_NOT_SUPPORTED` error if called on an Item that contains only non-depository accounts from that institution. As this endpoint triggers a synchronous request for fresh data, latency may be higher than for other Plaid endpoints (typically less than 10 seconds, but occasionally up to 30 seconds or more); if you encounter errors, you may find it necessary to adjust your timeout period when making requests. `/transactions/refresh` is offered as an optional add-on to Transactions and has a separate [fee model](/docs/account/billing/#per-request-flat-fee). To request access to this endpoint, submit a [product access request](dashboard.plaid.com/team/products) or contact your Plaid account manager. @param transactions_refresh_request [TransactionsRefreshRequest] @param [Hash] opts the optional parameters @return [TransactionsRefreshResponse]

# File lib/plaid/api/plaid_api.rb, line 14430
def transactions_refresh(transactions_refresh_request, opts = {})
  data, _status_code, _headers = transactions_refresh_with_http_info(transactions_refresh_request, opts)
  data
end
transactions_refresh_with_http_info(transactions_refresh_request, opts = {}) click to toggle source

Refresh transaction data &#x60;/transactions/refresh&#x60; is an optional endpoint that initiates an on-demand extraction to fetch the newest transactions for an Item. The on-demand extraction takes place in addition to the periodic extractions that automatically occur one or more times per day for any Transactions-enabled Item. The Item must already have Transactions added as a product in order to call &#x60;/transactions/refresh&#x60;. If changes to transactions are discovered after calling &#x60;/transactions/refresh&#x60;, Plaid will fire a webhook: for &#x60;/transactions/sync&#x60; users, [&#x60;SYNC_UPDATES_AVAILABLE&#x60;](plaid.com/docs/api/products/transactions/#sync_updates_available) will be fired if there are any transactions updated, added, or removed. For users of both &#x60;/transactions/sync&#x60; and &#x60;/transactions/get&#x60;, [&#x60;TRANSACTIONS_REMOVED&#x60;](plaid.com/docs/api/products/transactions/#transactions_removed) will be fired if any removed transactions are detected, and [&#x60;DEFAULT_UPDATE&#x60;](plaid.com/docs/api/products/transactions/#default_update) will be fired if any new transactions are detected. New transactions can be fetched by calling &#x60;/transactions/get&#x60; or &#x60;/transactions/sync&#x60;. Note that the &#x60;/transactions/refresh&#x60; endpoint is not supported for Capital One (&#x60;ins_128026&#x60;) non-depository accounts and will result in a &#x60;PRODUCTS_NOT_SUPPORTED&#x60; error if called on an Item that contains only non-depository accounts from that institution. As this endpoint triggers a synchronous request for fresh data, latency may be higher than for other Plaid endpoints (typically less than 10 seconds, but occasionally up to 30 seconds or more); if you encounter errors, you may find it necessary to adjust your timeout period when making requests. &#x60;/transactions/refresh&#x60; is offered as an optional add-on to Transactions and has a separate [fee model](/docs/account/billing/#per-request-flat-fee). To request access to this endpoint, submit a [product access request](dashboard.plaid.com/team/products) or contact your Plaid account manager. @param transactions_refresh_request [TransactionsRefreshRequest] @param [Hash] opts the optional parameters @return [Array<(TransactionsRefreshResponse, Integer, Hash)>] TransactionsRefreshResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 14440
def transactions_refresh_with_http_info(transactions_refresh_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transactions_refresh ...'
  end
  # verify the required parameter 'transactions_refresh_request' is set
  if @api_client.config.client_side_validation && transactions_refresh_request.nil?
    fail ArgumentError, "Missing the required parameter 'transactions_refresh_request' when calling PlaidApi.transactions_refresh"
  end
  # resource path
  local_var_path = '/transactions/refresh'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transactions_refresh_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransactionsRefreshResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transactions_refresh",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transactions_refresh\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transactions_rules_create(transactions_rules_create_request, opts = {}) click to toggle source

Create transaction category rule The ‘/transactions/rules/v1/create` endpoint creates transaction categorization rules. Rules will be applied on the Item’s transactions returned in ‘/transactions/get` response. The product is currently in beta. To request access, contact transactions-feedback@plaid.com. @param transactions_rules_create_request [TransactionsRulesCreateRequest] @param [Hash] opts the optional parameters @return [TransactionsRulesCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 14498
def transactions_rules_create(transactions_rules_create_request, opts = {})
  data, _status_code, _headers = transactions_rules_create_with_http_info(transactions_rules_create_request, opts)
  data
end
transactions_rules_create_with_http_info(transactions_rules_create_request, opts = {}) click to toggle source

Create transaction category rule The &#x60;/transactions/rules/v1/create&#x60; endpoint creates transaction categorization rules. Rules will be applied on the Item&#39;s transactions returned in &#x60;/transactions/get&#x60; response. The product is currently in beta. To request access, contact transactions-feedback@plaid.com. @param transactions_rules_create_request [TransactionsRulesCreateRequest] @param [Hash] opts the optional parameters @return [Array<(TransactionsRulesCreateResponse, Integer, Hash)>] TransactionsRulesCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 14508
def transactions_rules_create_with_http_info(transactions_rules_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transactions_rules_create ...'
  end
  # verify the required parameter 'transactions_rules_create_request' is set
  if @api_client.config.client_side_validation && transactions_rules_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'transactions_rules_create_request' when calling PlaidApi.transactions_rules_create"
  end
  # resource path
  local_var_path = '/beta/transactions/rules/v1/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transactions_rules_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransactionsRulesCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transactions_rules_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transactions_rules_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transactions_rules_list(transactions_rules_list_request, opts = {}) click to toggle source

Return a list of rules created for the Item associated with the access token. The ‘/transactions/rules/v1/list` returns a list of transaction rules created for the Item associated with the access token. @param transactions_rules_list_request [TransactionsRulesListRequest] @param [Hash] opts the optional parameters @return [TransactionsRulesListResponse]

# File lib/plaid/api/plaid_api.rb, line 14566
def transactions_rules_list(transactions_rules_list_request, opts = {})
  data, _status_code, _headers = transactions_rules_list_with_http_info(transactions_rules_list_request, opts)
  data
end
transactions_rules_list_with_http_info(transactions_rules_list_request, opts = {}) click to toggle source

Return a list of rules created for the Item associated with the access token. The &#x60;/transactions/rules/v1/list&#x60; returns a list of transaction rules created for the Item associated with the access token. @param transactions_rules_list_request [TransactionsRulesListRequest] @param [Hash] opts the optional parameters @return [Array<(TransactionsRulesListResponse, Integer, Hash)>] TransactionsRulesListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 14576
def transactions_rules_list_with_http_info(transactions_rules_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transactions_rules_list ...'
  end
  # verify the required parameter 'transactions_rules_list_request' is set
  if @api_client.config.client_side_validation && transactions_rules_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'transactions_rules_list_request' when calling PlaidApi.transactions_rules_list"
  end
  # resource path
  local_var_path = '/beta/transactions/rules/v1/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transactions_rules_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransactionsRulesListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transactions_rules_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transactions_rules_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transactions_rules_remove(transactions_rules_remove_request, opts = {}) click to toggle source

Remove transaction rule The ‘/transactions/rules/v1/remove` endpoint is used to remove a transaction rule. @param transactions_rules_remove_request [TransactionsRulesRemoveRequest] @param [Hash] opts the optional parameters @return [TransactionsRulesRemoveResponse]

# File lib/plaid/api/plaid_api.rb, line 14634
def transactions_rules_remove(transactions_rules_remove_request, opts = {})
  data, _status_code, _headers = transactions_rules_remove_with_http_info(transactions_rules_remove_request, opts)
  data
end
transactions_rules_remove_with_http_info(transactions_rules_remove_request, opts = {}) click to toggle source

Remove transaction rule The &#x60;/transactions/rules/v1/remove&#x60; endpoint is used to remove a transaction rule. @param transactions_rules_remove_request [TransactionsRulesRemoveRequest] @param [Hash] opts the optional parameters @return [Array<(TransactionsRulesRemoveResponse, Integer, Hash)>] TransactionsRulesRemoveResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 14644
def transactions_rules_remove_with_http_info(transactions_rules_remove_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transactions_rules_remove ...'
  end
  # verify the required parameter 'transactions_rules_remove_request' is set
  if @api_client.config.client_side_validation && transactions_rules_remove_request.nil?
    fail ArgumentError, "Missing the required parameter 'transactions_rules_remove_request' when calling PlaidApi.transactions_rules_remove"
  end
  # resource path
  local_var_path = '/beta/transactions/rules/v1/remove'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transactions_rules_remove_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransactionsRulesRemoveResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transactions_rules_remove",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transactions_rules_remove\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transactions_sync(transactions_sync_request, opts = {}) click to toggle source

Get incremental transaction updates on an Item The ‘/transactions/sync` endpoint allows developers to subscribe to all transactions associated with an Item and get updates synchronously in a stream-like manner, using a cursor to track which updates have already been seen. `/transactions/sync` provides the same functionality as `/transactions/get` and can be used instead of `/transactions/get` to simplify the process of tracking transactions updates. To learn more about migrating from `/transactions/get`, see the [Transactions Sync migration guide](plaid.com/docs/transactions/sync-migration/). This endpoint provides user-authorized transaction data for `credit`, `depository`, and some loan-type accounts (only those with account subtype `student`; coverage may be limited). For transaction history from `investments` accounts, use `/investments/transactions/get` instead. Returned transactions data is grouped into three types of update, indicating whether the transaction was added, removed, or modified since the last call to the API. In the first call to `/transactions/sync` for an Item, the endpoint will return all historical transactions data associated with that Item up until the time of the API call (as "adds"), which then generates a `next_cursor` for that Item. In subsequent calls, send the `next_cursor` to receive only the changes that have occurred since the previous call. Due to the potentially large number of transactions associated with an Item, results are paginated. The `has_more` field specifies if additional calls are necessary to fetch all available transaction updates. Call `/transactions/sync` with the new cursor, pulling all updates, until `has_more` is `false`. When retrieving paginated updates, track both the `next_cursor` from the latest response and the original cursor from the first call in which `has_more` was `true`; if a call to `/transactions/sync` fails due to the [`TRANSACTIONS_SYNC_MUTATION_DURING_PAGINATION`](plaid.com/docs/errors/transactions/#transactions_sync_mutation_during_pagination) error, the entire pagination request loop must be restarted beginning with the cursor for the first page of the update, rather than retrying only the single request that failed. Whenever new or updated transaction data becomes available, `/transactions/sync` will provide these updates. Plaid typically checks for new data multiple times a day, but these checks may occur less frequently, such as once a day, depending on the institution. To find out when the Item was last updated, use the [Item Debugger](plaid.com/docs/account/activity/#troubleshooting-with-item-debugger) or call `/item/get`; the `item.status.transactions.last_successful_update` field will show the timestamp of the most recent successful update. To force Plaid to check for new transactions, use the `/transactions/refresh` endpoint. For newly created Items, data may not be immediately available to `/transactions/sync`. Plaid begins preparing transactions data when the Item is created, but the process can take anywhere from a few seconds to several minutes to complete, depending on the number of transactions available. To be alerted when new data is available, listen for the [`SYNC_UPDATES_AVAILABLE`](plaid.com/docs/api/products/transactions/#sync_updates_available) webhook. @param transactions_sync_request [TransactionsSyncRequest] @param [Hash] opts the optional parameters @return [TransactionsSyncResponse]

# File lib/plaid/api/plaid_api.rb, line 14702
def transactions_sync(transactions_sync_request, opts = {})
  data, _status_code, _headers = transactions_sync_with_http_info(transactions_sync_request, opts)
  data
end
transactions_sync_with_http_info(transactions_sync_request, opts = {}) click to toggle source

Get incremental transaction updates on an Item The &#x60;/transactions/sync&#x60; endpoint allows developers to subscribe to all transactions associated with an Item and get updates synchronously in a stream-like manner, using a cursor to track which updates have already been seen. &#x60;/transactions/sync&#x60; provides the same functionality as &#x60;/transactions/get&#x60; and can be used instead of &#x60;/transactions/get&#x60; to simplify the process of tracking transactions updates. To learn more about migrating from &#x60;/transactions/get&#x60;, see the [Transactions Sync migration guide](plaid.com/docs/transactions/sync-migration/). This endpoint provides user-authorized transaction data for &#x60;credit&#x60;, &#x60;depository&#x60;, and some loan-type accounts (only those with account subtype &#x60;student&#x60;; coverage may be limited). For transaction history from &#x60;investments&#x60; accounts, use &#x60;/investments/transactions/get&#x60; instead. Returned transactions data is grouped into three types of update, indicating whether the transaction was added, removed, or modified since the last call to the API. In the first call to &#x60;/transactions/sync&#x60; for an Item, the endpoint will return all historical transactions data associated with that Item up until the time of the API call (as "adds&quot;), which then generates a &#x60;next_cursor&#x60; for that Item. In subsequent calls, send the &#x60;next_cursor&#x60; to receive only the changes that have occurred since the previous call. Due to the potentially large number of transactions associated with an Item, results are paginated. The &#x60;has_more&#x60; field specifies if additional calls are necessary to fetch all available transaction updates. Call &#x60;/transactions/sync&#x60; with the new cursor, pulling all updates, until &#x60;has_more&#x60; is &#x60;false&#x60;. When retrieving paginated updates, track both the &#x60;next_cursor&#x60; from the latest response and the original cursor from the first call in which &#x60;has_more&#x60; was &#x60;true&#x60;; if a call to &#x60;/transactions/sync&#x60; fails due to the [&#x60;TRANSACTIONS_SYNC_MUTATION_DURING_PAGINATION&#x60;](plaid.com/docs/errors/transactions/#transactions_sync_mutation_during_pagination) error, the entire pagination request loop must be restarted beginning with the cursor for the first page of the update, rather than retrying only the single request that failed. Whenever new or updated transaction data becomes available, &#x60;/transactions/sync&#x60; will provide these updates. Plaid typically checks for new data multiple times a day, but these checks may occur less frequently, such as once a day, depending on the institution. To find out when the Item was last updated, use the [Item Debugger](plaid.com/docs/account/activity/#troubleshooting-with-item-debugger) or call &#x60;/item/get&#x60;; the &#x60;item.status.transactions.last_successful_update&#x60; field will show the timestamp of the most recent successful update. To force Plaid to check for new transactions, use the &#x60;/transactions/refresh&#x60; endpoint. For newly created Items, data may not be immediately available to &#x60;/transactions/sync&#x60;. Plaid begins preparing transactions data when the Item is created, but the process can take anywhere from a few seconds to several minutes to complete, depending on the number of transactions available. To be alerted when new data is available, listen for the [&#x60;SYNC_UPDATES_AVAILABLE&#x60;](plaid.com/docs/api/products/transactions/#sync_updates_available) webhook. @param transactions_sync_request [TransactionsSyncRequest] @param [Hash] opts the optional parameters @return [Array<(TransactionsSyncResponse, Integer, Hash)>] TransactionsSyncResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 14712
def transactions_sync_with_http_info(transactions_sync_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transactions_sync ...'
  end
  # verify the required parameter 'transactions_sync_request' is set
  if @api_client.config.client_side_validation && transactions_sync_request.nil?
    fail ArgumentError, "Missing the required parameter 'transactions_sync_request' when calling PlaidApi.transactions_sync"
  end
  # resource path
  local_var_path = '/transactions/sync'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transactions_sync_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransactionsSyncResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transactions_sync",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transactions_sync\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transactions_user_insights_get(transactions_user_insights_get_request, opts = {}) click to toggle source

Obtain user insights based on transactions sent through /transactions/enrich The ‘/beta/transactions/user_insights/v1/get` gets user insights for clients who have enriched data with `/transactions/enrich`. The product is currently in beta. @param transactions_user_insights_get_request [TransactionsUserInsightsGetRequest] @param [Hash] opts the optional parameters @return [TransactionsUserInsightsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 14770
def transactions_user_insights_get(transactions_user_insights_get_request, opts = {})
  data, _status_code, _headers = transactions_user_insights_get_with_http_info(transactions_user_insights_get_request, opts)
  data
end
transactions_user_insights_get_with_http_info(transactions_user_insights_get_request, opts = {}) click to toggle source

Obtain user insights based on transactions sent through /transactions/enrich The &#x60;/beta/transactions/user_insights/v1/get&#x60; gets user insights for clients who have enriched data with &#x60;/transactions/enrich&#x60;. The product is currently in beta. @param transactions_user_insights_get_request [TransactionsUserInsightsGetRequest] @param [Hash] opts the optional parameters @return [Array<(TransactionsUserInsightsGetResponse, Integer, Hash)>] TransactionsUserInsightsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 14780
def transactions_user_insights_get_with_http_info(transactions_user_insights_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transactions_user_insights_get ...'
  end
  # verify the required parameter 'transactions_user_insights_get_request' is set
  if @api_client.config.client_side_validation && transactions_user_insights_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'transactions_user_insights_get_request' when calling PlaidApi.transactions_user_insights_get"
  end
  # resource path
  local_var_path = '/beta/transactions/user_insights/v1/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transactions_user_insights_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransactionsUserInsightsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transactions_user_insights_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transactions_user_insights_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_authorization_cancel(transfer_authorization_cancel_request, opts = {}) click to toggle source

Cancel a transfer authorization Use the ‘/transfer/authorization/cancel` endpoint to cancel a transfer authorization. A transfer authorization is eligible for cancellation if it has not yet been used to create a transfer. @param transfer_authorization_cancel_request [TransferAuthorizationCancelRequest] @param [Hash] opts the optional parameters @return [TransferAuthorizationCancelResponse]

# File lib/plaid/api/plaid_api.rb, line 14838
def transfer_authorization_cancel(transfer_authorization_cancel_request, opts = {})
  data, _status_code, _headers = transfer_authorization_cancel_with_http_info(transfer_authorization_cancel_request, opts)
  data
end
transfer_authorization_cancel_with_http_info(transfer_authorization_cancel_request, opts = {}) click to toggle source

Cancel a transfer authorization Use the &#x60;/transfer/authorization/cancel&#x60; endpoint to cancel a transfer authorization. A transfer authorization is eligible for cancellation if it has not yet been used to create a transfer. @param transfer_authorization_cancel_request [TransferAuthorizationCancelRequest] @param [Hash] opts the optional parameters @return [Array<(TransferAuthorizationCancelResponse, Integer, Hash)>] TransferAuthorizationCancelResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 14848
def transfer_authorization_cancel_with_http_info(transfer_authorization_cancel_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_authorization_cancel ...'
  end
  # verify the required parameter 'transfer_authorization_cancel_request' is set
  if @api_client.config.client_side_validation && transfer_authorization_cancel_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_authorization_cancel_request' when calling PlaidApi.transfer_authorization_cancel"
  end
  # resource path
  local_var_path = '/transfer/authorization/cancel'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_authorization_cancel_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferAuthorizationCancelResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_authorization_cancel",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_authorization_cancel\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_authorization_create(transfer_authorization_create_request, opts = {}) click to toggle source

Create a transfer authorization Use the ‘/transfer/authorization/create` endpoint to authorize a transfer. This endpoint must be called prior to calling `/transfer/create`. The transfer authorization will expire if not used after one hour. (You can contact your account manager to change the default authorization lifetime.) There are four possible outcomes to calling this endpoint: - If the `authorization.decision` in the response is `declined`, the proposed transfer has failed the risk check and you cannot proceed with the transfer. - If the `authorization.decision` is `user_action_required`, additional user input is needed, usually to fix a broken bank connection, before Plaid can properly assess the risk. You need to launch Link in update mode to complete the required user action. When calling `/link/token/create` to get a new Link token, instead of providing `access_token` in the request, you should set [`transfer.authorization_id`](plaid.com/docs/api/link/#link-token-create-request-transfer-authorization-id) as the `authorization.id`. After the Link flow is completed, you may re-attempt the authorization. - If the `authorization.decision` is `approved`, and the `authorization.rationale_code` is `null`, the transfer has passed the risk check and you can proceed to call `/transfer/create`. - If the `authorization.decision` is `approved` and the `authorization.rationale_code` is non-`null`, the risk check could not be run: you may proceed with the transfer, but should perform your own risk evaluation. For more details, see the response schema. In Plaid’s Sandbox environment the decisions will be returned as follows: - To approve a transfer with ‘null` rationale code, make an authorization request with an `amount` less than the available balance in the account. - To approve a transfer with the rationale code `MANUALLY_VERIFIED_ITEM`, create an Item in Link through the [Same Day Micro-deposits flow](plaid.com/docs/auth/coverage/testing/#testing-same-day-micro-deposits). - To get an authorization decision of `user_action_required`, [reset the login for an Item](plaid.com/docs/sandbox/#item_login_required). - To decline a transfer with the rationale code `NSF`, the available balance on the account must be less than the authorization `amount`. See [Create Sandbox test data](plaid.com/docs/sandbox/user-custom/) for details on how to customize data in Sandbox. - To decline a transfer with the rationale code `RISK`, the available balance on the account must be exactly $0. See [Create Sandbox test data](plaid.com/docs/sandbox/user-custom/) for details on how to customize data in Sandbox. @param transfer_authorization_create_request [TransferAuthorizationCreateRequest] @param [Hash] opts the optional parameters @return [TransferAuthorizationCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 14906
def transfer_authorization_create(transfer_authorization_create_request, opts = {})
  data, _status_code, _headers = transfer_authorization_create_with_http_info(transfer_authorization_create_request, opts)
  data
end
transfer_authorization_create_with_http_info(transfer_authorization_create_request, opts = {}) click to toggle source

Create a transfer authorization Use the &#x60;/transfer/authorization/create&#x60; endpoint to authorize a transfer. This endpoint must be called prior to calling &#x60;/transfer/create&#x60;. The transfer authorization will expire if not used after one hour. (You can contact your account manager to change the default authorization lifetime.) There are four possible outcomes to calling this endpoint: - If the &#x60;authorization.decision&#x60; in the response is &#x60;declined&#x60;, the proposed transfer has failed the risk check and you cannot proceed with the transfer. - If the &#x60;authorization.decision&#x60; is &#x60;user_action_required&#x60;, additional user input is needed, usually to fix a broken bank connection, before Plaid can properly assess the risk. You need to launch Link in update mode to complete the required user action. When calling &#x60;/link/token/create&#x60; to get a new Link token, instead of providing &#x60;access_token&#x60; in the request, you should set [&#x60;transfer.authorization_id&#x60;](plaid.com/docs/api/link/#link-token-create-request-transfer-authorization-id) as the &#x60;authorization.id&#x60;. After the Link flow is completed, you may re-attempt the authorization. - If the &#x60;authorization.decision&#x60; is &#x60;approved&#x60;, and the &#x60;authorization.rationale_code&#x60; is &#x60;null&#x60;, the transfer has passed the risk check and you can proceed to call &#x60;/transfer/create&#x60;. - If the &#x60;authorization.decision&#x60; is &#x60;approved&#x60; and the &#x60;authorization.rationale_code&#x60; is non-&#x60;null&#x60;, the risk check could not be run: you may proceed with the transfer, but should perform your own risk evaluation. For more details, see the response schema. In Plaid&#39;s Sandbox environment the decisions will be returned as follows: - To approve a transfer with &#x60;null&#x60; rationale code, make an authorization request with an &#x60;amount&#x60; less than the available balance in the account. - To approve a transfer with the rationale code &#x60;MANUALLY_VERIFIED_ITEM&#x60;, create an Item in Link through the [Same Day Micro-deposits flow](plaid.com/docs/auth/coverage/testing/#testing-same-day-micro-deposits). - To get an authorization decision of &#x60;user_action_required&#x60;, [reset the login for an Item](plaid.com/docs/sandbox/#item_login_required). - To decline a transfer with the rationale code &#x60;NSF&#x60;, the available balance on the account must be less than the authorization &#x60;amount&#x60;. See [Create Sandbox test data](plaid.com/docs/sandbox/user-custom/) for details on how to customize data in Sandbox. - To decline a transfer with the rationale code &#x60;RISK&#x60;, the available balance on the account must be exactly $0. See [Create Sandbox test data](plaid.com/docs/sandbox/user-custom/) for details on how to customize data in Sandbox. @param transfer_authorization_create_request [TransferAuthorizationCreateRequest] @param [Hash] opts the optional parameters @return [Array<(TransferAuthorizationCreateResponse, Integer, Hash)>] TransferAuthorizationCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 14916
def transfer_authorization_create_with_http_info(transfer_authorization_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_authorization_create ...'
  end
  # verify the required parameter 'transfer_authorization_create_request' is set
  if @api_client.config.client_side_validation && transfer_authorization_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_authorization_create_request' when calling PlaidApi.transfer_authorization_create"
  end
  # resource path
  local_var_path = '/transfer/authorization/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_authorization_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferAuthorizationCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_authorization_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_authorization_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_balance_get(transfer_balance_get_request, opts = {}) click to toggle source

(Deprecated) Retrieve a balance held with Plaid (Deprecated) Use the ‘/transfer/balance/get` endpoint to view a balance held with Plaid. @param transfer_balance_get_request [TransferBalanceGetRequest] @param [Hash] opts the optional parameters @return [TransferBalanceGetResponse]

# File lib/plaid/api/plaid_api.rb, line 14974
def transfer_balance_get(transfer_balance_get_request, opts = {})
  data, _status_code, _headers = transfer_balance_get_with_http_info(transfer_balance_get_request, opts)
  data
end
transfer_balance_get_with_http_info(transfer_balance_get_request, opts = {}) click to toggle source

(Deprecated) Retrieve a balance held with Plaid (Deprecated) Use the &#x60;/transfer/balance/get&#x60; endpoint to view a balance held with Plaid. @param transfer_balance_get_request [TransferBalanceGetRequest] @param [Hash] opts the optional parameters @return [Array<(TransferBalanceGetResponse, Integer, Hash)>] TransferBalanceGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 14984
def transfer_balance_get_with_http_info(transfer_balance_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_balance_get ...'
  end
  # verify the required parameter 'transfer_balance_get_request' is set
  if @api_client.config.client_side_validation && transfer_balance_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_balance_get_request' when calling PlaidApi.transfer_balance_get"
  end
  # resource path
  local_var_path = '/transfer/balance/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_balance_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferBalanceGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_balance_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_balance_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_cancel(transfer_cancel_request, opts = {}) click to toggle source

Cancel a transfer Use the ‘/transfer/cancel` endpoint to cancel a transfer. A transfer is eligible for cancellation if the `cancellable` property returned by `/transfer/get` is `true`. @param transfer_cancel_request [TransferCancelRequest] @param [Hash] opts the optional parameters @return [TransferCancelResponse]

# File lib/plaid/api/plaid_api.rb, line 15042
def transfer_cancel(transfer_cancel_request, opts = {})
  data, _status_code, _headers = transfer_cancel_with_http_info(transfer_cancel_request, opts)
  data
end
transfer_cancel_with_http_info(transfer_cancel_request, opts = {}) click to toggle source

Cancel a transfer Use the &#x60;/transfer/cancel&#x60; endpoint to cancel a transfer. A transfer is eligible for cancellation if the &#x60;cancellable&#x60; property returned by &#x60;/transfer/get&#x60; is &#x60;true&#x60;. @param transfer_cancel_request [TransferCancelRequest] @param [Hash] opts the optional parameters @return [Array<(TransferCancelResponse, Integer, Hash)>] TransferCancelResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 15052
def transfer_cancel_with_http_info(transfer_cancel_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_cancel ...'
  end
  # verify the required parameter 'transfer_cancel_request' is set
  if @api_client.config.client_side_validation && transfer_cancel_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_cancel_request' when calling PlaidApi.transfer_cancel"
  end
  # resource path
  local_var_path = '/transfer/cancel'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_cancel_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferCancelResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_cancel",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_cancel\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_capabilities_get(transfer_capabilities_get_request, opts = {}) click to toggle source

Get RTP eligibility information of a transfer Use the ‘/transfer/capabilities/get` endpoint to determine the RTP eligibility information of an account to be used with Transfer. This endpoint works on all Transfer-capable Items, including those created by `/transfer/migrate_account`. To simulate RTP eligibility in Sandbox, log in using the username `user_good` and password `pass_good` and use the first two checking and savings accounts in the "First Platypus Bank" institution (ending in 0000 or 1111), which will return `true`. Any other account will return `false`. @param transfer_capabilities_get_request [TransferCapabilitiesGetRequest] @param [Hash] opts the optional parameters @return [TransferCapabilitiesGetResponse]

# File lib/plaid/api/plaid_api.rb, line 15110
def transfer_capabilities_get(transfer_capabilities_get_request, opts = {})
  data, _status_code, _headers = transfer_capabilities_get_with_http_info(transfer_capabilities_get_request, opts)
  data
end
transfer_capabilities_get_with_http_info(transfer_capabilities_get_request, opts = {}) click to toggle source

Get RTP eligibility information of a transfer Use the &#x60;/transfer/capabilities/get&#x60; endpoint to determine the RTP eligibility information of an account to be used with Transfer. This endpoint works on all Transfer-capable Items, including those created by &#x60;/transfer/migrate_account&#x60;. To simulate RTP eligibility in Sandbox, log in using the username &#x60;user_good&#x60; and password &#x60;pass_good&#x60; and use the first two checking and savings accounts in the "First Platypus Bank&quot; institution (ending in 0000 or 1111), which will return &#x60;true&#x60;. Any other account will return &#x60;false&#x60;. @param transfer_capabilities_get_request [TransferCapabilitiesGetRequest] @param [Hash] opts the optional parameters @return [Array<(TransferCapabilitiesGetResponse, Integer, Hash)>] TransferCapabilitiesGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 15120
def transfer_capabilities_get_with_http_info(transfer_capabilities_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_capabilities_get ...'
  end
  # verify the required parameter 'transfer_capabilities_get_request' is set
  if @api_client.config.client_side_validation && transfer_capabilities_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_capabilities_get_request' when calling PlaidApi.transfer_capabilities_get"
  end
  # resource path
  local_var_path = '/transfer/capabilities/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_capabilities_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferCapabilitiesGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_capabilities_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_capabilities_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_configuration_get(transfer_configuration_get_request, opts = {}) click to toggle source

Get transfer product configuration Use the ‘/transfer/configuration/get` endpoint to view your transfer product configurations. @param transfer_configuration_get_request [TransferConfigurationGetRequest] @param [Hash] opts the optional parameters @return [TransferConfigurationGetResponse]

# File lib/plaid/api/plaid_api.rb, line 15178
def transfer_configuration_get(transfer_configuration_get_request, opts = {})
  data, _status_code, _headers = transfer_configuration_get_with_http_info(transfer_configuration_get_request, opts)
  data
end
transfer_configuration_get_with_http_info(transfer_configuration_get_request, opts = {}) click to toggle source

Get transfer product configuration Use the &#x60;/transfer/configuration/get&#x60; endpoint to view your transfer product configurations. @param transfer_configuration_get_request [TransferConfigurationGetRequest] @param [Hash] opts the optional parameters @return [Array<(TransferConfigurationGetResponse, Integer, Hash)>] TransferConfigurationGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 15188
def transfer_configuration_get_with_http_info(transfer_configuration_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_configuration_get ...'
  end
  # verify the required parameter 'transfer_configuration_get_request' is set
  if @api_client.config.client_side_validation && transfer_configuration_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_configuration_get_request' when calling PlaidApi.transfer_configuration_get"
  end
  # resource path
  local_var_path = '/transfer/configuration/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_configuration_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferConfigurationGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_configuration_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_configuration_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_create(transfer_create_request, opts = {}) click to toggle source

Create a transfer Use the ‘/transfer/create` endpoint to initiate a new transfer. This endpoint is retryable and idempotent; if a transfer with the provided `transfer_id` has already been created, it will return the transfer details without creating a new transfer. A transfer may still be created if a 500 error is returned; to detect this scenario, use [Transfer events](plaid.com/docs/transfer/reconciling-transfers/). @param transfer_create_request [TransferCreateRequest] @param [Hash] opts the optional parameters @return [TransferCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 15246
def transfer_create(transfer_create_request, opts = {})
  data, _status_code, _headers = transfer_create_with_http_info(transfer_create_request, opts)
  data
end
transfer_create_with_http_info(transfer_create_request, opts = {}) click to toggle source

Create a transfer Use the &#x60;/transfer/create&#x60; endpoint to initiate a new transfer. This endpoint is retryable and idempotent; if a transfer with the provided &#x60;transfer_id&#x60; has already been created, it will return the transfer details without creating a new transfer. A transfer may still be created if a 500 error is returned; to detect this scenario, use [Transfer events](plaid.com/docs/transfer/reconciling-transfers/). @param transfer_create_request [TransferCreateRequest] @param [Hash] opts the optional parameters @return [Array<(TransferCreateResponse, Integer, Hash)>] TransferCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 15256
def transfer_create_with_http_info(transfer_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_create ...'
  end
  # verify the required parameter 'transfer_create_request' is set
  if @api_client.config.client_side_validation && transfer_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_create_request' when calling PlaidApi.transfer_create"
  end
  # resource path
  local_var_path = '/transfer/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_diligence_document_upload(transfer_diligence_document_upload_request, opts = {}) click to toggle source

Upload transfer diligence document on behalf of the originator Third-party sender customers can use ‘/transfer/diligence/document/upload` endpoint to upload a document on behalf of its end customer (i.e. originator) to Plaid. You’ll need to send a request of type multipart/form-data. You must provide the `client_id` in the `PLAID-CLIENT-ID` header and `secret` in the `PLAID-SECRET` header. @param transfer_diligence_document_upload_request [TransferDiligenceDocumentUploadRequest] @param [Hash] opts the optional parameters @return [TransferDiligenceDocumentUploadResponse]

# File lib/plaid/api/plaid_api.rb, line 15314
def transfer_diligence_document_upload(transfer_diligence_document_upload_request, opts = {})
  data, _status_code, _headers = transfer_diligence_document_upload_with_http_info(transfer_diligence_document_upload_request, opts)
  data
end
transfer_diligence_document_upload_with_http_info(transfer_diligence_document_upload_request, opts = {}) click to toggle source

Upload transfer diligence document on behalf of the originator Third-party sender customers can use &#x60;/transfer/diligence/document/upload&#x60; endpoint to upload a document on behalf of its end customer (i.e. originator) to Plaid. You’ll need to send a request of type multipart/form-data. You must provide the &#x60;client_id&#x60; in the &#x60;PLAID-CLIENT-ID&#x60; header and &#x60;secret&#x60; in the &#x60;PLAID-SECRET&#x60; header. @param transfer_diligence_document_upload_request [TransferDiligenceDocumentUploadRequest] @param [Hash] opts the optional parameters @return [Array<(TransferDiligenceDocumentUploadResponse, Integer, Hash)>] TransferDiligenceDocumentUploadResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 15324
def transfer_diligence_document_upload_with_http_info(transfer_diligence_document_upload_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_diligence_document_upload ...'
  end
  # verify the required parameter 'transfer_diligence_document_upload_request' is set
  if @api_client.config.client_side_validation && transfer_diligence_document_upload_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_diligence_document_upload_request' when calling PlaidApi.transfer_diligence_document_upload"
  end
  # resource path
  local_var_path = '/transfer/diligence/document/upload'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_diligence_document_upload_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferDiligenceDocumentUploadResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_diligence_document_upload",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_diligence_document_upload\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_diligence_submit(transfer_diligence_submit_request, opts = {}) click to toggle source

Submit transfer diligence on behalf of the originator Use the ‘/transfer/diligence/submit` endpoint to submit transfer diligence on behalf of the originator (i.e., the end customer). @param transfer_diligence_submit_request [TransferDiligenceSubmitRequest] @param [Hash] opts the optional parameters @return [TransferDiligenceSubmitResponse]

# File lib/plaid/api/plaid_api.rb, line 15382
def transfer_diligence_submit(transfer_diligence_submit_request, opts = {})
  data, _status_code, _headers = transfer_diligence_submit_with_http_info(transfer_diligence_submit_request, opts)
  data
end
transfer_diligence_submit_with_http_info(transfer_diligence_submit_request, opts = {}) click to toggle source

Submit transfer diligence on behalf of the originator Use the &#x60;/transfer/diligence/submit&#x60; endpoint to submit transfer diligence on behalf of the originator (i.e., the end customer). @param transfer_diligence_submit_request [TransferDiligenceSubmitRequest] @param [Hash] opts the optional parameters @return [Array<(TransferDiligenceSubmitResponse, Integer, Hash)>] TransferDiligenceSubmitResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 15392
def transfer_diligence_submit_with_http_info(transfer_diligence_submit_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_diligence_submit ...'
  end
  # verify the required parameter 'transfer_diligence_submit_request' is set
  if @api_client.config.client_side_validation && transfer_diligence_submit_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_diligence_submit_request' when calling PlaidApi.transfer_diligence_submit"
  end
  # resource path
  local_var_path = '/transfer/diligence/submit'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_diligence_submit_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferDiligenceSubmitResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_diligence_submit",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_diligence_submit\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_event_list(transfer_event_list_request, opts = {}) click to toggle source

List transfer events Use the ‘/transfer/event/list` endpoint to get a list of transfer events based on specified filter criteria. @param transfer_event_list_request [TransferEventListRequest] @param [Hash] opts the optional parameters @return [TransferEventListResponse]

# File lib/plaid/api/plaid_api.rb, line 15450
def transfer_event_list(transfer_event_list_request, opts = {})
  data, _status_code, _headers = transfer_event_list_with_http_info(transfer_event_list_request, opts)
  data
end
transfer_event_list_with_http_info(transfer_event_list_request, opts = {}) click to toggle source

List transfer events Use the &#x60;/transfer/event/list&#x60; endpoint to get a list of transfer events based on specified filter criteria. @param transfer_event_list_request [TransferEventListRequest] @param [Hash] opts the optional parameters @return [Array<(TransferEventListResponse, Integer, Hash)>] TransferEventListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 15460
def transfer_event_list_with_http_info(transfer_event_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_event_list ...'
  end
  # verify the required parameter 'transfer_event_list_request' is set
  if @api_client.config.client_side_validation && transfer_event_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_event_list_request' when calling PlaidApi.transfer_event_list"
  end
  # resource path
  local_var_path = '/transfer/event/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_event_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferEventListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_event_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_event_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_event_sync(transfer_event_sync_request, opts = {}) click to toggle source

Sync transfer events ‘/transfer/event/sync` allows you to request up to the next 25 transfer events that happened after a specific `event_id`. Use the `/transfer/event/sync` endpoint to guarantee you have seen all transfer events. @param transfer_event_sync_request [TransferEventSyncRequest] @param [Hash] opts the optional parameters @return [TransferEventSyncResponse]

# File lib/plaid/api/plaid_api.rb, line 15518
def transfer_event_sync(transfer_event_sync_request, opts = {})
  data, _status_code, _headers = transfer_event_sync_with_http_info(transfer_event_sync_request, opts)
  data
end
transfer_event_sync_with_http_info(transfer_event_sync_request, opts = {}) click to toggle source

Sync transfer events &#x60;/transfer/event/sync&#x60; allows you to request up to the next 25 transfer events that happened after a specific &#x60;event_id&#x60;. Use the &#x60;/transfer/event/sync&#x60; endpoint to guarantee you have seen all transfer events. @param transfer_event_sync_request [TransferEventSyncRequest] @param [Hash] opts the optional parameters @return [Array<(TransferEventSyncResponse, Integer, Hash)>] TransferEventSyncResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 15528
def transfer_event_sync_with_http_info(transfer_event_sync_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_event_sync ...'
  end
  # verify the required parameter 'transfer_event_sync_request' is set
  if @api_client.config.client_side_validation && transfer_event_sync_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_event_sync_request' when calling PlaidApi.transfer_event_sync"
  end
  # resource path
  local_var_path = '/transfer/event/sync'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_event_sync_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferEventSyncResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_event_sync",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_event_sync\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_get(transfer_get_request, opts = {}) click to toggle source

Retrieve a transfer The ‘/transfer/get` endpoint fetches information about the transfer corresponding to the given `transfer_id` or `authorization_id`. One of `transfer_id` or `authorization_id` must be populated but not both. @param transfer_get_request [TransferGetRequest] @param [Hash] opts the optional parameters @return [TransferGetResponse]

# File lib/plaid/api/plaid_api.rb, line 15586
def transfer_get(transfer_get_request, opts = {})
  data, _status_code, _headers = transfer_get_with_http_info(transfer_get_request, opts)
  data
end
transfer_get_with_http_info(transfer_get_request, opts = {}) click to toggle source

Retrieve a transfer The &#x60;/transfer/get&#x60; endpoint fetches information about the transfer corresponding to the given &#x60;transfer_id&#x60; or &#x60;authorization_id&#x60;. One of &#x60;transfer_id&#x60; or &#x60;authorization_id&#x60; must be populated but not both. @param transfer_get_request [TransferGetRequest] @param [Hash] opts the optional parameters @return [Array<(TransferGetResponse, Integer, Hash)>] TransferGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 15596
def transfer_get_with_http_info(transfer_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_get ...'
  end
  # verify the required parameter 'transfer_get_request' is set
  if @api_client.config.client_side_validation && transfer_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_get_request' when calling PlaidApi.transfer_get"
  end
  # resource path
  local_var_path = '/transfer/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_intent_create(transfer_intent_create_request, opts = {}) click to toggle source

Create a transfer intent object to invoke the Transfer UI Use the ‘/transfer/intent/create` endpoint to generate a transfer intent object and invoke the Transfer UI. @param transfer_intent_create_request [TransferIntentCreateRequest] @param [Hash] opts the optional parameters @return [TransferIntentCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 15654
def transfer_intent_create(transfer_intent_create_request, opts = {})
  data, _status_code, _headers = transfer_intent_create_with_http_info(transfer_intent_create_request, opts)
  data
end
transfer_intent_create_with_http_info(transfer_intent_create_request, opts = {}) click to toggle source

Create a transfer intent object to invoke the Transfer UI Use the &#x60;/transfer/intent/create&#x60; endpoint to generate a transfer intent object and invoke the Transfer UI. @param transfer_intent_create_request [TransferIntentCreateRequest] @param [Hash] opts the optional parameters @return [Array<(TransferIntentCreateResponse, Integer, Hash)>] TransferIntentCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 15664
def transfer_intent_create_with_http_info(transfer_intent_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_intent_create ...'
  end
  # verify the required parameter 'transfer_intent_create_request' is set
  if @api_client.config.client_side_validation && transfer_intent_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_intent_create_request' when calling PlaidApi.transfer_intent_create"
  end
  # resource path
  local_var_path = '/transfer/intent/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_intent_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferIntentCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_intent_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_intent_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_intent_get(transfer_intent_get_request, opts = {}) click to toggle source

Retrieve more information about a transfer intent Use the ‘/transfer/intent/get` endpoint to retrieve more information about a transfer intent. @param transfer_intent_get_request [TransferIntentGetRequest] @param [Hash] opts the optional parameters @return [TransferIntentGetResponse]

# File lib/plaid/api/plaid_api.rb, line 15722
def transfer_intent_get(transfer_intent_get_request, opts = {})
  data, _status_code, _headers = transfer_intent_get_with_http_info(transfer_intent_get_request, opts)
  data
end
transfer_intent_get_with_http_info(transfer_intent_get_request, opts = {}) click to toggle source

Retrieve more information about a transfer intent Use the &#x60;/transfer/intent/get&#x60; endpoint to retrieve more information about a transfer intent. @param transfer_intent_get_request [TransferIntentGetRequest] @param [Hash] opts the optional parameters @return [Array<(TransferIntentGetResponse, Integer, Hash)>] TransferIntentGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 15732
def transfer_intent_get_with_http_info(transfer_intent_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_intent_get ...'
  end
  # verify the required parameter 'transfer_intent_get_request' is set
  if @api_client.config.client_side_validation && transfer_intent_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_intent_get_request' when calling PlaidApi.transfer_intent_get"
  end
  # resource path
  local_var_path = '/transfer/intent/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_intent_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferIntentGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_intent_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_intent_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_ledger_deposit(transfer_ledger_deposit_request, opts = {}) click to toggle source

Deposit funds into a Plaid Ledger balance Use the ‘/transfer/ledger/deposit` endpoint to deposit funds into Plaid Ledger. @param transfer_ledger_deposit_request [TransferLedgerDepositRequest] @param [Hash] opts the optional parameters @return [TransferLedgerDepositResponse]

# File lib/plaid/api/plaid_api.rb, line 15790
def transfer_ledger_deposit(transfer_ledger_deposit_request, opts = {})
  data, _status_code, _headers = transfer_ledger_deposit_with_http_info(transfer_ledger_deposit_request, opts)
  data
end
transfer_ledger_deposit_with_http_info(transfer_ledger_deposit_request, opts = {}) click to toggle source

Deposit funds into a Plaid Ledger balance Use the &#x60;/transfer/ledger/deposit&#x60; endpoint to deposit funds into Plaid Ledger. @param transfer_ledger_deposit_request [TransferLedgerDepositRequest] @param [Hash] opts the optional parameters @return [Array<(TransferLedgerDepositResponse, Integer, Hash)>] TransferLedgerDepositResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 15800
def transfer_ledger_deposit_with_http_info(transfer_ledger_deposit_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_ledger_deposit ...'
  end
  # verify the required parameter 'transfer_ledger_deposit_request' is set
  if @api_client.config.client_side_validation && transfer_ledger_deposit_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_ledger_deposit_request' when calling PlaidApi.transfer_ledger_deposit"
  end
  # resource path
  local_var_path = '/transfer/ledger/deposit'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_ledger_deposit_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferLedgerDepositResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_ledger_deposit",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_ledger_deposit\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_ledger_distribute(transfer_ledger_distribute_request, opts = {}) click to toggle source

Move available balance between the ledgers of the platform and one of its originators Use the ‘/transfer/ledger/distribute` endpoint to move available balance between the ledgers of the platform and one of its originators. @param transfer_ledger_distribute_request [TransferLedgerDistributeRequest] @param [Hash] opts the optional parameters @return [TransferLedgerDistributeResponse]

# File lib/plaid/api/plaid_api.rb, line 15858
def transfer_ledger_distribute(transfer_ledger_distribute_request, opts = {})
  data, _status_code, _headers = transfer_ledger_distribute_with_http_info(transfer_ledger_distribute_request, opts)
  data
end
transfer_ledger_distribute_with_http_info(transfer_ledger_distribute_request, opts = {}) click to toggle source

Move available balance between the ledgers of the platform and one of its originators Use the &#x60;/transfer/ledger/distribute&#x60; endpoint to move available balance between the ledgers of the platform and one of its originators. @param transfer_ledger_distribute_request [TransferLedgerDistributeRequest] @param [Hash] opts the optional parameters @return [Array<(TransferLedgerDistributeResponse, Integer, Hash)>] TransferLedgerDistributeResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 15868
def transfer_ledger_distribute_with_http_info(transfer_ledger_distribute_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_ledger_distribute ...'
  end
  # verify the required parameter 'transfer_ledger_distribute_request' is set
  if @api_client.config.client_side_validation && transfer_ledger_distribute_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_ledger_distribute_request' when calling PlaidApi.transfer_ledger_distribute"
  end
  # resource path
  local_var_path = '/transfer/ledger/distribute'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_ledger_distribute_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferLedgerDistributeResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_ledger_distribute",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_ledger_distribute\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_ledger_get(transfer_ledger_get_request, opts = {}) click to toggle source

Retrieve Plaid Ledger balance Use the ‘/transfer/ledger/get` endpoint to view a balance on the ledger held with Plaid. @param transfer_ledger_get_request [TransferLedgerGetRequest] @param [Hash] opts the optional parameters @return [TransferLedgerGetResponse]

# File lib/plaid/api/plaid_api.rb, line 15926
def transfer_ledger_get(transfer_ledger_get_request, opts = {})
  data, _status_code, _headers = transfer_ledger_get_with_http_info(transfer_ledger_get_request, opts)
  data
end
transfer_ledger_get_with_http_info(transfer_ledger_get_request, opts = {}) click to toggle source

Retrieve Plaid Ledger balance Use the &#x60;/transfer/ledger/get&#x60; endpoint to view a balance on the ledger held with Plaid. @param transfer_ledger_get_request [TransferLedgerGetRequest] @param [Hash] opts the optional parameters @return [Array<(TransferLedgerGetResponse, Integer, Hash)>] TransferLedgerGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 15936
def transfer_ledger_get_with_http_info(transfer_ledger_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_ledger_get ...'
  end
  # verify the required parameter 'transfer_ledger_get_request' is set
  if @api_client.config.client_side_validation && transfer_ledger_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_ledger_get_request' when calling PlaidApi.transfer_ledger_get"
  end
  # resource path
  local_var_path = '/transfer/ledger/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_ledger_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferLedgerGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_ledger_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_ledger_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_ledger_withdraw(transfer_ledger_withdraw_request, opts = {}) click to toggle source

Withdraw funds from a Plaid Ledger balance Use the ‘/transfer/ledger/withdraw` endpoint to withdraw funds from a Plaid Ledger balance. @param transfer_ledger_withdraw_request [TransferLedgerWithdrawRequest] @param [Hash] opts the optional parameters @return [TransferLedgerWithdrawResponse]

# File lib/plaid/api/plaid_api.rb, line 15994
def transfer_ledger_withdraw(transfer_ledger_withdraw_request, opts = {})
  data, _status_code, _headers = transfer_ledger_withdraw_with_http_info(transfer_ledger_withdraw_request, opts)
  data
end
transfer_ledger_withdraw_with_http_info(transfer_ledger_withdraw_request, opts = {}) click to toggle source

Withdraw funds from a Plaid Ledger balance Use the &#x60;/transfer/ledger/withdraw&#x60; endpoint to withdraw funds from a Plaid Ledger balance. @param transfer_ledger_withdraw_request [TransferLedgerWithdrawRequest] @param [Hash] opts the optional parameters @return [Array<(TransferLedgerWithdrawResponse, Integer, Hash)>] TransferLedgerWithdrawResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 16004
def transfer_ledger_withdraw_with_http_info(transfer_ledger_withdraw_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_ledger_withdraw ...'
  end
  # verify the required parameter 'transfer_ledger_withdraw_request' is set
  if @api_client.config.client_side_validation && transfer_ledger_withdraw_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_ledger_withdraw_request' when calling PlaidApi.transfer_ledger_withdraw"
  end
  # resource path
  local_var_path = '/transfer/ledger/withdraw'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_ledger_withdraw_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferLedgerWithdrawResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_ledger_withdraw",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_ledger_withdraw\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_list(transfer_list_request, opts = {}) click to toggle source

List transfers Use the ‘/transfer/list` endpoint to see a list of all your transfers and their statuses. Results are paginated; use the `count` and `offset` query parameters to retrieve the desired transfers. @param transfer_list_request [TransferListRequest] @param [Hash] opts the optional parameters @return [TransferListResponse]

# File lib/plaid/api/plaid_api.rb, line 16062
def transfer_list(transfer_list_request, opts = {})
  data, _status_code, _headers = transfer_list_with_http_info(transfer_list_request, opts)
  data
end
transfer_list_with_http_info(transfer_list_request, opts = {}) click to toggle source

List transfers Use the &#x60;/transfer/list&#x60; endpoint to see a list of all your transfers and their statuses. Results are paginated; use the &#x60;count&#x60; and &#x60;offset&#x60; query parameters to retrieve the desired transfers. @param transfer_list_request [TransferListRequest] @param [Hash] opts the optional parameters @return [Array<(TransferListResponse, Integer, Hash)>] TransferListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 16072
def transfer_list_with_http_info(transfer_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_list ...'
  end
  # verify the required parameter 'transfer_list_request' is set
  if @api_client.config.client_side_validation && transfer_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_list_request' when calling PlaidApi.transfer_list"
  end
  # resource path
  local_var_path = '/transfer/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_metrics_get(transfer_metrics_get_request, opts = {}) click to toggle source

Get transfer product usage metrics Use the ‘/transfer/metrics/get` endpoint to view your transfer product usage metrics. @param transfer_metrics_get_request [TransferMetricsGetRequest] @param [Hash] opts the optional parameters @return [TransferMetricsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 16130
def transfer_metrics_get(transfer_metrics_get_request, opts = {})
  data, _status_code, _headers = transfer_metrics_get_with_http_info(transfer_metrics_get_request, opts)
  data
end
transfer_metrics_get_with_http_info(transfer_metrics_get_request, opts = {}) click to toggle source

Get transfer product usage metrics Use the &#x60;/transfer/metrics/get&#x60; endpoint to view your transfer product usage metrics. @param transfer_metrics_get_request [TransferMetricsGetRequest] @param [Hash] opts the optional parameters @return [Array<(TransferMetricsGetResponse, Integer, Hash)>] TransferMetricsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 16140
def transfer_metrics_get_with_http_info(transfer_metrics_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_metrics_get ...'
  end
  # verify the required parameter 'transfer_metrics_get_request' is set
  if @api_client.config.client_side_validation && transfer_metrics_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_metrics_get_request' when calling PlaidApi.transfer_metrics_get"
  end
  # resource path
  local_var_path = '/transfer/metrics/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_metrics_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferMetricsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_metrics_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_metrics_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_migrate_account(transfer_migrate_account_request, opts = {}) click to toggle source

Migrate account into Transfers As an alternative to adding Items via Link, you can also use the ‘/transfer/migrate_account` endpoint to migrate known account and routing numbers to Plaid Items. This endpoint is also required when adding an Item for use with wire transfers; if you intend to create wire transfers on this account, you must provide `wire_routing_number`. Note that Items created in this way are not compatible with endpoints for other products, such as `/accounts/balance/get`, and can only be used with Transfer endpoints. If you require access to other endpoints, create the Item through Link instead. Access to `/transfer/migrate_account` is not enabled by default; to obtain access, contact your Plaid Account Manager. @param transfer_migrate_account_request [TransferMigrateAccountRequest] @param [Hash] opts the optional parameters @return [TransferMigrateAccountResponse]

# File lib/plaid/api/plaid_api.rb, line 16198
def transfer_migrate_account(transfer_migrate_account_request, opts = {})
  data, _status_code, _headers = transfer_migrate_account_with_http_info(transfer_migrate_account_request, opts)
  data
end
transfer_migrate_account_with_http_info(transfer_migrate_account_request, opts = {}) click to toggle source

Migrate account into Transfers As an alternative to adding Items via Link, you can also use the &#x60;/transfer/migrate_account&#x60; endpoint to migrate known account and routing numbers to Plaid Items. This endpoint is also required when adding an Item for use with wire transfers; if you intend to create wire transfers on this account, you must provide &#x60;wire_routing_number&#x60;. Note that Items created in this way are not compatible with endpoints for other products, such as &#x60;/accounts/balance/get&#x60;, and can only be used with Transfer endpoints. If you require access to other endpoints, create the Item through Link instead. Access to &#x60;/transfer/migrate_account&#x60; is not enabled by default; to obtain access, contact your Plaid Account Manager. @param transfer_migrate_account_request [TransferMigrateAccountRequest] @param [Hash] opts the optional parameters @return [Array<(TransferMigrateAccountResponse, Integer, Hash)>] TransferMigrateAccountResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 16208
def transfer_migrate_account_with_http_info(transfer_migrate_account_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_migrate_account ...'
  end
  # verify the required parameter 'transfer_migrate_account_request' is set
  if @api_client.config.client_side_validation && transfer_migrate_account_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_migrate_account_request' when calling PlaidApi.transfer_migrate_account"
  end
  # resource path
  local_var_path = '/transfer/migrate_account'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_migrate_account_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferMigrateAccountResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_migrate_account",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_migrate_account\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_originator_create(transfer_originator_create_request, opts = {}) click to toggle source

Create a new originator Use the ‘/transfer/originator/create` endpoint to create a new originator and return an `originator_client_id`. @param transfer_originator_create_request [TransferOriginatorCreateRequest] @param [Hash] opts the optional parameters @return [TransferOriginatorCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 16266
def transfer_originator_create(transfer_originator_create_request, opts = {})
  data, _status_code, _headers = transfer_originator_create_with_http_info(transfer_originator_create_request, opts)
  data
end
transfer_originator_create_with_http_info(transfer_originator_create_request, opts = {}) click to toggle source

Create a new originator Use the &#x60;/transfer/originator/create&#x60; endpoint to create a new originator and return an &#x60;originator_client_id&#x60;. @param transfer_originator_create_request [TransferOriginatorCreateRequest] @param [Hash] opts the optional parameters @return [Array<(TransferOriginatorCreateResponse, Integer, Hash)>] TransferOriginatorCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 16276
def transfer_originator_create_with_http_info(transfer_originator_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_originator_create ...'
  end
  # verify the required parameter 'transfer_originator_create_request' is set
  if @api_client.config.client_side_validation && transfer_originator_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_originator_create_request' when calling PlaidApi.transfer_originator_create"
  end
  # resource path
  local_var_path = '/transfer/originator/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_originator_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferOriginatorCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_originator_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_originator_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_originator_funding_account_update(transfer_originator_funding_account_update_request, opts = {}) click to toggle source

Update the funding account associated with the originator Use the ‘/transfer/originator/funding_account/update` endpoint to update the funding account associated with the originator. @param transfer_originator_funding_account_update_request [TransferOriginatorFundingAccountUpdateRequest] @param [Hash] opts the optional parameters @return [TransferOriginatorFundingAccountUpdateResponse]

# File lib/plaid/api/plaid_api.rb, line 16334
def transfer_originator_funding_account_update(transfer_originator_funding_account_update_request, opts = {})
  data, _status_code, _headers = transfer_originator_funding_account_update_with_http_info(transfer_originator_funding_account_update_request, opts)
  data
end
transfer_originator_funding_account_update_with_http_info(transfer_originator_funding_account_update_request, opts = {}) click to toggle source

Update the funding account associated with the originator Use the &#x60;/transfer/originator/funding_account/update&#x60; endpoint to update the funding account associated with the originator. @param transfer_originator_funding_account_update_request [TransferOriginatorFundingAccountUpdateRequest] @param [Hash] opts the optional parameters @return [Array<(TransferOriginatorFundingAccountUpdateResponse, Integer, Hash)>] TransferOriginatorFundingAccountUpdateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 16344
def transfer_originator_funding_account_update_with_http_info(transfer_originator_funding_account_update_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_originator_funding_account_update ...'
  end
  # verify the required parameter 'transfer_originator_funding_account_update_request' is set
  if @api_client.config.client_side_validation && transfer_originator_funding_account_update_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_originator_funding_account_update_request' when calling PlaidApi.transfer_originator_funding_account_update"
  end
  # resource path
  local_var_path = '/transfer/originator/funding_account/update'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_originator_funding_account_update_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferOriginatorFundingAccountUpdateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_originator_funding_account_update",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_originator_funding_account_update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_originator_get(transfer_originator_get_request, opts = {}) click to toggle source

Get status of an originator’s onboarding The ‘/transfer/originator/get` endpoint gets status updates for an originator’s onboarding process. This information is also available via the Transfer page on the Plaid dashboard. @param transfer_originator_get_request [TransferOriginatorGetRequest] @param [Hash] opts the optional parameters @return [TransferOriginatorGetResponse]

# File lib/plaid/api/plaid_api.rb, line 16402
def transfer_originator_get(transfer_originator_get_request, opts = {})
  data, _status_code, _headers = transfer_originator_get_with_http_info(transfer_originator_get_request, opts)
  data
end
transfer_originator_get_with_http_info(transfer_originator_get_request, opts = {}) click to toggle source

Get status of an originator&#39;s onboarding The &#x60;/transfer/originator/get&#x60; endpoint gets status updates for an originator&#39;s onboarding process. This information is also available via the Transfer page on the Plaid dashboard. @param transfer_originator_get_request [TransferOriginatorGetRequest] @param [Hash] opts the optional parameters @return [Array<(TransferOriginatorGetResponse, Integer, Hash)>] TransferOriginatorGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 16412
def transfer_originator_get_with_http_info(transfer_originator_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_originator_get ...'
  end
  # verify the required parameter 'transfer_originator_get_request' is set
  if @api_client.config.client_side_validation && transfer_originator_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_originator_get_request' when calling PlaidApi.transfer_originator_get"
  end
  # resource path
  local_var_path = '/transfer/originator/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json', 'examples'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_originator_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferOriginatorGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_originator_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_originator_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_originator_list(transfer_originator_list_request, opts = {}) click to toggle source

Get status of all originators’ onboarding The ‘/transfer/originator/list` endpoint gets status updates for all of your originators’ onboarding. This information is also available via the Plaid dashboard. @param transfer_originator_list_request [TransferOriginatorListRequest] @param [Hash] opts the optional parameters @return [TransferOriginatorListResponse]

# File lib/plaid/api/plaid_api.rb, line 16470
def transfer_originator_list(transfer_originator_list_request, opts = {})
  data, _status_code, _headers = transfer_originator_list_with_http_info(transfer_originator_list_request, opts)
  data
end
transfer_originator_list_with_http_info(transfer_originator_list_request, opts = {}) click to toggle source

Get status of all originators&#39; onboarding The &#x60;/transfer/originator/list&#x60; endpoint gets status updates for all of your originators&#39; onboarding. This information is also available via the Plaid dashboard. @param transfer_originator_list_request [TransferOriginatorListRequest] @param [Hash] opts the optional parameters @return [Array<(TransferOriginatorListResponse, Integer, Hash)>] TransferOriginatorListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 16480
def transfer_originator_list_with_http_info(transfer_originator_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_originator_list ...'
  end
  # verify the required parameter 'transfer_originator_list_request' is set
  if @api_client.config.client_side_validation && transfer_originator_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_originator_list_request' when calling PlaidApi.transfer_originator_list"
  end
  # resource path
  local_var_path = '/transfer/originator/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_originator_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferOriginatorListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_originator_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_originator_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_platform_originator_create(transfer_platform_originator_create_request, opts = {}) click to toggle source

Create an originator for scaled platform customers The ‘/transfer/platform/originator/create` endpoint allows gathering information about the originator specific to the Scaled Platform Transfer offering, including the originator’s agreement to legal terms required before accepting any further information related to the originator. @param transfer_platform_originator_create_request [TransferPlatformOriginatorCreateRequest] @param [Hash] opts the optional parameters @return [TransferPlatformOriginatorCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 16538
def transfer_platform_originator_create(transfer_platform_originator_create_request, opts = {})
  data, _status_code, _headers = transfer_platform_originator_create_with_http_info(transfer_platform_originator_create_request, opts)
  data
end
transfer_platform_originator_create_with_http_info(transfer_platform_originator_create_request, opts = {}) click to toggle source

Create an originator for scaled platform customers The &#x60;/transfer/platform/originator/create&#x60; endpoint allows gathering information about the originator specific to the Scaled Platform Transfer offering, including the originator&#39;s agreement to legal terms required before accepting any further information related to the originator. @param transfer_platform_originator_create_request [TransferPlatformOriginatorCreateRequest] @param [Hash] opts the optional parameters @return [Array<(TransferPlatformOriginatorCreateResponse, Integer, Hash)>] TransferPlatformOriginatorCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 16548
def transfer_platform_originator_create_with_http_info(transfer_platform_originator_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_platform_originator_create ...'
  end
  # verify the required parameter 'transfer_platform_originator_create_request' is set
  if @api_client.config.client_side_validation && transfer_platform_originator_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_platform_originator_create_request' when calling PlaidApi.transfer_platform_originator_create"
  end
  # resource path
  local_var_path = '/transfer/platform/originator/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_platform_originator_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferPlatformOriginatorCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_platform_originator_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_platform_originator_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_platform_person_create(transfer_platform_person_create_request, opts = {}) click to toggle source

Create a person associated with an originator Use the ‘/transfer/platform/person/create` endpoint to create a person record associated with an originator and optionally submit person-specific requirements. @param transfer_platform_person_create_request [TransferPlatformPersonCreateRequest] @param [Hash] opts the optional parameters @return [TransferPlatformPersonCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 16606
def transfer_platform_person_create(transfer_platform_person_create_request, opts = {})
  data, _status_code, _headers = transfer_platform_person_create_with_http_info(transfer_platform_person_create_request, opts)
  data
end
transfer_platform_person_create_with_http_info(transfer_platform_person_create_request, opts = {}) click to toggle source

Create a person associated with an originator Use the &#x60;/transfer/platform/person/create&#x60; endpoint to create a person record associated with an originator and optionally submit person-specific requirements. @param transfer_platform_person_create_request [TransferPlatformPersonCreateRequest] @param [Hash] opts the optional parameters @return [Array<(TransferPlatformPersonCreateResponse, Integer, Hash)>] TransferPlatformPersonCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 16616
def transfer_platform_person_create_with_http_info(transfer_platform_person_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_platform_person_create ...'
  end
  # verify the required parameter 'transfer_platform_person_create_request' is set
  if @api_client.config.client_side_validation && transfer_platform_person_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_platform_person_create_request' when calling PlaidApi.transfer_platform_person_create"
  end
  # resource path
  local_var_path = '/transfer/platform/person/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_platform_person_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferPlatformPersonCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_platform_person_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_platform_person_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_platform_requirement_submit(transfer_platform_requirement_submit_request, opts = {}) click to toggle source

Submit onboarding requirements for Scaled Platform originators The ‘/transfer/platform/requirement/submit` endpoint allows platforms to submit onboarding requirements for an originator as part of the Scaled Platform Transfer offering. @param transfer_platform_requirement_submit_request [TransferPlatformRequirementSubmitRequest] @param [Hash] opts the optional parameters @return [TransferPlatformRequirementSubmitResponse]

# File lib/plaid/api/plaid_api.rb, line 16674
def transfer_platform_requirement_submit(transfer_platform_requirement_submit_request, opts = {})
  data, _status_code, _headers = transfer_platform_requirement_submit_with_http_info(transfer_platform_requirement_submit_request, opts)
  data
end
transfer_platform_requirement_submit_with_http_info(transfer_platform_requirement_submit_request, opts = {}) click to toggle source

Submit onboarding requirements for Scaled Platform originators The &#x60;/transfer/platform/requirement/submit&#x60; endpoint allows platforms to submit onboarding requirements for an originator as part of the Scaled Platform Transfer offering. @param transfer_platform_requirement_submit_request [TransferPlatformRequirementSubmitRequest] @param [Hash] opts the optional parameters @return [Array<(TransferPlatformRequirementSubmitResponse, Integer, Hash)>] TransferPlatformRequirementSubmitResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 16684
def transfer_platform_requirement_submit_with_http_info(transfer_platform_requirement_submit_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_platform_requirement_submit ...'
  end
  # verify the required parameter 'transfer_platform_requirement_submit_request' is set
  if @api_client.config.client_side_validation && transfer_platform_requirement_submit_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_platform_requirement_submit_request' when calling PlaidApi.transfer_platform_requirement_submit"
  end
  # resource path
  local_var_path = '/transfer/platform/requirement/submit'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_platform_requirement_submit_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferPlatformRequirementSubmitResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_platform_requirement_submit",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_platform_requirement_submit\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_questionnaire_create(transfer_questionnaire_create_request, opts = {}) click to toggle source

Generate a Plaid-hosted onboarding UI URL. The ‘/transfer/questionnaire/create` endpoint generates a Plaid-hosted onboarding UI URL. Redirect the originator to this URL to provide their due diligence information and agree to Plaid’s terms for ACH money movement. @param transfer_questionnaire_create_request [TransferQuestionnaireCreateRequest] @param [Hash] opts the optional parameters @return [TransferQuestionnaireCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 16742
def transfer_questionnaire_create(transfer_questionnaire_create_request, opts = {})
  data, _status_code, _headers = transfer_questionnaire_create_with_http_info(transfer_questionnaire_create_request, opts)
  data
end
transfer_questionnaire_create_with_http_info(transfer_questionnaire_create_request, opts = {}) click to toggle source

Generate a Plaid-hosted onboarding UI URL. The &#x60;/transfer/questionnaire/create&#x60; endpoint generates a Plaid-hosted onboarding UI URL. Redirect the originator to this URL to provide their due diligence information and agree to Plaid’s terms for ACH money movement. @param transfer_questionnaire_create_request [TransferQuestionnaireCreateRequest] @param [Hash] opts the optional parameters @return [Array<(TransferQuestionnaireCreateResponse, Integer, Hash)>] TransferQuestionnaireCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 16752
def transfer_questionnaire_create_with_http_info(transfer_questionnaire_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_questionnaire_create ...'
  end
  # verify the required parameter 'transfer_questionnaire_create_request' is set
  if @api_client.config.client_side_validation && transfer_questionnaire_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_questionnaire_create_request' when calling PlaidApi.transfer_questionnaire_create"
  end
  # resource path
  local_var_path = '/transfer/questionnaire/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_questionnaire_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferQuestionnaireCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_questionnaire_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_questionnaire_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_recurring_cancel(transfer_recurring_cancel_request, opts = {}) click to toggle source

Cancel a recurring transfer. Use the ‘/transfer/recurring/cancel` endpoint to cancel a recurring transfer. Scheduled transfer that hasn’t been submitted to bank will be cancelled. @param transfer_recurring_cancel_request [TransferRecurringCancelRequest] @param [Hash] opts the optional parameters @return [TransferRecurringCancelResponse]

# File lib/plaid/api/plaid_api.rb, line 16810
def transfer_recurring_cancel(transfer_recurring_cancel_request, opts = {})
  data, _status_code, _headers = transfer_recurring_cancel_with_http_info(transfer_recurring_cancel_request, opts)
  data
end
transfer_recurring_cancel_with_http_info(transfer_recurring_cancel_request, opts = {}) click to toggle source

Cancel a recurring transfer. Use the &#x60;/transfer/recurring/cancel&#x60; endpoint to cancel a recurring transfer. Scheduled transfer that hasn&#39;t been submitted to bank will be cancelled. @param transfer_recurring_cancel_request [TransferRecurringCancelRequest] @param [Hash] opts the optional parameters @return [Array<(TransferRecurringCancelResponse, Integer, Hash)>] TransferRecurringCancelResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 16820
def transfer_recurring_cancel_with_http_info(transfer_recurring_cancel_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_recurring_cancel ...'
  end
  # verify the required parameter 'transfer_recurring_cancel_request' is set
  if @api_client.config.client_side_validation && transfer_recurring_cancel_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_recurring_cancel_request' when calling PlaidApi.transfer_recurring_cancel"
  end
  # resource path
  local_var_path = '/transfer/recurring/cancel'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_recurring_cancel_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferRecurringCancelResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_recurring_cancel",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_recurring_cancel\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_recurring_create(transfer_recurring_create_request, opts = {}) click to toggle source

Create a recurring transfer Use the ‘/transfer/recurring/create` endpoint to initiate a new recurring transfer. This capability is not currently supported for Transfer UI or Platform Payments (beta) customers. @param transfer_recurring_create_request [TransferRecurringCreateRequest] @param [Hash] opts the optional parameters @return [TransferRecurringCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 16878
def transfer_recurring_create(transfer_recurring_create_request, opts = {})
  data, _status_code, _headers = transfer_recurring_create_with_http_info(transfer_recurring_create_request, opts)
  data
end
transfer_recurring_create_with_http_info(transfer_recurring_create_request, opts = {}) click to toggle source

Create a recurring transfer Use the &#x60;/transfer/recurring/create&#x60; endpoint to initiate a new recurring transfer. This capability is not currently supported for Transfer UI or Platform Payments (beta) customers. @param transfer_recurring_create_request [TransferRecurringCreateRequest] @param [Hash] opts the optional parameters @return [Array<(TransferRecurringCreateResponse, Integer, Hash)>] TransferRecurringCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 16888
def transfer_recurring_create_with_http_info(transfer_recurring_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_recurring_create ...'
  end
  # verify the required parameter 'transfer_recurring_create_request' is set
  if @api_client.config.client_side_validation && transfer_recurring_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_recurring_create_request' when calling PlaidApi.transfer_recurring_create"
  end
  # resource path
  local_var_path = '/transfer/recurring/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_recurring_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferRecurringCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_recurring_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_recurring_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_recurring_get(transfer_recurring_get_request, opts = {}) click to toggle source

Retrieve a recurring transfer The ‘/transfer/recurring/get` fetches information about the recurring transfer corresponding to the given `recurring_transfer_id`. @param transfer_recurring_get_request [TransferRecurringGetRequest] @param [Hash] opts the optional parameters @return [TransferRecurringGetResponse]

# File lib/plaid/api/plaid_api.rb, line 16946
def transfer_recurring_get(transfer_recurring_get_request, opts = {})
  data, _status_code, _headers = transfer_recurring_get_with_http_info(transfer_recurring_get_request, opts)
  data
end
transfer_recurring_get_with_http_info(transfer_recurring_get_request, opts = {}) click to toggle source

Retrieve a recurring transfer The &#x60;/transfer/recurring/get&#x60; fetches information about the recurring transfer corresponding to the given &#x60;recurring_transfer_id&#x60;. @param transfer_recurring_get_request [TransferRecurringGetRequest] @param [Hash] opts the optional parameters @return [Array<(TransferRecurringGetResponse, Integer, Hash)>] TransferRecurringGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 16956
def transfer_recurring_get_with_http_info(transfer_recurring_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_recurring_get ...'
  end
  # verify the required parameter 'transfer_recurring_get_request' is set
  if @api_client.config.client_side_validation && transfer_recurring_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_recurring_get_request' when calling PlaidApi.transfer_recurring_get"
  end
  # resource path
  local_var_path = '/transfer/recurring/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_recurring_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferRecurringGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_recurring_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_recurring_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_recurring_list(transfer_recurring_list_request, opts = {}) click to toggle source

List recurring transfers Use the ‘/transfer/recurring/list` endpoint to see a list of all your recurring transfers and their statuses. Results are paginated; use the `count` and `offset` query parameters to retrieve the desired recurring transfers. @param transfer_recurring_list_request [TransferRecurringListRequest] @param [Hash] opts the optional parameters @return [TransferRecurringListResponse]

# File lib/plaid/api/plaid_api.rb, line 17014
def transfer_recurring_list(transfer_recurring_list_request, opts = {})
  data, _status_code, _headers = transfer_recurring_list_with_http_info(transfer_recurring_list_request, opts)
  data
end
transfer_recurring_list_with_http_info(transfer_recurring_list_request, opts = {}) click to toggle source

List recurring transfers Use the &#x60;/transfer/recurring/list&#x60; endpoint to see a list of all your recurring transfers and their statuses. Results are paginated; use the &#x60;count&#x60; and &#x60;offset&#x60; query parameters to retrieve the desired recurring transfers. @param transfer_recurring_list_request [TransferRecurringListRequest] @param [Hash] opts the optional parameters @return [Array<(TransferRecurringListResponse, Integer, Hash)>] TransferRecurringListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 17024
def transfer_recurring_list_with_http_info(transfer_recurring_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_recurring_list ...'
  end
  # verify the required parameter 'transfer_recurring_list_request' is set
  if @api_client.config.client_side_validation && transfer_recurring_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_recurring_list_request' when calling PlaidApi.transfer_recurring_list"
  end
  # resource path
  local_var_path = '/transfer/recurring/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_recurring_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferRecurringListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_recurring_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_recurring_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_refund_cancel(transfer_refund_cancel_request, opts = {}) click to toggle source

Cancel a refund Use the ‘/transfer/refund/cancel` endpoint to cancel a refund. A refund is eligible for cancellation if it has not yet been submitted to the payment network. @param transfer_refund_cancel_request [TransferRefundCancelRequest] @param [Hash] opts the optional parameters @return [TransferRefundCancelResponse]

# File lib/plaid/api/plaid_api.rb, line 17082
def transfer_refund_cancel(transfer_refund_cancel_request, opts = {})
  data, _status_code, _headers = transfer_refund_cancel_with_http_info(transfer_refund_cancel_request, opts)
  data
end
transfer_refund_cancel_with_http_info(transfer_refund_cancel_request, opts = {}) click to toggle source

Cancel a refund Use the &#x60;/transfer/refund/cancel&#x60; endpoint to cancel a refund. A refund is eligible for cancellation if it has not yet been submitted to the payment network. @param transfer_refund_cancel_request [TransferRefundCancelRequest] @param [Hash] opts the optional parameters @return [Array<(TransferRefundCancelResponse, Integer, Hash)>] TransferRefundCancelResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 17092
def transfer_refund_cancel_with_http_info(transfer_refund_cancel_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_refund_cancel ...'
  end
  # verify the required parameter 'transfer_refund_cancel_request' is set
  if @api_client.config.client_side_validation && transfer_refund_cancel_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_refund_cancel_request' when calling PlaidApi.transfer_refund_cancel"
  end
  # resource path
  local_var_path = '/transfer/refund/cancel'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_refund_cancel_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferRefundCancelResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_refund_cancel",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_refund_cancel\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_refund_create(transfer_refund_create_request, opts = {}) click to toggle source

Create a refund Use the ‘/transfer/refund/create` endpoint to create a refund for a transfer. A transfer can be refunded if the transfer was initiated in the past 180 days. Processing of the refund will not occur until at least 4 business days following the transfer’s settlement date, plus any hold/settlement delays. This 3-day window helps better protect your business from regular ACH returns. Consumer initiated returns (unauthorized returns) could still happen for about 60 days from the settlement date. If the original transfer is canceled, returned or failed, all pending refunds will automatically be canceled. Processed refunds cannot be revoked. @param transfer_refund_create_request [TransferRefundCreateRequest] @param [Hash] opts the optional parameters @return [TransferRefundCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 17150
def transfer_refund_create(transfer_refund_create_request, opts = {})
  data, _status_code, _headers = transfer_refund_create_with_http_info(transfer_refund_create_request, opts)
  data
end
transfer_refund_create_with_http_info(transfer_refund_create_request, opts = {}) click to toggle source

Create a refund Use the &#x60;/transfer/refund/create&#x60; endpoint to create a refund for a transfer. A transfer can be refunded if the transfer was initiated in the past 180 days. Processing of the refund will not occur until at least 4 business days following the transfer&#39;s settlement date, plus any hold/settlement delays. This 3-day window helps better protect your business from regular ACH returns. Consumer initiated returns (unauthorized returns) could still happen for about 60 days from the settlement date. If the original transfer is canceled, returned or failed, all pending refunds will automatically be canceled. Processed refunds cannot be revoked. @param transfer_refund_create_request [TransferRefundCreateRequest] @param [Hash] opts the optional parameters @return [Array<(TransferRefundCreateResponse, Integer, Hash)>] TransferRefundCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 17160
def transfer_refund_create_with_http_info(transfer_refund_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_refund_create ...'
  end
  # verify the required parameter 'transfer_refund_create_request' is set
  if @api_client.config.client_side_validation && transfer_refund_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_refund_create_request' when calling PlaidApi.transfer_refund_create"
  end
  # resource path
  local_var_path = '/transfer/refund/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_refund_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferRefundCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_refund_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_refund_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_refund_get(transfer_refund_get_request, opts = {}) click to toggle source

Retrieve a refund The ‘/transfer/refund/get` endpoint fetches information about the refund corresponding to the given `refund_id`. @param transfer_refund_get_request [TransferRefundGetRequest] @param [Hash] opts the optional parameters @return [TransferRefundGetResponse]

# File lib/plaid/api/plaid_api.rb, line 17218
def transfer_refund_get(transfer_refund_get_request, opts = {})
  data, _status_code, _headers = transfer_refund_get_with_http_info(transfer_refund_get_request, opts)
  data
end
transfer_refund_get_with_http_info(transfer_refund_get_request, opts = {}) click to toggle source

Retrieve a refund The &#x60;/transfer/refund/get&#x60; endpoint fetches information about the refund corresponding to the given &#x60;refund_id&#x60;. @param transfer_refund_get_request [TransferRefundGetRequest] @param [Hash] opts the optional parameters @return [Array<(TransferRefundGetResponse, Integer, Hash)>] TransferRefundGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 17228
def transfer_refund_get_with_http_info(transfer_refund_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_refund_get ...'
  end
  # verify the required parameter 'transfer_refund_get_request' is set
  if @api_client.config.client_side_validation && transfer_refund_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_refund_get_request' when calling PlaidApi.transfer_refund_get"
  end
  # resource path
  local_var_path = '/transfer/refund/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_refund_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferRefundGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_refund_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_refund_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_repayment_list(transfer_repayment_list_request, opts = {}) click to toggle source

Lists historical repayments The ‘/transfer/repayment/list` endpoint fetches repayments matching the given filters. Repayments are returned in reverse-chronological order (most recent first) starting at the given `start_time`. @param transfer_repayment_list_request [TransferRepaymentListRequest] @param [Hash] opts the optional parameters @return [TransferRepaymentListResponse]

# File lib/plaid/api/plaid_api.rb, line 17286
def transfer_repayment_list(transfer_repayment_list_request, opts = {})
  data, _status_code, _headers = transfer_repayment_list_with_http_info(transfer_repayment_list_request, opts)
  data
end
transfer_repayment_list_with_http_info(transfer_repayment_list_request, opts = {}) click to toggle source

Lists historical repayments The &#x60;/transfer/repayment/list&#x60; endpoint fetches repayments matching the given filters. Repayments are returned in reverse-chronological order (most recent first) starting at the given &#x60;start_time&#x60;. @param transfer_repayment_list_request [TransferRepaymentListRequest] @param [Hash] opts the optional parameters @return [Array<(TransferRepaymentListResponse, Integer, Hash)>] TransferRepaymentListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 17296
def transfer_repayment_list_with_http_info(transfer_repayment_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_repayment_list ...'
  end
  # verify the required parameter 'transfer_repayment_list_request' is set
  if @api_client.config.client_side_validation && transfer_repayment_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_repayment_list_request' when calling PlaidApi.transfer_repayment_list"
  end
  # resource path
  local_var_path = '/transfer/repayment/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_repayment_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferRepaymentListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_repayment_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_repayment_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_repayment_return_list(transfer_repayment_return_list_request, opts = {}) click to toggle source

List the returns included in a repayment The ‘/transfer/repayment/return/list` endpoint retrieves the set of returns that were batched together into the specified repayment. The sum of amounts of returns retrieved by this request equals the amount of the repayment. @param transfer_repayment_return_list_request [TransferRepaymentReturnListRequest] @param [Hash] opts the optional parameters @return [TransferRepaymentReturnListResponse]

# File lib/plaid/api/plaid_api.rb, line 17354
def transfer_repayment_return_list(transfer_repayment_return_list_request, opts = {})
  data, _status_code, _headers = transfer_repayment_return_list_with_http_info(transfer_repayment_return_list_request, opts)
  data
end
transfer_repayment_return_list_with_http_info(transfer_repayment_return_list_request, opts = {}) click to toggle source

List the returns included in a repayment The &#x60;/transfer/repayment/return/list&#x60; endpoint retrieves the set of returns that were batched together into the specified repayment. The sum of amounts of returns retrieved by this request equals the amount of the repayment. @param transfer_repayment_return_list_request [TransferRepaymentReturnListRequest] @param [Hash] opts the optional parameters @return [Array<(TransferRepaymentReturnListResponse, Integer, Hash)>] TransferRepaymentReturnListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 17364
def transfer_repayment_return_list_with_http_info(transfer_repayment_return_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_repayment_return_list ...'
  end
  # verify the required parameter 'transfer_repayment_return_list_request' is set
  if @api_client.config.client_side_validation && transfer_repayment_return_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_repayment_return_list_request' when calling PlaidApi.transfer_repayment_return_list"
  end
  # resource path
  local_var_path = '/transfer/repayment/return/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_repayment_return_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferRepaymentReturnListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_repayment_return_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_repayment_return_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_sweep_get(transfer_sweep_get_request, opts = {}) click to toggle source

Retrieve a sweep The ‘/transfer/sweep/get` endpoint fetches a sweep corresponding to the given `sweep_id`. @param transfer_sweep_get_request [TransferSweepGetRequest] @param [Hash] opts the optional parameters @return [TransferSweepGetResponse]

# File lib/plaid/api/plaid_api.rb, line 17422
def transfer_sweep_get(transfer_sweep_get_request, opts = {})
  data, _status_code, _headers = transfer_sweep_get_with_http_info(transfer_sweep_get_request, opts)
  data
end
transfer_sweep_get_with_http_info(transfer_sweep_get_request, opts = {}) click to toggle source

Retrieve a sweep The &#x60;/transfer/sweep/get&#x60; endpoint fetches a sweep corresponding to the given &#x60;sweep_id&#x60;. @param transfer_sweep_get_request [TransferSweepGetRequest] @param [Hash] opts the optional parameters @return [Array<(TransferSweepGetResponse, Integer, Hash)>] TransferSweepGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 17432
def transfer_sweep_get_with_http_info(transfer_sweep_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_sweep_get ...'
  end
  # verify the required parameter 'transfer_sweep_get_request' is set
  if @api_client.config.client_side_validation && transfer_sweep_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_sweep_get_request' when calling PlaidApi.transfer_sweep_get"
  end
  # resource path
  local_var_path = '/transfer/sweep/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_sweep_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferSweepGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_sweep_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_sweep_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
transfer_sweep_list(transfer_sweep_list_request, opts = {}) click to toggle source

List sweeps The ‘/transfer/sweep/list` endpoint fetches sweeps matching the given filters. @param transfer_sweep_list_request [TransferSweepListRequest] @param [Hash] opts the optional parameters @return [TransferSweepListResponse]

# File lib/plaid/api/plaid_api.rb, line 17490
def transfer_sweep_list(transfer_sweep_list_request, opts = {})
  data, _status_code, _headers = transfer_sweep_list_with_http_info(transfer_sweep_list_request, opts)
  data
end
transfer_sweep_list_with_http_info(transfer_sweep_list_request, opts = {}) click to toggle source

List sweeps The &#x60;/transfer/sweep/list&#x60; endpoint fetches sweeps matching the given filters. @param transfer_sweep_list_request [TransferSweepListRequest] @param [Hash] opts the optional parameters @return [Array<(TransferSweepListResponse, Integer, Hash)>] TransferSweepListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 17500
def transfer_sweep_list_with_http_info(transfer_sweep_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.transfer_sweep_list ...'
  end
  # verify the required parameter 'transfer_sweep_list_request' is set
  if @api_client.config.client_side_validation && transfer_sweep_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'transfer_sweep_list_request' when calling PlaidApi.transfer_sweep_list"
  end
  # resource path
  local_var_path = '/transfer/sweep/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(transfer_sweep_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'TransferSweepListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.transfer_sweep_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#transfer_sweep_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
user_account_session_get(user_account_session_get_request, opts = {}) click to toggle source

Retrieve User Account Returns user permissioned account data including identity and Item access tokens. @param user_account_session_get_request [UserAccountSessionGetRequest] @param [Hash] opts the optional parameters @return [UserAccountSessionGetResponse]

# File lib/plaid/api/plaid_api.rb, line 17558
def user_account_session_get(user_account_session_get_request, opts = {})
  data, _status_code, _headers = user_account_session_get_with_http_info(user_account_session_get_request, opts)
  data
end
user_account_session_get_with_http_info(user_account_session_get_request, opts = {}) click to toggle source

Retrieve User Account Returns user permissioned account data including identity and Item access tokens. @param user_account_session_get_request [UserAccountSessionGetRequest] @param [Hash] opts the optional parameters @return [Array<(UserAccountSessionGetResponse, Integer, Hash)>] UserAccountSessionGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 17568
def user_account_session_get_with_http_info(user_account_session_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.user_account_session_get ...'
  end
  # verify the required parameter 'user_account_session_get_request' is set
  if @api_client.config.client_side_validation && user_account_session_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'user_account_session_get_request' when calling PlaidApi.user_account_session_get"
  end
  # resource path
  local_var_path = '/user_account/session/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(user_account_session_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'UserAccountSessionGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.user_account_session_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#user_account_session_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
user_create(user_create_request, opts = {}) click to toggle source

Create user This endpoint should be called for each of your end users before they begin a Plaid Check or Income flow, or a Multi-Item Link flow. This provides you a single token to access all data associated with the user. You should only create one per end user. The ‘consumer_report_user_identity` object must be present in order to create a Plaid Check Consumer Report for a user. If it is not provided during the `/user/create` call, it can be added later by calling `/user/update`. If you call the endpoint multiple times with the same `client_user_id`, the first creation call will succeed and the rest will fail with an error message indicating that the user has been created for the given `client_user_id`. Ensure that you store the `user_token` along with your user’s identifier in your database, as it is not possible to retrieve a previously created ‘user_token`. @param user_create_request [UserCreateRequest] @param [Hash] opts the optional parameters @return [UserCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 17626
def user_create(user_create_request, opts = {})
  data, _status_code, _headers = user_create_with_http_info(user_create_request, opts)
  data
end
user_create_with_http_info(user_create_request, opts = {}) click to toggle source

Create user This endpoint should be called for each of your end users before they begin a Plaid Check or Income flow, or a Multi-Item Link flow. This provides you a single token to access all data associated with the user. You should only create one per end user. The &#x60;consumer_report_user_identity&#x60; object must be present in order to create a Plaid Check Consumer Report for a user. If it is not provided during the &#x60;/user/create&#x60; call, it can be added later by calling &#x60;/user/update&#x60;. If you call the endpoint multiple times with the same &#x60;client_user_id&#x60;, the first creation call will succeed and the rest will fail with an error message indicating that the user has been created for the given &#x60;client_user_id&#x60;. Ensure that you store the &#x60;user_token&#x60; along with your user&#39;s identifier in your database, as it is not possible to retrieve a previously created &#x60;user_token&#x60;. @param user_create_request [UserCreateRequest] @param [Hash] opts the optional parameters @return [Array<(UserCreateResponse, Integer, Hash)>] UserCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 17636
def user_create_with_http_info(user_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.user_create ...'
  end
  # verify the required parameter 'user_create_request' is set
  if @api_client.config.client_side_validation && user_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'user_create_request' when calling PlaidApi.user_create"
  end
  # resource path
  local_var_path = '/user/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(user_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'UserCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.user_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#user_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
user_items_get(user_items_get_request, opts = {}) click to toggle source

Get Items associated with a User Returns Items associated with a User along with their corresponding statuses. @param user_items_get_request [UserItemsGetRequest] @param [Hash] opts the optional parameters @return [UserItemsGetResponse]

# File lib/plaid/api/plaid_api.rb, line 17694
def user_items_get(user_items_get_request, opts = {})
  data, _status_code, _headers = user_items_get_with_http_info(user_items_get_request, opts)
  data
end
user_items_get_with_http_info(user_items_get_request, opts = {}) click to toggle source

Get Items associated with a User Returns Items associated with a User along with their corresponding statuses. @param user_items_get_request [UserItemsGetRequest] @param [Hash] opts the optional parameters @return [Array<(UserItemsGetResponse, Integer, Hash)>] UserItemsGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 17704
def user_items_get_with_http_info(user_items_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.user_items_get ...'
  end
  # verify the required parameter 'user_items_get_request' is set
  if @api_client.config.client_side_validation && user_items_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'user_items_get_request' when calling PlaidApi.user_items_get"
  end
  # resource path
  local_var_path = '/user/items/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(user_items_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'UserItemsGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.user_items_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#user_items_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
user_remove(user_remove_request, opts = {}) click to toggle source

Remove user ‘/user/remove` deletes a user token and and associated information, including any Items associated with the token. Any subsequent calls to retrieve information using the same user token will result in an error stating the user does not exist. @param user_remove_request [UserRemoveRequest] @param [Hash] opts the optional parameters @return [UserRemoveResponse]

# File lib/plaid/api/plaid_api.rb, line 17762
def user_remove(user_remove_request, opts = {})
  data, _status_code, _headers = user_remove_with_http_info(user_remove_request, opts)
  data
end
user_remove_with_http_info(user_remove_request, opts = {}) click to toggle source

Remove user &#x60;/user/remove&#x60; deletes a user token and and associated information, including any Items associated with the token. Any subsequent calls to retrieve information using the same user token will result in an error stating the user does not exist. @param user_remove_request [UserRemoveRequest] @param [Hash] opts the optional parameters @return [Array<(UserRemoveResponse, Integer, Hash)>] UserRemoveResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 17772
def user_remove_with_http_info(user_remove_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.user_remove ...'
  end
  # verify the required parameter 'user_remove_request' is set
  if @api_client.config.client_side_validation && user_remove_request.nil?
    fail ArgumentError, "Missing the required parameter 'user_remove_request' when calling PlaidApi.user_remove"
  end
  # resource path
  local_var_path = '/user/remove'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(user_remove_request)

  # return_type
  return_type = opts[:debug_return_type] || 'UserRemoveResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.user_remove",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#user_remove\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
user_third_party_token_create(user_third_party_token_create_request, opts = {}) click to toggle source

Create a third-party user token This endpoint is used to create a third-party user token. This token can be shared with and used by a specified third-party client to access data associated with the user through supported endpoints. Ensure you store the ‘third_party_user_token` along with the `user_token` and `third_party_client_id`, as it is not possible to retrieve a previously created `third_party_user_token`. @param user_third_party_token_create_request [UserThirdPartyTokenCreateRequest] @param [Hash] opts the optional parameters @return [UserThirdPartyTokenCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 17830
def user_third_party_token_create(user_third_party_token_create_request, opts = {})
  data, _status_code, _headers = user_third_party_token_create_with_http_info(user_third_party_token_create_request, opts)
  data
end
user_third_party_token_create_with_http_info(user_third_party_token_create_request, opts = {}) click to toggle source

Create a third-party user token This endpoint is used to create a third-party user token. This token can be shared with and used by a specified third-party client to access data associated with the user through supported endpoints. Ensure you store the &#x60;third_party_user_token&#x60; along with the &#x60;user_token&#x60; and &#x60;third_party_client_id&#x60;, as it is not possible to retrieve a previously created &#x60;third_party_user_token&#x60;. @param user_third_party_token_create_request [UserThirdPartyTokenCreateRequest] @param [Hash] opts the optional parameters @return [Array<(UserThirdPartyTokenCreateResponse, Integer, Hash)>] UserThirdPartyTokenCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 17840
def user_third_party_token_create_with_http_info(user_third_party_token_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.user_third_party_token_create ...'
  end
  # verify the required parameter 'user_third_party_token_create_request' is set
  if @api_client.config.client_side_validation && user_third_party_token_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'user_third_party_token_create_request' when calling PlaidApi.user_third_party_token_create"
  end
  # resource path
  local_var_path = '/user/third_party_token/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(user_third_party_token_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'UserThirdPartyTokenCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.user_third_party_token_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#user_third_party_token_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
user_third_party_token_remove(user_third_party_token_remove_request, opts = {}) click to toggle source

Remove a third-party user token This endpoint is used to delete a third-party user token. Once removed, the token can longer be used to access data associated with the user. Any subsequent calls to retrieve information using the same third-party user token will result in an error stating the third-party user token does not exist. @param user_third_party_token_remove_request [UserThirdPartyTokenRemoveRequest] @param [Hash] opts the optional parameters @return [UserThirdPartyTokenRemoveResponse]

# File lib/plaid/api/plaid_api.rb, line 17898
def user_third_party_token_remove(user_third_party_token_remove_request, opts = {})
  data, _status_code, _headers = user_third_party_token_remove_with_http_info(user_third_party_token_remove_request, opts)
  data
end
user_third_party_token_remove_with_http_info(user_third_party_token_remove_request, opts = {}) click to toggle source

Remove a third-party user token This endpoint is used to delete a third-party user token. Once removed, the token can longer be used to access data associated with the user. Any subsequent calls to retrieve information using the same third-party user token will result in an error stating the third-party user token does not exist. @param user_third_party_token_remove_request [UserThirdPartyTokenRemoveRequest] @param [Hash] opts the optional parameters @return [Array<(UserThirdPartyTokenRemoveResponse, Integer, Hash)>] UserThirdPartyTokenRemoveResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 17908
def user_third_party_token_remove_with_http_info(user_third_party_token_remove_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.user_third_party_token_remove ...'
  end
  # verify the required parameter 'user_third_party_token_remove_request' is set
  if @api_client.config.client_side_validation && user_third_party_token_remove_request.nil?
    fail ArgumentError, "Missing the required parameter 'user_third_party_token_remove_request' when calling PlaidApi.user_third_party_token_remove"
  end
  # resource path
  local_var_path = '/user/third_party_token/remove'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(user_third_party_token_remove_request)

  # return_type
  return_type = opts[:debug_return_type] || 'UserThirdPartyTokenRemoveResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.user_third_party_token_remove",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#user_third_party_token_remove\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
user_update(user_update_request, opts = {}) click to toggle source

Update user information This endpoint is used to update user information associated with an existing ‘user_token`. It can also be used to enable an existing `user_token` for use with Consumer Reports by Plaid Check, by adding a `consumer_report_user_identity` object to the user. @param user_update_request [UserUpdateRequest] @param [Hash] opts the optional parameters @return [UserUpdateResponse]

# File lib/plaid/api/plaid_api.rb, line 17966
def user_update(user_update_request, opts = {})
  data, _status_code, _headers = user_update_with_http_info(user_update_request, opts)
  data
end
user_update_with_http_info(user_update_request, opts = {}) click to toggle source

Update user information This endpoint is used to update user information associated with an existing &#x60;user_token&#x60;. It can also be used to enable an existing &#x60;user_token&#x60; for use with Consumer Reports by Plaid Check, by adding a &#x60;consumer_report_user_identity&#x60; object to the user. @param user_update_request [UserUpdateRequest] @param [Hash] opts the optional parameters @return [Array<(UserUpdateResponse, Integer, Hash)>] UserUpdateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 17976
def user_update_with_http_info(user_update_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.user_update ...'
  end
  # verify the required parameter 'user_update_request' is set
  if @api_client.config.client_side_validation && user_update_request.nil?
    fail ArgumentError, "Missing the required parameter 'user_update_request' when calling PlaidApi.user_update"
  end
  # resource path
  local_var_path = '/user/update'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(user_update_request)

  # return_type
  return_type = opts[:debug_return_type] || 'UserUpdateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.user_update",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#user_update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
wallet_create(wallet_create_request, opts = {}) click to toggle source

Create an e-wallet Create an e-wallet. The response is the newly created e-wallet object. @param wallet_create_request [WalletCreateRequest] @param [Hash] opts the optional parameters @return [WalletCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 18034
def wallet_create(wallet_create_request, opts = {})
  data, _status_code, _headers = wallet_create_with_http_info(wallet_create_request, opts)
  data
end
wallet_create_with_http_info(wallet_create_request, opts = {}) click to toggle source

Create an e-wallet Create an e-wallet. The response is the newly created e-wallet object. @param wallet_create_request [WalletCreateRequest] @param [Hash] opts the optional parameters @return [Array<(WalletCreateResponse, Integer, Hash)>] WalletCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 18044
def wallet_create_with_http_info(wallet_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.wallet_create ...'
  end
  # verify the required parameter 'wallet_create_request' is set
  if @api_client.config.client_side_validation && wallet_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'wallet_create_request' when calling PlaidApi.wallet_create"
  end
  # resource path
  local_var_path = '/wallet/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(wallet_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WalletCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.wallet_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#wallet_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
wallet_get(wallet_get_request, opts = {}) click to toggle source

Fetch an e-wallet Fetch an e-wallet. The response includes the current balance. @param wallet_get_request [WalletGetRequest] @param [Hash] opts the optional parameters @return [WalletGetResponse]

# File lib/plaid/api/plaid_api.rb, line 18102
def wallet_get(wallet_get_request, opts = {})
  data, _status_code, _headers = wallet_get_with_http_info(wallet_get_request, opts)
  data
end
wallet_get_with_http_info(wallet_get_request, opts = {}) click to toggle source

Fetch an e-wallet Fetch an e-wallet. The response includes the current balance. @param wallet_get_request [WalletGetRequest] @param [Hash] opts the optional parameters @return [Array<(WalletGetResponse, Integer, Hash)>] WalletGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 18112
def wallet_get_with_http_info(wallet_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.wallet_get ...'
  end
  # verify the required parameter 'wallet_get_request' is set
  if @api_client.config.client_side_validation && wallet_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'wallet_get_request' when calling PlaidApi.wallet_get"
  end
  # resource path
  local_var_path = '/wallet/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(wallet_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WalletGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.wallet_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#wallet_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
wallet_list(wallet_list_request, opts = {}) click to toggle source

Fetch a list of e-wallets This endpoint lists all e-wallets in descending order of creation. @param wallet_list_request [WalletListRequest] @param [Hash] opts the optional parameters @return [WalletListResponse]

# File lib/plaid/api/plaid_api.rb, line 18170
def wallet_list(wallet_list_request, opts = {})
  data, _status_code, _headers = wallet_list_with_http_info(wallet_list_request, opts)
  data
end
wallet_list_with_http_info(wallet_list_request, opts = {}) click to toggle source

Fetch a list of e-wallets This endpoint lists all e-wallets in descending order of creation. @param wallet_list_request [WalletListRequest] @param [Hash] opts the optional parameters @return [Array<(WalletListResponse, Integer, Hash)>] WalletListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 18180
def wallet_list_with_http_info(wallet_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.wallet_list ...'
  end
  # verify the required parameter 'wallet_list_request' is set
  if @api_client.config.client_side_validation && wallet_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'wallet_list_request' when calling PlaidApi.wallet_list"
  end
  # resource path
  local_var_path = '/wallet/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(wallet_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WalletListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.wallet_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#wallet_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
wallet_transaction_execute(wallet_transaction_execute_request, opts = {}) click to toggle source

Execute a transaction using an e-wallet Execute a transaction using the specified e-wallet. Specify the e-wallet to debit from, the counterparty to credit to, the idempotency key to prevent duplicate transactions, the amount and reference for the transaction. Transactions will settle in seconds to several days, depending on the underlying payment rail. @param wallet_transaction_execute_request [WalletTransactionExecuteRequest] @param [Hash] opts the optional parameters @return [WalletTransactionExecuteResponse]

# File lib/plaid/api/plaid_api.rb, line 18238
def wallet_transaction_execute(wallet_transaction_execute_request, opts = {})
  data, _status_code, _headers = wallet_transaction_execute_with_http_info(wallet_transaction_execute_request, opts)
  data
end
wallet_transaction_execute_with_http_info(wallet_transaction_execute_request, opts = {}) click to toggle source

Execute a transaction using an e-wallet Execute a transaction using the specified e-wallet. Specify the e-wallet to debit from, the counterparty to credit to, the idempotency key to prevent duplicate transactions, the amount and reference for the transaction. Transactions will settle in seconds to several days, depending on the underlying payment rail. @param wallet_transaction_execute_request [WalletTransactionExecuteRequest] @param [Hash] opts the optional parameters @return [Array<(WalletTransactionExecuteResponse, Integer, Hash)>] WalletTransactionExecuteResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 18248
def wallet_transaction_execute_with_http_info(wallet_transaction_execute_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.wallet_transaction_execute ...'
  end
  # verify the required parameter 'wallet_transaction_execute_request' is set
  if @api_client.config.client_side_validation && wallet_transaction_execute_request.nil?
    fail ArgumentError, "Missing the required parameter 'wallet_transaction_execute_request' when calling PlaidApi.wallet_transaction_execute"
  end
  # resource path
  local_var_path = '/wallet/transaction/execute'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(wallet_transaction_execute_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WalletTransactionExecuteResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.wallet_transaction_execute",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#wallet_transaction_execute\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
wallet_transaction_get(wallet_transaction_get_request, opts = {}) click to toggle source

Fetch an e-wallet transaction Fetch a specific e-wallet transaction @param wallet_transaction_get_request [WalletTransactionGetRequest] @param [Hash] opts the optional parameters @return [WalletTransactionGetResponse]

# File lib/plaid/api/plaid_api.rb, line 18306
def wallet_transaction_get(wallet_transaction_get_request, opts = {})
  data, _status_code, _headers = wallet_transaction_get_with_http_info(wallet_transaction_get_request, opts)
  data
end
wallet_transaction_get_with_http_info(wallet_transaction_get_request, opts = {}) click to toggle source

Fetch an e-wallet transaction Fetch a specific e-wallet transaction @param wallet_transaction_get_request [WalletTransactionGetRequest] @param [Hash] opts the optional parameters @return [Array<(WalletTransactionGetResponse, Integer, Hash)>] WalletTransactionGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 18316
def wallet_transaction_get_with_http_info(wallet_transaction_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.wallet_transaction_get ...'
  end
  # verify the required parameter 'wallet_transaction_get_request' is set
  if @api_client.config.client_side_validation && wallet_transaction_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'wallet_transaction_get_request' when calling PlaidApi.wallet_transaction_get"
  end
  # resource path
  local_var_path = '/wallet/transaction/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(wallet_transaction_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WalletTransactionGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.wallet_transaction_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#wallet_transaction_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
wallet_transaction_list(wallet_transaction_list_request, opts = {}) click to toggle source

List e-wallet transactions This endpoint lists the latest transactions of the specified e-wallet. Transactions are returned in descending order by the ‘created_at` time. @param wallet_transaction_list_request [WalletTransactionListRequest] @param [Hash] opts the optional parameters @return [WalletTransactionListResponse]

# File lib/plaid/api/plaid_api.rb, line 18374
def wallet_transaction_list(wallet_transaction_list_request, opts = {})
  data, _status_code, _headers = wallet_transaction_list_with_http_info(wallet_transaction_list_request, opts)
  data
end
wallet_transaction_list_with_http_info(wallet_transaction_list_request, opts = {}) click to toggle source

List e-wallet transactions This endpoint lists the latest transactions of the specified e-wallet. Transactions are returned in descending order by the &#x60;created_at&#x60; time. @param wallet_transaction_list_request [WalletTransactionListRequest] @param [Hash] opts the optional parameters @return [Array<(WalletTransactionListResponse, Integer, Hash)>] WalletTransactionListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 18384
def wallet_transaction_list_with_http_info(wallet_transaction_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.wallet_transaction_list ...'
  end
  # verify the required parameter 'wallet_transaction_list_request' is set
  if @api_client.config.client_side_validation && wallet_transaction_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'wallet_transaction_list_request' when calling PlaidApi.wallet_transaction_list"
  end
  # resource path
  local_var_path = '/wallet/transaction/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(wallet_transaction_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WalletTransactionListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.wallet_transaction_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#wallet_transaction_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_entity_create(watchlist_screening_entity_create_request, opts = {}) click to toggle source

Create a watchlist screening for an entity Create a new entity watchlist screening to check your customer against watchlists defined in the associated entity watchlist program. If your associated program has ongoing screening enabled, this is the profile information that will be used to monitor your customer over time. @param watchlist_screening_entity_create_request [WatchlistScreeningEntityCreateRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningEntityCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 18442
def watchlist_screening_entity_create(watchlist_screening_entity_create_request, opts = {})
  data, _status_code, _headers = watchlist_screening_entity_create_with_http_info(watchlist_screening_entity_create_request, opts)
  data
end
watchlist_screening_entity_create_with_http_info(watchlist_screening_entity_create_request, opts = {}) click to toggle source

Create a watchlist screening for an entity Create a new entity watchlist screening to check your customer against watchlists defined in the associated entity watchlist program. If your associated program has ongoing screening enabled, this is the profile information that will be used to monitor your customer over time. @param watchlist_screening_entity_create_request [WatchlistScreeningEntityCreateRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningEntityCreateResponse, Integer, Hash)>] WatchlistScreeningEntityCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 18452
def watchlist_screening_entity_create_with_http_info(watchlist_screening_entity_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_entity_create ...'
  end
  # verify the required parameter 'watchlist_screening_entity_create_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_entity_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_entity_create_request' when calling PlaidApi.watchlist_screening_entity_create"
  end
  # resource path
  local_var_path = '/watchlist_screening/entity/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_entity_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningEntityCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_entity_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_entity_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_entity_get(watchlist_screening_entity_get_request, opts = {}) click to toggle source

Get an entity screening Retrieve an entity watchlist screening. @param watchlist_screening_entity_get_request [WatchlistScreeningEntityGetRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningEntityGetResponse]

# File lib/plaid/api/plaid_api.rb, line 18510
def watchlist_screening_entity_get(watchlist_screening_entity_get_request, opts = {})
  data, _status_code, _headers = watchlist_screening_entity_get_with_http_info(watchlist_screening_entity_get_request, opts)
  data
end
watchlist_screening_entity_get_with_http_info(watchlist_screening_entity_get_request, opts = {}) click to toggle source

Get an entity screening Retrieve an entity watchlist screening. @param watchlist_screening_entity_get_request [WatchlistScreeningEntityGetRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningEntityGetResponse, Integer, Hash)>] WatchlistScreeningEntityGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 18520
def watchlist_screening_entity_get_with_http_info(watchlist_screening_entity_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_entity_get ...'
  end
  # verify the required parameter 'watchlist_screening_entity_get_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_entity_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_entity_get_request' when calling PlaidApi.watchlist_screening_entity_get"
  end
  # resource path
  local_var_path = '/watchlist_screening/entity/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_entity_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningEntityGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_entity_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_entity_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_entity_history_list(watchlist_screening_entity_history_list_request, opts = {}) click to toggle source

List history for entity watchlist screenings List all changes to the entity watchlist screening in reverse-chronological order. If the watchlist screening has not been edited, no history will be returned. @param watchlist_screening_entity_history_list_request [WatchlistScreeningEntityHistoryListRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningEntityHistoryListResponse]

# File lib/plaid/api/plaid_api.rb, line 18578
def watchlist_screening_entity_history_list(watchlist_screening_entity_history_list_request, opts = {})
  data, _status_code, _headers = watchlist_screening_entity_history_list_with_http_info(watchlist_screening_entity_history_list_request, opts)
  data
end
watchlist_screening_entity_history_list_with_http_info(watchlist_screening_entity_history_list_request, opts = {}) click to toggle source

List history for entity watchlist screenings List all changes to the entity watchlist screening in reverse-chronological order. If the watchlist screening has not been edited, no history will be returned. @param watchlist_screening_entity_history_list_request [WatchlistScreeningEntityHistoryListRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningEntityHistoryListResponse, Integer, Hash)>] WatchlistScreeningEntityHistoryListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 18588
def watchlist_screening_entity_history_list_with_http_info(watchlist_screening_entity_history_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_entity_history_list ...'
  end
  # verify the required parameter 'watchlist_screening_entity_history_list_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_entity_history_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_entity_history_list_request' when calling PlaidApi.watchlist_screening_entity_history_list"
  end
  # resource path
  local_var_path = '/watchlist_screening/entity/history/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_entity_history_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningEntityHistoryListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_entity_history_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_entity_history_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_entity_hit_list(watchlist_screening_entity_hit_list_request, opts = {}) click to toggle source

List hits for entity watchlist screenings List all hits for the entity watchlist screening. @param watchlist_screening_entity_hit_list_request [WatchlistScreeningEntityHitListRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningEntityHitListResponse]

# File lib/plaid/api/plaid_api.rb, line 18646
def watchlist_screening_entity_hit_list(watchlist_screening_entity_hit_list_request, opts = {})
  data, _status_code, _headers = watchlist_screening_entity_hit_list_with_http_info(watchlist_screening_entity_hit_list_request, opts)
  data
end
watchlist_screening_entity_hit_list_with_http_info(watchlist_screening_entity_hit_list_request, opts = {}) click to toggle source

List hits for entity watchlist screenings List all hits for the entity watchlist screening. @param watchlist_screening_entity_hit_list_request [WatchlistScreeningEntityHitListRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningEntityHitListResponse, Integer, Hash)>] WatchlistScreeningEntityHitListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 18656
def watchlist_screening_entity_hit_list_with_http_info(watchlist_screening_entity_hit_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_entity_hit_list ...'
  end
  # verify the required parameter 'watchlist_screening_entity_hit_list_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_entity_hit_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_entity_hit_list_request' when calling PlaidApi.watchlist_screening_entity_hit_list"
  end
  # resource path
  local_var_path = '/watchlist_screening/entity/hit/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_entity_hit_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningEntityHitListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_entity_hit_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_entity_hit_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_entity_list(watchlist_screening_entity_list_request, opts = {}) click to toggle source

List entity watchlist screenings List all entity screenings. @param watchlist_screening_entity_list_request [WatchlistScreeningEntityListRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningEntityListResponse]

# File lib/plaid/api/plaid_api.rb, line 18714
def watchlist_screening_entity_list(watchlist_screening_entity_list_request, opts = {})
  data, _status_code, _headers = watchlist_screening_entity_list_with_http_info(watchlist_screening_entity_list_request, opts)
  data
end
watchlist_screening_entity_list_with_http_info(watchlist_screening_entity_list_request, opts = {}) click to toggle source

List entity watchlist screenings List all entity screenings. @param watchlist_screening_entity_list_request [WatchlistScreeningEntityListRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningEntityListResponse, Integer, Hash)>] WatchlistScreeningEntityListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 18724
def watchlist_screening_entity_list_with_http_info(watchlist_screening_entity_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_entity_list ...'
  end
  # verify the required parameter 'watchlist_screening_entity_list_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_entity_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_entity_list_request' when calling PlaidApi.watchlist_screening_entity_list"
  end
  # resource path
  local_var_path = '/watchlist_screening/entity/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_entity_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningEntityListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_entity_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_entity_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_entity_program_get(watchlist_screening_entity_program_get_request, opts = {}) click to toggle source

Get entity watchlist screening program Get an entity watchlist screening program @param watchlist_screening_entity_program_get_request [WatchlistScreeningEntityProgramGetRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningEntityProgramGetResponse]

# File lib/plaid/api/plaid_api.rb, line 18782
def watchlist_screening_entity_program_get(watchlist_screening_entity_program_get_request, opts = {})
  data, _status_code, _headers = watchlist_screening_entity_program_get_with_http_info(watchlist_screening_entity_program_get_request, opts)
  data
end
watchlist_screening_entity_program_get_with_http_info(watchlist_screening_entity_program_get_request, opts = {}) click to toggle source

Get entity watchlist screening program Get an entity watchlist screening program @param watchlist_screening_entity_program_get_request [WatchlistScreeningEntityProgramGetRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningEntityProgramGetResponse, Integer, Hash)>] WatchlistScreeningEntityProgramGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 18792
def watchlist_screening_entity_program_get_with_http_info(watchlist_screening_entity_program_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_entity_program_get ...'
  end
  # verify the required parameter 'watchlist_screening_entity_program_get_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_entity_program_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_entity_program_get_request' when calling PlaidApi.watchlist_screening_entity_program_get"
  end
  # resource path
  local_var_path = '/watchlist_screening/entity/program/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_entity_program_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningEntityProgramGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_entity_program_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_entity_program_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_entity_program_list(watchlist_screening_entity_program_list_request, opts = {}) click to toggle source

List entity watchlist screening programs List all entity watchlist screening programs @param watchlist_screening_entity_program_list_request [WatchlistScreeningEntityProgramListRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningEntityProgramListResponse]

# File lib/plaid/api/plaid_api.rb, line 18850
def watchlist_screening_entity_program_list(watchlist_screening_entity_program_list_request, opts = {})
  data, _status_code, _headers = watchlist_screening_entity_program_list_with_http_info(watchlist_screening_entity_program_list_request, opts)
  data
end
watchlist_screening_entity_program_list_with_http_info(watchlist_screening_entity_program_list_request, opts = {}) click to toggle source

List entity watchlist screening programs List all entity watchlist screening programs @param watchlist_screening_entity_program_list_request [WatchlistScreeningEntityProgramListRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningEntityProgramListResponse, Integer, Hash)>] WatchlistScreeningEntityProgramListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 18860
def watchlist_screening_entity_program_list_with_http_info(watchlist_screening_entity_program_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_entity_program_list ...'
  end
  # verify the required parameter 'watchlist_screening_entity_program_list_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_entity_program_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_entity_program_list_request' when calling PlaidApi.watchlist_screening_entity_program_list"
  end
  # resource path
  local_var_path = '/watchlist_screening/entity/program/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_entity_program_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningEntityProgramListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_entity_program_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_entity_program_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_entity_review_create(watchlist_screening_entity_review_create_request, opts = {}) click to toggle source

Create a review for an entity watchlist screening Create a review for an entity watchlist screening. Reviews are compliance reports created by users in your organization regarding the relevance of potential hits found by Plaid. @param watchlist_screening_entity_review_create_request [WatchlistScreeningEntityReviewCreateRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningEntityReviewCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 18918
def watchlist_screening_entity_review_create(watchlist_screening_entity_review_create_request, opts = {})
  data, _status_code, _headers = watchlist_screening_entity_review_create_with_http_info(watchlist_screening_entity_review_create_request, opts)
  data
end
watchlist_screening_entity_review_create_with_http_info(watchlist_screening_entity_review_create_request, opts = {}) click to toggle source

Create a review for an entity watchlist screening Create a review for an entity watchlist screening. Reviews are compliance reports created by users in your organization regarding the relevance of potential hits found by Plaid. @param watchlist_screening_entity_review_create_request [WatchlistScreeningEntityReviewCreateRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningEntityReviewCreateResponse, Integer, Hash)>] WatchlistScreeningEntityReviewCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 18928
def watchlist_screening_entity_review_create_with_http_info(watchlist_screening_entity_review_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_entity_review_create ...'
  end
  # verify the required parameter 'watchlist_screening_entity_review_create_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_entity_review_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_entity_review_create_request' when calling PlaidApi.watchlist_screening_entity_review_create"
  end
  # resource path
  local_var_path = '/watchlist_screening/entity/review/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_entity_review_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningEntityReviewCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_entity_review_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_entity_review_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_entity_review_list(watchlist_screening_entity_review_list_request, opts = {}) click to toggle source

List reviews for entity watchlist screenings List all reviews for a particular entity watchlist screening. Reviews are compliance reports created by users in your organization regarding the relevance of potential hits found by Plaid. @param watchlist_screening_entity_review_list_request [WatchlistScreeningEntityReviewListRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningEntityReviewListResponse]

# File lib/plaid/api/plaid_api.rb, line 18986
def watchlist_screening_entity_review_list(watchlist_screening_entity_review_list_request, opts = {})
  data, _status_code, _headers = watchlist_screening_entity_review_list_with_http_info(watchlist_screening_entity_review_list_request, opts)
  data
end
watchlist_screening_entity_review_list_with_http_info(watchlist_screening_entity_review_list_request, opts = {}) click to toggle source

List reviews for entity watchlist screenings List all reviews for a particular entity watchlist screening. Reviews are compliance reports created by users in your organization regarding the relevance of potential hits found by Plaid. @param watchlist_screening_entity_review_list_request [WatchlistScreeningEntityReviewListRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningEntityReviewListResponse, Integer, Hash)>] WatchlistScreeningEntityReviewListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 18996
def watchlist_screening_entity_review_list_with_http_info(watchlist_screening_entity_review_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_entity_review_list ...'
  end
  # verify the required parameter 'watchlist_screening_entity_review_list_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_entity_review_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_entity_review_list_request' when calling PlaidApi.watchlist_screening_entity_review_list"
  end
  # resource path
  local_var_path = '/watchlist_screening/entity/review/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_entity_review_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningEntityReviewListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_entity_review_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_entity_review_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_entity_update(watchlist_screening_entity_update_request, opts = {}) click to toggle source

Update an entity screening Update an entity watchlist screening. @param watchlist_screening_entity_update_request [WatchlistScreeningEntityUpdateRequest] The entity screening was successfully updated. @param [Hash] opts the optional parameters @return [WatchlistScreeningEntityUpdateResponse]

# File lib/plaid/api/plaid_api.rb, line 19054
def watchlist_screening_entity_update(watchlist_screening_entity_update_request, opts = {})
  data, _status_code, _headers = watchlist_screening_entity_update_with_http_info(watchlist_screening_entity_update_request, opts)
  data
end
watchlist_screening_entity_update_with_http_info(watchlist_screening_entity_update_request, opts = {}) click to toggle source

Update an entity screening Update an entity watchlist screening. @param watchlist_screening_entity_update_request [WatchlistScreeningEntityUpdateRequest] The entity screening was successfully updated. @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningEntityUpdateResponse, Integer, Hash)>] WatchlistScreeningEntityUpdateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 19064
def watchlist_screening_entity_update_with_http_info(watchlist_screening_entity_update_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_entity_update ...'
  end
  # verify the required parameter 'watchlist_screening_entity_update_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_entity_update_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_entity_update_request' when calling PlaidApi.watchlist_screening_entity_update"
  end
  # resource path
  local_var_path = '/watchlist_screening/entity/update'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_entity_update_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningEntityUpdateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_entity_update",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_entity_update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_individual_create(watchlist_screening_individual_create_request, opts = {}) click to toggle source

Create a watchlist screening for a person Create a new Watchlist Screening to check your customer against watchlists defined in the associated Watchlist Program. If your associated program has ongoing screening enabled, this is the profile information that will be used to monitor your customer over time. @param watchlist_screening_individual_create_request [WatchlistScreeningIndividualCreateRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningIndividualCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 19122
def watchlist_screening_individual_create(watchlist_screening_individual_create_request, opts = {})
  data, _status_code, _headers = watchlist_screening_individual_create_with_http_info(watchlist_screening_individual_create_request, opts)
  data
end
watchlist_screening_individual_create_with_http_info(watchlist_screening_individual_create_request, opts = {}) click to toggle source

Create a watchlist screening for a person Create a new Watchlist Screening to check your customer against watchlists defined in the associated Watchlist Program. If your associated program has ongoing screening enabled, this is the profile information that will be used to monitor your customer over time. @param watchlist_screening_individual_create_request [WatchlistScreeningIndividualCreateRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningIndividualCreateResponse, Integer, Hash)>] WatchlistScreeningIndividualCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 19132
def watchlist_screening_individual_create_with_http_info(watchlist_screening_individual_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_individual_create ...'
  end
  # verify the required parameter 'watchlist_screening_individual_create_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_individual_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_individual_create_request' when calling PlaidApi.watchlist_screening_individual_create"
  end
  # resource path
  local_var_path = '/watchlist_screening/individual/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_individual_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningIndividualCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_individual_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_individual_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_individual_get(watchlist_screening_individual_get_request, opts = {}) click to toggle source

Retrieve an individual watchlist screening Retrieve a previously created individual watchlist screening @param watchlist_screening_individual_get_request [WatchlistScreeningIndividualGetRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningIndividualGetResponse]

# File lib/plaid/api/plaid_api.rb, line 19190
def watchlist_screening_individual_get(watchlist_screening_individual_get_request, opts = {})
  data, _status_code, _headers = watchlist_screening_individual_get_with_http_info(watchlist_screening_individual_get_request, opts)
  data
end
watchlist_screening_individual_get_with_http_info(watchlist_screening_individual_get_request, opts = {}) click to toggle source

Retrieve an individual watchlist screening Retrieve a previously created individual watchlist screening @param watchlist_screening_individual_get_request [WatchlistScreeningIndividualGetRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningIndividualGetResponse, Integer, Hash)>] WatchlistScreeningIndividualGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 19200
def watchlist_screening_individual_get_with_http_info(watchlist_screening_individual_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_individual_get ...'
  end
  # verify the required parameter 'watchlist_screening_individual_get_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_individual_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_individual_get_request' when calling PlaidApi.watchlist_screening_individual_get"
  end
  # resource path
  local_var_path = '/watchlist_screening/individual/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_individual_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningIndividualGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_individual_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_individual_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_individual_history_list(watchlist_screening_individual_history_list_request, opts = {}) click to toggle source

List history for individual watchlist screenings List all changes to the individual watchlist screening in reverse-chronological order. If the watchlist screening has not been edited, no history will be returned. @param watchlist_screening_individual_history_list_request [WatchlistScreeningIndividualHistoryListRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningIndividualHistoryListResponse]

# File lib/plaid/api/plaid_api.rb, line 19258
def watchlist_screening_individual_history_list(watchlist_screening_individual_history_list_request, opts = {})
  data, _status_code, _headers = watchlist_screening_individual_history_list_with_http_info(watchlist_screening_individual_history_list_request, opts)
  data
end
watchlist_screening_individual_history_list_with_http_info(watchlist_screening_individual_history_list_request, opts = {}) click to toggle source

List history for individual watchlist screenings List all changes to the individual watchlist screening in reverse-chronological order. If the watchlist screening has not been edited, no history will be returned. @param watchlist_screening_individual_history_list_request [WatchlistScreeningIndividualHistoryListRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningIndividualHistoryListResponse, Integer, Hash)>] WatchlistScreeningIndividualHistoryListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 19268
def watchlist_screening_individual_history_list_with_http_info(watchlist_screening_individual_history_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_individual_history_list ...'
  end
  # verify the required parameter 'watchlist_screening_individual_history_list_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_individual_history_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_individual_history_list_request' when calling PlaidApi.watchlist_screening_individual_history_list"
  end
  # resource path
  local_var_path = '/watchlist_screening/individual/history/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_individual_history_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningIndividualHistoryListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_individual_history_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_individual_history_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_individual_hit_list(watchlist_screening_individual_hit_list_request, opts = {}) click to toggle source

List hits for individual watchlist screening List all hits found by Plaid for a particular individual watchlist screening. @param watchlist_screening_individual_hit_list_request [WatchlistScreeningIndividualHitListRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningIndividualHitListResponse]

# File lib/plaid/api/plaid_api.rb, line 19326
def watchlist_screening_individual_hit_list(watchlist_screening_individual_hit_list_request, opts = {})
  data, _status_code, _headers = watchlist_screening_individual_hit_list_with_http_info(watchlist_screening_individual_hit_list_request, opts)
  data
end
watchlist_screening_individual_hit_list_with_http_info(watchlist_screening_individual_hit_list_request, opts = {}) click to toggle source

List hits for individual watchlist screening List all hits found by Plaid for a particular individual watchlist screening. @param watchlist_screening_individual_hit_list_request [WatchlistScreeningIndividualHitListRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningIndividualHitListResponse, Integer, Hash)>] WatchlistScreeningIndividualHitListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 19336
def watchlist_screening_individual_hit_list_with_http_info(watchlist_screening_individual_hit_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_individual_hit_list ...'
  end
  # verify the required parameter 'watchlist_screening_individual_hit_list_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_individual_hit_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_individual_hit_list_request' when calling PlaidApi.watchlist_screening_individual_hit_list"
  end
  # resource path
  local_var_path = '/watchlist_screening/individual/hit/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_individual_hit_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningIndividualHitListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_individual_hit_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_individual_hit_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_individual_list(watchlist_screening_individual_list_request, opts = {}) click to toggle source

List Individual Watchlist Screenings List previously created watchlist screenings for individuals @param watchlist_screening_individual_list_request [WatchlistScreeningIndividualListRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningIndividualListResponse]

# File lib/plaid/api/plaid_api.rb, line 19394
def watchlist_screening_individual_list(watchlist_screening_individual_list_request, opts = {})
  data, _status_code, _headers = watchlist_screening_individual_list_with_http_info(watchlist_screening_individual_list_request, opts)
  data
end
watchlist_screening_individual_list_with_http_info(watchlist_screening_individual_list_request, opts = {}) click to toggle source

List Individual Watchlist Screenings List previously created watchlist screenings for individuals @param watchlist_screening_individual_list_request [WatchlistScreeningIndividualListRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningIndividualListResponse, Integer, Hash)>] WatchlistScreeningIndividualListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 19404
def watchlist_screening_individual_list_with_http_info(watchlist_screening_individual_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_individual_list ...'
  end
  # verify the required parameter 'watchlist_screening_individual_list_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_individual_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_individual_list_request' when calling PlaidApi.watchlist_screening_individual_list"
  end
  # resource path
  local_var_path = '/watchlist_screening/individual/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_individual_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningIndividualListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_individual_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_individual_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_individual_program_get(watchlist_screening_individual_program_get_request, opts = {}) click to toggle source

Get individual watchlist screening program Get an individual watchlist screening program @param watchlist_screening_individual_program_get_request [WatchlistScreeningIndividualProgramGetRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningIndividualProgramGetResponse]

# File lib/plaid/api/plaid_api.rb, line 19462
def watchlist_screening_individual_program_get(watchlist_screening_individual_program_get_request, opts = {})
  data, _status_code, _headers = watchlist_screening_individual_program_get_with_http_info(watchlist_screening_individual_program_get_request, opts)
  data
end
watchlist_screening_individual_program_get_with_http_info(watchlist_screening_individual_program_get_request, opts = {}) click to toggle source

Get individual watchlist screening program Get an individual watchlist screening program @param watchlist_screening_individual_program_get_request [WatchlistScreeningIndividualProgramGetRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningIndividualProgramGetResponse, Integer, Hash)>] WatchlistScreeningIndividualProgramGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 19472
def watchlist_screening_individual_program_get_with_http_info(watchlist_screening_individual_program_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_individual_program_get ...'
  end
  # verify the required parameter 'watchlist_screening_individual_program_get_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_individual_program_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_individual_program_get_request' when calling PlaidApi.watchlist_screening_individual_program_get"
  end
  # resource path
  local_var_path = '/watchlist_screening/individual/program/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_individual_program_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningIndividualProgramGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_individual_program_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_individual_program_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_individual_program_list(watchlist_screening_individual_program_list_request, opts = {}) click to toggle source

List individual watchlist screening programs List all individual watchlist screening programs @param watchlist_screening_individual_program_list_request [WatchlistScreeningIndividualProgramListRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningIndividualProgramListResponse]

# File lib/plaid/api/plaid_api.rb, line 19530
def watchlist_screening_individual_program_list(watchlist_screening_individual_program_list_request, opts = {})
  data, _status_code, _headers = watchlist_screening_individual_program_list_with_http_info(watchlist_screening_individual_program_list_request, opts)
  data
end
watchlist_screening_individual_program_list_with_http_info(watchlist_screening_individual_program_list_request, opts = {}) click to toggle source

List individual watchlist screening programs List all individual watchlist screening programs @param watchlist_screening_individual_program_list_request [WatchlistScreeningIndividualProgramListRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningIndividualProgramListResponse, Integer, Hash)>] WatchlistScreeningIndividualProgramListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 19540
def watchlist_screening_individual_program_list_with_http_info(watchlist_screening_individual_program_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_individual_program_list ...'
  end
  # verify the required parameter 'watchlist_screening_individual_program_list_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_individual_program_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_individual_program_list_request' when calling PlaidApi.watchlist_screening_individual_program_list"
  end
  # resource path
  local_var_path = '/watchlist_screening/individual/program/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_individual_program_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningIndividualProgramListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_individual_program_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_individual_program_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_individual_review_create(watchlist_screening_individual_review_create_request, opts = {}) click to toggle source

Create a review for an individual watchlist screening Create a review for the individual watchlist screening. Reviews are compliance reports created by users in your organization regarding the relevance of potential hits found by Plaid. @param watchlist_screening_individual_review_create_request [WatchlistScreeningIndividualReviewCreateRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningIndividualReviewCreateResponse]

# File lib/plaid/api/plaid_api.rb, line 19598
def watchlist_screening_individual_review_create(watchlist_screening_individual_review_create_request, opts = {})
  data, _status_code, _headers = watchlist_screening_individual_review_create_with_http_info(watchlist_screening_individual_review_create_request, opts)
  data
end
watchlist_screening_individual_review_create_with_http_info(watchlist_screening_individual_review_create_request, opts = {}) click to toggle source

Create a review for an individual watchlist screening Create a review for the individual watchlist screening. Reviews are compliance reports created by users in your organization regarding the relevance of potential hits found by Plaid. @param watchlist_screening_individual_review_create_request [WatchlistScreeningIndividualReviewCreateRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningIndividualReviewCreateResponse, Integer, Hash)>] WatchlistScreeningIndividualReviewCreateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 19608
def watchlist_screening_individual_review_create_with_http_info(watchlist_screening_individual_review_create_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_individual_review_create ...'
  end
  # verify the required parameter 'watchlist_screening_individual_review_create_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_individual_review_create_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_individual_review_create_request' when calling PlaidApi.watchlist_screening_individual_review_create"
  end
  # resource path
  local_var_path = '/watchlist_screening/individual/review/create'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_individual_review_create_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningIndividualReviewCreateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_individual_review_create",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_individual_review_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_individual_review_list(watchlist_screening_individual_review_list_request, opts = {}) click to toggle source

List reviews for individual watchlist screenings List all reviews for the individual watchlist screening. @param watchlist_screening_individual_review_list_request [WatchlistScreeningIndividualReviewListRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningIndividualReviewListResponse]

# File lib/plaid/api/plaid_api.rb, line 19666
def watchlist_screening_individual_review_list(watchlist_screening_individual_review_list_request, opts = {})
  data, _status_code, _headers = watchlist_screening_individual_review_list_with_http_info(watchlist_screening_individual_review_list_request, opts)
  data
end
watchlist_screening_individual_review_list_with_http_info(watchlist_screening_individual_review_list_request, opts = {}) click to toggle source

List reviews for individual watchlist screenings List all reviews for the individual watchlist screening. @param watchlist_screening_individual_review_list_request [WatchlistScreeningIndividualReviewListRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningIndividualReviewListResponse, Integer, Hash)>] WatchlistScreeningIndividualReviewListResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 19676
def watchlist_screening_individual_review_list_with_http_info(watchlist_screening_individual_review_list_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_individual_review_list ...'
  end
  # verify the required parameter 'watchlist_screening_individual_review_list_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_individual_review_list_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_individual_review_list_request' when calling PlaidApi.watchlist_screening_individual_review_list"
  end
  # resource path
  local_var_path = '/watchlist_screening/individual/review/list'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_individual_review_list_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningIndividualReviewListResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_individual_review_list",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_individual_review_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
watchlist_screening_individual_update(watchlist_screening_individual_update_request, opts = {}) click to toggle source

Update individual watchlist screening Update a specific individual watchlist screening. This endpoint can be used to add additional customer information, correct outdated information, add a reference id, assign the individual to a reviewer, and update which program it is associated with. Please note that you may not update ‘search_terms` and `status` at the same time since editing `search_terms` may trigger an automatic `status` change. @param watchlist_screening_individual_update_request [WatchlistScreeningIndividualUpdateRequest] @param [Hash] opts the optional parameters @return [WatchlistScreeningIndividualUpdateResponse]

# File lib/plaid/api/plaid_api.rb, line 19734
def watchlist_screening_individual_update(watchlist_screening_individual_update_request, opts = {})
  data, _status_code, _headers = watchlist_screening_individual_update_with_http_info(watchlist_screening_individual_update_request, opts)
  data
end
watchlist_screening_individual_update_with_http_info(watchlist_screening_individual_update_request, opts = {}) click to toggle source

Update individual watchlist screening Update a specific individual watchlist screening. This endpoint can be used to add additional customer information, correct outdated information, add a reference id, assign the individual to a reviewer, and update which program it is associated with. Please note that you may not update &#x60;search_terms&#x60; and &#x60;status&#x60; at the same time since editing &#x60;search_terms&#x60; may trigger an automatic &#x60;status&#x60; change. @param watchlist_screening_individual_update_request [WatchlistScreeningIndividualUpdateRequest] @param [Hash] opts the optional parameters @return [Array<(WatchlistScreeningIndividualUpdateResponse, Integer, Hash)>] WatchlistScreeningIndividualUpdateResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 19744
def watchlist_screening_individual_update_with_http_info(watchlist_screening_individual_update_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.watchlist_screening_individual_update ...'
  end
  # verify the required parameter 'watchlist_screening_individual_update_request' is set
  if @api_client.config.client_side_validation && watchlist_screening_individual_update_request.nil?
    fail ArgumentError, "Missing the required parameter 'watchlist_screening_individual_update_request' when calling PlaidApi.watchlist_screening_individual_update"
  end
  # resource path
  local_var_path = '/watchlist_screening/individual/update'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(watchlist_screening_individual_update_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WatchlistScreeningIndividualUpdateResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.watchlist_screening_individual_update",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#watchlist_screening_individual_update\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
webhook_verification_key_get(webhook_verification_key_get_request, opts = {}) click to toggle source

Get webhook verification key Plaid signs all outgoing webhooks and provides JSON Web Tokens (JWTs) so that you can verify the authenticity of any incoming webhooks to your application. A message signature is included in the ‘Plaid-Verification` header. The `/webhook_verification_key/get` endpoint provides a JSON Web Key (JWK) that can be used to verify a JWT. @param webhook_verification_key_get_request [WebhookVerificationKeyGetRequest] @param [Hash] opts the optional parameters @return [WebhookVerificationKeyGetResponse]

# File lib/plaid/api/plaid_api.rb, line 19802
def webhook_verification_key_get(webhook_verification_key_get_request, opts = {})
  data, _status_code, _headers = webhook_verification_key_get_with_http_info(webhook_verification_key_get_request, opts)
  data
end
webhook_verification_key_get_with_http_info(webhook_verification_key_get_request, opts = {}) click to toggle source

Get webhook verification key Plaid signs all outgoing webhooks and provides JSON Web Tokens (JWTs) so that you can verify the authenticity of any incoming webhooks to your application. A message signature is included in the &#x60;Plaid-Verification&#x60; header. The &#x60;/webhook_verification_key/get&#x60; endpoint provides a JSON Web Key (JWK) that can be used to verify a JWT. @param webhook_verification_key_get_request [WebhookVerificationKeyGetRequest] @param [Hash] opts the optional parameters @return [Array<(WebhookVerificationKeyGetResponse, Integer, Hash)>] WebhookVerificationKeyGetResponse data, response status code and response headers

# File lib/plaid/api/plaid_api.rb, line 19812
def webhook_verification_key_get_with_http_info(webhook_verification_key_get_request, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: PlaidApi.webhook_verification_key_get ...'
  end
  # verify the required parameter 'webhook_verification_key_get_request' is set
  if @api_client.config.client_side_validation && webhook_verification_key_get_request.nil?
    fail ArgumentError, "Missing the required parameter 'webhook_verification_key_get_request' when calling PlaidApi.webhook_verification_key_get"
  end
  # resource path
  local_var_path = '/webhook_verification_key/get'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])
  # HTTP header 'Content-Type'
  content_type = @api_client.select_header_content_type(['application/json'])
  if !content_type.nil?
      header_params['Content-Type'] = content_type
  end

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body] || @api_client.object_to_http_body(webhook_verification_key_get_request)

  # return_type
  return_type = opts[:debug_return_type] || 'WebhookVerificationKeyGetResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['clientId', 'plaidVersion', 'secret']

  new_options = opts.merge(
    :operation => :"PlaidApi.webhook_verification_key_get",
    :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(:POST, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PlaidApi#webhook_verification_key_get\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end