Plaid logo
Docs
ALL DOCS

API

  • Overview
  • Libraries
  • API versioning
  • Postman Collection
  • Webhooks
Product API reference
  • Transactions
  • Auth
  • Balance
  • Identity
  • Assets
  • Investments
  • Liabilities
  • Payment Initiation
  • Virtual Accounts
  • Transfer
  • Income
  • Identity Verification
  • Monitor
  • Beacon
  • Signal
  • Enrich
  • Statements (beta)
Other API reference
  • Item endpoints and webhooks
  • Account endpoints and schemas
  • Institution endpoints
  • Token flow and endpoints
  • Processor token endpoints
  • Sandbox endpoints
  • Processor partner endpoints
  • Reseller partner endpoints
Plaid logo
Docs
Close search modal
Ask Bill!
Ask Bill!
Hi! I'm Bill! You can ask me all about the Plaid API. Try asking questions like:
    Note: Bill isn't perfect. He's just a robot platypus that reads our docs for fun. You should treat his answers with the same healthy skepticism you might treat any other answer on the internet. This chat may be logged for quality and training purposes. Please don't send Bill any PII -- he's scared of intimacy. All chats with Bill are subject to Plaid's Privacy Policy.
    Plaid.com
    Log in
    Get API Keys
    Open nav

    Institutions endpoints

    Fetch data about supported institutions

    The interface for these endpoints has changed in a recent API release. If you are using an API version prior to 2020-09-14, see API versioning.

    Introduction

    Institutions endpoints support querying all institutions, as well as looking up a single institution to retrieve up-to-date information about its health status and capabilities. This can be useful for apps whose business logic may depend on institution capabilities, such as Payment Initiation. API-provided institution health data can also be used for in-app UIs. For example, Personal Financial Management (PFM) apps can help set user expectations around data availability by showing dashboard data displaying the health of a user's connected institutions, in conjunction with personalized Item last updated data from /item/get.

    For non-programmatic access to institution information, the status dashboard provides a browsable view of institutions, supported products, and institution health.

    Institution coverage

    To see which institutions are supported, or to look up the status of a specific institution, use the Institution status dashboard. You can also query this information programmatically via the /institutions/get and /institutions/search endpoints.

    To see which institutions support a particular product, use /institutions/get and specify the product in the options.products array. For Transfer coverage, use auth as the product. For Bank Income coverage, use income_verification.

    Plaid supports over 12,000 institutions across North America and Europe.

    By default, you receive access to institutions in all countries in Sandbox and Development, and to United States and Canada in Production. To gain access to additional countries in Production, file a product access Support ticket.

    For a list of which products are supported for each country, see Global coverage. For Identity Verification, over 200 countries are supported; for more details, see Identity Verification supported countries.

    For details of institution coverage in Europe, see the Help Center.

    Endpoints
    /institutions/getGet a list of all supported institutions meeting specified criteria
    /institutions/get_by_idGet details about a specific institution
    /institutions/searchLook up an institution by name

    Endpoints

    /institutions/get

    Get details of all supported institutions

    Returns a JSON response containing details on all financial institutions currently supported by Plaid. Because Plaid supports thousands of institutions, results are paginated.
    If there is no overlap between an institution’s enabled products and a client’s enabled products, then the institution will be filtered out from the response. As a result, the number of institutions returned may not match the count specified in the call.

    institutions/get

    Request fields and example

    client_id
    string
    Your Plaid API client_id. The client_id is required and may be provided either in the PLAID-CLIENT-ID header or as part of a request body.
    secret
    string
    Your Plaid API secret. The secret is required and may be provided either in the PLAID-SECRET header or as part of a request body.
    count
    requiredinteger
    The total number of Institutions to return.

    Minimum: 1
    Maximum: 500
    offset
    requiredinteger
    The number of Institutions to skip.

    Minimum: 0
    country_codes
    required[string]
    Specify which country or countries to include institutions from, 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.


    Min items: 1
    Possible values: US, GB, ES, NL, FR, IE, CA, DE, IT, PL, DK, NO, SE, EE, LT, LV, PT, BE
    options
    object
    An optional object to filter /institutions/get results.
    products
    [string]
    Filter the Institutions based on which products they support.

    Min items: 1
    Possible values: assets, auth, balance, employment, identity, income_verification, identity_verification, investments, liabilities, payment_initiation, standing_orders, transactions, transfer
    routing_numbers
    [string]
    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
    boolean
    Limit results to institutions with or without OAuth login flows. Note that institutions will have oauth set to true if some Items associated with that institution are required to use OAuth flows; institutions in a state of migration to OAuth will have the oauth attribute set to true.
    include_optional_metadata
    boolean
    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
    boolean
    When true, returns metadata related to the Auth product indicating which auth methods are supported.

    Default: false
    include_payment_initiation_metadata
    boolean
    When true, returns metadata related to the Payment Initiation product indicating which payment configurations are supported.

    Default: false
    Select group for content switcher
    Select Language
    1// Pull institutions
    2const request: InstitutionsGetRequest = {
    3 count: 10,
    4 offset: 0,
    5 country_codes: ['US'],
    6};
    7try {
    8 const response = await plaidClient.institutionsGet(request);
    9 const institutions = response.data.institutions;
    10} catch (error) {
    11 // Handle error
    12}
    institutions/get

    Response fields and example

    institutions
    [object]
    A list of Plaid institutions
    institution_id
    string
    Unique identifier for the institution. Note that the same institution may have multiple records, each with different institution IDs; for example, if the institution has migrated to OAuth, there may be separate institution_ids for the OAuth and non-OAuth versions of the institution. Institutions that operate in different countries or with multiple login portals may also have separate institution_ids for each country or portal.
    name
    string
    The official name of the institution.
    products
    [string]
    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.

    Possible values: assets, auth, balance, identity, identity_match, investments, investments_auth, liabilities, payment_initiation, identity_verification, transactions, credit_details, income, income_verification, deposit_switch, standing_orders, transfer, employment, recurring_transactions, signal, statements, processor_payments, processor_identity
    country_codes
    [string]
    A list of the country codes supported by the institution.

    Possible values: US, GB, ES, NL, FR, IE, CA, DE, IT, PL, DK, NO, SE, EE, LT, LV, PT, BE
    url
    nullablestring
    The URL for the institution's website
    primary_color
    nullablestring
    Hexadecimal representation of the primary color used by the institution
    logo
    nullablestring
    Base64 encoded representation of the institution's logo, returned as a base64 encoded 152x152 PNG. Not all institutions' logos are available.
    routing_numbers
    [string]
    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.
    dtc_numbers
    [string]
    A partial list of DTC numbers associated with the institution.
    oauth
    boolean
    Indicates that the institution has an OAuth login flow. This will be true if OAuth is supported for any Items associated with the institution, even if the institution also supports non-OAuth connections.
    status
    nullableobject
    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.
    item_logins
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    transactions_updates
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    auth
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    identity
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    investments_updates
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    liabilities_updates
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    liabilities
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    investments
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    health_incidents
    nullable[object]
    Details of recent health incidents associated with the institution.
    start_date
    string
    The start date of the incident, in ISO 8601 format, e.g. "2020-10-30T15:26:48Z".

    Format: date-time
    end_date
    nullablestring
    The end date of the incident, in ISO 8601 format, e.g. "2020-10-30T15:26:48Z".

    Format: date-time
    title
    string
    The title of the incident
    incident_updates
    [object]
    Updates on the health incident.
    description
    string
    The content of the update.
    status
    string
    The status of the incident.

    Possible values: INVESTIGATING, IDENTIFIED, SCHEDULED, RESOLVED, UNKNOWN
    updated_date
    string
    The date when the update was published, in ISO 8601 format, e.g. "2020-10-30T15:26:48Z".

    Format: date-time
    payment_initiation_metadata
    nullableobject
    Metadata that captures what specific payment configurations an institution supports when making Payment Initiation requests.
    supports_international_payments
    boolean
    Indicates whether the institution supports payments from a different country.
    supports_sepa_instant
    boolean
    Indicates whether the institution supports SEPA Instant payments.
    maximum_payment_amount
    object
    A mapping of currency to maximum payment amount (denominated in the smallest unit of currency) supported by the institution.
    Example: {"GBP": "10000"}
    supports_refund_details
    boolean
    Indicates whether the institution supports returning refund details when initiating a payment.
    standing_order_metadata
    nullableobject
    Metadata specifically related to valid Payment Initiation standing order configurations for the institution.
    supports_standing_order_end_date
    boolean
    Indicates whether the institution supports closed-ended standing orders by providing an end date.
    supports_standing_order_negative_execution_days
    boolean
    This is only applicable to MONTHLY standing orders. Indicates whether the institution supports negative integers (-1 to -5) for setting up a MONTHLY standing order relative to the end of the month.
    valid_standing_order_intervals
    [string]
    A list of the valid standing order intervals supported by the institution.

    Possible values: WEEKLY, MONTHLY
    Min length: 1
    auth_metadata
    nullableobject
    Metadata that captures information about the Auth features of an institution.
    supported_methods
    nullableobject
    Metadata specifically related to which auth methods an institution supports.
    instant_auth
    boolean
    Indicates if instant auth is supported.
    instant_match
    boolean
    Indicates if instant match is supported.
    automated_micro_deposits
    boolean
    Indicates if automated microdeposits are supported.
    instant_micro_deposits
    boolean
    Indicates if instant microdeposits are supported.
    total
    integer
    The total number of institutions available via this endpoint
    request_id
    string
    A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
    1{
    2 "institutions": [
    3 {
    4 "country_codes": [
    5 "US"
    6 ],
    7 "institution_id": "ins_1",
    8 "name": "Bank of America",
    9 "products": [
    10 "assets",
    11 "auth",
    12 "balance",
    13 "transactions",
    14 "identity",
    15 "liabilities"
    16 ],
    17 "routing_numbers": [
    18 "011000138",
    19 "011200365",
    20 "011400495"
    21 ],
    22 "dtc_numbers": [
    23 "2236",
    24 "0955",
    25 "1367"
    26 ],
    27 "oauth": false,
    28 "status": {
    29 "item_logins": {
    30 "status": "HEALTHY",
    31 "last_status_change": "2019-02-15T15:53:00Z",
    32 "breakdown": {
    33 "success": 0.9,
    34 "error_plaid": 0.01,
    35 "error_institution": 0.09
    36 }
    37 },
    38 "transactions_updates": {
    39 "status": "HEALTHY",
    40 "last_status_change": "2019-02-12T08:22:00Z",
    41 "breakdown": {
    42 "success": 0.95,
    43 "error_plaid": 0.02,
    44 "error_institution": 0.03,
    45 "refresh_interval": "NORMAL"
    46 }
    47 },
    48 "auth": {
    49 "status": "HEALTHY",
    50 "last_status_change": "2019-02-15T15:53:00Z",
    51 "breakdown": {
    52 "success": 0.91,
    53 "error_plaid": 0.01,
    54 "error_institution": 0.08
    55 }
    56 },
    57 "identity": {
    58 "status": "DEGRADED",
    59 "last_status_change": "2019-02-15T15:50:00Z",
    60 "breakdown": {
    61 "success": 0.42,
    62 "error_plaid": 0.08,
    63 "error_institution": 0.5
    64 }
    65 },
    66 "investments": {
    67 "status": "HEALTHY",
    68 "last_status_change": "2019-02-15T15:53:00Z",
    69 "breakdown": {
    70 "success": 0.89,
    71 "error_plaid": 0.02,
    72 "error_institution": 0.09
    73 },
    74 "liabilities": {
    75 "status": "HEALTHY",
    76 "last_status_change": "2019-02-15T15:53:00Z",
    77 "breakdown": {
    78 "success": 0.89,
    79 "error_plaid": 0.02,
    80 "error_institution": 0.09
    81 }
    82 }
    83 },
    84 "investments_updates": {
    85 "status": "HEALTHY",
    86 "last_status_change": "2019-02-12T08:22:00Z",
    87 "breakdown": {
    88 "success": 0.95,
    89 "error_plaid": 0.02,
    90 "error_institution": 0.03,
    91 "refresh_interval": "NORMAL"
    92 }
    93 },
    94 "liabilities_updates": {
    95 "status": "HEALTHY",
    96 "last_status_change": "2019-02-12T08:22:00Z",
    97 "breakdown": {
    98 "success": 0.95,
    99 "error_plaid": 0.02,
    100 "error_institution": 0.03,
    101 "refresh_interval": "NORMAL"
    102 }
    103 }
    104 }
    105 }
    106 ],
    107 "request_id": "tbFyCEqkU774ZGG",
    108 "total": 11384
    109}
    Was this helpful?

    /institutions/get_by_id

    Get details of an institution

    Returns a JSON response containing details on a specified financial institution currently supported by Plaid.
    Versioning note: API versions 2019-05-29 and earlier allow use of the public_key parameter instead of the client_id and secret to authenticate to this endpoint. The public_key has been deprecated; all customers are encouraged to use client_id and secret instead.

    institutions/get_by_id

    Request fields and example

    client_id
    string
    Your Plaid API client_id. The client_id is required and may be provided either in the PLAID-CLIENT-ID header or as part of a request body.
    secret
    string
    Your Plaid API secret. The secret is required and may be provided either in the PLAID-SECRET header or as part of a request body.
    institution_id
    requiredstring
    The ID of the institution to get details about

    Min length: 1
    country_codes
    required[string]
    Specify which country or countries to include institutions from, 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.

    Possible values: US, GB, ES, NL, FR, IE, CA, DE, IT, PL, DK, NO, SE, EE, LT, LV, PT, BE
    options
    object
    Specifies optional parameters for /institutions/get_by_id. If provided, must not be null.
    include_optional_metadata
    boolean
    When true, return an institution's logo, brand color, and URL. When available, the bank's logo is returned as a base64 encoded 152x152 PNG, the brand color is in hexadecimal format. The default value is false.
    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.


    Default: false
    include_status
    boolean
    If true, the response will include status information about the institution. Default value is false.

    Default: false
    include_auth_metadata
    boolean
    When true, returns metadata related to the Auth product indicating which auth methods are supported.

    Default: false
    include_payment_initiation_metadata
    boolean
    When true, returns metadata related to the Payment Initiation product indicating which payment configurations are supported.

    Default: false
    Select group for content switcher
    Select Language
    1const request: InstitutionsGetByIdRequest = {
    2 institution_id: institutionID,
    3 country_codes: ['US'],
    4};
    5try {
    6 const response = await plaidClient.institutionsGetById(request);
    7 const institution = response.data.institution;
    8} catch (error) {
    9 // Handle error
    10}
    institutions/get_by_id

    Response fields and example

    institution
    object
    Details relating to a specific financial institution
    institution_id
    string
    Unique identifier for the institution. Note that the same institution may have multiple records, each with different institution IDs; for example, if the institution has migrated to OAuth, there may be separate institution_ids for the OAuth and non-OAuth versions of the institution. Institutions that operate in different countries or with multiple login portals may also have separate institution_ids for each country or portal.
    name
    string
    The official name of the institution.
    products
    [string]
    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.

    Possible values: assets, auth, balance, identity, identity_match, investments, investments_auth, liabilities, payment_initiation, identity_verification, transactions, credit_details, income, income_verification, deposit_switch, standing_orders, transfer, employment, recurring_transactions, signal, statements, processor_payments, processor_identity
    country_codes
    [string]
    A list of the country codes supported by the institution.

    Possible values: US, GB, ES, NL, FR, IE, CA, DE, IT, PL, DK, NO, SE, EE, LT, LV, PT, BE
    url
    nullablestring
    The URL for the institution's website
    primary_color
    nullablestring
    Hexadecimal representation of the primary color used by the institution
    logo
    nullablestring
    Base64 encoded representation of the institution's logo, returned as a base64 encoded 152x152 PNG. Not all institutions' logos are available.
    routing_numbers
    [string]
    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.
    dtc_numbers
    [string]
    A partial list of DTC numbers associated with the institution.
    oauth
    boolean
    Indicates that the institution has an OAuth login flow. This will be true if OAuth is supported for any Items associated with the institution, even if the institution also supports non-OAuth connections.
    status
    nullableobject
    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.
    item_logins
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    transactions_updates
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    auth
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    identity
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    investments_updates
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    liabilities_updates
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    liabilities
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    investments
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    health_incidents
    nullable[object]
    Details of recent health incidents associated with the institution.
    start_date
    string
    The start date of the incident, in ISO 8601 format, e.g. "2020-10-30T15:26:48Z".

    Format: date-time
    end_date
    nullablestring
    The end date of the incident, in ISO 8601 format, e.g. "2020-10-30T15:26:48Z".

    Format: date-time
    title
    string
    The title of the incident
    incident_updates
    [object]
    Updates on the health incident.
    description
    string
    The content of the update.
    status
    string
    The status of the incident.

    Possible values: INVESTIGATING, IDENTIFIED, SCHEDULED, RESOLVED, UNKNOWN
    updated_date
    string
    The date when the update was published, in ISO 8601 format, e.g. "2020-10-30T15:26:48Z".

    Format: date-time
    payment_initiation_metadata
    nullableobject
    Metadata that captures what specific payment configurations an institution supports when making Payment Initiation requests.
    supports_international_payments
    boolean
    Indicates whether the institution supports payments from a different country.
    supports_sepa_instant
    boolean
    Indicates whether the institution supports SEPA Instant payments.
    maximum_payment_amount
    object
    A mapping of currency to maximum payment amount (denominated in the smallest unit of currency) supported by the institution.
    Example: {"GBP": "10000"}
    supports_refund_details
    boolean
    Indicates whether the institution supports returning refund details when initiating a payment.
    standing_order_metadata
    nullableobject
    Metadata specifically related to valid Payment Initiation standing order configurations for the institution.
    supports_standing_order_end_date
    boolean
    Indicates whether the institution supports closed-ended standing orders by providing an end date.
    supports_standing_order_negative_execution_days
    boolean
    This is only applicable to MONTHLY standing orders. Indicates whether the institution supports negative integers (-1 to -5) for setting up a MONTHLY standing order relative to the end of the month.
    valid_standing_order_intervals
    [string]
    A list of the valid standing order intervals supported by the institution.

    Possible values: WEEKLY, MONTHLY
    Min length: 1
    auth_metadata
    nullableobject
    Metadata that captures information about the Auth features of an institution.
    supported_methods
    nullableobject
    Metadata specifically related to which auth methods an institution supports.
    instant_auth
    boolean
    Indicates if instant auth is supported.
    instant_match
    boolean
    Indicates if instant match is supported.
    automated_micro_deposits
    boolean
    Indicates if automated microdeposits are supported.
    instant_micro_deposits
    boolean
    Indicates if instant microdeposits are supported.
    request_id
    string
    A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
    1{
    2 "institution": {
    3 "country_codes": [
    4 "US"
    5 ],
    6 "institution_id": "ins_109512",
    7 "name": "Houndstooth Bank",
    8 "products": [
    9 "auth",
    10 "balance",
    11 "identity",
    12 "transactions"
    13 ],
    14 "routing_numbers": [
    15 "011000138",
    16 "011200365",
    17 "011400495"
    18 ],
    19 "dtc_numbers": [
    20 "2236",
    21 "0955",
    22 "1367"
    23 ],
    24 "oauth": false,
    25 "status": {
    26 "item_logins": {
    27 "status": "HEALTHY",
    28 "last_status_change": "2019-02-15T15:53:00Z",
    29 "breakdown": {
    30 "success": 0.9,
    31 "error_plaid": 0.01,
    32 "error_institution": 0.09
    33 }
    34 },
    35 "transactions_updates": {
    36 "status": "HEALTHY",
    37 "last_status_change": "2019-02-12T08:22:00Z",
    38 "breakdown": {
    39 "success": 0.95,
    40 "error_plaid": 0.02,
    41 "error_institution": 0.03,
    42 "refresh_interval": "NORMAL"
    43 }
    44 },
    45 "auth": {
    46 "status": "HEALTHY",
    47 "last_status_change": "2019-02-15T15:53:00Z",
    48 "breakdown": {
    49 "success": 0.91,
    50 "error_plaid": 0.01,
    51 "error_institution": 0.08
    52 }
    53 },
    54 "identity": {
    55 "status": "DEGRADED",
    56 "last_status_change": "2019-02-15T15:50:00Z",
    57 "breakdown": {
    58 "success": 0.42,
    59 "error_plaid": 0.08,
    60 "error_institution": 0.5
    61 }
    62 },
    63 "investments": {
    64 "status": "HEALTHY",
    65 "last_status_change": "2019-02-15T15:53:00Z",
    66 "breakdown": {
    67 "success": 0.89,
    68 "error_plaid": 0.02,
    69 "error_institution": 0.09
    70 },
    71 "liabilities": {
    72 "status": "HEALTHY",
    73 "last_status_change": "2019-02-15T15:53:00Z",
    74 "breakdown": {
    75 "success": 0.89,
    76 "error_plaid": 0.02,
    77 "error_institution": 0.09
    78 }
    79 }
    80 },
    81 "investments_updates": {
    82 "status": "HEALTHY",
    83 "last_status_change": "2019-02-12T08:22:00Z",
    84 "breakdown": {
    85 "success": 0.95,
    86 "error_plaid": 0.02,
    87 "error_institution": 0.03,
    88 "refresh_interval": "NORMAL"
    89 }
    90 },
    91 "liabilities_updates": {
    92 "status": "HEALTHY",
    93 "last_status_change": "2019-02-12T08:22:00Z",
    94 "breakdown": {
    95 "success": 0.95,
    96 "error_plaid": 0.02,
    97 "error_institution": 0.03,
    98 "refresh_interval": "NORMAL"
    99 }
    100 }
    101 },
    102 "primary_color": "#004966",
    103 "url": "https://plaid.com",
    104 "logo": null
    105 },
    106 "request_id": "m8MDnv9okwxFNBV"
    107}
    Was this helpful?

    /institutions/search

    Search institutions

    Returns a JSON response containing details for institutions that match the query parameters, up to a maximum of ten institutions per query.
    Versioning note: API versions 2019-05-29 and earlier allow use of the public_key parameter instead of the client_id and secret parameters to authenticate to this endpoint. The public_key parameter has since been deprecated; all customers are encouraged to use client_id and secret instead.

    institutions/search

    Request fields and example

    client_id
    string
    Your Plaid API client_id. The client_id is required and may be provided either in the PLAID-CLIENT-ID header or as part of a request body.
    secret
    string
    Your Plaid API secret. The secret is required and may be provided either in the PLAID-SECRET header or as part of a request body.
    query
    requiredstring
    The search query. Institutions with names matching the query are returned

    Min length: 1
    products
    [string]
    Filter the Institutions based on whether they support all products listed in products. Provide null to get institutions regardless of supported products. Note that when auth is specified as a product, if you are enabled for Instant Match or Automated Micro-deposits, institutions that support those products will be returned even if auth is not present in their product array.

    Min items: 1
    Possible values: assets, auth, balance, employment, identity, income_verification, investments, liabilities, identity_verification, payment_initiation, standing_orders, transactions, transfer
    country_codes
    required[string]
    Specify which country or countries to include institutions from, 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.

    Possible values: US, GB, ES, NL, FR, IE, CA, DE, IT, PL, DK, NO, SE, EE, LT, LV, PT, BE
    options
    object
    An optional object to filter /institutions/search results.
    oauth
    boolean
    Limit results to institutions with or without OAuth login flows. Note that institutions will have oauth set to true if some Items associated with that institution are required to use OAuth flows; institutions in a state of migration to OAuth will have the oauth attribute set to true.
    include_optional_metadata
    boolean
    When true, return the institution's homepage URL, logo and primary brand color.
    include_auth_metadata
    boolean
    When true, returns metadata related to the Auth product indicating which auth methods are supported.

    Default: false
    include_payment_initiation_metadata
    boolean
    When true, returns metadata related to the Payment Initiation product indicating which payment configurations are supported.

    Default: false
    payment_initiation
    object
    Additional options that will be used to filter institutions by various Payment Initiation configurations.
    payment_id
    string
    A unique ID identifying the payment
    consent_id
    string
    A unique ID identifying the payment consent
    Select group for content switcher
    Select Language
    1const request: InstitutionsSearchRequest = {
    2 query: institutionID,
    3 products: ['transactions'],
    4 country_codes: ['US'],
    5};
    6try {
    7 const response = await plaidClient.institutionsSearch(request);
    8 const institutions = response.data.institutions;
    9} catch (error) {
    10 // Handle error
    11}
    institutions/search

    Response fields and example

    institutions
    [object]
    An array of institutions matching the search criteria
    institution_id
    string
    Unique identifier for the institution. Note that the same institution may have multiple records, each with different institution IDs; for example, if the institution has migrated to OAuth, there may be separate institution_ids for the OAuth and non-OAuth versions of the institution. Institutions that operate in different countries or with multiple login portals may also have separate institution_ids for each country or portal.
    name
    string
    The official name of the institution.
    products
    [string]
    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.

    Possible values: assets, auth, balance, identity, identity_match, investments, investments_auth, liabilities, payment_initiation, identity_verification, transactions, credit_details, income, income_verification, deposit_switch, standing_orders, transfer, employment, recurring_transactions, signal, statements, processor_payments, processor_identity
    country_codes
    [string]
    A list of the country codes supported by the institution.

    Possible values: US, GB, ES, NL, FR, IE, CA, DE, IT, PL, DK, NO, SE, EE, LT, LV, PT, BE
    url
    nullablestring
    The URL for the institution's website
    primary_color
    nullablestring
    Hexadecimal representation of the primary color used by the institution
    logo
    nullablestring
    Base64 encoded representation of the institution's logo, returned as a base64 encoded 152x152 PNG. Not all institutions' logos are available.
    routing_numbers
    [string]
    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.
    dtc_numbers
    [string]
    A partial list of DTC numbers associated with the institution.
    oauth
    boolean
    Indicates that the institution has an OAuth login flow. This will be true if OAuth is supported for any Items associated with the institution, even if the institution also supports non-OAuth connections.
    status
    nullableobject
    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.
    item_logins
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    transactions_updates
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    auth
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    identity
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    investments_updates
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    liabilities_updates
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    liabilities
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    investments
    nullableobject
    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.
    status
    deprecatedstring
    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


    Possible values: HEALTHY, DEGRADED, DOWN
    last_status_change
    string
    ISO 8601 formatted timestamp of the last status change for the institution.

    Format: date-time
    breakdown
    object
    A detailed breakdown of the institution's performance for a request type. The values for success, error_plaid, and error_institution sum to 1. The time range used for calculating the breakdown may range from the most recent few minutes to the past six hours. In general, smaller institutions will show status that was calculated over a longer period of time. For Investment updates, which are refreshed less frequently, the period assessed may be 24 hours or more. For more details, see Institution status details.
    success
    number
    The percentage of login attempts that are successful, expressed as a decimal.

    Format: double
    error_plaid
    number
    The percentage of logins that are failing due to an internal Plaid issue, expressed as a decimal.

    Format: double
    error_institution
    number
    The percentage of logins that are failing due to an issue in the institution's system, expressed as a decimal.

    Format: double
    refresh_interval
    string
    The refresh_interval may be DELAYED or STOPPED even when the success rate is high. This value is only returned for Transactions status breakdowns.

    Possible values: NORMAL, DELAYED, STOPPED
    health_incidents
    nullable[object]
    Details of recent health incidents associated with the institution.
    start_date
    string
    The start date of the incident, in ISO 8601 format, e.g. "2020-10-30T15:26:48Z".

    Format: date-time
    end_date
    nullablestring
    The end date of the incident, in ISO 8601 format, e.g. "2020-10-30T15:26:48Z".

    Format: date-time
    title
    string
    The title of the incident
    incident_updates
    [object]
    Updates on the health incident.
    description
    string
    The content of the update.
    status
    string
    The status of the incident.

    Possible values: INVESTIGATING, IDENTIFIED, SCHEDULED, RESOLVED, UNKNOWN
    updated_date
    string
    The date when the update was published, in ISO 8601 format, e.g. "2020-10-30T15:26:48Z".

    Format: date-time
    payment_initiation_metadata
    nullableobject
    Metadata that captures what specific payment configurations an institution supports when making Payment Initiation requests.
    supports_international_payments
    boolean
    Indicates whether the institution supports payments from a different country.
    supports_sepa_instant
    boolean
    Indicates whether the institution supports SEPA Instant payments.
    maximum_payment_amount
    object
    A mapping of currency to maximum payment amount (denominated in the smallest unit of currency) supported by the institution.
    Example: {"GBP": "10000"}
    supports_refund_details
    boolean
    Indicates whether the institution supports returning refund details when initiating a payment.
    standing_order_metadata
    nullableobject
    Metadata specifically related to valid Payment Initiation standing order configurations for the institution.
    supports_standing_order_end_date
    boolean
    Indicates whether the institution supports closed-ended standing orders by providing an end date.
    supports_standing_order_negative_execution_days
    boolean
    This is only applicable to MONTHLY standing orders. Indicates whether the institution supports negative integers (-1 to -5) for setting up a MONTHLY standing order relative to the end of the month.
    valid_standing_order_intervals
    [string]
    A list of the valid standing order intervals supported by the institution.

    Possible values: WEEKLY, MONTHLY
    Min length: 1
    auth_metadata
    nullableobject
    Metadata that captures information about the Auth features of an institution.
    supported_methods
    nullableobject
    Metadata specifically related to which auth methods an institution supports.
    instant_auth
    boolean
    Indicates if instant auth is supported.
    instant_match
    boolean
    Indicates if instant match is supported.
    automated_micro_deposits
    boolean
    Indicates if automated microdeposits are supported.
    instant_micro_deposits
    boolean
    Indicates if instant microdeposits are supported.
    request_id
    string
    A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.
    1{
    2 "institutions": [
    3 {
    4 "country_codes": [
    5 "US"
    6 ],
    7 "institution_id": "ins_118923",
    8 "name": "Red Platypus Bank - Red Platypus Bank",
    9 "products": [
    10 "assets",
    11 "auth",
    12 "balance",
    13 "transactions",
    14 "identity"
    15 ],
    16 "routing_numbers": [
    17 "011000138",
    18 "011200365",
    19 "011400495"
    20 ],
    21 "dtc_numbers": [
    22 "2236",
    23 "0955",
    24 "1367"
    25 ],
    26 "oauth": false,
    27 "status": {
    28 "item_logins": {
    29 "status": "HEALTHY",
    30 "last_status_change": "2019-02-15T15:53:00Z",
    31 "breakdown": {
    32 "success": 0.9,
    33 "error_plaid": 0.01,
    34 "error_institution": 0.09
    35 }
    36 },
    37 "transactions_updates": {
    38 "status": "HEALTHY",
    39 "last_status_change": "2019-02-12T08:22:00Z",
    40 "breakdown": {
    41 "success": 0.95,
    42 "error_plaid": 0.02,
    43 "error_institution": 0.03,
    44 "refresh_interval": "NORMAL"
    45 }
    46 },
    47 "auth": {
    48 "status": "HEALTHY",
    49 "last_status_change": "2019-02-15T15:53:00Z",
    50 "breakdown": {
    51 "success": 0.91,
    52 "error_plaid": 0.01,
    53 "error_institution": 0.08
    54 }
    55 },
    56 "identity": {
    57 "status": "DEGRADED",
    58 "last_status_change": "2019-02-15T15:50:00Z",
    59 "breakdown": {
    60 "success": 0.42,
    61 "error_plaid": 0.08,
    62 "error_institution": 0.5
    63 }
    64 },
    65 "investments": {
    66 "status": "HEALTHY",
    67 "last_status_change": "2019-02-15T15:53:00Z",
    68 "breakdown": {
    69 "success": 0.89,
    70 "error_plaid": 0.02,
    71 "error_institution": 0.09
    72 },
    73 "liabilities": {
    74 "status": "HEALTHY",
    75 "last_status_change": "2019-02-15T15:53:00Z",
    76 "breakdown": {
    77 "success": 0.89,
    78 "error_plaid": 0.02,
    79 "error_institution": 0.09
    80 }
    81 }
    82 },
    83 "investments_updates": {
    84 "status": "HEALTHY",
    85 "last_status_change": "2019-02-12T08:22:00Z",
    86 "breakdown": {
    87 "success": 0.95,
    88 "error_plaid": 0.02,
    89 "error_institution": 0.03,
    90 "refresh_interval": "NORMAL"
    91 }
    92 },
    93 "liabilities_updates": {
    94 "status": "HEALTHY",
    95 "last_status_change": "2019-02-12T08:22:00Z",
    96 "breakdown": {
    97 "success": 0.95,
    98 "error_plaid": 0.02,
    99 "error_institution": 0.03,
    100 "refresh_interval": "NORMAL"
    101 }
    102 }
    103 }
    104 }
    105 ],
    106 "request_id": "Ggmk0enW4smO2Tp"
    107}
    Was this helpful?

    Webhooks

    Institution status alerts are configured within the developer dashboard. In the dashboard, you can choose to receive alerts as either emails or webhooks.

    All dashboard-configured institution status alerts will have type DASHBOARD_CONFIGURED_ALERT.

    INSTITUTION_STATUS_ALERT_TRIGGERED

    Fired when institution status meets the conditions configured in the developer dashboard.

    webhook_type
    string
    DASHBOARD_CONFIGURED_ALERT
    webhook_code
    string
    INSTITUTION_STATUS_ALERT_TRIGGERED
    institution_id
    string
    The ID of the associated institution.
    institution_overall_success_rate
    number
    The global success rate of the institution, calculated based on item add health.

    Format: double
    environment
    string
    The Plaid environment the webhook was sent from

    Possible values: development, sandbox, production
    1{
    2 "webhook_type": "DASHBOARD_CONFIGURED_ALERT",
    3 "webhook_code": "INSTITUTION_STATUS_ALERT_TRIGGERED",
    4 "institution_id": "ins_3",
    5 "institution_overall_success_rate": 0.9,
    6 "environment": "production"
    7}
    Was this helpful?
    Developer community
    GitHub
    GitHub
    Stack Overflow
    Stack Overflow
    YouTube
    YouTube
    Discord
    Discord