Plaid Item API

The Plaid Item API is a tool that allows developers to retrieve detailed information about a user's financial accounts and transactions. By connecting to a user's bank or credit card account through Plaid's platform, developers can access real-time data such as account balances, transaction history, and account details. This information can then be used to build tailored financial apps and services, provide personalized insights and recommendations, and streamline the overall financial management process for users. The Plaid Item API also offers advanced security features, ensuring that sensitive financial data is protected and secure.

OpenAPI Specification

plaid-item--openapi-original.yml Raw ↑
openapi: 3.0.0
servers:
  - description: Production
    url: https://production.plaid.com
  - description: Development
    url: https://development.plaid.com
  - description: Sandbox
    url: https://sandbox.plaid.com
info:
  title: 'Plaid item/'
  version: 2020-09-14_1.517.0
  description: Needs description.
  contact:
    name: Plaid Developer Team
    url: https://plaid.com
  termsOfService: https://plaid.com/legal/
tags:
  - name: Plaid
security:
  - clientId: []
    secret: []
    plaidVersion: []
paths:
  /item/activity/list:
    x-plaid-business-unit-context: BUSINESS_UNIT_PLAID
    post:
      tags:
        - Plaid
      summary: Plaid List a historical log of user consent events
      operationId: itemActivityList
      description: List a historical log of user consent events
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemActivityListResponse'
              examples:
                example-1:
                  value:
                    request_id: m8MDnv9okwxFNBV
                    activities: []
                    last_data_access_times: []
        default:
          description: Error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlaidError'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ItemActivityListRequest'
  /item/application/list:
    x-plaid-business-unit-context: BUSINESS_UNIT_PLAID
    post:
      tags:
        - Plaid
      summary: Plaid List a user’s connected applications
      operationId: itemApplicationList
      description: List a user’s connected applications
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemApplicationListResponse'
        default:
          description: Error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlaidError'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ItemApplicationListRequest'
  /item/application/unlink:
    x-plaid-business-unit-context: BUSINESS_UNIT_PLAID
    post:
      tags:
        - Plaid
      summary: Plaid Unlink a user’s connected application
      externalDocs:
        url: none
      operationId: itemApplicationUnlink
      description: >-
        Unlink a user’s connected application. On an unlink request, Plaid will
        immediately revoke the Application’s access to the User’s data.  The
        User will have to redo the OAuth authentication process in order to
        restore functionality.


        This endpoint only removes ongoing data access permissions, therefore
        the User will need to reach out to the Application itself in order to
        disable and delete their account and delete any data that the
        Application already received (if the Application does not do so by
        default).


        This endpoint should be called in real time as the User is unlinking an
        Application, and should not be batched in order to ensure that the
        change is reflected as soon as possible.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemApplicationUnlinkResponse'
              examples:
                example-1:
                  value:
                    request_id: m8MDnv9okwxFNBV
        default:
          description: Error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlaidError'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ItemApplicationUnlinkRequest'
  /item/application/scopes/update:
    x-plaid-business-unit-context: BUSINESS_UNIT_PLAID
    post:
      tags:
        - Plaid
      summary: Plaid Update the scopes of access for a particular application
      operationId: itemApplicationScopesUpdate
      description: >-
        Enable consumers to update product access on selected accounts for an
        application.
      responses:
        '200':
          description: success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemApplicationScopesUpdateResponse'
        default:
          description: Error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlaidError'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ItemApplicationScopesUpdateRequest'
  /item/get:
    x-plaid-business-unit-context: BUSINESS_UNIT_PLAID
    post:
      tags:
        - Plaid
      summary: Plaid Retrieve an Item
      externalDocs:
        url: /api/items/#itemget
      operationId: itemGet
      description: Returns information about the status of an Item.
      responses:
        '200':
          description: success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemGetResponse'
              examples:
                example-1:
                  value:
                    item:
                      available_products:
                        - balance
                        - auth
                      billed_products:
                        - identity
                        - transactions
                      error:
                      institution_id: ins_109508
                      item_id: Ed6bjNrDLJfGvZWwnkQlfxwoNz54B5C97ejBr
                      update_type: background
                      webhook: https://plaid.com/example/hook
                      consent_expiration_time:
                    status:
                      transactions:
                        last_successful_update: '2019-02-15T15:52:39Z'
                        last_failed_update: '2019-01-22T04:32:00Z'
                      last_webhook:
                        sent_at: '2019-02-15T15:53:00Z'
                        code_sent: DEFAULT_UPDATE
                    request_id: m8MDnv9okwxFNBV
        default:
          description: Error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlaidError'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ItemGetRequest'
        description: ''
  /item/remove:
    x-plaid-business-unit-context: BUSINESS_UNIT_PLAID
    post:
      tags:
        - Plaid
      summary: Plaid Remove an Item
      externalDocs:
        url: /api/items/#itemremove
      operationId: itemRemove
      description: >-
        The `/item/remove` endpoint allows you to remove an Item. Once removed,
        the `access_token`, as well as any processor tokens or bank account
        tokens associated with the Item, is no longer valid and cannot be used
        to access any data that was associated with the Item.


        Removing an Item does not affect any Asset Reports or Audit Copies you
        have already created, which will remain accessible until you remove
        access to them specifically using the `/asset_report/remove` endpoint.


        Note that in the Development environment, issuing an `/item/remove`  request will not decrement your live credential count. To increase your
        credential account in Development, contact Support.


        Also note that for certain OAuth-based institutions, an Item removed via
        `/item/remove` may still show as an active connection in the
        institution's OAuth permission manager.


        API versions 2019-05-29 and earlier return a `removed` boolean as part
        of the response.
      responses:
        '200':
          description: success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemRemoveResponse'
              examples:
                example-1:
                  value:
                    request_id: m8MDnv9okwxFNBV
        default:
          description: Error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlaidError'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ItemRemoveRequest'
        description: ''
  /sandbox/item/fire_webhook:
    x-plaid-business-unit-context: BUSINESS_UNIT_PLAID
    post:
      tags:
        - Plaid
      summary: Plaid Fire a test webhook
      externalDocs:
        url: /api/sandbox/#sandboxitemfire_webhook
      operationId: sandboxItemFireWebhook
      description: >-
        The `/sandbox/item/fire_webhook` endpoint is used to test that code
        correctly handles webhooks. This endpoint can trigger the following
        webhooks:


        `DEFAULT_UPDATE`: Transactions update webhook to be fired for a given
        Sandbox Item. If the Item does not support Transactions, a
        `SANDBOX_PRODUCT_NOT_ENABLED` error will result.


        `NEW_ACCOUNTS_AVAILABLE`: Webhook to be fired for a given Sandbox Item
        created with Account Select v2.


        `AUTH_DATA_UPDATE`: Webhook to be fired for a given Sandbox Item created
        with Auth as an enabled product.


        `SMS_MICRODEPOSITS_VERIFICATION`: Fired when a given same day
        micro-deposit item is verified via SMS verification.


        `LOGIN_REPAIRED`: Fired when an Item recovers from the
        `ITEM_LOGIN_REQUIRED` without the user going through update mode in your
        app.


        `RECURRING_TRANSACTIONS_UPDATE`: Recurring Transactions webhook to be
        fired for a given Sandbox Item. If the Item does not support Recurring
        Transactions, a `SANDBOX_PRODUCT_NOT_ENABLED` error will result.


        `SYNC_UPDATES_AVAILABLE`: Transactions webhook to be fired for a given
        Sandbox Item.  If the Item does not support Transactions, a
        `SANDBOX_PRODUCT_NOT_ENABLED` error will result.


        `PRODUCT_READY`: Assets webhook to be fired when a given asset report
        has been successfully generated. If the Item does not support Assets, a
        `SANDBOX_PRODUCT_NOT_ENABLED` error will result.


        `ERROR`: Assets webhook to be fired when asset report generation has
        failed. If the Item does not support Assets, a
        `SANDBOX_PRODUCT_NOT_ENABLED` error will result.


        Note that this endpoint is provided for developer ease-of-use and is not
        required for testing webhooks; webhooks will also fire in Sandbox under
        the same conditions that they would in Production or Development (except
        for webhooks of type `TRANSFER`).
      responses:
        '200':
          description: success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SandboxItemFireWebhookResponse'
              examples:
                example-1:
                  value:
                    webhook_fired: true
                    request_id: 1vwmF5TBQwiqfwP
        default:
          description: Error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlaidError'
      requestBody:
        required: true
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SandboxItemFireWebhookRequest'
  /item/webhook/update:
    x-plaid-business-unit-context: BUSINESS_UNIT_PLAID
    post:
      tags:
        - Plaid
      summary: Plaid Update Webhook URL
      externalDocs:
        url: /api/items/#itemwebhookupdate
      operationId: itemWebhookUpdate
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemWebhookUpdateResponse'
              examples:
                example-1:
                  value:
                    item:
                      available_products:
                        - balance
                        - identity
                        - payment_initiation
                        - transactions
                      billed_products:
                        - assets
                        - auth
                      consent_expiration_time:
                      error:
                      institution_id: ins_117650
                      item_id: DWVAAPWq4RHGlEaNyGKRTAnPLaEmo8Cvq7na6
                      update_type: background
                      webhook: https://www.genericwebhookurl.com/webhook
                    request_id: vYK11LNTfRoAMbj
      description: >-
        The POST `/item/webhook/update` allows you to update the webhook URL
        associated with an Item. This request triggers a
        [`WEBHOOK_UPDATE_ACKNOWLEDGED`](https://plaid.com/docs/api/items/#webhook_update_acknowledged)
        webhook to the newly specified webhook URL.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ItemWebhookUpdateRequest'
  /item/access_token/invalidate:
    x-plaid-business-unit-context: BUSINESS_UNIT_PLAID
    post:
      tags:
        - Plaid
      summary: Plaid Invalidate access_token
      externalDocs:
        url: /api/tokens/#itemaccess_tokeninvalidate
      operationId: itemAccessTokenInvalidate
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemAccessTokenInvalidateResponse'
              examples:
                example-1:
                  value:
                    new_access_token: access-sandbox-8ab976e6-64bc-4b38-98f7-731e7a349970
                    request_id: m8MDnv9okwxFNBV
      description: >
        By default, the `access_token` associated with an Item does not expire
        and should be stored in a persistent, secure manner.


        You can use the `/item/access_token/invalidate` endpoint to rotate the
        `access_token` associated with an Item. The endpoint returns a new
        `access_token` and immediately invalidates the previous `access_token`.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ItemAccessTokenInvalidateRequest'
  /sandbox/item/reset_login:
    x-plaid-business-unit-context: BUSINESS_UNIT_PLAID
    post:
      tags:
        - Plaid
      summary: Plaid Force a Sandbox Item into an error state
      externalDocs:
        url: /api/sandbox/#sandboxitemreset_login
      operationId: sandboxItemResetLogin
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SandboxItemResetLoginResponse'
              examples:
                example-1:
                  value:
                    reset_login: true
                    request_id: m8MDnv9okwxFNBV
      description: >-
        `/sandbox/item/reset_login/` forces an Item into an
        `ITEM_LOGIN_REQUIRED` state in order to simulate an Item whose login is
        no longer valid. This makes it easy to test Link's [update
        mode](https://plaid.com/docs/link/update-mode) flow in the Sandbox
        environment.  After calling `/sandbox/item/reset_login`, You can then
        use Plaid Link update mode to restore the Item to a good state. An
        `ITEM_LOGIN_REQUIRED` webhook will also be fired after a call to this
        endpoint, if one is associated with the Item.



        In the Sandbox, Items will transition to an `ITEM_LOGIN_REQUIRED` error
        state automatically after 30 days, even if this endpoint is not called.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SandboxItemResetLoginRequest'
  /sandbox/item/set_verification_status:
    x-plaid-business-unit-context: BUSINESS_UNIT_PLAID
    post:
      tags:
        - Plaid
      summary: Plaid Set verification status for Sandbox account
      externalDocs:
        url: /api/sandbox/#sandboxitemset_verification_status
      operationId: sandboxItemSetVerificationStatus
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SandboxItemSetVerificationStatusResponse'
              examples:
                example-1:
                  value:
                    request_id: 1vwmF5TBQwiqfwP
      description: >-
        The `/sandbox/item/set_verification_status` endpoint can be used to
        change the verification status of an Item in in the Sandbox in order to
        simulate the Automated Micro-deposit flow.


        For more information on testing Automated Micro-deposits in Sandbox, see
        [Auth full coverage
        testing](https://plaid.com/docs/auth/coverage/testing#).
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SandboxItemSetVerificationStatusRequest'
  /item/public_token/exchange:
    x-plaid-business-unit-context: BUSINESS_UNIT_PLAID
    post:
      tags:
        - Plaid
      summary: Plaid Exchange public token for an access token
      externalDocs:
        url: /api/tokens/#itempublic_tokenexchange
      operationId: itemPublicTokenExchange
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemPublicTokenExchangeResponse'
              examples:
                example-1:
                  value:
                    access_token: access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6
                    item_id: M5eVJqLnv3tbzdngLDp9FL5OlDNxlNhlE55op
                    request_id: Aim3b
      description: >-
        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.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ItemPublicTokenExchangeRequest'
  /item/public_token/create:
    x-plaid-business-unit-context: BUSINESS_UNIT_PLAID
    post:
      tags:
        - Plaid
      summary: Plaid Create public token
      externalDocs:
        url: /api/tokens/#itempublic_tokencreate
      operationId: itemCreatePublicToken
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemPublicTokenCreateResponse'
              examples:
                example-1:
                  value:
                    public_token: public-sandbox-b0e2c4ee-a763-4df5-bfe9-46a46bce993d
                    request_id: Aim3b
      description: >-
        Note: As of July 2020, the `/item/public_token/create` endpoint is
        deprecated. Instead, use `/link/token/create` with an `access_token` to
        create a Link token for use with [update
        mode](https://plaid.com/docs/link/update-mode).


        If you need your user to take action to restore or resolve an error
        associated with an Item, generate a public token with the
        `/item/public_token/create` endpoint and then initialize Link with that
        `public_token`.


        A `public_token` is one-time use and expires after 30 minutes. You use a
        `public_token` to initialize Link in [update
        mode](https://plaid.com/docs/link/update-mode) for a particular Item.
        You can generate a `public_token` for an Item even if you did not use
        Link to create the Item originally.


        The `/item/public_token/create` endpoint is **not** used to create your
        initial `public_token`. If you have not already received an
        `access_token` for a specific Item, use Link to obtain your
        `public_token` instead. See the
        [Quickstart](https://plaid.com/docs/quickstart) for more information.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ItemPublicTokenCreateRequest'
  /item/import:
    x-plaid-business-unit-context: BUSINESS_UNIT_PLAID
    post:
      tags:
        - Plaid
      summary: Plaid Import Item
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ItemImportResponse'
              examples:
                example-1:
                  value:
                    access_token: access-sandbox-99ace160-3cf7-4e51-a083-403633425815
                    request_id: ewIBAn6RZirsk4W
      operationId: itemImport
      description: >-
        `/item/import` creates an Item via your Plaid Exchange Integration and
        returns an `access_token`. As part of an `/item/import` request, you
        will include a User ID (`user_auth.user_id`) and Authentication Token
        (`user_auth.auth_token`) that enable data aggregation through your Plaid
        Exchange API endpoints. These authentication principals are to be chosen
        by you.


        Upon creating an Item via `/item/import`, Plaid will automatically begin
        an extraction of that Item through the Plaid Exchange infrastructure you
        have already integrated.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ItemImportRequest'
components:
  schemas:
    ItemActivityListResponse:
      description: Describes a historical log of user consent events.
      additionalProperties: true
      type: object
      properties:
        request_id:
          $ref: '#/components/schemas/RequestID'
        activities:
          type: array
          description: A list of activities.
          items:
            $ref: '#/components/schemas/Activity'
        last_data_access_times:
          type: array
          description: >-
            An array of objects containing timestamps for the last time each
            data type was accessed per application.
          items:
            $ref: '#/components/schemas/LastDataAccessTimes'
        cursor:
          type: string
          description: Cursor used for pagination.
      required:
        - activities
        - last_data_access_times
        - request_id
    PlaidError:
      description: >-
        Errors are identified by `error_code` and categorized by `error_type`.
        Use these in preference to HTTP status codes to identify and handle
        specific errors. HTTP status codes are set and provide the broadest
        categorization of errors: 4xx codes are for developer- or user-related
        errors, and 5xx codes are for Plaid-related errors, and the status will
        be 2xx in non-error cases. An Item with a non-`null` error object will
        only be part of an API response when calling `/item/get` to view Item
        status. Otherwise, error fields will be `null` if no error has occurred;
        if an error has occurred, an error code will be returned instead.
      type: object
      additionalProperties: true
      title: Error
      nullable: true
      properties:
        error_type:
          $ref: '#/components/schemas/PlaidErrorType'
        error_code:
          description: The particular error code. Safe for programmatic use.
          type: string
        error_message:
          description: >-
            A developer-friendly representation of the error code. This may
            change over time and is not safe for programmatic use.
          type: string
        display_message:
          description: >-
            A user-friendly representation of the error code. `null` if the
            error is not related to user action.


            This may change over time and is not safe for programmatic use.
          type: string
          nullable: true
        request_id:
          type: string
          description: >-
            A unique ID identifying the request, to be used for troubleshooting
            purposes. This field will be omitted in errors provided by webhooks.
        causes:
          type: array
          description: >-
            In the Assets product, a request can pertain to more than one Item.
            If an error is returned for such a request, `causes` will return an
            array of errors containing a breakdown of these errors on the
            individual Item level, if any can be identified.


            `causes` will only be provided for the `error_type`
            `ASSET_REPORT_ERROR`. `causes` will also not be populated inside an
            error nested within a `warning` object.
          items: {}
        status:
          type: integer
          description: >-
            The HTTP status code associated with the error. This will only be
            returned in the response body when the error information is provided
            via a webhook.
          nullable: true
        documentation_url:
          type: string
          description: >-
            The URL of a Plaid documentation page with more information about
            the error
        suggested_action:
          type: string
          nullable: true
          description: Suggested steps for resolving the error
      required:
        - error_type
        - error_code
        - error_message
        - display_message
    ItemApplicationListResponse:
      description: Describes the connected application for a particular end user.
      additionalProperties: true
      type: object
      properties:
        request_id:
          $ref: '#/components/schemas/RequestID'
        applications:
          type: array
          description: A list of connected applications.
          items:
            $ref: '#/components/schemas/ConnectedApplication'
      required:
        - applications
    ItemApplicationUnlinkResponse:
      description: >-
        ItemApplicationUnlinkResponse defines the response schema for
        `/item/application/unlink`
      additionalProperties: true
      type: object
      properties:
        request_id:
          $ref: '#/components/schemas/RequestID'
      required:
        - request_id
    ItemApplicationScopesUpdateResponse:
      description: >-
        ItemApplicationScopesUpdateResponse defines the response schema for
        `/item/application/scopes/update`
      additionalProperties: true
      type: object
      properties:
        request_id:
          $ref: '#/components/schemas/RequestID'
      required:
        - request_id
    ItemGetResponse:
      type: object
      additionalProperties: true
      description: >-
        ItemGetResponse defines the response schema for `/item/get` and
        `/item/webhook/update`
      properties:
        item:
          $ref: '#/components/schemas/Item'
        status:
          $ref: '#/components/schemas/ItemStatusNullable'
        request_id:
          $ref: '#/components/schemas/RequestID'
      required:
        - item
        - request_id
    ItemRemoveResponse:
      type: object
      additionalProperties: true
      description: ItemRemoveResponse defines the response schema for `/item/remove`
      properties:
        request_id:
          $ref: '#/components/schemas/RequestID'
      required:
        - request_id
    SandboxItemFireWebhookResponse:
      type: object
      additionalProperties: true
      description: >-
        SandboxItemFireWebhookResponse defines the response schema for
        `/sandbox/item/fire_webhook`
      properties:
        webhook_fired:
          type: boolean
          description: Value is `true`  if the test` webhook_code`  was successfully fired.
        request_id:
          $ref: '#/components/schemas/RequestID'
      required:
        - webhook_fired
        - request_id
    ItemWebhookUpdateResponse:
      type: object
      additionalProperties: true
      description: >-
        ItemWebhookUpdateResponse defines the response schema for
        `/item/webhook/update`
      properties:
        item:
          $ref: '#/components/schemas/Item'
        request_id:
          $ref: '#/components/schemas/RequestID'
      required:
        - item
        - request_id
    ItemAccessTokenInvalidateResponse:
      type: object
      additionalProperties: true
      description: >-
        ItemAccessTokenInvalidateResponse defines the response schema for
        `/item/access_token/invalidate`
      properties:
        new_access_token:
          $ref: '#/components/schemas/AccessToken'
        request_id:
          $ref: '#/components/schemas/RequestID'
      required:
        - new_access_token
        - request_id
    SandboxItemResetLoginResponse:
      type: object
      additionalProperties: true
      description: >-
        SandboxItemResetLoginResponse defines the response schema for
        `/sandbox/item/reset_login`
      properties:
        reset_login:
          type: boolean
          description: '`true` if the call succeeded'
        request_id:
          $ref: '#/components/schemas/RequestID'
      required:
        - reset_login
        - request_id
    SandboxItemSetVerificationStatusResponse:
      type: object
      additionalProperties: true
      description: >-
        SandboxItemSetVerificationStatusResponse defines the response schema for
        `/sandbox/item/set_verification_status`
      properties:
        request_id:
          $ref: '#/components/schemas/RequestID'
      required:
        - request_id
    ItemPublicTokenExchangeResponse:
      type: object
      additionalProperties: true
      description: >-
        ItemPublicTokenExchangeResponse defines the response schema for
        `/item/public_token/exchange`
      properties:
        access_token:
          $ref: '#/components/schemas/AccessToken'
        item_id:
          type: string
          description: >-
            The `item_id` value of the Item associated with the returned
            `access_token`
        request_id:
          $ref: '#/components/schemas/RequestID'
      required:
        - access_token
        - item_id
        - request_id
    ItemPublicTokenCreateResponse:
      type: object
      additionalProperties: true
      description: >-
        ItemPublicTokenCreateResponse defines the response schema for
        `/item/public_token/create`
      properties:
        public_token:
          type: string
          description: >-
            A `public_token` for the particular Item corresponding to the
            specified `access_token`
        expiration:
          type: string
          format: date-time
        request_id:
          $ref: '#/components/schemas/RequestID'
      required:
        - public_token
        - request_id
    ItemImportResponse:
      type: object
      additionalProperties: true
      description: ItemImportResponse defines the response schema for `/item/import`
      properties:
        access_token:
          $ref: '#/components/schemas/AccessToken'
        request_id:
          $ref: '#/components/schemas/RequestID'
      required:
        - access_token
        - request_id