plaid

Exchange public token for an access token

Exchange a Link public_token for an API access_token. Link hands off the public_token client-side via the onSuccess callback once a user has successfully created an Item. The public_token is ephemeral and expires after 30 minutes. An access_token does not expire, but can be revoked by calling /item/remove.

The response also includes an item_id that should be stored with the access_token. The item_id is used to identify an Item in a webhook. The item_id can also be retrieved by making an /item/get request.

post/item/public_token/exchange

Request body

client_idstring

Your Plaid API client_id. The client_id is required and may be provided either in the PLAID-CLIENT-ID header or as part of a request body.

secretstring

Your Plaid API secret. The secret is required and may be provided either in the PLAID-SECRET header or as part of a request body.

public_tokenstring required

Your public_token, obtained from the Link onSuccess callback or /sandbox/public_token/create.

Response

OK

access_tokenstring required

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

item_idstring required

The item_id value of the Item associated with the returned access_token

request_idstring required

A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.

Changes

Changed in 5 of the 52 revisions of this API.153

    • added the new ASSETS_ERROR enum value to the error_type response property for the response status default

      response-property-enum-value-added

    • added the new CRA_MONITORING_ERROR enum value to the error_type response property for the response status default

      response-property-enum-value-added

    • added the new CREDIT_PROFILE_REPORT_ERROR enum value to the error_type response property for the response status default

      response-property-enum-value-added

    • added the new ENCOMPASS_ERROR enum value to the error_type response property for the response status default

      response-property-enum-value-added

    • added the new ENRICH_ERROR enum value to the error_type response property for the response status default

      response-property-enum-value-added

    • added the new FRAUD_INSIGHTS_ERROR enum value to the error_type response property for the response status default

      response-property-enum-value-added

    • added the new FREDDIE_MAC_ERROR enum value to the error_type response property for the response status default

      response-property-enum-value-added

    • added the new LINK_DELIVERY_ERROR enum value to the error_type response property for the response status default

      response-property-enum-value-added

    • added the new PROFILE_ERROR enum value to the error_type response property for the response status default

      response-property-enum-value-added

    • added the new RECURRING_TRANSACTIONS_ERROR enum value to the error_type response property for the response status default

      response-property-enum-value-added

    • added the new STATEMENTS_ERROR enum value to the error_type response property for the response status default

      response-property-enum-value-added

    • added the new TRANSFER_RECURRING_ERROR enum value to the error_type response property for the response status default

      response-property-enum-value-added

    • added the new TRANSFER_REFUND_ERROR enum value to the error_type response property for the response status default

      response-property-enum-value-added

    This revision also has 3 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

    • added the new IDEMPOTENCY_ERROR enum value to the error_type response property for the response status default

      response-property-enum-value-added

    • added the new BASE_REPORT_ERROR enum value to the error_type response property for the response status default

      response-property-enum-value-added

    This revision also has 8 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

    • added the optional property provided_account_subtypes to the response with the default status

      response-optional-property-added

    • added the optional property required_account_subtypes to the response with the default status

      response-optional-property-added

    This revision also has 4 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

    • removed the IDENTITY_ERROR enum value from the error_type response property for the response status default

      response-property-enum-value-removed