Created
March 7, 2022 12:28
-
-
Save MarwanRefaat/0e7adf6672f916e1714e6bb826f88989 to your computer and use it in GitHub Desktop.
GameFi Plaid OpenAPI v3.1.0 (YAML)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
openapi: 3.1.0 | |
info: | |
title: GameFi Plaid OpenAPI | |
description: The GameFi Plaid REST API is used to connect to user's bank accounts and get their transaction history as well as integrate with third-party services for money transfer. | |
contact: | |
name: GameFi Engineering | |
url: "https://engineering.gamefi.com" | |
email: engineering@gamefi.com | |
version: 2020-09-14_1.64.13 | |
termsOfService: "https://gamefi.com/terms" | |
summary: "The GameFi Plaid REST API. Please see the [Plaid API Docs](https://plaid.com/docs/api) for more details." | |
jsonSchemaDialect: "https://json-schema.org/draft/2020-12/schema" | |
servers: | |
- url: "https://api.gamefi.com/api:plaid" | |
description: GameFi Plaid API | |
variables: {} | |
paths: | |
/accounts/balance/get: | |
post: | |
tags: | |
- account | |
summary: plaidAccountsBalanceGet | |
description: The `/accounts/balance/get` endpoint returns the real-time balance for each of an Item's accounts. | |
externalDocs: | |
url: "https://plaid.com/docs/api/products/#accountsbalanceget" | |
operationId: plaidAccountsBalanceGet | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidAccountsBalanceGetRequest" | |
examples: | |
example: | |
value: | |
access_token: access-production-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
secret: 739e7b8b7198eda21b91dec430ca01 | |
client_id: 5fd43aad1186c30013d6f3e2 | |
options: | |
account_ids: | |
- string | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidAccountsGetResponse" | |
examples: | |
example-1: | |
value: | |
accounts: | |
- account_id: string | |
balances: | |
available: 0 | |
current: 0 | |
limit: 0 | |
iso_currency_code: string | |
unofficial_currency_code: string | |
last_updated_datetime: string | |
mask: string | |
name: string | |
official_name: string | |
type: investment | |
subtype: 401a | |
verification_status: automatically_verified | |
item: | |
item_id: string | |
institution_id: string | |
webhook: string | |
error: | |
error_type: INVALID_REQUEST | |
error_code: string | |
error_message: string | |
display_message: string | |
request_id: string | |
causes: | |
- null | |
status: 0 | |
documentation_url: string | |
suggested_action: string | |
available_products: | |
- assets | |
billed_products: | |
- assets | |
products: | |
- assets | |
consent_expiration_time: string | |
update_type: background | |
request_id: string | |
deprecated: false | |
parameters: [] | |
/accounts/get: | |
post: | |
tags: | |
- account | |
summary: plaidAccountsGet | |
description: The `/accounts/get` endpoint can be used to get a list of accounts associated with any linked Item. Plaid will only return active bank accounts. | |
externalDocs: | |
url: "https://plaid.com/docs/api/accounts/#accountsget" | |
operationId: plaidAccountsGet | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidAccountsGetRequest" | |
examples: | |
example: | |
value: | |
client_id: 5fd43aad1186c30013d6f3e2 | |
secret: 739e7b8b7198eda21b91dec430ca01 | |
access_token: access-production-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
options: | |
account_ids: | |
- string | |
required: true | |
responses: | |
"200": | |
description: success | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidAccountsGetResponse" | |
examples: | |
example-1: | |
value: | |
accounts: | |
- account_id: string | |
balances: | |
available: 0 | |
current: 0 | |
limit: 0 | |
iso_currency_code: string | |
unofficial_currency_code: string | |
last_updated_datetime: string | |
mask: string | |
name: string | |
official_name: string | |
type: investment | |
subtype: 401a | |
verification_status: automatically_verified | |
item: | |
item_id: string | |
institution_id: string | |
webhook: string | |
error: | |
error_type: INVALID_REQUEST | |
error_code: string | |
error_message: string | |
display_message: string | |
request_id: string | |
causes: | |
- null | |
status: 0 | |
documentation_url: string | |
suggested_action: string | |
available_products: | |
- assets | |
billed_products: | |
- assets | |
products: | |
- assets | |
consent_expiration_time: string | |
update_type: background | |
request_id: string | |
default: | |
description: Error response. | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidError" | |
deprecated: false | |
parameters: [] | |
/auth/get: | |
post: | |
tags: | |
- auth | |
summary: plaidAuthGet | |
description: "The Plaid `/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. To obtain data for new accounts, create a new Item." | |
externalDocs: | |
url: "https://plaid.com/docs/api/products/#authget" | |
operationId: plaidAuthGet | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidAuthGetRequest" | |
examples: | |
example: | |
value: | |
access_token: access-production-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
options: | |
account_ids: | |
- string | |
required: true | |
responses: | |
"200": | |
description: success | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidAuthGetResponse" | |
examples: | |
example-1: | |
value: | |
accounts: | |
- account_id: string | |
balances: | |
available: 0 | |
current: 0 | |
limit: 0 | |
iso_currency_code: string | |
unofficial_currency_code: string | |
last_updated_datetime: string | |
mask: string | |
name: string | |
official_name: string | |
type: investment | |
subtype: 401a | |
verification_status: automatically_verified | |
numbers: | |
ach: | |
- account_id: string | |
account: string | |
routing: string | |
wire_routing: string | |
item: | |
item_id: string | |
institution_id: string | |
webhook: string | |
error: | |
error_type: INVALID_REQUEST | |
error_code: string | |
error_message: string | |
display_message: string | |
request_id: string | |
causes: | |
- null | |
status: 0 | |
documentation_url: string | |
suggested_action: string | |
available_products: | |
- assets | |
billed_products: | |
- assets | |
products: | |
- assets | |
consent_expiration_time: string | |
update_type: background | |
request_id: string | |
default: | |
description: Default error | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidError" | |
deprecated: false | |
parameters: [] | |
/categories/get: | |
post: | |
tags: | |
- transactions | |
summary: plaidCategoriesGet | |
description: Send a request to the `/categories/get` endpoint to get detailed information on categories returned by Plaid. This endpoint does not require authentication. | |
externalDocs: | |
url: "https://plaid.com/docs/api/products/#categoriesget" | |
operationId: plaidCategoriesGet | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
type: object | |
contentMediaType: application/json | |
required: true | |
responses: | |
"200": | |
description: success | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidCategoriesGetResponse" | |
examples: | |
example-1: | |
value: | |
categories: | |
- category_id: string | |
group: string | |
hierarchy: | |
- string | |
request_id: string | |
default: | |
description: Error response. | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidError" | |
deprecated: false | |
security: [] | |
parameters: [] | |
/identity/get: | |
post: | |
tags: | |
- identity | |
summary: plaidIdentityGet | |
description: |- | |
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: This request may take some time to complete if identity was not specified as an initial product when creating the Item. This is because Plaid must communicate directly with the institution to retrieve the data. | |
externalDocs: | |
url: "https://plaid.com/docs/api/products/#identityget" | |
operationId: plaidIdentityGet | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidIdentityGetRequest" | |
examples: | |
example: | |
value: | |
access_token: access-production-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
options: | |
account_ids: | |
- string | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidIdentityGetResponse" | |
examples: | |
example-1: | |
value: | |
accounts: | |
- account_id: string | |
balances: | |
available: 0 | |
current: 0 | |
limit: 0 | |
iso_currency_code: string | |
unofficial_currency_code: string | |
last_updated_datetime: string | |
mask: string | |
name: string | |
official_name: string | |
type: investment | |
subtype: 401a | |
verification_status: automatically_verified | |
owners: | |
- names: | |
- string | |
phone_numbers: | |
- data: string | |
primary: true | |
type: home | |
emails: | |
- data: string | |
primary: true | |
type: primary | |
addresses: | |
- data: | |
city: string | |
region: string | |
street: string | |
postal_code: string | |
country: string | |
primary: true | |
item: | |
item_id: string | |
institution_id: string | |
webhook: string | |
error: | |
error_type: INVALID_REQUEST | |
error_code: string | |
error_message: string | |
display_message: string | |
request_id: string | |
causes: | |
- null | |
status: 0 | |
documentation_url: string | |
suggested_action: string | |
available_products: | |
- assets | |
billed_products: | |
- assets | |
products: | |
- assets | |
consent_expiration_time: string | |
update_type: background | |
request_id: string | |
deprecated: false | |
parameters: [] | |
/institutions/get: | |
post: | |
tags: | |
- institutions | |
summary: plaidInstitutionsGet | |
description: The paginated endpoint returning information about approximately 16 thousand institutions supported by Plaid. | |
externalDocs: | |
url: "https://plaid.com/docs/api/institutions/#institutionsget" | |
operationId: plaidInstitutionsGet | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidInstitutionsGetRequest" | |
examples: | |
example: | |
value: | |
count: 1 | |
offset: 0 | |
country_codes: | |
- US | |
options: | |
products: | |
- transactions | |
routing_numbers: | |
- string | |
oauth: true | |
include_optional_metadata: true | |
include_auth_metadata: false | |
include_payment_initiation_metadata: false | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidInstitutionsGetResponse" | |
examples: | |
example-1: | |
value: | |
institutions: | |
- institution_id: string | |
name: string | |
products: | |
- assets | |
country_codes: | |
- US | |
url: string | |
primary_color: string | |
logo: string | |
routing_numbers: | |
- string | |
oauth: true | |
status: | |
item_logins: | |
status: HEALTHY | |
last_status_change: string | |
breakdown: | |
success: 0 | |
error_plaid: 0 | |
error_institution: 0 | |
refresh_interval: NORMAL | |
transactions_updates: | |
status: HEALTHY | |
last_status_change: string | |
breakdown: | |
success: 0 | |
error_plaid: 0 | |
error_institution: 0 | |
refresh_interval: NORMAL | |
auth: | |
status: HEALTHY | |
last_status_change: string | |
breakdown: | |
success: 0 | |
error_plaid: 0 | |
error_institution: 0 | |
refresh_interval: NORMAL | |
identity: | |
status: HEALTHY | |
last_status_change: string | |
breakdown: | |
success: 0 | |
error_plaid: 0 | |
error_institution: 0 | |
refresh_interval: NORMAL | |
investments_updates: | |
status: HEALTHY | |
last_status_change: string | |
breakdown: | |
success: 0 | |
error_plaid: 0 | |
error_institution: 0 | |
refresh_interval: NORMAL | |
liabilities_updates: | |
status: HEALTHY | |
last_status_change: string | |
breakdown: | |
success: 0 | |
error_plaid: 0 | |
error_institution: 0 | |
refresh_interval: NORMAL | |
liabilities: | |
status: HEALTHY | |
last_status_change: string | |
breakdown: | |
success: 0 | |
error_plaid: 0 | |
error_institution: 0 | |
refresh_interval: NORMAL | |
investments: | |
status: HEALTHY | |
last_status_change: string | |
breakdown: | |
success: 0 | |
error_plaid: 0 | |
error_institution: 0 | |
refresh_interval: NORMAL | |
health_incidents: | |
- start_date: string | |
end_date: string | |
title: string | |
incident_updates: | |
- description: string | |
status: INVESTIGATING | |
updated_date: string | |
auth_metadata: | |
supported_methods: | |
instant_auth: true | |
instant_match: true | |
automated_micro_deposits: true | |
total: 0 | |
request_id: string | |
default: | |
description: Error response | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidError" | |
deprecated: false | |
parameters: [] | |
/item/get: | |
post: | |
tags: | |
- item | |
summary: plaidItemGet | |
description: Returns information about the status of an Item. | |
externalDocs: | |
url: "https://plaid.com/docs/api/items/#itemget" | |
operationId: plaidItemGet | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidItemGetRequest" | |
required: true | |
responses: | |
"200": | |
description: success | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidItemGetResponse" | |
default: | |
description: Error response. | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidError" | |
deprecated: false | |
parameters: [] | |
/item/public_token/exchange: | |
post: | |
tags: | |
- token | |
summary: plaidItemPublicTokenExchange | |
description: "When you create an Item, you will automatically be given a `public_token`. You can use this `public_token` to access the Item's data via the API. The `public_token` will expire after 30 minutes, so you will need to exchange it for an `access_token`" | |
externalDocs: | |
url: "https://plaid.com/docs/api/tokens/#itempublic_tokenexchange" | |
operationId: plaidItemPublicTokenExchange | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidItemPublicTokenExchangeRequest" | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidItemPublicTokenExchangeResponse" | |
examples: | |
example-1: | |
value: | |
access_token: access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
item_id: string | |
request_id: string | |
deprecated: false | |
parameters: [] | |
/item/remove: | |
post: | |
tags: | |
- item | |
summary: plaidItemRemove | |
description: "Use the `/item/remove` endpoint to permanently remove an item. Once the item is removed, the `access_token` associated with the item is no longer valid and you can't use it to access any data that was associated with the item." | |
externalDocs: | |
url: "https://plaid.com/docs/api/items/#itemremove" | |
operationId: plaidItemRemove | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidItemRemoveRequest" | |
required: true | |
responses: | |
"200": | |
description: success | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidItemRemoveResponse" | |
examples: | |
example-1: | |
value: | |
request_id: string | |
default: | |
description: Error response. | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidError" | |
deprecated: false | |
parameters: [] | |
/item/webhook/update: | |
post: | |
tags: | |
- item | |
summary: plaidItemWebhookUpdate | |
description: "The POST `/item/webhook/update` allows you to update the webhook URL associated with an Item. This request triggers a [`WEBHOOK_UPDATE_ACKNOWLEDGED`](https://plaid.com/docs/api/webhooks/#item-webhook-update-acknowledged) webhook to the newly specified webhook URL." | |
externalDocs: | |
url: "https://plaid.com/docs/api/items/#itemwebhookupdate" | |
operationId: plaidItemWebhookUpdate | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidItemWebhookUpdateRequest" | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidItemWebhookUpdateResponse" | |
examples: | |
example-1: | |
value: | |
item: | |
item_id: string | |
institution_id: string | |
webhook: string | |
error: | |
error_type: INVALID_REQUEST | |
error_code: string | |
error_message: string | |
display_message: string | |
request_id: string | |
causes: | |
- null | |
status: 0 | |
documentation_url: string | |
suggested_action: string | |
available_products: | |
- assets | |
billed_products: | |
- assets | |
products: | |
- assets | |
consent_expiration_time: string | |
update_type: background | |
request_id: string | |
deprecated: false | |
parameters: [] | |
/link/token/create: | |
post: | |
tags: | |
- token | |
summary: plaidLinkTokenCreate | |
description: |- | |
The `/link/token/create` endpoint creates a `link_token`, which is required as a parameter when initializing Link. Once Link has been initialized, it returns a `public_token`, which can then be exchanged for an `access_token` via `/item/public_token/exchange` as part of the main Link flow. | |
A `link_token` generated by `/link/token/create` is also used to initialize other Link flows, such as the update mode flow for tokens with expired credentials, or the Payment Initiation (Europe) flow. | |
externalDocs: | |
url: "https://plaid.com/docs/api/tokens/#linktokencreate" | |
operationId: plaidLinkTokenCreate | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidLinkTokenCreateRequest" | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidLinkTokenCreateResponse" | |
examples: | |
example-1: | |
value: | |
link_token: string | |
expiration: string | |
request_id: string | |
deprecated: false | |
parameters: [] | |
/link/token/get: | |
post: | |
tags: | |
- token | |
summary: plaidLinkTokenGet | |
description: |- | |
The `/link/token/get` endpoint gets information about a previously-created `link_token` using the | |
`/link/token/create` endpoint. It can be useful for debugging purposes. | |
externalDocs: | |
url: "https://plaid.com/docs/api/tokens/#linktokenget" | |
operationId: plaidLinkTokenGet | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidLinkTokenGetRequest" | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidLinkTokenGetResponse" | |
examples: | |
example-1: | |
value: | |
link_token: string | |
created_at: string | |
expiration: string | |
metadata: | |
initial_products: | |
- assets | |
webhook: string | |
country_codes: | |
- US | |
language: string | |
account_filters: | |
depository: | |
account_subtypes: | |
- checking | |
credit: | |
account_subtypes: | |
- credit card | |
redirect_uri: string | |
client_name: string | |
request_id: string | |
deprecated: false | |
parameters: [] | |
/sandbox/processor_token/create: | |
post: | |
tags: | |
- sandbox | |
summary: plaidSandboxProcessorTokenCreate | |
description: "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](https://plaid.com/docs/sandbox/user-custom) to generate a test account with custom data." | |
externalDocs: | |
url: "https://plaid.com/docs/api/sandbox/#sandboxprocessor_tokencreate" | |
operationId: plaidSandboxProcessorTokenCreate | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidSandboxProcessorTokenCreateRequest" | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidSandboxProcessorTokenCreateResponse" | |
examples: | |
example-1: | |
value: | |
processor_token: string | |
request_id: string | |
default: | |
description: Error response. | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidError" | |
deprecated: false | |
parameters: [] | |
/sandbox/public_token/create: | |
post: | |
tags: | |
- sandbox | |
summary: plaidSandboxPublicTokenCreate | |
description: "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](https://plaid.com/docs/sandbox/user-custom) to generate a test account with custom data. `/sandbox/public_token/create` cannot be used with OAuth institutions." | |
externalDocs: | |
url: "https://plaid.com/docs/api/sandbox/#sandboxpublic_tokencreate" | |
operationId: plaidSandboxPublicTokenCreate | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidSandboxPublicTokenCreateRequest" | |
required: true | |
responses: | |
"200": | |
description: success | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidSandboxPublicTokenCreateResponse" | |
examples: | |
example-1: | |
value: | |
public_token: string | |
request_id: string | |
default: | |
description: Error response. | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidError" | |
deprecated: false | |
parameters: [] | |
/processor/token/create: | |
post: | |
tags: | |
- processor | |
summary: plaidProcessorTokenCreate | |
description: 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. | |
externalDocs: | |
url: "https://plaid.com/docs/api/processors/#processortokencreate" | |
operationId: plaidProcessorTokenCreate | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidProcessorTokenCreateRequest" | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidProcessorTokenCreateResponse" | |
examples: | |
example-1: | |
value: | |
processor_token: string | |
request_id: string | |
deprecated: false | |
parameters: [] | |
/transactions/get: | |
post: | |
tags: | |
- transactions | |
summary: transactionsGet | |
description: |- | |
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](https://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](https://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. An Item's `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`](https://plaid.com/docs/api/webhooks#transactions-initial_update) and [`HISTORICAL_UPDATE`](https://plaid.com/docs/api/webhooks#transactions-historical_update) webhooks. If no transaction history is ready when `/transactions/get` is called, it will return a `PRODUCT_NOT_READY` error. | |
externalDocs: | |
url: "https://plaid.com/docs/api/products/#transactionsget" | |
operationId: transactionsGet | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidTransactionsGetRequest" | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidTransactionsGetResponse" | |
examples: | |
example-1: | |
value: | |
accounts: | |
- account_id: string | |
balances: | |
available: 0 | |
current: 0 | |
limit: 0 | |
iso_currency_code: string | |
unofficial_currency_code: string | |
last_updated_datetime: string | |
mask: string | |
name: string | |
official_name: string | |
type: investment | |
subtype: 401a | |
verification_status: automatically_verified | |
transactions: | |
- transaction_type: digital | |
pending_transaction_id: string | |
category_id: string | |
category: | |
- string | |
location: | |
address: string | |
city: string | |
region: string | |
postal_code: string | |
country: string | |
lat: 0 | |
lon: 0 | |
store_number: string | |
account_owner: string | |
name: string | |
original_description: string | |
account_id: string | |
amount: 0 | |
iso_currency_code: string | |
unofficial_currency_code: string | |
date: string | |
pending: true | |
transaction_id: string | |
merchant_name: string | |
check_number: string | |
payment_channel: online | |
authorized_date: string | |
authorized_datetime: string | |
datetime: string | |
transaction_code: adjustment | |
personal_finance_category: | |
primary: string | |
detailed: string | |
total_transactions: 0 | |
item: | |
item_id: string | |
institution_id: string | |
webhook: string | |
error: | |
error_type: INVALID_REQUEST | |
error_code: string | |
error_message: string | |
display_message: string | |
request_id: string | |
causes: | |
- null | |
status: 0 | |
documentation_url: string | |
suggested_action: string | |
available_products: | |
- assets | |
billed_products: | |
- assets | |
products: | |
- assets | |
consent_expiration_time: string | |
update_type: background | |
request_id: string | |
default: | |
description: Error response | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidError" | |
deprecated: false | |
parameters: [] | |
/transactions/recurring/get: | |
post: | |
tags: | |
- transactions | |
summary: transactionsRecurringGet | |
description: |- | |
The `/transactions/recurring/get` endpoint identifies and returns groups of transactions that occur on a regular basis for the inputted Item and accounts. | |
The product is currently in beta. To request access, contact transactions-feedback@plaid.com. | |
operationId: transactionsRecurringGet | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidTransactionsRecurringGetRequest" | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidTransactionsRecurringGetResponse" | |
examples: | |
example-1: | |
value: | |
inflow_streams: | |
- account_id: string | |
stream_id: string | |
category_id: string | |
category: | |
- string | |
description: string | |
first_date: string | |
last_date: string | |
frequency: UNKNOWN | |
transaction_ids: | |
- string | |
average_amount: | |
amount: 0 | |
iso_currency_code: string | |
unofficial_currency_code: string | |
is_active: true | |
outflow_streams: | |
- account_id: string | |
stream_id: string | |
category_id: string | |
category: | |
- string | |
description: string | |
first_date: string | |
last_date: string | |
frequency: UNKNOWN | |
transaction_ids: | |
- string | |
average_amount: | |
amount: 0 | |
iso_currency_code: string | |
unofficial_currency_code: string | |
is_active: true | |
request_id: string | |
default: | |
description: Error response | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidError" | |
deprecated: false | |
parameters: [] | |
/transactions/refresh: | |
post: | |
tags: | |
- transactions | |
summary: transactionsRefresh | |
description: |- | |
`/transactions/refresh` is an optional endpoint for users of the Transactions product. It initiates an on-demand extraction to fetch the newest transactions for an Item. This on-demand extraction takes place in addition to the periodic extractions that automatically occur multiple times a day for any Transactions-enabled Item. If changes to transactions are discovered after calling `/transactions/refresh`, Plaid will fire a webhook: [`TRANSACTIONS_REMOVED`](https://plaid.com/docs/api/webhooks#deleted-transactions-detected) will be fired if any removed transactions are detected, and [`DEFAULT_UPDATE`](https://plaid.com/docs/api/webhooks#transactions-default_update) will be fired if any new transactions are detected. New transactions can be fetched by calling `/transactions/get`. | |
Access to `/transactions/refresh` in Production is specific to certain pricing plans. If you cannot access `/transactions/refresh` in Production, [contact Sales](https://www.plaid.com/contact) for assistance. | |
externalDocs: | |
url: "https://plaid.com/docs/api/products/#transactionsrefresh" | |
operationId: transactionsRefresh | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidTransactionsRefreshRequest" | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidTransactionsRefreshResponse" | |
examples: | |
example-1: | |
value: | |
request_id: string | |
default: | |
description: Error response | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidError" | |
deprecated: false | |
parameters: [] | |
/transactions/sync: | |
post: | |
tags: | |
- transactions | |
summary: transactionsSync | |
description: |- | |
The `/transactions/sync` endpoint returns item transactions as a set of delta updates. | |
Subsequent calls to the endpoint using the cursor returned in the response will return new added, modified, and removed transactions since the last call to the endpoint | |
The product is currently in beta. To request access, contact transactions-feedback@plaid.com. | |
externalDocs: | |
url: "https://plaid.com/docs/api/products/#transactionssync" | |
operationId: transactionsSync | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidTransactionsSyncRequest" | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidTransactionsSyncResponse" | |
examples: | |
example-1: | |
value: | |
added: | |
- transaction_type: digital | |
pending_transaction_id: string | |
category_id: string | |
category: | |
- string | |
location: | |
address: string | |
city: string | |
region: string | |
postal_code: string | |
country: string | |
lat: 0 | |
lon: 0 | |
store_number: string | |
account_owner: string | |
name: string | |
original_description: string | |
account_id: string | |
amount: 0 | |
iso_currency_code: string | |
unofficial_currency_code: string | |
date: string | |
pending: true | |
transaction_id: string | |
merchant_name: string | |
check_number: string | |
payment_channel: online | |
authorized_date: string | |
authorized_datetime: string | |
datetime: string | |
transaction_code: adjustment | |
personal_finance_category: | |
primary: string | |
detailed: string | |
modified: | |
- transaction_type: digital | |
pending_transaction_id: string | |
category_id: string | |
category: | |
- string | |
location: | |
address: string | |
city: string | |
region: string | |
postal_code: string | |
country: string | |
lat: 0 | |
lon: 0 | |
store_number: string | |
account_owner: string | |
name: string | |
original_description: string | |
account_id: string | |
amount: 0 | |
iso_currency_code: string | |
unofficial_currency_code: string | |
date: string | |
pending: true | |
transaction_id: string | |
merchant_name: string | |
check_number: string | |
payment_channel: online | |
authorized_date: string | |
authorized_datetime: string | |
datetime: string | |
transaction_code: adjustment | |
personal_finance_category: | |
primary: string | |
detailed: string | |
removed: | |
- transaction_id: string | |
next_cursor: string | |
has_more: true | |
request_id: string | |
default: | |
description: Error response | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidError" | |
deprecated: false | |
parameters: [] | |
/signal/decision/report: | |
post: | |
tags: | |
- signal | |
summary: signalDecisionReport | |
description: "After calling `/signal/evaluate`, call `/signal/decision/report` to report whether the transaction was initiated. This endpoint will return an `INVALID_REQUEST` error if called a second time with a different value for `initiated`." | |
externalDocs: | |
url: "https://plaid.com/docs/signal/reference#signaldecisionreport" | |
operationId: signalDecisionReport | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidSignalDecisionReportRequest" | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidSignalDecisionReportResponse" | |
examples: | |
example-1: | |
value: | |
request_id: string | |
default: | |
description: Error response. | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidError" | |
deprecated: false | |
parameters: [] | |
/signal/evaluate: | |
post: | |
tags: | |
- signal | |
summary: signalEvaluate | |
description: |- | |
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. | |
externalDocs: | |
url: "https://plaid.com/docs/signal/reference#signalevaluate" | |
operationId: signalEvaluate | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidSignalEvaluateRequest" | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidSignalEvaluateResponse" | |
examples: | |
example-1: | |
value: | |
request_id: string | |
scores: | |
customer_initiated_return_risk: | |
score: 0 | |
risk_tier: 1 | |
bank_initiated_return_risk: | |
score: 0 | |
risk_tier: 1 | |
core_attributes: | |
unauthorized_transactions_count_7d: 0 | |
unauthorized_transactions_count_30d: 0 | |
unauthorized_transactions_count_60d: 0 | |
unauthorized_transactions_count_90d: 0 | |
nsf_overdraft_transactions_count_7d: 0 | |
nsf_overdraft_transactions_count_30d: 0 | |
nsf_overdraft_transactions_count_60d: 0 | |
nsf_overdraft_transactions_count_90d: 0 | |
days_since_first_plaid_connection: 0 | |
plaid_connections_count_7d: 0 | |
plaid_connections_count_30d: 0 | |
total_plaid_connections_count: 0 | |
is_savings_or_money_market_account: true | |
total_credit_transactions_amount_10d: 0 | |
total_debit_transactions_amount_10d: 0 | |
p50_credit_transactions_amount_28d: 0 | |
p50_debit_transactions_amount_28d: 0 | |
p95_credit_transactions_amount_28d: 0 | |
p95_debit_transactions_amount_28d: 0 | |
days_with_negative_balance_count_90d: 0 | |
p90_eod_balance_30d: 0 | |
p90_eod_balance_60d: 0 | |
p90_eod_balance_90d: 0 | |
p10_eod_balance_30d: 0 | |
p10_eod_balance_60d: 0 | |
p10_eod_balance_90d: 0 | |
available_balance: 0 | |
current_balance: 0 | |
balance_last_updated: string | |
phone_change_count_28d: 0 | |
phone_change_count_90d: 0 | |
email_change_count_28d: 0 | |
email_change_count_90d: 0 | |
address_change_count_28d: 0 | |
address_change_count_90d: 0 | |
default: | |
description: Error response. | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidError" | |
deprecated: false | |
parameters: [] | |
/signal/return/report: | |
post: | |
tags: | |
- signal | |
summary: signalReturnReport | |
description: 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. | |
externalDocs: | |
url: "https://plaid.com/docs/signal/reference#signalreturnreport" | |
operationId: signalReturnReport | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidSignalReturnReportRequest" | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidSignalReturnReportResponse" | |
examples: | |
example-1: | |
value: | |
request_id: string | |
default: | |
description: Error response. | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidError" | |
deprecated: false | |
parameters: [] | |
/webhook_verification_key/get: | |
post: | |
tags: | |
- webhook | |
summary: webhookVerificationKeyGet | |
description: |- | |
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. | |
externalDocs: | |
url: "https://plaid.com/docs/api/webhooks/webhook-verification/#webhook_verification_keyget" | |
operationId: webhookVerificationKeyGet | |
parameters: [] | |
requestBody: | |
description: "" | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidWebhookVerificationKeyGetRequest" | |
required: true | |
responses: | |
"200": | |
description: OK | |
headers: {} | |
content: | |
application/json: | |
schema: | |
$ref: "#/components/schemas/PlaidWebhookVerificationKeyGetResponse" | |
examples: | |
example-1: | |
value: | |
key: | |
alg: string | |
crv: string | |
kid: string | |
kty: string | |
use: string | |
x: string | |
"y": string | |
created_at: 0 | |
expired_at: 0 | |
request_id: string | |
deprecated: false | |
parameters: [] | |
components: | |
schemas: | |
PlaidAccountAccess: | |
title: PlaidAccountAccess | |
required: | |
- unique_id | |
type: object | |
properties: | |
unique_id: | |
type: string | |
description: The unique account identifier for this account. This value must match that returned by the data access API for this account. | |
authorized: | |
type: | |
- boolean | |
- "null" | |
description: "Allow the application to see this account (and associated details, including balance) in the list of accounts If unset, defaults to `true`." | |
default: true | |
description: Allow or disallow product access by account. Unlisted (e.g. missing) accounts will be considered `new_accounts`. | |
PlaidAccountBalance: | |
title: PlaidAccountBalance | |
required: | |
- available | |
- current | |
- limit | |
- iso_currency_code | |
- unofficial_currency_code | |
type: object | |
properties: | |
available: | |
type: | |
- number | |
- "null" | |
description: |- | |
The amount of funds available to be withdrawn from the account, as determined by the financial institution. | |
For `credit`-type accounts, the `available` balance typically equals the `limit` less the `current` balance, less any pending outflows plus any pending inflows. | |
For `depository`-type accounts, the `available` balance typically equals the `current` balance less any pending outflows plus any pending inflows. For `depository`-type accounts, the `available` balance does not include the overdraft limit. | |
For `investment`-type accounts (or `brokerage`-type accounts for API versions 2018-05-22 and earlier), the `available` balance is the total cash available to withdraw as presented by the institution. | |
Note that not all institutions calculate the `available` balance. In the event that `available` balance is unavailable, Plaid will return an `available` balance value of `null`. | |
Available balance may be cached and is not guaranteed to be up-to-date in realtime unless the value was returned by `/accounts/balance/get`. | |
If `current` is `null` this field is guaranteed not to be `null`. | |
current: | |
type: | |
- number | |
- "null" | |
description: |- | |
The total amount of funds in or owed by the account. | |
For `credit`-type accounts, a positive balance indicates the amount owed; a negative amount indicates the lender owing the account holder. | |
For `loan`-type accounts, the current balance is the principal remaining on the loan, except in the case of student loan accounts at Sallie Mae (`ins_116944`). For Sallie Mae student loans, the account's balance includes both principal and any outstanding interest. | |
For `investment`-type accounts (or `brokerage`-type accounts for API versions 2018-05-22 and earlier), the current balance is the total value of assets as presented by the institution. | |
Note that balance information may be cached unless the value was returned by `/accounts/balance/get`; if the Item is enabled for Transactions, the balance will be at least as recent as the most recent Transaction update. If you require realtime balance information, use the `available` balance as provided by `/accounts/balance/get`. | |
When returned by `/accounts/balance/get`, this field may be `null`. When this happens, `available` is guaranteed not to be `null`. | |
limit: | |
type: | |
- number | |
- "null" | |
description: |- | |
For `credit`-type accounts, this represents the credit limit. | |
For `depository`-type accounts, this represents the pre-arranged overdraft limit, which is common for current (checking) accounts in Europe. | |
In North America, this field is typically only available for `credit`-type accounts. | |
iso_currency_code: | |
type: | |
- string | |
- "null" | |
description: The ISO-4217 currency code of the balance. Always null if `unofficial_currency_code` is non-null. | |
unofficial_currency_code: | |
type: | |
- string | |
- "null" | |
description: |- | |
The unofficial currency code associated with the balance. Always null if `iso_currency_code` is non-null. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries. | |
See the [currency code schema](https://plaid.com/docs/api/accounts#currency-code-schema) for a full listing of supported `unofficial_currency_code`s. | |
last_updated_datetime: | |
type: | |
- string | |
- "null" | |
description: |- | |
Timestamp in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDTHH:mm:ssZ`) indicating the last time that the balance for the given account has been updated | |
This is currently only provided when the `min_last_updated_datetime` is passed when calling `/accounts/balance/get` for `ins_128026` (Capital One). | |
contentEncoding: date-time | |
description: A set of fields describing the balance for an account. Balance information may be cached unless the balance object was returned by `/accounts/balance/get`. | |
PlaidAccountBase: | |
title: PlaidAccountBase | |
required: | |
- account_id | |
- balances | |
- mask | |
- name | |
- official_name | |
- type | |
- subtype | |
type: object | |
properties: | |
account_id: | |
type: string | |
description: |- | |
Plaid’s unique identifier for the account. This value will not change unless Plaid can't reconcile the account with the data returned by the financial institution. This may occur, for example, when the name of the account changes. If this happens a new `account_id` will be assigned to the account. | |
The `account_id` can also change if the `access_token` is deleted and the same credentials that were used to generate that `access_token` are used to generate a new `access_token` on a later date. In that case, the new `account_id` will be different from the old `account_id`. | |
If an account with a specific `account_id` disappears instead of changing, the account is likely closed. Closed accounts are not returned by the Plaid API. | |
Like all Plaid identifiers, the `account_id` is case sensitive. | |
balances: | |
$ref: "#/components/schemas/PlaidAccountBalance" | |
mask: | |
type: | |
- string | |
- "null" | |
description: "The last 2-4 alphanumeric characters of an account's official account number. Note that the mask may be non-unique between an Item's accounts, and it may also not match the mask that the bank displays to the user." | |
name: | |
type: string | |
description: "The name of the account, either assigned by the user or by the financial institution itself" | |
official_name: | |
type: | |
- string | |
- "null" | |
description: The official name of the account as given by the financial institution | |
type: | |
$ref: "#/components/schemas/PlaidAccountType" | |
subtype: | |
$ref: "#/components/schemas/PlaidAccountSubtype" | |
verification_status: | |
$ref: "#/components/schemas/VerificationStatus" | |
description: A single account at a financial institution. | |
PlaidAccountFiltersResponse: | |
title: PlaidAccountFiltersResponse | |
type: object | |
properties: | |
depository: | |
$ref: "#/components/schemas/PlaidDepositoryFilter" | |
credit: | |
$ref: "#/components/schemas/PlaidCreditFilter" | |
description: The `account_filters` specified in the original call to `/link/token/create`. | |
PlaidAccountIdentity: | |
title: PlaidAccountIdentity | |
required: | |
- account_id | |
- balances | |
- mask | |
- name | |
- official_name | |
- type | |
- subtype | |
- owners | |
type: object | |
properties: | |
account_id: | |
type: string | |
description: |- | |
Plaid’s unique identifier for the account. This value will not change unless Plaid can't reconcile the account with the data returned by the financial institution. This may occur, for example, when the name of the account changes. If this happens a new `account_id` will be assigned to the account. | |
The `account_id` can also change if the `access_token` is deleted and the same credentials that were used to generate that `access_token` are used to generate a new `access_token` on a later date. In that case, the new `account_id` will be different from the old `account_id`. | |
If an account with a specific `account_id` disappears instead of changing, the account is likely closed. Closed accounts are not returned by the Plaid API. | |
Like all Plaid identifiers, the `account_id` is case sensitive. | |
balances: | |
$ref: "#/components/schemas/PlaidAccountBalance" | |
mask: | |
type: | |
- string | |
- "null" | |
description: "The last 2-4 alphanumeric characters of an account's official account number. Note that the mask may be non-unique between an Item's accounts, and it may also not match the mask that the bank displays to the user." | |
name: | |
type: string | |
description: "The name of the account, either assigned by the user or by the financial institution itself" | |
official_name: | |
type: | |
- string | |
- "null" | |
description: The official name of the account as given by the financial institution | |
type: | |
$ref: "#/components/schemas/PlaidAccountType" | |
subtype: | |
$ref: "#/components/schemas/PlaidAccountSubtype" | |
verification_status: | |
$ref: "#/components/schemas/VerificationStatus" | |
owners: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidOwner" | |
description: "Data returned by the financial institution about the account owner or owners. Only returned by Identity or Assets endpoints. For business accounts, the name reported may be either the name of the individual or the name of the business, depending on the institution. Multiple owners on a single account will be represented in the same `owner` object, not in multiple owner objects within the array. 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](https://plaid.com/docs/api/versioning/#version-2019-05-29)" | |
description: Identity information about an account | |
PlaidAccountSubtype: | |
title: PlaidAccountSubtype | |
enum: | |
- 401a | |
- 401k | |
- 403B | |
- 457b | |
- "529" | |
- brokerage | |
- cash isa | |
- education savings account | |
- ebt | |
- fixed annuity | |
- gic | |
- health reimbursement arrangement | |
- hsa | |
- isa | |
- ira | |
- lif | |
- life insurance | |
- lira | |
- lrif | |
- lrsp | |
- non-taxable brokerage account | |
- other | |
- other insurance | |
- other annuity | |
- prif | |
- rdsp | |
- resp | |
- rlif | |
- rrif | |
- pension | |
- profit sharing plan | |
- retirement | |
- roth | |
- roth 401k | |
- rrsp | |
- sep ira | |
- simple ira | |
- sipp | |
- stock plan | |
- thrift savings plan | |
- tfsa | |
- trust | |
- ugma | |
- utma | |
- variable annuity | |
- credit card | |
- paypal | |
- cd | |
- checking | |
- savings | |
- money market | |
- prepaid | |
- auto | |
- business | |
- commercial | |
- construction | |
- consumer | |
- home equity | |
- loan | |
- mortgage | |
- overdraft | |
- line of credit | |
- student | |
- cash management | |
- keogh | |
- mutual fund | |
- recurring | |
- rewards | |
- safe deposit | |
- sarsep | |
- payroll | |
type: string | |
description: "See the [Account type schema](https://plaid.com/docs/api/accounts/#account-type-schema) for a full listing of account types and corresponding subtypes." | |
examples: | |
- checking | |
PlaidAccountType: | |
title: PlaidAccountType | |
enum: | |
- investment | |
- credit | |
- depository | |
- loan | |
- brokerage | |
- other | |
type: string | |
description: "The type of account connected to Plaid (can either be `investment`, `credit`, `depository`, `loan`, `brokerage`, or `other`)." | |
examples: | |
- investment | |
PlaidAccountsBalanceGetRequest: | |
title: PlaidAccountsBalanceGetRequest | |
required: | |
- access_token | |
type: object | |
properties: | |
access_token: | |
maxLength: 55 | |
minLength: 51 | |
pattern: "^access-(sandbox|development|production)-.{8}-.{4}-.{4}-.{4}-.{12}$" | |
type: | |
- string | |
- "null" | |
description: The access token associated with the Item data is being requested for. | |
examples: | |
- access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
description: AccountsBalanceGetRequest defines the request schema for `/accounts/balance/get` | |
PlaidAccountsGetRequest: | |
title: PlaidAccountsGetRequest | |
required: | |
- access_token | |
type: object | |
properties: | |
access_token: | |
maxLength: 55 | |
minLength: 51 | |
pattern: "^access-(sandbox|development|production)-.{8}-.{4}-.{4}-.{4}-.{12}$" | |
type: | |
- string | |
- "null" | |
description: The access token associated with the Item data is being requested for. | |
examples: | |
- access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
description: AccountsGetRequest defines the request schema for `/accounts/get` | |
PlaidAccountsGetResponse: | |
title: PlaidAccountsGetResponse | |
required: | |
- accounts | |
- item | |
- request_id | |
type: object | |
properties: | |
accounts: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidAccountBase" | |
description: |- | |
An array of financial institution accounts associated with the Item. | |
If `/accounts/balance/get` was called, each account will include real-time balance information. | |
item: | |
$ref: "#/components/schemas/PlaidItem" | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: AccountsGetResponse defines the response schema for `/accounts/get` and `/accounts/balance/get`. | |
PlaidAddress: | |
title: PlaidAddress | |
required: | |
- data | |
type: object | |
properties: | |
data: | |
$ref: "#/components/schemas/PlaidAddressData" | |
primary: | |
type: boolean | |
description: "When `true`, identifies the address as the primary address on an account." | |
description: A physical mailing address. | |
PlaidAddressData: | |
title: PlaidAddressData | |
required: | |
- city | |
- region | |
- street | |
- postal_code | |
- country | |
type: object | |
properties: | |
city: | |
type: string | |
description: The full city name | |
region: | |
type: | |
- string | |
- "null" | |
description: |- | |
The region or state. In API versions 2018-05-22 and earlier, this field is called `state`. | |
Example: `"NC"` | |
street: | |
type: string | |
description: |- | |
The full street address | |
Example: `"564 Main Street, APT 15"` | |
postal_code: | |
type: | |
- string | |
- "null" | |
description: "The postal code. In API versions 2018-05-22 and earlier, this field is called `zip`." | |
country: | |
type: | |
- string | |
- "null" | |
description: The ISO 3166-1 alpha-2 country code | |
description: Data about the components comprising an address. | |
PlaidAuthGetNumbers: | |
title: PlaidAuthGetNumbers | |
required: | |
- ach | |
type: object | |
properties: | |
ach: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidNumbersACH" | |
description: An array of ACH numbers identifying accounts. | |
description: "An object with numbers that are used to electronically transfer money between accounts. If a particular type of number is not used by any accounts, the array for that type will be empty." | |
PlaidAuthGetRequest: | |
title: PlaidAuthGetRequest | |
required: | |
- access_token | |
type: object | |
properties: | |
access_token: | |
maxLength: 55 | |
minLength: 51 | |
pattern: "^access-(sandbox|development|production)-.{8}-.{4}-.{4}-.{4}-.{12}$" | |
type: | |
- string | |
- "null" | |
description: The access token associated with the Item data is being requested for. | |
examples: | |
- access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
description: AuthGetRequest defines the request schema for `/auth/get` | |
PlaidAuthGetResponse: | |
title: PlaidAuthGetResponse | |
required: | |
- accounts | |
- numbers | |
- item | |
- request_id | |
type: object | |
properties: | |
accounts: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidAccountBase" | |
description: The `accounts` for which numbers are being retrieved. | |
numbers: | |
$ref: "#/components/schemas/PlaidAuthGetNumbers" | |
item: | |
$ref: "#/components/schemas/PlaidItem" | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: AuthGetResponse defines the response schema for `/auth/get` | |
PlaidAuthMetadata: | |
title: PlaidAuthMetadata | |
required: | |
- supported_methods | |
type: object | |
properties: | |
supported_methods: | |
$ref: "#/components/schemas/PlaidAuthSupportedMethods" | |
description: Metadata that captures information about the Auth features of an institution. | |
PlaidAuthSupportedMethods: | |
title: PlaidAuthSupportedMethods | |
required: | |
- instant_auth | |
- instant_match | |
- automated_micro_deposits | |
type: object | |
properties: | |
instant_auth: | |
type: boolean | |
description: Indicates if instant auth is supported. | |
instant_match: | |
type: boolean | |
description: Indicates if instant match is supported. | |
automated_micro_deposits: | |
type: boolean | |
description: Indicates if automated microdeposits are supported. | |
description: Metadata specifically related to which auth methods an institution supports. | |
PlaidAutomaticallyVerifiedWebhook: | |
title: PlaidAutomaticallyVerifiedWebhook | |
required: | |
- webhook_type | |
- webhook_code | |
- account_id | |
- item_id | |
type: object | |
properties: | |
webhook_type: | |
type: string | |
description: "`AUTH`" | |
webhook_code: | |
type: string | |
description: "`AUTOMATICALLY_VERIFIED`" | |
account_id: | |
type: string | |
description: The `account_id` of the account associated with the webhook | |
item_id: | |
type: string | |
description: "The `item_id` of the Item associated with this webhook, warning, or error" | |
description: Fired when an Item is verified via automated micro-deposits. We recommend communicating to your users when this event is received to notify them that their account is verified and ready for use. | |
PlaidBankInitiatedReturnRisk: | |
title: PlaidBankInitiatedReturnRisk | |
required: | |
- score | |
- risk_tier | |
type: object | |
properties: | |
score: | |
maximum: 100 | |
minimum: 0 | |
type: integer | |
description: "A score from 0-99 that indicates the transaction return risk: a higher risk score suggests a higher return likelihood." | |
contentEncoding: int32 | |
risk_tier: | |
maximum: 8 | |
minimum: 1 | |
type: integer | |
description: The Plaid `bank_initiated_return_risk` object is a list of eight risk tiers corresponding to an incidence rate between 0% and greater than 50%. | |
contentEncoding: int32 | |
description: 'The object contains a risk score and a risk tier that evaluate the transaction return risk because an account is overdrawn or because an ineligible account is used. Common return codes in this category include: "R01", "R02", "R03", "R04", "R06", "R08", "R09", "R13", "R16", "R17", "R20", "R23". These returns have a turnaround time of 2 banking days.' | |
PlaidCategoriesGetResponse: | |
title: PlaidCategoriesGetResponse | |
required: | |
- categories | |
- request_id | |
type: object | |
properties: | |
categories: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidCategory" | |
description: An array of all of the transaction categories used by Plaid. | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: CategoriesGetResponse defines the response schema for `/categories/get` | |
PlaidCategory: | |
title: PlaidCategory | |
required: | |
- category_id | |
- group | |
- hierarchy | |
type: object | |
properties: | |
category_id: | |
type: string | |
description: An identifying number for the category. `category_id` is a Plaid-specific identifier and does not necessarily correspond to merchant category codes. | |
group: | |
type: string | |
description: "`place` for physical transactions or `special` for other transactions such as bank charges." | |
hierarchy: | |
type: array | |
items: | |
type: string | |
description: A hierarchical array of the categories to which this `category_id` belongs. | |
description: Information describing a transaction category | |
PlaidCause: | |
title: PlaidCause | |
required: | |
- item_id | |
- error | |
type: object | |
properties: | |
item_id: | |
type: string | |
description: "The `item_id` of the Item associated with this webhook, warning, or error" | |
error: | |
$ref: "#/components/schemas/PlaidError" | |
description: An error object and associated `item_id` used to identify a specific Item and error when a batch operation operating on multiple Items has encountered an error in one of the Items. | |
PlaidCountryCode: | |
title: PlaidCountryCode | |
enum: | |
- US | |
- GB | |
- ES | |
- NL | |
- FR | |
- IE | |
- CA | |
- DE | |
type: string | |
description: ISO-3166-1 alpha-2 country code standard. | |
examples: | |
- US | |
PlaidCreditAccount: | |
title: PlaidCreditAccount | |
required: | |
- credit card | |
- paypal | |
type: object | |
properties: | |
credit card: | |
type: string | |
description: Bank-issued credit card | |
paypal: | |
type: string | |
description: PayPal-issued credit card | |
description: "A credit card type account. Supported products for `credit` accounts are: Balance, Transactions, Identity, and Liabilities." | |
PlaidCreditAccountSubtype: | |
title: PlaidCreditAccountSubtype | |
enum: | |
- credit card | |
- paypal | |
- all | |
type: string | |
description: "Valid account subtypes for credit accounts. For a list containing descriptions of each subtype, see [Account schemas](https://plaid.com/docs/api/accounts/#StandaloneAccountType-credit)." | |
examples: | |
- credit card | |
PlaidCreditFilter: | |
title: PlaidCreditFilter | |
required: | |
- account_subtypes | |
type: object | |
properties: | |
account_subtypes: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidCreditAccountSubtype" | |
description: "An array of account subtypes to display in Link. If not specified, all account subtypes will be shown. For a full list of valid types and subtypes, see the [Account schema](https://plaid.com/docs/api/accounts#account-type-schema)." | |
description: A filter to apply to `credit`-type accounts | |
PlaidCustomerInitiatedReturnRisk: | |
title: PlaidCustomerInitiatedReturnRisk | |
required: | |
- score | |
- risk_tier | |
type: object | |
properties: | |
score: | |
maximum: 100 | |
minimum: 0 | |
type: integer | |
description: "A score from 0-99 that indicates the transaction return risk: a higher risk score suggests a higher return likelihood." | |
contentEncoding: int32 | |
risk_tier: | |
maximum: 5 | |
minimum: 1 | |
type: integer | |
description: |- | |
A tier corresponding to the projected likelihood that the transaction, if initiated, will be subject to a return. | |
In the `customer_initiated_return_risk` object, there are five risk tiers corresponding to the scores: | |
1: Predicted customer-initiated return incidence rate between 0.00% - 0.02% | |
2: Predicted customer-initiated return incidence rate between 0.02% - 0.05% | |
3: Predicted customer-initiated return incidence rate between 0.05% - 0.1% | |
4: Predicted customer-initiated return incidence rate between 0.1% - 0.5% | |
5: Predicted customer-initiated return incidence rate greater than 0.5% | |
contentEncoding: int32 | |
description: 'The object contains a risk score and a risk tier that evaluate the transaction return risk of an unauthorized debit. Common return codes in this category include: "R05", "R07", "R10", "R11", "R29". These returns typically have a return time frame of up to 60 calendar days. During this period, the customer of financial institutions can dispute a transaction as unauthorized.' | |
PlaidDefaultUpdateWebhook: | |
title: PlaidDefaultUpdateWebhook | |
required: | |
- webhook_type | |
- webhook_code | |
- new_transactions | |
- item_id | |
type: object | |
properties: | |
webhook_type: | |
type: string | |
description: "`TRANSACTIONS`" | |
webhook_code: | |
type: string | |
description: "`DEFAULT_UPDATE`" | |
error: | |
$ref: "#/components/schemas/PlaidError" | |
new_transactions: | |
type: number | |
description: The number of new transactions detected since the last time this webhook was fired. | |
item_id: | |
type: string | |
description: The `item_id` of the Item the webhook relates to. | |
description: Fired when new transaction data is available for an Item. Plaid will typically check for new transaction data several times a day. | |
PlaidDepositoryAccount: | |
title: PlaidDepositoryAccount | |
required: | |
- checking | |
- savings | |
- hsa | |
- cd | |
- money market | |
- paypal | |
- prepaid | |
- cash management | |
- ebt | |
type: object | |
properties: | |
checking: | |
type: string | |
description: Checking account | |
savings: | |
type: string | |
description: Savings account | |
hsa: | |
type: string | |
description: Health Savings Account (US only) that can only hold cash | |
cd: | |
type: string | |
description: Certificate of deposit account | |
money market: | |
type: string | |
description: Money market account | |
paypal: | |
type: string | |
description: PayPal depository account | |
prepaid: | |
type: string | |
description: Prepaid debit card | |
cash management: | |
type: string | |
description: "A cash management account, typically a cash account at a brokerage" | |
ebt: | |
type: string | |
description: "An Electronic Benefit Transfer (EBT) account, used by certain public assistance programs to distribute funds (US only)" | |
description: "An account type holding cash, in which funds are deposited. Supported products for `depository` accounts are: Auth (`checking` and `savings` types only), Balance, Transactions, Identity, Payment Initiation, and Assets." | |
PlaidDepositoryAccountSubtype: | |
title: PlaidDepositoryAccountSubtype | |
enum: | |
- checking | |
- savings | |
- hsa | |
- cd | |
- money market | |
- paypal | |
- prepaid | |
- cash management | |
- ebt | |
- all | |
type: string | |
description: "Valid account subtypes for depository accounts. For a list containing descriptions of each subtype, see [Account schemas](https://plaid.com/docs/api/accounts/#StandaloneAccountType-depository)." | |
examples: | |
- checking | |
PlaidDepositoryFilter: | |
title: PlaidDepositoryFilter | |
required: | |
- account_subtypes | |
type: object | |
properties: | |
account_subtypes: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidDepositoryAccountSubtype" | |
description: "An array of account subtypes to display in Link. If not specified, all account subtypes will be shown. For a full list of valid types and subtypes, see the [Account schema](https://plaid.com/docs/api/accounts#account-type-schema)." | |
description: A filter to apply to `depository`-type accounts | |
PlaidEmail: | |
title: PlaidEmail | |
required: | |
- data | |
- primary | |
- type | |
type: object | |
properties: | |
data: | |
type: string | |
description: The email address. | |
primary: | |
type: boolean | |
description: "When `true`, identifies the email address as the primary email on an account." | |
type: | |
$ref: "#/components/schemas/Type1" | |
description: An object representing an email address | |
PlaidError: | |
title: PlaidError | |
required: | |
- error_type | |
- error_code | |
- error_message | |
- display_message | |
type: object | |
properties: | |
error_type: | |
$ref: "#/components/schemas/ErrorType" | |
error_code: | |
type: string | |
description: The particular error code. Safe for programmatic use. | |
error_message: | |
type: string | |
description: A developer-friendly representation of the error code. This may change over time and is not safe for programmatic use. | |
display_message: | |
type: | |
- string | |
- "null" | |
description: |- | |
A user-friendly representation of the error code. `null` if the error is not related to user action. | |
This may change over time and is not safe for programmatic use. | |
request_id: | |
type: string | |
description: "A unique ID identifying the request, to be used for troubleshooting purposes. This field will be omitted in errors provided by webhooks." | |
causes: | |
type: array | |
items: {} | |
description: |- | |
In the Assets product, a request can pertain to more than one Item. If an error is returned for such a request, `causes` will return an array of errors containing a breakdown of these errors on the individual Item level, if any can be identified. | |
`causes` will only be provided for the `error_type` `ASSET_REPORT_ERROR`. `causes` will also not be populated inside an error nested within a `warning` object. | |
status: | |
type: | |
- number | |
- "null" | |
description: The HTTP status code associated with the error. This will only be returned in the response body when the error information is provided via a webhook. | |
documentation_url: | |
type: string | |
description: The URL of a Plaid documentation page with more information about the error | |
suggested_action: | |
type: string | |
description: Suggested steps for resolving the error | |
description: "We use standard HTTP response codes for success and failure notifications, and our errors are further classified by `error_type`. In general, `200` HTTP codes correspond to success, `40X` codes are for developer- or user-related failures, and `50X` codes are for Plaid-related issues. Error fields will be `null` if no error has occurred." | |
PlaidHealthIncident: | |
title: PlaidHealthIncident | |
required: | |
- start_date | |
- title | |
- incident_updates | |
type: object | |
properties: | |
start_date: | |
type: string | |
description: 'The start date of the incident, in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format, e.g. `"2020-10-30T15:26:48Z"`.' | |
contentEncoding: date-time | |
end_date: | |
type: string | |
description: 'The end date of the incident, in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format, e.g. `"2020-10-30T15:26:48Z"`.' | |
contentEncoding: date-time | |
title: | |
type: string | |
description: The title of the incident | |
incident_updates: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidIncidentUpdate" | |
description: Updates on the health incident. | |
description: A status health incident | |
PlaidHistoricalUpdateWebhook: | |
title: PlaidHistoricalUpdateWebhook | |
required: | |
- webhook_type | |
- webhook_code | |
- new_transactions | |
- item_id | |
type: object | |
properties: | |
webhook_type: | |
type: string | |
description: "`TRANSACTIONS`" | |
webhook_code: | |
type: string | |
description: "`HISTORICAL_UPDATE`" | |
error: | |
$ref: "#/components/schemas/PlaidError" | |
new_transactions: | |
type: number | |
description: "The number of new, unfetched transactions available" | |
item_id: | |
type: string | |
description: "The `item_id` of the Item associated with this webhook, warning, or error" | |
description: "Fired when an Item's historical transaction pull is completed and Plaid has prepared as much historical transaction data as possible for the Item. Once this webhook has been fired, transaction data beyond the most recent 30 days can be fetched for the Item. If [Account Select v2](https://plaid.com/docs/link/customization/#account-select) is enabled, this webhook will also be fired if account selections for the Item are updated, with `new_transactions` set to the number of net new transactions pulled after the account selection update." | |
PlaidIdentityGetRequest: | |
title: PlaidIdentityGetRequest | |
required: | |
- access_token | |
type: object | |
properties: | |
access_token: | |
maxLength: 55 | |
minLength: 51 | |
pattern: "^access-(sandbox|development|production)-.{8}-.{4}-.{4}-.{4}-.{12}$" | |
type: | |
- string | |
- "null" | |
description: The access token associated with the Item data is being requested for. | |
examples: | |
- access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
description: IdentityGetRequest defines the request schema for `/identity/get` | |
PlaidIdentityGetResponse: | |
title: PlaidIdentityGetResponse | |
required: | |
- accounts | |
- item | |
- request_id | |
type: object | |
properties: | |
accounts: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidAccountIdentity" | |
description: The accounts for which Identity data has been requested | |
item: | |
$ref: "#/components/schemas/PlaidItem" | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: IdentityGetResponse defines the response schema for `/identity/get` | |
PlaidIncidentUpdate: | |
title: PlaidIncidentUpdate | |
type: object | |
properties: | |
description: | |
type: string | |
description: The content of the update. | |
status: | |
$ref: "#/components/schemas/Status" | |
updated_date: | |
type: string | |
description: 'The date when the update was published, in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format, e.g. `"2020-10-30T15:26:48Z"`.' | |
contentEncoding: date-time | |
description: An update on the health incident | |
PlaidInitialUpdateWebhook: | |
title: PlaidInitialUpdateWebhook | |
required: | |
- webhook_type | |
- webhook_code | |
- new_transactions | |
- item_id | |
type: object | |
properties: | |
webhook_type: | |
type: string | |
description: "`TRANSACTIONS`" | |
webhook_code: | |
type: string | |
description: "`INITIAL_UPDATE`" | |
error: | |
type: | |
- string | |
- "null" | |
description: The error code associated with the webhook. | |
new_transactions: | |
type: number | |
description: "The number of new, unfetched transactions available." | |
item_id: | |
type: string | |
description: "The `item_id` of the Item associated with this webhook, warning, or error" | |
description: "Fired when an Item's initial transaction pull is completed. Once this webhook has been fired, transaction data for the most recent 30 days can be fetched for the Item. If [Account Select v2](https://plaid.com/docs/link/customization/#account-select) is enabled, this webhook will also be fired if account selections for the Item are updated, with `new_transactions` set to the number of net new transactions pulled after the account selection update." | |
PlaidInstitution: | |
title: PlaidInstitution | |
required: | |
- institution_id | |
- name | |
- products | |
- country_codes | |
- routing_numbers | |
- oauth | |
type: object | |
properties: | |
institution_id: | |
type: string | |
description: Unique identifier for the institution | |
name: | |
type: string | |
description: The official name of the institution | |
products: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidProducts" | |
description: "A list of the Plaid products supported by the institution. Note that only institutions that support Instant Auth will return `auth` in the product array; institutions that do not list `auth` may still support other Auth methods such as Instant Match or Automated Micro-deposit Verification. To identify institutions that support those methods, use the `auth_metadata` object. For more details, see [Full Auth coverage](https://plaid.com/docs/auth/coverage/)." | |
country_codes: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidCountryCode" | |
description: A list of the country codes supported by the institution. | |
url: | |
type: | |
- string | |
- "null" | |
description: The URL for the institution's website | |
primary_color: | |
type: | |
- string | |
- "null" | |
description: Hexadecimal representation of the primary color used by the institution | |
logo: | |
type: | |
- string | |
- "null" | |
description: Base64 encoded representation of the institution's logo | |
routing_numbers: | |
type: array | |
items: | |
type: string | |
description: A partial list of routing numbers associated with the institution. This list is provided for the purpose of looking up institutions by routing number. It is not comprehensive and should never be used as a complete list of routing numbers for an institution. | |
oauth: | |
type: boolean | |
description: Indicates that the institution has an OAuth login flow. | |
status: | |
$ref: "#/components/schemas/PlaidInstitutionStatus" | |
auth_metadata: | |
$ref: "#/components/schemas/PlaidAuthMetadata" | |
description: Details relating to a specific financial institution | |
PlaidInstitutionStatus: | |
title: PlaidInstitutionStatus | |
required: | |
- item_logins | |
- transactions_updates | |
- auth | |
- identity | |
- investments_updates | |
type: object | |
properties: | |
item_logins: | |
$ref: "#/components/schemas/PlaidProductStatus" | |
transactions_updates: | |
$ref: "#/components/schemas/PlaidProductStatus" | |
auth: | |
$ref: "#/components/schemas/PlaidProductStatus" | |
identity: | |
$ref: "#/components/schemas/PlaidProductStatus" | |
investments_updates: | |
$ref: "#/components/schemas/PlaidProductStatus" | |
liabilities_updates: | |
$ref: "#/components/schemas/PlaidProductStatus" | |
liabilities: | |
$ref: "#/components/schemas/PlaidProductStatus" | |
investments: | |
$ref: "#/components/schemas/PlaidProductStatus" | |
health_incidents: | |
type: | |
- array | |
- "null" | |
items: | |
$ref: "#/components/schemas/PlaidHealthIncident" | |
description: Details of recent health incidents associated with the institution. | |
description: |- | |
The status of an institution is determined by the health of its Item logins, Transactions updates, Investments updates, Liabilities updates, Auth requests, Balance requests, Identity requests, Investments requests, and Liabilities requests. A login attempt is conducted during the initial Item add in Link. If there is not enough traffic to accurately calculate an institution's status, Plaid will return null rather than potentially inaccurate data. | |
Institution status is accessible in the Dashboard and via the API using the `/institutions/get_by_id` endpoint with the `include_status` option set to true. Note that institution status is not available in the Sandbox environment. | |
PlaidInstitutionsGetRequest: | |
title: PlaidInstitutionsGetRequest | |
required: | |
- count | |
- offset | |
- country_codes | |
type: object | |
properties: | |
count: | |
maximum: 500 | |
minimum: 1 | |
type: integer | |
description: The total number of Institutions to return. | |
contentEncoding: int32 | |
offset: | |
minimum: 0 | |
type: integer | |
description: The number of Institutions to skip. | |
contentEncoding: int32 | |
country_codes: | |
minItems: 1 | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidCountryCode" | |
description: |- | |
Specify an array of Plaid-supported country codes this institution supports, using the ISO-3166-1 alpha-2 country code standard. | |
In API versions 2019-05-29 and earlier, the `country_codes` parameter is an optional parameter within the `options` object and will default to `[US]` if it is not supplied. | |
options: | |
$ref: "#/components/schemas/PlaidInstitutionsGetRequestOptions" | |
description: InstitutionsGetRequest defines the request schema for `/institutions/get` | |
PlaidInstitutionsGetRequestOptions: | |
title: PlaidInstitutionsGetRequestOptions | |
type: object | |
properties: | |
products: | |
minItems: 1 | |
type: | |
- array | |
- "null" | |
items: | |
$ref: "#/components/schemas/PlaidProducts" | |
description: Filter the Institutions based on which products they support. | |
routing_numbers: | |
type: | |
- array | |
- "null" | |
items: | |
type: string | |
description: Specify an array of routing numbers to filter institutions. The response will only return institutions that match all of the routing numbers in the array. Routing number records used for this matching are not comprehensive; failure to match a given routing number to an institution does not mean that the institution is unsupported by Plaid. | |
oauth: | |
type: | |
- boolean | |
- "null" | |
description: Limit results to institutions with or without OAuth login flows. | |
include_optional_metadata: | |
type: boolean | |
description: |- | |
When `true`, return the institution's homepage URL, logo and primary brand color. | |
Note that Plaid does not own any of the logos shared by the API, and that by accessing or using these logos, you agree that you are doing so at your own risk and will, if necessary, obtain all required permissions from the appropriate rights holders and adhere to any applicable usage guidelines. Plaid disclaims all express or implied warranties with respect to the logos. | |
include_auth_metadata: | |
type: boolean | |
description: "When `true`, returns metadata related to the Auth product indicating which auth methods are supported." | |
default: false | |
include_payment_initiation_metadata: | |
type: boolean | |
description: "When `true`, returns metadata related to the Payment Initiation product indicating which payment configurations are supported." | |
default: false | |
description: An optional object to filter `/institutions/get` results. | |
PlaidInstitutionsGetResponse: | |
title: PlaidInstitutionsGetResponse | |
required: | |
- institutions | |
- total | |
- request_id | |
type: object | |
properties: | |
institutions: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidInstitution" | |
description: A list of Plaid institutions | |
total: | |
type: integer | |
description: The total number of institutions available via this endpoint | |
contentEncoding: int32 | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: InstitutionsGetResponse defines the response schema for `/institutions/get` | |
PlaidInstitutionsSearchResponse: | |
title: PlaidInstitutionsSearchResponse | |
required: | |
- institutions | |
- request_id | |
type: object | |
properties: | |
institutions: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidInstitution" | |
description: An array of institutions matching the search criteria | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: InstitutionsSearchResponse defines the response schema for `/institutions/search` | |
PlaidItem: | |
title: PlaidItem | |
required: | |
- item_id | |
- webhook | |
- error | |
- available_products | |
- billed_products | |
- consent_expiration_time | |
- update_type | |
type: object | |
properties: | |
item_id: | |
type: string | |
description: "The Plaid Item ID. The `item_id` is always unique; linking the same account at the same institution twice will result in two Items with different `item_id` values. Like all Plaid identifiers, the `item_id` is case-sensitive." | |
institution_id: | |
type: | |
- string | |
- "null" | |
description: The Plaid Institution ID associated with the Item. Field is `null` for Items created via Same Day Micro-deposits. | |
webhook: | |
type: | |
- string | |
- "null" | |
description: The URL registered to receive webhooks for the Item. | |
error: | |
$ref: "#/components/schemas/PlaidError" | |
available_products: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidProducts" | |
description: A list of products available for the Item that have not yet been accessed. | |
billed_products: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidProducts" | |
description: A list of products that have been billed for the Item. Note - `billed_products` is populated in all environments but only requests in Production are billed. | |
products: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidProducts" | |
description: A list of authorized products for the Item. | |
consent_expiration_time: | |
type: | |
- string | |
- "null" | |
description: |- | |
The RFC 3339 timestamp after which the consent provided by the end user will expire. Upon consent expiration, the item will enter the `ITEM_LOGIN_REQUIRED` error state. To circumvent the `ITEM_LOGIN_REQUIRED` error and maintain continuous consent, the end user can reauthenticate via Link’s update mode in advance of the consent expiration time. | |
Note - This is only relevant for certain OAuth-based institutions. For all other institutions, this field will be null. | |
contentEncoding: date-time | |
update_type: | |
$ref: "#/components/schemas/UpdateType" | |
description: Metadata about the Item. | |
PlaidItemErrorWebhook: | |
title: PlaidItemErrorWebhook | |
required: | |
- webhook_type | |
- webhook_code | |
- item_id | |
- error | |
type: object | |
properties: | |
webhook_type: | |
type: string | |
description: "`ITEM`" | |
webhook_code: | |
type: string | |
description: "`ERROR`" | |
item_id: | |
type: string | |
description: "The `item_id` of the Item associated with this webhook, warning, or error" | |
error: | |
$ref: "#/components/schemas/PlaidError" | |
description: Fired when an error is encountered with an Item. The error can be resolved by having the user go through Link’s update mode. | |
PlaidItemGetRequest: | |
title: PlaidItemGetRequest | |
required: | |
- access_token | |
type: object | |
properties: | |
access_token: | |
maxLength: 55 | |
minLength: 51 | |
pattern: "^access-(sandbox|development|production)-.{8}-.{4}-.{4}-.{4}-.{12}$" | |
type: | |
- string | |
- "null" | |
description: The access token associated with the Item data is being requested for. | |
examples: | |
- access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
description: ItemGetRequest defines the request schema for `/item/get` | |
PlaidItemGetResponse: | |
title: PlaidItemGetResponse | |
required: | |
- item | |
- request_id | |
type: object | |
properties: | |
item: | |
$ref: "#/components/schemas/PlaidItem" | |
status: | |
$ref: "#/components/schemas/PlaidItemStatus" | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: ItemGetResponse defines the response schema for `/item/get` and `/item/webhook/update` | |
PlaidItemProductReadyWebhook: | |
title: PlaidItemProductReadyWebhook | |
required: | |
- webhook_type | |
- webhook_code | |
- item_id | |
type: object | |
properties: | |
webhook_type: | |
type: string | |
description: "`INCOME`" | |
webhook_code: | |
type: string | |
description: "`PRODUCT_READY`" | |
item_id: | |
type: string | |
description: "The `item_id` of the Item associated with this webhook, warning, or error" | |
error: | |
$ref: "#/components/schemas/PlaidError" | |
description: Fired once Plaid calculates income from an Item. | |
PlaidItemPublicTokenExchangeRequest: | |
title: PlaidItemPublicTokenExchangeRequest | |
required: | |
- public_token | |
type: object | |
properties: | |
public_token: | |
type: string | |
description: "Your `public_token`, obtained from the Link `onSuccess` callback or `/sandbox/item/public_token/create`." | |
description: "`ItemPublicTokenExchangeRequest` defines the request schema for `/item/public_token/exchange`" | |
PlaidItemPublicTokenExchangeResponse: | |
title: PlaidItemPublicTokenExchangeResponse | |
required: | |
- access_token | |
- item_id | |
- request_id | |
type: object | |
properties: | |
access_token: | |
maxLength: 55 | |
minLength: 51 | |
pattern: "^access-(sandbox|development|production)-.{8}-.{4}-.{4}-.{4}-.{12}$" | |
type: | |
- string | |
- "null" | |
description: The access token associated with the Item data is being requested for. | |
examples: | |
- access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
item_id: | |
type: string | |
description: The `item_id` value of the Item associated with the returned `access_token` | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: ItemPublicTokenExchangeResponse defines the response schema for `/item/public_token/exchange` | |
PlaidItemRemoveRequest: | |
title: PlaidItemRemoveRequest | |
required: | |
- access_token | |
type: object | |
properties: | |
access_token: | |
maxLength: 55 | |
minLength: 51 | |
pattern: "^access-(sandbox|development|production)-.{8}-.{4}-.{4}-.{4}-.{12}$" | |
type: | |
- string | |
- "null" | |
description: The access token associated with the Item data is being requested for. | |
examples: | |
- access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
description: "`ItemRemoveRequest` defines the request schema for `/item/remove`" | |
PlaidItemRemoveResponse: | |
title: PlaidItemRemoveResponse | |
required: | |
- request_id | |
type: object | |
properties: | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: ItemRemoveResponse defines the response schema for `/item/remove` | |
PlaidItemStatus: | |
title: PlaidItemStatus | |
type: object | |
properties: | |
investments: | |
$ref: "#/components/schemas/PlaidItemStatusInvestments" | |
transactions: | |
$ref: "#/components/schemas/PlaidItemStatusTransactions" | |
last_webhook: | |
$ref: "#/components/schemas/PlaidItemStatusLastWebhook" | |
description: Information about the last successful and failed transactions update for the Item. | |
PlaidItemStatusInvestments: | |
title: PlaidItemStatusInvestments | |
type: object | |
properties: | |
last_successful_update: | |
type: | |
- string | |
- "null" | |
description: "[ISO 8601](https://wikipedia.org/wiki/ISO_8601) timestamp of the last successful investments update for the Item. The status will update each time Plaid successfully connects with the institution, regardless of whether any new data is available in the update." | |
contentEncoding: date-time | |
last_failed_update: | |
type: | |
- string | |
- "null" | |
description: "[ISO 8601](https://wikipedia.org/wiki/ISO_8601) timestamp of the last failed investments update for the Item. The status will update each time Plaid fails an attempt to connect with the institution, regardless of whether any new data is available in the update." | |
contentEncoding: date-time | |
description: Information about the last successful and failed investments update for the Item. | |
PlaidItemStatusLastWebhook: | |
title: PlaidItemStatusLastWebhook | |
type: object | |
properties: | |
sent_at: | |
type: | |
- string | |
- "null" | |
description: "[ISO 8601](https://wikipedia.org/wiki/ISO_8601) timestamp of when the webhook was fired." | |
contentEncoding: date-time | |
code_sent: | |
type: | |
- string | |
- "null" | |
description: The last webhook code sent. | |
description: Information about the last webhook fired for the Item. | |
PlaidItemStatusTransactions: | |
title: PlaidItemStatusTransactions | |
type: object | |
properties: | |
last_successful_update: | |
type: | |
- string | |
- "null" | |
description: "[ISO 8601](https://wikipedia.org/wiki/ISO_8601) timestamp of the last successful transactions update for the Item. The status will update each time Plaid successfully connects with the institution, regardless of whether any new data is available in the update." | |
contentEncoding: date-time | |
last_failed_update: | |
type: | |
- string | |
- "null" | |
description: "[ISO 8601](https://wikipedia.org/wiki/ISO_8601) timestamp of the last failed transactions update for the Item. The status will update each time Plaid fails an attempt to connect with the institution, regardless of whether any new data is available in the update." | |
contentEncoding: date-time | |
description: Information about the last successful and failed transactions update for the Item. | |
PlaidItemWebhookUpdateRequest: | |
title: PlaidItemWebhookUpdateRequest | |
required: | |
- access_token | |
type: object | |
properties: | |
access_token: | |
maxLength: 55 | |
minLength: 51 | |
pattern: "^access-(sandbox|development|production)-.{8}-.{4}-.{4}-.{4}-.{12}$" | |
type: | |
- string | |
- "null" | |
description: The access token associated with the Item data is being requested for. | |
examples: | |
- access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
webhook: | |
type: | |
- string | |
- "null" | |
description: The new webhook URL to associate with the Item. | |
description: "`ItemWebhookUpdateRequest` defines the request schema for `/item/webhook/update`" | |
PlaidItemWebhookUpdateResponse: | |
title: PlaidItemWebhookUpdateResponse | |
required: | |
- item | |
- request_id | |
type: object | |
properties: | |
item: | |
$ref: "#/components/schemas/PlaidItem" | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: ItemWebhookUpdateResponse defines the response schema for `/item/webhook/update` | |
PlaidJWKPublicKey: | |
title: PlaidJWKPublicKey | |
required: | |
- alg | |
- crv | |
- kid | |
- kty | |
- use | |
- x | |
- "y" | |
- created_at | |
- expired_at | |
type: object | |
properties: | |
alg: | |
type: string | |
description: The alg member identifies the cryptographic algorithm family used with the key. | |
crv: | |
type: string | |
description: The crv member identifies the cryptographic curve used with the key. | |
kid: | |
type: string | |
description: "The kid (Key ID) member can be used to match a specific key. This can be used, for instance, to choose among a set of keys within the JWK during key rollover." | |
kty: | |
type: string | |
description: "The kty (key type) parameter identifies the cryptographic algorithm family used with the key, such as RSA or EC." | |
use: | |
type: string | |
description: The use (public key use) parameter identifies the intended use of the public key. | |
x: | |
type: string | |
description: The x member contains the x coordinate for the elliptic curve point. | |
"y": | |
type: string | |
description: The y member contains the y coordinate for the elliptic curve point. | |
created_at: | |
type: integer | |
description: "The timestamp when the key was created, in Unix time." | |
contentEncoding: int32 | |
expired_at: | |
type: | |
- integer | |
- "null" | |
description: "The timestamp when the key expired, in Unix time." | |
contentEncoding: int32 | |
description: "A JSON Web Key (JWK) that can be used in conjunction with [JWT libraries](https://jwt.io/#libraries-io) to verify Plaid webhooks" | |
PlaidJWTHeader: | |
title: PlaidJWTHeader | |
required: | |
- id | |
type: object | |
properties: | |
id: | |
type: string | |
description: "A JWT Header, used for webhook validation" | |
PlaidLinkTokenAccountFilters: | |
title: PlaidLinkTokenAccountFilters | |
type: object | |
properties: | |
depository: | |
$ref: "#/components/schemas/PlaidDepositoryFilter" | |
credit: | |
$ref: "#/components/schemas/PlaidCreditFilter" | |
description: |- | |
By default, Link will provide limited account filtering: it will only display Institutions that are compatible with all products supplied in the `products` parameter of `/link/token/create`, and, if `auth` is specified in the `products` array, will also filter out accounts other than `checking` and `savings` accounts on the Account Select pane. You can further limit the accounts shown in Link by using `account_filters` to specify the account subtypes to be shown in Link. Only the specified subtypes will be shown. This filtering applies to both the Account Select view (if enabled) and the Institution Select view. Institutions that do not support the selected subtypes will be omitted from Link. To indicate that all subtypes should be shown, use the value `"all"`. If the `account_filters` filter is used, any account type for which a filter is not specified will be entirely omitted from Link. For a full list of valid types and subtypes, see the [Account schema](https://plaid.com/docs/api/accounts#account-type-schema). | |
For institutions using OAuth, the filter will not affect the list of accounts shown by the bank in the OAuth window. | |
PlaidLinkTokenCreateCreditFilter: | |
title: PlaidLinkTokenCreateCreditFilter | |
type: object | |
properties: | |
account_subtypes: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidCreditAccountSubtype" | |
description: "An array of account subtypes to display in Link. If not specified, all account subtypes will be shown. For a full list of valid types and subtypes, see the [Account schema](https://plaid.com/docs/api/accounts#account-type-schema)." | |
description: A filter to apply to `credit`-type accounts | |
PlaidLinkTokenCreateDepositoryFilter: | |
title: PlaidLinkTokenCreateDepositoryFilter | |
type: object | |
properties: | |
account_subtypes: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidDepositoryAccountSubtype" | |
description: "An array of account subtypes to display in Link. If not specified, all account subtypes will be shown. For a full list of valid types and subtypes, see the [Account schema](https://plaid.com/docs/api/accounts#account-type-schema)." | |
description: A filter to apply to `depository`-type accounts | |
PlaidLinkTokenCreateRequest: | |
title: PlaidLinkTokenCreateRequest | |
required: | |
- client_name | |
- language | |
- country_codes | |
- user | |
type: object | |
properties: | |
client_name: | |
type: string | |
description: 'The name of your application, as it should be displayed in Link. Maximum length of 30 characters. If a value longer than 30 characters is provided, Link will display "This Application" instead.' | |
language: | |
type: string | |
description: |- | |
The language that Link should be displayed in. | |
Supported languages are: | |
- English (`'en'`) | |
- French (`'fr'`) | |
- Spanish (`'es'`) | |
- Dutch (`'nl'`) | |
- German(`'de'`) | |
When using a Link customization, the language configured here must match the setting in the customization, or the customization will not be applied. | |
country_codes: | |
minItems: 1 | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidCountryCode" | |
description: |- | |
Specify an array of Plaid-supported country codes using the ISO-3166-1 alpha-2 country code standard. Institutions from all listed countries will be shown. Supported country codes are: `US`, `CA`, `DE`, `ES`, `FR`, `GB`, `IE`, `NL`. For a complete mapping of supported products by country, see https://plaid.com/global/. | |
If Link is launched with multiple country codes, only products that you are enabled for in all countries will be used by Link. Note that while all countries are enabled by default in Sandbox and Development, in Production only US and Canada are enabled by default. To gain access to European institutions in the Production environment, [file a product access Support ticket](https://dashboard.plaid.com/support/new/product-and-development/product-troubleshooting/request-product-access) via the Plaid dashboard. If you initialize with a European country code, your users will see the European consent panel during the Link flow. | |
If using a Link customization, make sure the country codes in the customization match those specified in `country_codes`. If both `country_codes` and a Link customization are used, the value in `country_codes` may override the value in the customization. | |
If using the Auth features Instant Match, Same-day Micro-deposits, or Automated Micro-deposits, `country_codes` must be set to `['US']`. | |
user: | |
$ref: "#/components/schemas/PlaidLinkTokenCreateRequestUser" | |
products: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidProducts" | |
description: |- | |
List of Plaid product(s) you wish to use. If launching Link in update mode, should be omitted; required otherwise. | |
`balance` is *not* a valid value, the Balance product does not require explicit initialization and will automatically be initialized when any other product is initialized. | |
Only institutions that support *all* requested products will be shown in Link; to maximize the number of institutions listed, it is recommended to initialize Link with the minimal product set required for your use case. Additional products can be added after Link initialization by calling the relevant endpoints. For details and exceptions, see [Choosing when to initialize products](https://plaid.com/docs/link/best-practices/#choosing-when-to-initialize-products). | |
Note that, unless you have opted to disable Instant Match support, institutions that support Instant Match will also be shown in Link if `auth` is specified as a product, even though these institutions do not contain `auth` in their product array. | |
In Production, you will be billed for each product that you specify when initializing Link. Note that a product cannot be removed from an Item once the Item has been initialized with that product. To stop billing on an Item for subscription-based products, such as Liabilities, Investments, and Transactions, remove the Item via `/item/remove`. | |
webhook: | |
type: string | |
description: The destination URL to which any webhooks should be sent. | |
access_token: | |
type: string | |
description: "The `access_token` associated with the Item to update, used when updating or modifying an existing `access_token`. Used when launching Link in update mode, when completing the Same-day (manual) Micro-deposit flow, or (optionally) when initializing Link as part of the Payment Initiation (UK and Europe) flow." | |
link_customization_name: | |
type: string | |
description: "The name of the Link customization from the Plaid Dashboard to be applied to Link. If not specified, the `default` customization will be used. When using a Link customization, the language in the customization must match the language selected via the `language` parameter, and the countries in the customization should match the country codes selected via `country_codes`." | |
redirect_uri: | |
type: string | |
description: "A URI indicating the destination where a user should be forwarded after completing the Link flow; used to support OAuth authentication flows when launching Link in the browser or via a webview. The `redirect_uri` should not contain any query parameters. When used in Production or Development, must be an https URI. To specify any subdomain, use `*` as a wildcard character, e.g. `https://*.example.com/oauth.html`. If `android_package_name` is specified, this field should be left blank. Note that any redirect URI must also be added to the Allowed redirect URIs list in the [developer dashboard](https://dashboard.plaid.com/team/api)." | |
android_package_name: | |
type: string | |
description: "The name of your app's Android package. Required if using the `link_token` to initialize Link on Android. When creating a `link_token` for initializing Link on other platforms, this field must be left blank. Any package name specified here must also be added to the Allowed Android package names setting on the [developer dashboard](https://dashboard.plaid.com/team/api)." | |
account_filters: | |
$ref: "#/components/schemas/PlaidLinkTokenAccountFilters" | |
institution_id: | |
type: string | |
description: "Used for certain Europe-only configurations, as well as certain legacy use cases in other regions." | |
auth: | |
$ref: "#/components/schemas/PlaidLinkTokenCreateRequestAuth" | |
update: | |
$ref: "#/components/schemas/PlaidLinkTokenCreateRequestUpdate" | |
description: "`LinkTokenCreateRequest` defines the request schema for `/link/token/create`" | |
PlaidLinkTokenCreateRequestAuth: | |
title: PlaidLinkTokenCreateRequestAuth | |
required: | |
- flow_type | |
type: object | |
properties: | |
flow_type: | |
const: FLEXIBLE_AUTH | |
type: string | |
description: The optional Auth flow to use. Currently only used to enable Flexible Auth. | |
examples: | |
- FLEXIBLE_AUTH | |
description: Specifies options for initializing Link for use with the Auth product. This field is currently only required if using the Flexible Auth product (currently in closed beta). | |
PlaidLinkTokenCreateRequestUpdate: | |
title: PlaidLinkTokenCreateRequestUpdate | |
type: object | |
properties: | |
account_selection_enabled: | |
type: boolean | |
description: "If `true`, enables [update mode with Account Select](https://plaid.com/docs/link/update-mode/#using-update-mode-to-request-new-accounts)." | |
default: false | |
description: "Specifies options for initializing Link for [update mode](https://plaid.com/docs/link/update-mode)." | |
PlaidLinkTokenCreateRequestUser: | |
title: PlaidLinkTokenCreateRequestUser | |
required: | |
- client_user_id | |
type: object | |
properties: | |
client_user_id: | |
type: string | |
description: "A unique ID representing the end user. Typically this will be a user ID number from your application. Personally identifiable information, such as an email address or phone number, should not be used in the `client_user_id`. It is currently used as a means of searching logs for the given user in the Plaid Dashboard." | |
legal_name: | |
type: string | |
description: "The user's full legal name. This is an optional field used in the [returning user experience](https://plaid.com/docs/link/returning-user) to associate Items to the user." | |
phone_number: | |
type: string | |
description: "The user's phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format. This field is optional, but required to enable the [returning user experience](https://plaid.com/docs/link/returning-user)." | |
phone_number_verified_time: | |
type: string | |
description: |- | |
The date and time the phone number was verified in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDThh:mm:ssZ`). This field is optional, but required to enable any [returning user experience](https://plaid.com/docs/link/returning-user). | |
Only pass a verification time for a phone number that you have verified. If you have performed verification but don’t have the time, you may supply a signal value of the start of the UNIX epoch. | |
Example: `2020-01-01T00:00:00Z` | |
contentEncoding: date-time | |
email_address: | |
type: string | |
description: "The user's email address. This field is optional, but required to enable the [pre-authenticated returning user flow](https://plaid.com/docs/link/returning-user/#enabling-the-returning-user-experience)." | |
email_address_verified_time: | |
type: string | |
description: |- | |
The date and time the email address was verified in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format (`YYYY-MM-DDThh:mm:ssZ`). This is an optional field used in the [returning user experience](https://plaid.com/docs/link/returning-user). | |
Only pass a verification time for an email address that you have verified. If you have performed verification but don’t have the time, you may supply a signal value of the start of the UNIX epoch. | |
Example: `2020-01-01T00:00:00Z` | |
contentEncoding: date-time | |
ssn: | |
type: string | |
description: To be provided in the format "ddd-dd-dddd". This field is optional and will support not-yet-implemented functionality for new products. | |
date_of_birth: | |
type: string | |
description: To be provided in the format "yyyy-mm-dd". This field is optional and will support not-yet-implemented functionality for new products. | |
contentEncoding: date | |
description: An object specifying information about the end user who will be linking their account. | |
PlaidLinkTokenCreateResponse: | |
title: PlaidLinkTokenCreateResponse | |
required: | |
- link_token | |
- expiration | |
- request_id | |
type: object | |
properties: | |
link_token: | |
type: string | |
description: "A `link_token`, which can be supplied to Link in order to initialize it and receive a `public_token`, which can be exchanged for an `access_token`." | |
expiration: | |
type: string | |
description: "The expiration date for the `link_token`, in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format. A `link_token` created to generate a `public_token` that will be exchanged for a new `access_token` expires after 4 hours. A `link_token` created for an existing Item (such as when updating an existing `access_token` by launching Link in update mode) expires after 30 minutes." | |
contentEncoding: date-time | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: LinkTokenCreateResponse defines the response schema for `/link/token/create` | |
PlaidLinkTokenGetMetadataResponse: | |
title: PlaidLinkTokenGetMetadataResponse | |
required: | |
- initial_products | |
- webhook | |
- country_codes | |
- language | |
- redirect_uri | |
- client_name | |
type: object | |
properties: | |
initial_products: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidProducts" | |
description: The `products` specified in the `/link/token/create` call. | |
webhook: | |
type: | |
- string | |
- "null" | |
description: The `webhook` specified in the `/link/token/create` call. | |
country_codes: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidCountryCode" | |
description: The `country_codes` specified in the `/link/token/create` call. | |
language: | |
type: | |
- string | |
- "null" | |
description: The `language` specified in the `/link/token/create` call. | |
account_filters: | |
$ref: "#/components/schemas/PlaidAccountFiltersResponse" | |
redirect_uri: | |
type: | |
- string | |
- "null" | |
description: The `redirect_uri` specified in the `/link/token/create` call. | |
client_name: | |
type: | |
- string | |
- "null" | |
description: The `client_name` specified in the `/link/token/create` call. | |
description: An object specifying the arguments originally provided to the `/link/token/create` call. | |
PlaidLinkTokenGetRequest: | |
title: PlaidLinkTokenGetRequest | |
required: | |
- link_token | |
type: object | |
properties: | |
link_token: | |
type: string | |
description: A `link_token` from a previous invocation of `/link/token/create` | |
description: "`LinkTokenGetRequest` defines the request schema for `/link/token/get`" | |
PlaidLinkTokenGetResponse: | |
title: PlaidLinkTokenGetResponse | |
required: | |
- link_token | |
- created_at | |
- expiration | |
- metadata | |
- request_id | |
type: object | |
properties: | |
link_token: | |
type: string | |
description: "A `link_token`, which can be supplied to Link in order to initialize it and receive a `public_token`, which can be exchanged for an `access_token`." | |
created_at: | |
type: | |
- string | |
- "null" | |
description: "The creation timestamp for the `link_token`, in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format." | |
contentEncoding: date-time | |
expiration: | |
type: | |
- string | |
- "null" | |
description: "The expiration timestamp for the `link_token`, in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format." | |
contentEncoding: date-time | |
metadata: | |
$ref: "#/components/schemas/PlaidLinkTokenGetMetadataResponse" | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: LinkTokenGetResponse defines the response schema for `/link/token/get` | |
PlaidLoanAccount: | |
title: PlaidLoanAccount | |
required: | |
- auto | |
- business | |
- commercial | |
- construction | |
- consumer | |
- home equity | |
- loan | |
- mortgage | |
- overdraft | |
- line of credit | |
- student | |
- other | |
type: object | |
properties: | |
auto: | |
type: string | |
description: Auto loan | |
business: | |
type: string | |
description: Business loan | |
commercial: | |
type: string | |
description: Commercial loan | |
construction: | |
type: string | |
description: Construction loan | |
consumer: | |
type: string | |
description: Consumer loan | |
home equity: | |
type: string | |
description: Home Equity Line of Credit (HELOC) | |
loan: | |
type: string | |
description: General loan | |
mortgage: | |
type: string | |
description: Mortgage loan | |
overdraft: | |
type: string | |
description: "Pre-approved overdraft account, usually tied to a checking account" | |
line of credit: | |
type: string | |
description: Pre-approved line of credit | |
student: | |
type: string | |
description: Student loan | |
other: | |
type: string | |
description: Other loan type or unknown loan type | |
description: "A loan type account. Supported products for `loan` accounts are: Balance, Liabilities, and Transactions." | |
PlaidLocation: | |
title: PlaidLocation | |
required: | |
- address | |
- city | |
- region | |
- postal_code | |
- country | |
- lat | |
- lon | |
- store_number | |
type: object | |
properties: | |
address: | |
type: | |
- string | |
- "null" | |
description: The street address where the transaction occurred. | |
city: | |
type: | |
- string | |
- "null" | |
description: The city where the transaction occurred. | |
region: | |
type: | |
- string | |
- "null" | |
description: "The region or state where the transaction occurred. In API versions 2018-05-22 and earlier, this field is called `state`." | |
postal_code: | |
type: | |
- string | |
- "null" | |
description: "The postal code where the transaction occurred. In API versions 2018-05-22 and earlier, this field is called `zip`." | |
country: | |
type: | |
- string | |
- "null" | |
description: The ISO 3166-1 alpha-2 country code where the transaction occurred. | |
lat: | |
type: | |
- number | |
- "null" | |
description: The latitude where the transaction occurred. | |
lon: | |
type: | |
- number | |
- "null" | |
description: The longitude where the transaction occurred. | |
store_number: | |
type: | |
- string | |
- "null" | |
description: The merchant defined store number where the transaction occurred. | |
description: A representation of where a transaction took place | |
PlaidMeta: | |
title: PlaidMeta | |
required: | |
- name | |
- official_name | |
- limit | |
type: object | |
properties: | |
name: | |
type: string | |
description: The account's name | |
official_name: | |
type: string | |
description: The account's official name | |
limit: | |
type: number | |
description: The account's limit | |
description: Allows specifying the metadata of the test account | |
PlaidNewAccountsAvailableWebhook: | |
title: PlaidNewAccountsAvailableWebhook | |
type: object | |
properties: | |
webhook_type: | |
type: string | |
description: "`ITEM`" | |
webhook_code: | |
type: string | |
description: "`NEW_ACCOUNTS_AVAILABLE`" | |
item_id: | |
type: string | |
description: "The `item_id` of the Item associated with this webhook, warning, or error" | |
error: | |
$ref: "#/components/schemas/PlaidError" | |
description: "Fired when Plaid detects a new account for Items created or updated with [Account Select v2](https://plaid.com/docs/link/customization/#account-select). Upon receiving this webhook, you can prompt your users to share new accounts with you through [Account Select v2 update mode](https://plaid.com/docs/link/update-mode/#using-update-mode-to-request-new-accounts)." | |
PlaidNumbersACH: | |
title: PlaidNumbersACH | |
maxProperties: 4 | |
minProperties: 4 | |
required: | |
- account_id | |
- account | |
- routing | |
- wire_routing | |
type: object | |
properties: | |
account_id: | |
type: string | |
description: The Plaid account ID associated with the account numbers | |
account: | |
type: string | |
description: |- | |
The ACH account number for the account. | |
Note that when using OAuth with Chase Bank (`ins_56`), Chase will issue "tokenized" routing and account numbers, which are not the user's actual account and routing numbers. These tokenized numbers should work identically to normal account and routing numbers. The digits returned in the `mask` field will continue to reflect the actual account number, rather than the tokenized account number; for this reason, when displaying account numbers to the user to help them identify their account in your UI, always use the `mask` rather than truncating the `account` number. If a user revokes their permissions to your app, the tokenized numbers will continue to work for ACH deposits, but not withdrawals. | |
routing: | |
type: string | |
description: "The ACH routing number for the account. If the institution is `ins_56`, this may be a tokenized routing number. For more information, see the description of the `account` field." | |
wire_routing: | |
type: | |
- string | |
- "null" | |
description: "The wire transfer routing number for the account, if available" | |
description: Identifying information for transferring money to or from a US account via ACH or wire transfer. | |
PlaidOwner: | |
title: PlaidOwner | |
required: | |
- names | |
- phone_numbers | |
- emails | |
- addresses | |
type: object | |
properties: | |
names: | |
type: array | |
items: | |
type: string | |
description: |- | |
A list of names associated with the account by the financial institution. These should always be the names of individuals, even for business accounts. If the name of a business is reported, please contact Plaid Support. In the case of a joint account, Plaid will make a best effort to report the names of all account holders. | |
If an Item contains multiple accounts with different owner names, some institutions will report all names associated with the Item in each account's `names` array. | |
phone_numbers: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidPhoneNumber" | |
description: A list of phone numbers associated with the account by the financial institution. May be an empty array if no relevant information is returned from the financial institution. | |
emails: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidEmail" | |
description: A list of email addresses associated with the account by the financial institution. May be an empty array if no relevant information is returned from the financial institution. | |
addresses: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidAddress" | |
description: Data about the various addresses associated with the account by the financial institution. May be an empty array if no relevant information is returned from the financial institution. | |
description: Data returned from the financial institution about the owner or owners of an account. Only the `names` array must be non-empty. | |
PlaidPendingExpirationWebhook: | |
title: PlaidPendingExpirationWebhook | |
required: | |
- webhook_type | |
- webhook_code | |
- item_id | |
- consent_expiration_time | |
type: object | |
properties: | |
webhook_type: | |
type: string | |
description: "`ITEM`" | |
webhook_code: | |
type: string | |
description: "`PENDING_EXPIRATION`" | |
item_id: | |
type: string | |
description: "The `item_id` of the Item associated with this webhook, warning, or error" | |
consent_expiration_time: | |
type: string | |
description: "The date and time at which the Item's access consent will expire, in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format" | |
contentEncoding: date-time | |
description: Fired when an Item’s access consent is expiring in 7 days. Some Items have explicit expiration times and we try to relay this when possible to reduce service disruption. This can be resolved by having the user go through Link’s update mode. | |
PlaidPersonalFinanceCategory: | |
title: PlaidPersonalFinanceCategory | |
required: | |
- primary | |
- detailed | |
type: object | |
properties: | |
primary: | |
type: string | |
description: A high level category that communicates the broad category of the transaction. | |
detailed: | |
type: string | |
description: Provides additional granularity to the primary categorization. | |
description: |- | |
Information describing the intent of the transaction. Most relevant for personal finance use cases, but not limited to such use cases. The field is currently in beta. | |
The complete category can be generated by concatenating primary and detailed categories. | |
This feature is currently in beta – to request access, contact transactions-feedback@plaid.com. | |
PlaidPhoneNumber: | |
title: PlaidPhoneNumber | |
required: | |
- data | |
- primary | |
- type | |
type: object | |
properties: | |
data: | |
type: string | |
description: The phone number. | |
primary: | |
type: boolean | |
description: "When `true`, identifies the phone number as the primary number on an account." | |
type: | |
$ref: "#/components/schemas/Type" | |
description: A phone number | |
PlaidProcessorTokenCreateRequest: | |
title: PlaidProcessorTokenCreateRequest | |
required: | |
- access_token | |
- account_id | |
- processor | |
type: object | |
properties: | |
access_token: | |
maxLength: 55 | |
minLength: 51 | |
pattern: "^access-(sandbox|development|production)-.{8}-.{4}-.{4}-.{4}-.{12}$" | |
type: | |
- string | |
- "null" | |
description: The access token associated with the Item data is being requested for. | |
examples: | |
- access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
account_id: | |
type: string | |
description: The `account_id` value obtained from the `onSuccess` callback in Link | |
processor: | |
$ref: "#/components/schemas/Processor" | |
description: "`ProcessorTokenCreateRequest` defines the request schema for `/processor/token/create`" | |
PlaidProcessorTokenCreateResponse: | |
title: PlaidProcessorTokenCreateResponse | |
required: | |
- processor_token | |
- request_id | |
type: object | |
properties: | |
processor_token: | |
type: string | |
description: The `processor_token` that can then be used by the Plaid partner to make API requests | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: ProcessorTokenCreateResponse defines the response schema for `/processor/token/create` and `/processor/apex/processor_token/create` | |
PlaidProductAccess: | |
title: PlaidProductAccess | |
type: object | |
properties: | |
statements: | |
type: | |
- boolean | |
- "null" | |
description: "Allow access to statements. Only used by certain partners. If relevant to the partner and unset, defaults to `true`." | |
default: true | |
identity: | |
type: | |
- boolean | |
- "null" | |
description: "Allow access to the Identity product (name, email, phone, address). Only used by certain partners. If relevant to the partner and unset, defaults to `true`." | |
default: true | |
auth: | |
type: | |
- boolean | |
- "null" | |
description: "Allow access to account number details. Only used by certain partners. If relevant to the partner and unset, defaults to `true`." | |
default: true | |
transactions: | |
type: | |
- boolean | |
- "null" | |
description: "Allow access to transaction details. Only used by certain partners. If relevant to the partner and unset, defaults to `true`." | |
default: true | |
description: "The product access being requested. Used to or disallow product access across all accounts. If unset, defaults to all products allowed." | |
PlaidProductStatus: | |
title: PlaidProductStatus | |
required: | |
- status | |
- last_status_change | |
- breakdown | |
type: object | |
properties: | |
status: | |
$ref: "#/components/schemas/Status1" | |
last_status_change: | |
type: string | |
description: "[ISO 8601](https://wikipedia.org/wiki/ISO_8601) formatted timestamp of the last status change for the institution." | |
contentEncoding: date-time | |
breakdown: | |
$ref: "#/components/schemas/PlaidStatusBreakdown" | |
description: "A representation of the status health of a request type. Auth requests, Balance requests, Identity requests, Investments requests, Liabilities requests, Transactions updates, Investments updates, Liabilities updates, and Item logins each have their own status object." | |
PlaidStatusBreakdown: | |
title: PlaidStatusBreakdown | |
required: | |
- success | |
- error_plaid | |
- error_institution | |
type: object | |
properties: | |
success: | |
type: number | |
description: "The percentage of login attempts that are successful, expressed as a decimal." | |
error_plaid: | |
type: number | |
description: "The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal." | |
error_institution: | |
type: number | |
description: "The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal." | |
refresh_interval: | |
$ref: "#/components/schemas/RefreshInterval" | |
description: "A detailed breakdown of the institution's performance for a request type. The values for `success`, `error_plaid`, and `error_institution` sum to 1." | |
PlaidProducts: | |
title: PlaidProducts | |
enum: | |
- assets | |
- auth | |
- balance | |
- identity | |
- investments | |
- liabilities | |
- payment_initiation | |
- transactions | |
- credit_details | |
- income | |
- income_verification | |
- deposit_switch | |
- standing_orders | |
- transfer | |
- employment | |
type: string | |
description: A list of products that an institution can support. All Items must be initialized with at least one product. The Balance product is always available and does not need to be specified during initialization. | |
examples: | |
- transactions | |
PlaidRecaptcha_RequiredError: | |
title: PlaidRecaptcha_RequiredError | |
required: | |
- error_type | |
- error_code | |
- display_message | |
- http_code | |
- link_user_experience | |
- common_causes | |
- troubleshooting_steps | |
type: object | |
properties: | |
error_type: | |
type: string | |
description: RECAPTCHA_ERROR | |
error_code: | |
type: string | |
description: RECAPTCHA_REQUIRED | |
display_message: | |
type: string | |
http_code: | |
type: string | |
description: "400" | |
link_user_experience: | |
type: string | |
description: "Your user will be prompted to solve a Google reCAPTCHA challenge in the Link Recaptcha pane. If they solve the challenge successfully, the user's request is resubmitted and they are directed to the next Item creation step." | |
common_causes: | |
type: string | |
description: "Plaid's fraud system detects abusive traffic and considers a variety of parameters throughout Item creation requests. When a request is considered risky or possibly fraudulent, Link presents a reCAPTCHA for the user to solve." | |
troubleshooting_steps: | |
type: string | |
description: |- | |
Link will automatically guide your user through reCAPTCHA verification. As a general rule, we recommend instrumenting basic fraud monitoring to detect and protect your website from spam and abuse. | |
If your user cannot verify their session, please submit a Support ticket with the following identifiers: `link_session_id` or `request_id` | |
description: "The request was flagged by Plaid's fraud system, and requires additional verification to ensure they are not a bot." | |
PlaidRecurringTransactionFrequency: | |
title: PlaidRecurringTransactionFrequency | |
enum: | |
- UNKNOWN | |
- WEEKLY | |
- BIWEEKLY | |
- SEMI_MONTHLY | |
- MONTHLY | |
type: string | |
description: describes the frequency of the transaction stream. | |
examples: | |
- UNKNOWN | |
PlaidRemovedTransaction: | |
title: PlaidRemovedTransaction | |
type: object | |
properties: | |
transaction_id: | |
type: string | |
description: The ID of the removed transaction. | |
description: A representation of a removed transaction | |
PlaidSandboxProcessorTokenCreateRequest: | |
title: PlaidSandboxProcessorTokenCreateRequest | |
required: | |
- institution_id | |
type: object | |
properties: | |
institution_id: | |
type: string | |
description: The ID of the institution the Item will be associated with | |
description: "`SandboxProcessorTokenCreateRequest` defines the request schema for `/sandbox/processor_token/create`" | |
PlaidSandboxProcessorTokenCreateResponse: | |
title: PlaidSandboxProcessorTokenCreateResponse | |
required: | |
- processor_token | |
- request_id | |
type: object | |
properties: | |
processor_token: | |
type: string | |
description: A processor token that can be used to call the `/processor/` endpoints. | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: SandboxProcessorTokenCreateResponse defines the response schema for `/sandbox/processor_token/create` | |
PlaidSandboxPublicTokenCreateRequest: | |
title: PlaidSandboxPublicTokenCreateRequest | |
required: | |
- institution_id | |
- initial_products | |
type: object | |
properties: | |
institution_id: | |
type: string | |
description: The ID of the institution the Item will be associated with | |
initial_products: | |
minItems: 1 | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidProducts" | |
description: The products to initially pull for the Item. May be any products that the specified `institution_id` supports. This array may not be empty. | |
description: "`SandboxPublicTokenCreateRequest` defines the request schema for `/sandbox/public_token/create`" | |
PlaidSandboxPublicTokenCreateResponse: | |
title: PlaidSandboxPublicTokenCreateResponse | |
required: | |
- public_token | |
- request_id | |
type: object | |
properties: | |
public_token: | |
type: string | |
description: A public token that can be exchanged for an access token using `/item/public_token/exchange` | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: SandboxPublicTokenCreateResponse defines the response schema for `/sandbox/public_token/create` | |
PlaidScopes: | |
title: PlaidScopes | |
type: object | |
properties: | |
product_access: | |
$ref: "#/components/schemas/PlaidProductAccess" | |
accounts: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidAccountAccess" | |
description: "" | |
new_accounts: | |
type: | |
- boolean | |
- "null" | |
description: "Allow access to newly opened accounts as they are opened. If unset, defaults to `true`." | |
default: true | |
description: The scopes object | |
PlaidSignalAddressData: | |
title: PlaidSignalAddressData | |
type: object | |
properties: | |
city: | |
type: string | |
description: The full city name | |
region: | |
type: | |
- string | |
- "null" | |
description: |- | |
The region or state | |
Example: `"NC"` | |
street: | |
type: string | |
description: |- | |
The full street address | |
Example: `"564 Main Street, APT 15"` | |
postal_code: | |
type: | |
- string | |
- "null" | |
description: The postal code | |
country: | |
type: | |
- string | |
- "null" | |
description: The ISO 3166-1 alpha-2 country code | |
description: Data about the components comprising an address. | |
PlaidSignalDecisionReportRequest: | |
title: PlaidSignalDecisionReportRequest | |
required: | |
- client_transaction_id | |
- initiated | |
type: object | |
properties: | |
client_transaction_id: | |
maxLength: 36 | |
minLength: 1 | |
type: string | |
description: Must be the same as the `client_transaction_id` supplied when calling `/signal/evaluate` | |
initiated: | |
type: boolean | |
description: "`true` if the ACH transaction was initiated, `false` otherwise." | |
days_funds_on_hold: | |
minimum: 0 | |
type: | |
- integer | |
- "null" | |
description: "The actual number of days (hold time) since the ACH debit transaction that you wait before making funds available to your customers. The holding time could affect the ACH return rate. For example, use 0 if you make funds available to your customers instantly or the same day following the debit transaction, or 1 if you make funds available the next day following the debit initialization." | |
contentEncoding: int32 | |
description: "`SignalDecisionReportRequest` defines the request schema for `/signal/decision/report`" | |
PlaidSignalDecisionReportResponse: | |
title: PlaidSignalDecisionReportResponse | |
required: | |
- request_id | |
type: object | |
properties: | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: SignalDecisionReportResponse defines the response schema for `/signal/decision/report` | |
PlaidSignalEvaluateDevice: | |
title: PlaidSignalEvaluateDevice | |
type: object | |
properties: | |
ip_address: | |
type: | |
- string | |
- "null" | |
description: The IP address of the device that initiated the transaction | |
user_agent: | |
type: | |
- string | |
- "null" | |
description: The user agent of the device that initiated the transaction (e.g. "Mozilla/5.0") | |
description: Details about the end user's device | |
PlaidSignalEvaluateCoreAttributes: | |
title: PlaidSignalEvaluateCoreAttributes | |
type: object | |
properties: | |
unauthorized_transactions_count_7d: | |
type: integer | |
description: We parse and analyze historical transaction metadata to identify the number of possible past returns due to unauthorized transactions over the past 7 days from the account that will be debited. | |
contentEncoding: int32 | |
unauthorized_transactions_count_30d: | |
type: integer | |
description: We parse and analyze historical transaction metadata to identify the number of possible past returns due to unauthorized transactions over the past 30 days from the account that will be debited. | |
contentEncoding: int32 | |
unauthorized_transactions_count_60d: | |
type: integer | |
description: We parse and analyze historical transaction metadata to identify the number of possible past returns due to unauthorized transactions over the past 60 days from the account that will be debited. | |
contentEncoding: int32 | |
unauthorized_transactions_count_90d: | |
type: integer | |
description: We parse and analyze historical transaction metadata to identify the number of possible past returns due to unauthorized transactions over the past 90 days from the account that will be debited. | |
contentEncoding: int32 | |
nsf_overdraft_transactions_count_7d: | |
type: integer | |
description: We parse and analyze historical transaction metadata to identify the number of possible past returns due to non-sufficient funds/overdrafts over the past 7 days from the account that will be debited. | |
contentEncoding: int32 | |
nsf_overdraft_transactions_count_30d: | |
type: integer | |
description: We parse and analyze historical transaction metadata to identify the number of possible past returns due to non-sufficient funds/overdrafts over the past 30 days from the account that will be debited. | |
contentEncoding: int32 | |
nsf_overdraft_transactions_count_60d: | |
type: integer | |
description: We parse and analyze historical transaction metadata to identify the number of possible past returns due to non-sufficient funds/overdrafts over the past 60 days from the account that will be debited. | |
contentEncoding: int32 | |
nsf_overdraft_transactions_count_90d: | |
type: integer | |
description: We parse and analyze historical transaction metadata to identify the number of possible past returns due to non-sufficient funds/overdrafts over the past 90 days from the account that will be debited. | |
contentEncoding: int32 | |
days_since_first_plaid_connection: | |
type: | |
- integer | |
- "null" | |
description: The number of days since the first time the Item was connected to an application via Plaid | |
contentEncoding: int32 | |
plaid_connections_count_7d: | |
type: | |
- integer | |
- "null" | |
description: The number of times the Item has been connected to applications via Plaid over the past 7 days | |
contentEncoding: int32 | |
plaid_connections_count_30d: | |
type: | |
- integer | |
- "null" | |
description: The number of times the Item has been connected to applications via Plaid over the past 30 days | |
contentEncoding: int32 | |
total_plaid_connections_count: | |
type: | |
- integer | |
- "null" | |
description: The total number of times the Item has been connected to applications via Plaid | |
contentEncoding: int32 | |
is_savings_or_money_market_account: | |
type: boolean | |
description: Indicates if the ACH transaction funding account is a savings/money market account | |
total_credit_transactions_amount_10d: | |
type: number | |
description: The total credit (inflow) transaction amount over the past 10 days from the account that will be debited | |
total_debit_transactions_amount_10d: | |
type: number | |
description: The total debit (outflow) transaction amount over the past 10 days from the account that will be debited | |
p50_credit_transactions_amount_28d: | |
type: | |
- number | |
- "null" | |
description: The 50th percentile of all credit (inflow) transaction amounts over the past 28 days from the account that will be debited | |
p50_debit_transactions_amount_28d: | |
type: | |
- number | |
- "null" | |
description: The 50th percentile of all debit (outflow) transaction amounts over the past 28 days from the account that will be debited | |
p95_credit_transactions_amount_28d: | |
type: | |
- number | |
- "null" | |
description: The 95th percentile of all credit (inflow) transaction amounts over the past 28 days from the account that will be debited | |
p95_debit_transactions_amount_28d: | |
type: | |
- number | |
- "null" | |
description: The 95th percentile of all debit (outflow) transaction amounts over the past 28 days from the account that will be debited | |
days_with_negative_balance_count_90d: | |
type: | |
- integer | |
- "null" | |
description: The number of days within the past 90 days when the account that will be debited had a negative end-of-day available balance | |
contentEncoding: int32 | |
p90_eod_balance_30d: | |
type: | |
- number | |
- "null" | |
description: The 90th percentile of the end-of-day available balance over the past 30 days of the account that will be debited | |
p90_eod_balance_60d: | |
type: | |
- number | |
- "null" | |
description: The 90th percentile of the end-of-day available balance over the past 60 days of the account that will be debited | |
p90_eod_balance_90d: | |
type: | |
- number | |
- "null" | |
description: The 90th percentile of the end-of-day available balance over the past 90 days of the account that will be debited | |
p10_eod_balance_30d: | |
type: | |
- number | |
- "null" | |
description: The 10th percentile of the end-of-day available balance over the past 30 days of the account that will be debited | |
p10_eod_balance_60d: | |
type: | |
- number | |
- "null" | |
description: The 10th percentile of the end-of-day available balance over the past 60 days of the account that will be debited | |
p10_eod_balance_90d: | |
type: | |
- number | |
- "null" | |
description: The 10th percentile of the end-of-day available balance over the past 90 days of the account that will be debited | |
available_balance: | |
type: | |
- number | |
- "null" | |
description: "Available balance, as of the `balance_last_updated` time. The available balance is the current balance less any outstanding holds or debits that have not yet posted to the account." | |
current_balance: | |
type: | |
- number | |
- "null" | |
description: "Current balance, as of the `balance_last_updated` time. The current balance is the total amount of funds in the account." | |
balance_last_updated: | |
type: | |
- string | |
- "null" | |
description: "Timestamp in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format (YYYY-MM-DDTHH:mm:ssZ) indicating the last time that the balance for the given account has been updated." | |
contentEncoding: date-time | |
phone_change_count_28d: | |
type: | |
- integer | |
- "null" | |
description: The number of times the account's phone numbers on file have changed over the past 28 days | |
contentEncoding: int32 | |
phone_change_count_90d: | |
type: | |
- integer | |
- "null" | |
description: The number of times the account's phone numbers on file have changed over the past 90 days | |
contentEncoding: int32 | |
email_change_count_28d: | |
type: | |
- integer | |
- "null" | |
description: The number of times the account's email addresses on file have changed over the past 28 days | |
contentEncoding: int32 | |
email_change_count_90d: | |
type: | |
- integer | |
- "null" | |
description: The number of times the account's email addresses on file have changed over the past 90 days | |
contentEncoding: int32 | |
address_change_count_28d: | |
type: | |
- integer | |
- "null" | |
description: The number of times the account's addresses on file have changed over the past 28 days | |
contentEncoding: int32 | |
address_change_count_90d: | |
type: | |
- integer | |
- "null" | |
description: The number of times the account's addresses on file have changed over the past 90 days | |
contentEncoding: int32 | |
description: |- | |
The core attributes object contains additional data that can be used to assess the ACH return risk. Examples of data include: | |
`days_since_first_plaid_connection`: The number of days since the first time the Item was connected to an application via Plaid | |
`plaid_connections_count_7d`: The number of times the Item has been connected to applications via Plaid over the past 7 days | |
`plaid_connections_count_30d`: The number of times the Item has been connected to applications via Plaid over the past 30 days | |
`total_plaid_connections_count`: The number of times the Item has been connected to applications via Plaid | |
`is_savings_or_money_market_account`: Indicates whether the ACH transaction funding account is a savings/money market account | |
For the full list and detailed documentation of core attributes available, or to request that core attributes not be returned, contact Sales or your Plaid account manager | |
PlaidSignalEvaluateRequest: | |
title: PlaidSignalEvaluateRequest | |
required: | |
- access_token | |
- account_id | |
- client_transaction_id | |
- amount | |
type: object | |
properties: | |
access_token: | |
maxLength: 55 | |
minLength: 51 | |
pattern: "^access-(sandbox|development|production)-.{8}-.{4}-.{4}-.{4}-.{12}$" | |
type: | |
- string | |
- "null" | |
description: The access token associated with the Item data is being requested for. | |
examples: | |
- access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
account_id: | |
type: string | |
description: The `account_id` of the account whose verification status is to be modified | |
client_transaction_id: | |
maxLength: 36 | |
minLength: 1 | |
type: string | |
description: "The unique ID that you would like to use to refer to this transaction. For your convenience mapping your internal data, you could use your internal ID/identifier for this transaction. The max length for this field is 36 characters." | |
amount: | |
type: number | |
description: "The transaction amount, in USD (e.g. `102.05`)" | |
user_present: | |
type: | |
- boolean | |
- "null" | |
description: "`true` if the end user is present while initiating the ACH transfer and the endpoint is being called; `false` otherwise (for example, when the ACH transfer is scheduled and the end user is not present, or you call this endpoint after the ACH transfer but before submitting the Nacha file for ACH processing)." | |
client_user_id: | |
maxLength: 36 | |
type: string | |
description: A unique ID that identifies the end user in your system. This ID is used to correlate requests by a user with multiple Items. The max length for this field is 36 characters. | |
user: | |
$ref: "#/components/schemas/PlaidSignalUser" | |
device: | |
$ref: "#/components/schemas/PlaidSignalEvaluateDevice" | |
description: "`SignalEvaluateRequest` defines the request schema for `/signal/evaluate`" | |
PlaidSignalEvaluateResponse: | |
title: PlaidSignalEvaluateResponse | |
required: | |
- request_id | |
- scores | |
type: object | |
properties: | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
scores: | |
$ref: "#/components/schemas/PlaidSignalEvaluateScores" | |
core_attributes: | |
$ref: "#/components/schemas/PlaidSignalEvaluateCoreAttributes" | |
description: SignalEvaluateResponse defines the response schema for `/signal/income/evaluate` | |
PlaidSignalPersonName: | |
title: PlaidSignalPersonName | |
type: object | |
properties: | |
prefix: | |
type: | |
- string | |
- "null" | |
description: The user's name prefix (e.g. "Mr.") | |
given_name: | |
type: | |
- string | |
- "null" | |
description: "The user's given name. If the user has a one-word name, it should be provided in this field." | |
middle_name: | |
type: | |
- string | |
- "null" | |
description: The user's middle name | |
family_name: | |
type: | |
- string | |
- "null" | |
description: The user's family name / surname | |
suffix: | |
type: | |
- string | |
- "null" | |
description: The user's name suffix (e.g. "II") | |
description: The user's legal name | |
PlaidSignalReturnReportRequest: | |
title: PlaidSignalReturnReportRequest | |
required: | |
- client_transaction_id | |
- return_code | |
type: object | |
properties: | |
client_transaction_id: | |
maxLength: 36 | |
minLength: 1 | |
type: string | |
description: Must be the same as the `client_transaction_id` supplied when calling `/signal/evaluate` | |
return_code: | |
type: string | |
description: Must be a valid ACH return code (e.g. "R01") | |
description: "`SignalReturnReportRequest` defines the request schema for `/signal/return/report`" | |
PlaidSignalReturnReportResponse: | |
title: PlaidSignalReturnReportResponse | |
required: | |
- request_id | |
type: object | |
properties: | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: SignalReturnReportResponse defines the response schema for `/signal/return/report` | |
PlaidSignalEvaluateScores: | |
title: PlaidSignalEvaluateScores | |
type: object | |
properties: | |
customer_initiated_return_risk: | |
$ref: "#/components/schemas/PlaidCustomerInitiatedReturnRisk" | |
bank_initiated_return_risk: | |
$ref: "#/components/schemas/PlaidBankInitiatedReturnRisk" | |
description: Risk scoring details broken down by risk category. | |
PlaidSignalUser: | |
title: PlaidSignalUser | |
type: object | |
properties: | |
name: | |
$ref: "#/components/schemas/PlaidSignalPersonName" | |
phone_number: | |
type: | |
- string | |
- "null" | |
description: 'The user''s phone number, in E.164 format: +{countrycode}{number}. For example: "+14151234567"' | |
email_address: | |
type: | |
- string | |
- "null" | |
description: The user's email address. | |
address: | |
$ref: "#/components/schemas/PlaidSignalAddressData" | |
description: "Details about the end user initiating the transaction (i.e., the account holder)." | |
PlaidStandaloneAccountType: | |
title: PlaidStandaloneAccountType | |
required: | |
- depository | |
- credit | |
- loan | |
- other | |
type: object | |
properties: | |
depository: | |
$ref: "#/components/schemas/PlaidDepositoryAccount" | |
credit: | |
$ref: "#/components/schemas/PlaidCreditAccount" | |
loan: | |
$ref: "#/components/schemas/PlaidLoanAccount" | |
other: | |
type: string | |
description: "Other or unknown account type. Supported products for `other` accounts are: Balance, Transactions, Identity, and Assets." | |
description: The schema below describes the various `types` and corresponding `subtypes` that Plaid recognizes and reports for financial institution accounts. | |
PlaidStandaloneCurrencyCodeList: | |
title: PlaidStandaloneCurrencyCodeList | |
required: | |
- iso_currency_code | |
- unofficial_currency_code | |
type: object | |
properties: | |
iso_currency_code: | |
type: string | |
description: Plaid supports all ISO 4217 currency codes. | |
unofficial_currency_code: | |
$ref: "#/components/schemas/PlaidUnofficialCurrencyCodeList" | |
description: The following currency codes are supported by Plaid. | |
PlaidTransaction: | |
title: PlaidTransaction | |
required: | |
- pending_transaction_id | |
- category_id | |
- category | |
- location | |
- account_owner | |
- name | |
- account_id | |
- amount | |
- iso_currency_code | |
- unofficial_currency_code | |
- date | |
- pending | |
- transaction_id | |
- payment_channel | |
- authorized_date | |
- authorized_datetime | |
- datetime | |
- transaction_code | |
type: object | |
properties: | |
transaction_type: | |
$ref: "#/components/schemas/TransactionType" | |
pending_transaction_id: | |
type: | |
- string | |
- "null" | |
description: "The ID of a posted Plaid transaction's associated pending transaction, where applicable." | |
category_id: | |
type: | |
- string | |
- "null" | |
description: |- | |
The ID of the Plaid category to which this transaction belongs. For a full list of categories, see [`/categories/get`](https://plaid.com/docs/api/products/#categoriesget). | |
If the `transactions` object was returned by an Assets endpoint such as `/asset_report/get/` or `/asset_report/pdf/get`, this field will only appear in an Asset Report with Insights. | |
category: | |
type: | |
- array | |
- "null" | |
items: | |
type: string | |
description: |- | |
A hierarchical array of the Plaid categories to which this transaction belongs. For a full list of categories, see [`/categories/get`](https://plaid.com/docs/api/products/#categoriesget). | |
If the `transactions` object was returned by an Assets endpoint such as `/asset_report/get/` or `/asset_report/pdf/get`, this field will only appear in an Asset Report with Insights. | |
location: | |
$ref: "#/components/schemas/PlaidLocation" | |
account_owner: | |
type: | |
- string | |
- "null" | |
description: The name of the account owner. This field is not typically populated and only relevant when dealing with sub-accounts. | |
name: | |
type: string | |
description: |- | |
The merchant name or transaction description. | |
If the `transactions` object was returned by a Transactions endpoint such as `/transactions/get`, this field will always appear. If the `transactions` object was returned by an Assets endpoint such as `/asset_report/get/` or `/asset_report/pdf/get`, this field will only appear in an Asset Report with Insights. | |
original_description: | |
type: | |
- string | |
- "null" | |
description: "The string returned by the financial institution to describe the transaction. For transactions returned by `/transactions/get`, this field is in beta and will be omitted unless the client is both enrolled in the closed beta program and has set `options.include_original_description` to `true`." | |
account_id: | |
type: string | |
description: The ID of the account in which this transaction occurred. | |
amount: | |
type: number | |
description: "The settled value of the transaction, denominated in the account's currency, as stated in `iso_currency_code` or `unofficial_currency_code`. Positive values when money moves out of the account; negative values when money moves in. For example, debit card purchases are positive; credit card payments, direct deposits, and refunds are negative." | |
iso_currency_code: | |
type: | |
- string | |
- "null" | |
description: The ISO-4217 currency code of the transaction. Always `null` if `unofficial_currency_code` is non-null. | |
unofficial_currency_code: | |
type: | |
- string | |
- "null" | |
description: |- | |
The unofficial currency code associated with the transaction. Always `null` if `iso_currency_code` is non-`null`. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries. | |
See the [currency code schema](https://plaid.com/docs/api/accounts#currency-code-schema) for a full listing of supported `iso_currency_code`s. | |
date: | |
type: string | |
description: "For pending transactions, the date that the transaction occurred; for posted transactions, the date that the transaction posted. Both dates are returned in an [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format ( `YYYY-MM-DD` )." | |
contentEncoding: date | |
pending: | |
type: boolean | |
description: "When `true`, identifies the transaction as pending or unsettled. Pending transaction details (name, type, amount, category ID) may change before they are settled." | |
transaction_id: | |
type: string | |
description: "The unique ID of the transaction. Like all Plaid identifiers, the `transaction_id` is case sensitive." | |
merchant_name: | |
type: | |
- string | |
- "null" | |
description: "The merchant name, as extracted by Plaid from the `name` field." | |
check_number: | |
type: | |
- string | |
- "null" | |
description: The check number of the transaction. This field is only populated for check transactions. | |
payment_channel: | |
$ref: "#/components/schemas/PaymentChannel" | |
authorized_date: | |
type: | |
- string | |
- "null" | |
description: "The date that the transaction was authorized. Dates are returned in an [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format ( `YYYY-MM-DD` ). The `authorized_date` field uses machine learning to determine a transaction date for transactions where the `date_transacted` is not available. If the `date_transacted` field is present and not `null`, the `authorized_date` field will have the same value as the `date_transacted` field." | |
contentEncoding: date | |
authorized_datetime: | |
type: | |
- string | |
- "null" | |
description: |- | |
Date and time when a transaction was authorized in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format ( `YYYY-MM-DDTHH:mm:ssZ` ). | |
This field is returned for select financial institutions and comes as provided by the institution. It may contain default time values (such as 00:00:00). | |
contentEncoding: date-time | |
datetime: | |
type: | |
- string | |
- "null" | |
description: |- | |
Date and time when a transaction was posted in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format ( `YYYY-MM-DDTHH:mm:ssZ` ). | |
This field is returned for select financial institutions and comes as provided by the institution. It may contain default time values (such as 00:00:00). | |
contentEncoding: date-time | |
transaction_code: | |
$ref: "#/components/schemas/PlaidTransactionCode" | |
personal_finance_category: | |
$ref: "#/components/schemas/PersonalFinanceCategory" | |
description: A representation of a transaction | |
PlaidTransactionBase: | |
title: PlaidTransactionBase | |
required: | |
- account_id | |
- amount | |
- iso_currency_code | |
- unofficial_currency_code | |
- date | |
- pending | |
- transaction_id | |
type: object | |
properties: | |
transaction_type: | |
$ref: "#/components/schemas/TransactionType" | |
pending_transaction_id: | |
type: | |
- string | |
- "null" | |
description: "The ID of a posted Plaid transaction's associated pending transaction, where applicable." | |
category_id: | |
type: | |
- string | |
- "null" | |
description: |- | |
The ID of the Plaid category to which this transaction belongs. For a full list of categories, see [`/categories/get`](https://plaid.com/docs/api/products/#categoriesget). | |
If the `transactions` object was returned by an Assets endpoint such as `/asset_report/get/` or `/asset_report/pdf/get`, this field will only appear in an Asset Report with Insights. | |
category: | |
type: | |
- array | |
- "null" | |
items: | |
type: string | |
description: |- | |
A hierarchical array of the Plaid categories to which this transaction belongs. For a full list of categories, see [`/categories/get`](https://plaid.com/docs/api/products/#categoriesget). | |
If the `transactions` object was returned by an Assets endpoint such as `/asset_report/get/` or `/asset_report/pdf/get`, this field will only appear in an Asset Report with Insights. | |
location: | |
$ref: "#/components/schemas/PlaidLocation" | |
account_owner: | |
type: | |
- string | |
- "null" | |
description: The name of the account owner. This field is not typically populated and only relevant when dealing with sub-accounts. | |
name: | |
type: string | |
description: |- | |
The merchant name or transaction description. | |
If the `transactions` object was returned by a Transactions endpoint such as `/transactions/get`, this field will always appear. If the `transactions` object was returned by an Assets endpoint such as `/asset_report/get/` or `/asset_report/pdf/get`, this field will only appear in an Asset Report with Insights. | |
original_description: | |
type: | |
- string | |
- "null" | |
description: "The string returned by the financial institution to describe the transaction. For transactions returned by `/transactions/get`, this field is in beta and will be omitted unless the client is both enrolled in the closed beta program and has set `options.include_original_description` to `true`." | |
account_id: | |
type: string | |
description: The ID of the account in which this transaction occurred. | |
amount: | |
type: number | |
description: "The settled value of the transaction, denominated in the account's currency, as stated in `iso_currency_code` or `unofficial_currency_code`. Positive values when money moves out of the account; negative values when money moves in. For example, debit card purchases are positive; credit card payments, direct deposits, and refunds are negative." | |
iso_currency_code: | |
type: | |
- string | |
- "null" | |
description: The ISO-4217 currency code of the transaction. Always `null` if `unofficial_currency_code` is non-null. | |
unofficial_currency_code: | |
type: | |
- string | |
- "null" | |
description: |- | |
The unofficial currency code associated with the transaction. Always `null` if `iso_currency_code` is non-`null`. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries. | |
See the [currency code schema](https://plaid.com/docs/api/accounts#currency-code-schema) for a full listing of supported `iso_currency_code`s. | |
date: | |
type: string | |
description: "For pending transactions, the date that the transaction occurred; for posted transactions, the date that the transaction posted. Both dates are returned in an [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format ( `YYYY-MM-DD` )." | |
contentEncoding: date | |
pending: | |
type: boolean | |
description: "When `true`, identifies the transaction as pending or unsettled. Pending transaction details (name, type, amount, category ID) may change before they are settled." | |
transaction_id: | |
type: string | |
description: "The unique ID of the transaction. Like all Plaid identifiers, the `transaction_id` is case sensitive." | |
merchant_name: | |
type: | |
- string | |
- "null" | |
description: "The merchant name, as extracted by Plaid from the `name` field." | |
check_number: | |
type: | |
- string | |
- "null" | |
description: The check number of the transaction. This field is only populated for check transactions. | |
description: A representation of a Plaid transaction | |
PlaidTransactionCode: | |
title: PlaidTransactionCode | |
enum: | |
- adjustment | |
- atm | |
- bank charge | |
- bill payment | |
- cash | |
- cashback | |
- cheque | |
- direct debit | |
- interest | |
- purchase | |
- standing order | |
- transfer | |
type: string | |
description: |- | |
An identifier classifying the transaction type. | |
This field is only populated for European institutions. For institutions in the US and Canada, this field is set to `null`. | |
`adjustment:` Bank adjustment | |
`atm:` Cash deposit or withdrawal via an automated teller machine | |
`bank charge:` Charge or fee levied by the institution | |
`bill payment`: Payment of a bill | |
`cash:` Cash deposit or withdrawal | |
`cashback:` Cash withdrawal while making a debit card purchase | |
`cheque:` Document ordering the payment of money to another person or organization | |
`direct debit:` Automatic withdrawal of funds initiated by a third party at a regular interval | |
`interest:` Interest earned or incurred | |
`purchase:` Purchase made with a debit or credit card | |
`standing order:` Payment instructed by the account holder to a third party at a regular interval | |
`transfer:` Transfer of money between accounts | |
examples: | |
- adjustment | |
PlaidTransactionData: | |
title: PlaidTransactionData | |
required: | |
- description | |
- amount | |
- date | |
- account_id | |
- transaction_id | |
type: object | |
properties: | |
description: | |
type: string | |
description: The description of the transaction. | |
amount: | |
type: number | |
description: The amount of the transaction. | |
date: | |
type: string | |
description: 'The date of the transaction, in [ISO 8601](https://wikipedia.org/wiki/ISO_8601) format ("yyyy-mm-dd").' | |
contentEncoding: date | |
account_id: | |
type: string | |
description: A unique identifier for the end user's account. | |
transaction_id: | |
type: string | |
description: A unique identifier for the transaction. | |
description: Information about the matched direct deposit transaction used to verify a user's payroll information. | |
PlaidTransactionStream: | |
title: PlaidTransactionStream | |
required: | |
- account_id | |
- stream_id | |
- category_id | |
- category | |
- description | |
- first_date | |
- last_date | |
- frequency | |
- transaction_ids | |
- average_amount | |
- is_active | |
type: object | |
properties: | |
account_id: | |
type: string | |
description: The ID of the account to which the stream belongs | |
stream_id: | |
type: string | |
description: A unique id for the stream | |
category_id: | |
type: string | |
description: "The ID of the category to which this transaction belongs. See [Categories](https://plaid.com/docs/#category-overview)." | |
category: | |
type: array | |
items: | |
type: string | |
description: "A hierarchical array of the categories to which this transaction belongs. See [Categories](https://plaid.com/docs/#category-overview)." | |
description: | |
type: string | |
description: A description of the transaction stream. | |
first_date: | |
type: string | |
description: The posted date of the earliest transaction in the stream. | |
contentEncoding: date | |
last_date: | |
type: string | |
description: The posted date of the latest transaction in the stream. | |
contentEncoding: date | |
frequency: | |
$ref: "#/components/schemas/PlaidRecurringTransactionFrequency" | |
transaction_ids: | |
type: array | |
items: | |
type: string | |
description: "An array of Plaid transaction IDs belonging to the stream, sorted by posted date." | |
average_amount: | |
$ref: "#/components/schemas/PlaidTransactionStreamAmount" | |
is_active: | |
type: boolean | |
description: indicates whether the transaction stream is still live. | |
description: A grouping of related transactions | |
PlaidTransactionStreamAmount: | |
title: PlaidTransactionStreamAmount | |
type: object | |
properties: | |
amount: | |
type: number | |
description: represents the numerical value of an amount. | |
iso_currency_code: | |
type: | |
- string | |
- "null" | |
description: |- | |
The ISO-4217 currency code of the amount. Always `null` if `unofficial_currency_code` is non-`null`. | |
See the [currency code schema](https://plaid.com/docs/api/accounts#currency-code-schema) for a full listing of supported `iso_currency_code`s. | |
unofficial_currency_code: | |
type: | |
- string | |
- "null" | |
description: "The unofficial currency code of the amount. Always `null` if `iso_currency_code` is non-`null`. Unofficial currency codes are used for currencies that do not have official ISO currency codes, such as cryptocurrencies and the currencies of certain countries." | |
description: Object with data pertaining to an amount on the transaction stream. | |
PlaidTransactionsGetRequest: | |
title: PlaidTransactionsGetRequest | |
required: | |
- access_token | |
type: object | |
properties: | |
access_token: | |
maxLength: 55 | |
minLength: 51 | |
pattern: "^access-(sandbox|development|production)-.{8}-.{4}-.{4}-.{4}-.{12}$" | |
type: | |
- string | |
- "null" | |
description: The access token associated with the Item data is being requested for. | |
examples: | |
- access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
description: "`TransactionsGetRequest` defines the request schema for `/transactions/get`" | |
PlaidTransactionsGetResponse: | |
title: PlaidTransactionsGetResponse | |
required: | |
- accounts | |
- transactions | |
- total_transactions | |
- item | |
- request_id | |
type: object | |
properties: | |
accounts: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidAccountBase" | |
description: An array containing the `accounts` associated with the Item for which transactions are being returned. Each transaction can be mapped to its corresponding account via the `account_id` field. | |
transactions: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidTransaction" | |
description: "An array containing transactions from the account. Transactions are returned in reverse chronological order, with the most recent at the beginning of the array. The maximum number of transactions returned is determined by the `count` parameter." | |
total_transactions: | |
type: integer | |
description: "The total number of transactions available within the date range specified. If `total_transactions` is larger than the size of the `transactions` array, more transactions are available and can be fetched via manipulating the `offset` parameter." | |
contentEncoding: int32 | |
item: | |
$ref: "#/components/schemas/PlaidItem" | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: TransactionsGetResponse defines the response schema for `/transactions/get` | |
PlaidTransactionsRecurringGetRequest: | |
title: PlaidTransactionsRecurringGetRequest | |
required: | |
- access_token | |
- account_ids | |
type: object | |
properties: | |
access_token: | |
maxLength: 55 | |
minLength: 51 | |
pattern: "^access-(sandbox|development|production)-.{8}-.{4}-.{4}-.{4}-.{12}$" | |
type: | |
- string | |
- "null" | |
description: The access token associated with the Item data is being requested for. | |
examples: | |
- access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
account_ids: | |
type: array | |
items: | |
type: string | |
description: |- | |
A list of `account_ids` to retrieve for the Item | |
Note: An error will be returned if a provided `account_id` is not associated with the Item. | |
description: "`TransactionsRecurringGetRequest` defines the request schema for `/transactions/recurring/get`" | |
PlaidTransactionsRecurringGetResponse: | |
title: PlaidTransactionsRecurringGetResponse | |
required: | |
- inflow_streams | |
- outflow_streams | |
- request_id | |
type: object | |
properties: | |
inflow_streams: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidTransactionStream" | |
description: An array of depository transaction streams. | |
outflow_streams: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidTransactionStream" | |
description: An array of expense transaction streams. | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: TransactionsRecurringGetResponse defines the response schema for `/transactions/recurring/get` | |
PlaidTransactionsRefreshRequest: | |
title: PlaidTransactionsRefreshRequest | |
required: | |
- access_token | |
type: object | |
properties: | |
access_token: | |
maxLength: 55 | |
minLength: 51 | |
pattern: "^access-(sandbox|development|production)-.{8}-.{4}-.{4}-.{4}-.{12}$" | |
type: | |
- string | |
- "null" | |
description: The access token associated with the Item data is being requested for. | |
examples: | |
- access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
description: "`TransactionsRefreshRequest` defines the request schema for `/transactions/refresh`" | |
PlaidTransactionsRefreshResponse: | |
title: PlaidTransactionsRefreshResponse | |
required: | |
- request_id | |
type: object | |
properties: | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: TransactionsRefreshResponse defines the response schema for `/transactions/refresh` | |
PlaidTransactionsRemovedWebhook: | |
title: PlaidTransactionsRemovedWebhook | |
required: | |
- webhook_type | |
- webhook_code | |
- removed_transactions | |
- item_id | |
type: object | |
properties: | |
webhook_type: | |
type: string | |
description: "`TRANSACTIONS`" | |
webhook_code: | |
type: string | |
description: "`TRANSACTIONS_REMOVED`" | |
error: | |
$ref: "#/components/schemas/PlaidError" | |
removed_transactions: | |
type: array | |
items: | |
type: string | |
description: An array of `transaction_ids` corresponding to the removed transactions | |
item_id: | |
type: string | |
description: "The `item_id` of the Item associated with this webhook, warning, or error" | |
description: Fired when transaction(s) for an Item are deleted. The deleted transaction IDs are included in the webhook payload. Plaid will typically check for deleted transaction data several times a day. | |
PlaidTransactionsSyncRequest: | |
title: PlaidTransactionsSyncRequest | |
required: | |
- access_token | |
type: object | |
properties: | |
access_token: | |
maxLength: 55 | |
minLength: 51 | |
pattern: "^access-(sandbox|development|production)-.{8}-.{4}-.{4}-.{4}-.{12}$" | |
type: | |
- string | |
- "null" | |
description: The access token associated with the Item data is being requested for. | |
examples: | |
- access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6 | |
cursor: | |
type: string | |
description: |- | |
The cursor value represents the last update requested. Providing it will cause the response to only return changes after this update. | |
If omitted, the entire history of updates will be returned, starting with the first-added transactions on the item. | |
Note: The upper-bound length of this cursor is 256 characters of base64. | |
count: | |
maximum: 500 | |
minimum: 1 | |
type: integer | |
description: The number of transaction updates to fetch. | |
contentEncoding: int32 | |
default: 100 | |
description: "`TransactionsSyncRequest` defines the request schema for `/transactions/sync`" | |
PlaidTransactionsSyncResponse: | |
title: PlaidTransactionsSyncResponse | |
required: | |
- added | |
- modified | |
- removed | |
- next_cursor | |
- has_more | |
- request_id | |
type: object | |
properties: | |
added: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidTransaction" | |
description: Transactions that have been added to the item since `cursor` ordered by ascending last modified time. | |
modified: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidTransaction" | |
description: Transactions that have been modified on the item since `cursor` ordered by ascending last modified time. | |
removed: | |
type: array | |
items: | |
$ref: "#/components/schemas/PlaidRemovedTransaction" | |
description: Transactions that have been removed from the item since `cursor` ordered by ascending last modified time. | |
next_cursor: | |
type: string | |
description: Cursor used for fetching any future updates after the latest update provided in this response. | |
has_more: | |
type: boolean | |
description: "Represents if more than requested count of transaction updates exist. If true, the additional updates can be fetched by making an additional request with `cursor` set to `next_cursor`." | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: TransactionsSyncResponse defines the response schema for `/transactions/sync` | |
PlaidUnofficialCurrencyCodeList: | |
title: PlaidUnofficialCurrencyCodeList | |
required: | |
- ADA | |
- BAT | |
- BCH | |
- BNB | |
- BTC | |
- BTG | |
- CNH | |
- DASH | |
- DOGE | |
- ETC | |
- ETH | |
- GBX | |
- LSK | |
- NEO | |
- OMG | |
- QTUM | |
- USDT | |
- XLM | |
- XMR | |
- XRP | |
- ZEC | |
- ZRX | |
type: object | |
properties: | |
ADA: | |
type: string | |
description: Cardano | |
BAT: | |
type: string | |
description: Basic Attention Token | |
BCH: | |
type: string | |
description: Bitcoin Cash | |
BNB: | |
type: string | |
description: Binance Coin | |
BTC: | |
type: string | |
description: Bitcoin | |
BTG: | |
type: string | |
description: Bitcoin Gold | |
BSV: | |
type: string | |
description: Bitcoin Satoshi Vision | |
CNH: | |
type: string | |
description: Chinese Yuan (offshore) | |
DASH: | |
type: string | |
description: Dash | |
DOGE: | |
type: string | |
description: Dogecoin | |
ETC: | |
type: string | |
description: Ethereum Classic | |
ETH: | |
type: string | |
description: Ethereum | |
GBX: | |
type: string | |
description: "Pence sterling, i.e. British penny" | |
LSK: | |
type: string | |
description: Lisk | |
NEO: | |
type: string | |
description: Neo | |
OMG: | |
type: string | |
description: OmiseGO | |
QTUM: | |
type: string | |
description: Qtum | |
USDT: | |
type: string | |
description: TehterUS | |
XLM: | |
type: string | |
description: Stellar Lumen | |
XMR: | |
type: string | |
description: Monero | |
XRP: | |
type: string | |
description: Ripple | |
ZEC: | |
type: string | |
description: Zcash | |
ZRX: | |
type: string | |
description: 0x | |
description: List of unofficial currency codes | |
PlaidUserPermissionRevokedWebhook: | |
title: PlaidUserPermissionRevokedWebhook | |
required: | |
- webhook_type | |
- webhook_code | |
- item_id | |
type: object | |
properties: | |
webhook_type: | |
type: string | |
description: "`ITEM`" | |
webhook_code: | |
type: string | |
description: "`USER_PERMISSION_REVOKED`" | |
item_id: | |
type: string | |
description: "The `item_id` of the Item associated with this webhook, warning, or error" | |
error: | |
$ref: "#/components/schemas/PlaidError" | |
description: "The `USER_PERMISSION_REVOKED` webhook is fired to when an end user has used the [my.plaid.com portal](https://my.plaid.com) to revoke the permission that they previously granted to access an Item. Once access to an Item has been revoked, it cannot be restored. If the user subsequently returns to your application, a new Item must be created for the user." | |
PlaidVerificationAttribute: | |
title: PlaidVerificationAttribute | |
required: | |
- type | |
type: object | |
properties: | |
type: | |
$ref: "#/components/schemas/VerificationAttributeType" | |
description: Details about a certain reason as to why a document could potentially be fraudulent | |
PlaidVerificationExpiredWebhook: | |
title: PlaidVerificationExpiredWebhook | |
required: | |
- webhook_type | |
- webhook_code | |
- item_id | |
- account_id | |
type: object | |
properties: | |
webhook_type: | |
type: string | |
description: "`AUTH`" | |
webhook_code: | |
type: string | |
description: "`VERIFICATION_EXPIRED`" | |
item_id: | |
type: string | |
description: "The `item_id` of the Item associated with this webhook, warning, or error" | |
account_id: | |
type: string | |
description: The `account_id` of the account associated with the webhook | |
description: Fired when an Item was not verified via automated micro-deposits after seven days since the automated micro-deposit was made. | |
PlaidVerificationRefreshStatus: | |
title: PlaidVerificationRefreshStatus | |
enum: | |
- VERIFICATION_REFRESH_STATUS_USER_PRESENCE_REQUIRED | |
- VERIFICATION_REFRESH_SUCCESSFUL | |
- VERIFICATION_REFRESH_NOT_FOUND | |
type: string | |
description: |- | |
The verification refresh status. One of the following: | |
`"VERIFICATION_REFRESH_STATUS_USER_PRESENCE_REQUIRED"` User presence is required to refresh an income verification. | |
`"VERIFICATION_REFRESH_SUCCESSFUL"` The income verification refresh was successful. | |
`"VERIFICATION_REFRESH_NOT_FOUND"` No new data was found after the income verification refresh. | |
examples: | |
- VERIFICATION_REFRESH_STATUS_USER_PRESENCE_REQUIRED | |
PlaidWarning: | |
title: PlaidWarning | |
required: | |
- warning_type | |
- warning_code | |
- cause | |
type: object | |
properties: | |
warning_type: | |
type: string | |
description: "The warning type, which will always be `ASSET_REPORT_WARNING`" | |
warning_code: | |
const: OWNERS_UNAVAILABLE | |
type: string | |
description: "The warning code identifies a specific kind of warning. Currently, the only possible warning code is `OWNERS_UNAVAILABLE`, which indicates that account-owner information is not available." | |
examples: | |
- OWNERS_UNAVAILABLE | |
cause: | |
$ref: "#/components/schemas/PlaidCause" | |
description: "It is possible for an Asset Report to be returned with missing account owner information. In such cases, the Asset Report will contain warning data in the response, indicating why obtaining the owner information failed." | |
PlaidWebhookUpdateAcknowledgedWebhook: | |
title: PlaidWebhookUpdateAcknowledgedWebhook | |
required: | |
- webhook_type | |
- webhook_code | |
- item_id | |
- new_webhook_url | |
type: object | |
properties: | |
webhook_type: | |
type: string | |
description: "`ITEM`" | |
webhook_code: | |
type: string | |
description: "`WEBHOOK_UPDATE_ACKNOWLEDGED`" | |
item_id: | |
type: string | |
description: "The `item_id` of the Item associated with this webhook, warning, or error" | |
new_webhook_url: | |
type: string | |
description: The new webhook URL | |
error: | |
$ref: "#/components/schemas/PlaidError" | |
description: Fired when an Item's webhook is updated. This will be sent to the newly specified webhook. | |
PlaidWebhookVerificationKeyGetRequest: | |
title: PlaidWebhookVerificationKeyGetRequest | |
required: | |
- key_id | |
type: object | |
properties: | |
key_id: | |
type: string | |
description: The key ID ( `kid` ) from the JWT header. | |
description: "`WebhookVerificationKeyGetRequest` defines the request schema for `/webhook_verification_key/get`" | |
PlaidWebhookVerificationKeyGetResponse: | |
title: PlaidWebhookVerificationKeyGetResponse | |
required: | |
- key | |
- request_id | |
type: object | |
properties: | |
key: | |
$ref: "#/components/schemas/PlaidJWKPublicKey" | |
request_id: | |
type: string | |
description: "A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive." | |
description: WebhookVerificationKeyGetResponse defines the response schema for `/webhook_verification_key/get` | |
ErrorType: | |
title: ErrorType | |
enum: | |
- INVALID_REQUEST | |
- INVALID_RESULT | |
- INVALID_INPUT | |
- INSTITUTION_ERROR | |
- RATE_LIMIT_EXCEEDED | |
- API_ERROR | |
- ITEM_ERROR | |
- ASSET_REPORT_ERROR | |
- RECAPTCHA_ERROR | |
- OAUTH_ERROR | |
- PAYMENT_ERROR | |
- BANK_TRANSFER_ERROR | |
- INCOME_VERIFICATION_ERROR | |
type: string | |
description: A broad categorization of the error. Safe for programmatic use. | |
examples: | |
- INVALID_REQUEST | |
PaymentChannel: | |
title: PaymentChannel | |
enum: | |
- online | |
- in store | |
- other | |
type: string | |
description: |- | |
The channel used to make a payment. | |
`online:` transactions that took place online. | |
`in store:` transactions that were made at a physical location. | |
`other:` transactions that relate to banks, e.g. fees or deposits. | |
This field replaces the `transaction_type` field. | |
examples: | |
- online | |
PersonalFinanceCategory: | |
title: PersonalFinanceCategory | |
required: | |
- primary | |
- detailed | |
type: object | |
properties: | |
primary: | |
type: string | |
description: A high level category that communicates the broad category of the transaction. | |
detailed: | |
type: string | |
description: Provides additional granularity to the primary categorization. | |
Processor: | |
title: Processor | |
enum: | |
- achq | |
- alpaca | |
- astra | |
- check | |
- checkbook | |
- circle | |
- drivewealth | |
- dwolla | |
- galileo | |
- lithic | |
- modern_treasury | |
- moov | |
- ocrolus | |
- prime_trust | |
- rize | |
- sila_money | |
- svb_api | |
- treasury_prime | |
- unit | |
- vesta | |
- vopay | |
- wyre | |
type: string | |
description: The processor you are integrating with. | |
examples: | |
- sila_money | |
RefreshInterval: | |
title: RefreshInterval | |
enum: | |
- NORMAL | |
- DELAYED | |
- STOPPED | |
type: string | |
description: The `refresh_interval` may be `DELAYED` or `STOPPED` even when the success rate is high. This value is only returned for Transactions status breakdowns. | |
examples: | |
- NORMAL | |
Status: | |
title: Status | |
enum: | |
- INVESTIGATING | |
- IDENTIFIED | |
- SCHEDULED | |
- RESOLVED | |
- UNKNOWN | |
type: string | |
description: The status of the incident. | |
examples: | |
- INVESTIGATING | |
Status1: | |
title: Status1 | |
enum: | |
- HEALTHY | |
- DEGRADED | |
- DOWN | |
type: string | |
description: |- | |
This field is deprecated in favor of the `breakdown` object, which provides more granular institution health data. | |
`HEALTHY`: the majority of requests are successful | |
`DEGRADED`: only some requests are successful | |
`DOWN`: all requests are failing | |
examples: | |
- HEALTHY | |
deprecated: true | |
TransactionType: | |
title: TransactionType | |
enum: | |
- digital | |
- place | |
- special | |
- unresolved | |
type: string | |
description: |- | |
Please use the `payment_channel` field, `transaction_type` will be deprecated in the future. | |
`digital:` transactions that took place online. | |
`place:` transactions that were made at a physical location. | |
`special:` transactions that relate to banks, e.g. fees or deposits. | |
`unresolved:` transactions that do not fit into the other three types. | |
examples: | |
- digital | |
deprecated: true | |
Type: | |
title: Type | |
enum: | |
- home | |
- work | |
- office | |
- mobile | |
- mobile1 | |
- other | |
type: string | |
description: The type of phone number. | |
examples: | |
- home | |
Type1: | |
title: Type1 | |
enum: | |
- primary | |
- secondary | |
- other | |
type: string | |
description: The type of email account as described by the financial institution. | |
examples: | |
- primary | |
UpdateType: | |
title: UpdateType | |
enum: | |
- background | |
- user_present_required | |
type: string | |
description: |- | |
Indicates whether an Item requires user interaction to be updated, which can be the case for Items with some forms of two-factor authentication. | |
`background` - Item can be updated in the background | |
`user_present_required` - Item requires user interaction to be updated | |
examples: | |
- background | |
VerificationAttributeType: | |
title: VerificationAttributeType | |
enum: | |
- VERIFICATION_ATTRIBUTE_TYPE_UNKNOWN | |
- VERIFICATION_ATTRIBUTE_TYPE_AMOUNT_MATCH | |
- VERIFICATION_ATTRIBUTE_TYPE_DATE_MATCH | |
- VERIFICATION_ATTRIBUTE_TYPE_DATE_MISMATCH | |
- VERIFICATION_ATTRIBUTE_TYPE_FILE_TAMPERING | |
- VERIFICATION_ATTRIBUTE_TYPE_DESCRIPTION_MATCH | |
- VERIFICATION_ATTRIBUTE_TYPE_DESCRIPTION_MISMATCH | |
- VERIFICATION_ATTRIBUTE_TYPE_FIRST_NAME_MATCH | |
- VERIFICATION_ATTRIBUTE_TYPE_FIRST_NAME_MISMATCH | |
- VERIFICATION_ATTRIBUTE_TYPE_LAST_NAME_MATCH | |
- VERIFICATION_ATTRIBUTE_TYPE_LAST_NAME_MISMATCH | |
type: string | |
description: Message indicating the reason as to why the verification failed | |
examples: | |
- VERIFICATION_ATTRIBUTE_TYPE_UNKNOWN | |
VerificationStatus: | |
title: VerificationStatus | |
enum: | |
- automatically_verified | |
- pending_automatic_verification | |
- pending_manual_verification | |
- manually_verified | |
- verification_expired | |
- verification_failed | |
type: string | |
description: "The current verification status of an Auth Item initiated through Automated or Manual micro-deposits. Returned for Auth Items only.\n\n`pending_automatic_verification`: The Item is pending automatic verification\n\n`pending_manual_verification`: The Item is pending manual micro-deposit verification. Items remain in this state until the user successfully verifies the two amounts.\n\n`automatically_verified`: The Item has successfully been automatically verified\t\n\n`manually_verified`: The Item has successfully been manually verified\n\n`verification_expired`: Plaid was unable to automatically verify the deposit within 7 calendar days and will no longer attempt to validate the Item. Users may retry by submitting their information again through Link.\n\n`verification_failed`: The Item failed manual micro-deposit verification because the user exhausted all 3 verification attempts. Users may retry by submitting their information again through Link." | |
examples: | |
- automatically_verified | |
securitySchemes: | |
gamefiSecret: | |
type: apiKey | |
description: "Based on the `gamefi_secret` used the GameFi Plaid API will automatically route to the correct Plaid stage URL (e.g. production.plaid.com, development.plaid.com, sandbox.plaid.com)" | |
name: GameFi-Secret | |
in: header | |
security: | |
- gamefiSecret: [] | |
tags: | |
- name: item | |
description: Retrieving and deleting Items | |
- name: institutions | |
description: Fetching data about Plaid supported institutions | |
- name: account | |
description: Retrieving account information and seeing all possible Plaid account types and subtypes | |
- name: token | |
description: Obtaining and managing tokens from Plaid Link | |
- name: processor | |
description: Endpoints for use with or by Plaid partners | |
- name: sandbox | |
description: Sandbox-specific Plaid endpoints for testing | |
- name: transactions | |
description: Retrieve up to 24 months of Plaid transaction data | |
- name: auth | |
description: Retrieve and verify Plaid bank account information | |
- name: balance | |
description: Retrieve real-time balance information from Plaid | |
- name: identity | |
description: Verify users' identities and reduce fraud with the Plaid Identity product | |
- name: signal | |
description: Assess and mitigate fraud and transfer risks using the Plaid Signal product | |
- name: webhook | |
description: Plaid webhook endpoints for event-driven updates and logging |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment