Synctera External Accounts API

The External Account resource is used for managing links to accounts that operate outside of the Synctera ecosystem.

Operations 11

GET /external_accounts List external accounts #
POST /external_accounts Add an external account #
DELETE /external_accounts/{external_account_id} Delete an external account #
GET /external_accounts/{external_account_id} Get an external account #
PATCH /external_accounts/{external_account_id} Patch an external account #
GET /external_accounts/{external_account_id}/balance Get an external account balance #
GET /external_accounts/{external_account_id}/transactions List transactions of a given external account #
POST /external_accounts/access_tokens Create a permanent access token for an external account #
POST /external_accounts/add_vendor_accounts Add external accounts through a vendor, such as Plaid. #
POST /external_accounts/link_tokens Create a link token to verify an external account #
POST /external_accounts/sync_vendor_accounts Sync external accounts through a vendor, such as Plaid. #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/synctera-external-accounts-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

synctera-external-accounts-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: '<h2>Let''s build something great.</h2><p>Welcome to the official reference documentation for Synctera APIs. Our APIs are the best way to automate your company''s banking needs and are designed to be easy to understand and implement.</p><p>We''re continuously growing this library and what you see here is just the start, but if you need something specific or have a question, <a class=''text-blue-600'' href=''https://synctera.com/contact'' target=''_blank'' rel=''noreferrer''>contact us</a>.</p>

    '
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  title: Synctera Accounts External Accounts API
  version: 0.20.0
servers:
- description: Production
  url: https://api.synctera.com/v0
- description: Sandbox (no real world financial impact)
  url: https://api-sandbox.synctera.com/v0
security:
- bearerAuth: []
tags:
- description: 'The External Account resource is used for managing links to accounts

    that operate outside of the Synctera ecosystem.

    '
  name: External Accounts
paths:
  /external_accounts:
    description: 'The External Account resource is used for managing links to accounts that operate outside of the Synctera ecosystem.

      '
    summary: External Accounts
    get:
      description: 'Returns a list of all external accounts assigned to customers.

        '
      operationId: listExternalAccounts
      parameters:
      - $ref: '#/components/parameters/customer_id_query_array'
      - $ref: '#/components/parameters/business_id_query_array'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/page_token'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/external_accounts_list'
          description: List of external accounts
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '500':
          $ref: '#/components/responses/internal_server_error'
      summary: List external accounts
      tags:
      - External Accounts
      x-external: true
    post:
      description: 'Add an external account for a customer. The account will be created in an unverified state.

        '
      operationId: addExternalAccounts
      parameters:
      - $ref: '#/components/parameters/idempotency_key'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/add_accounts_request'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/external_account'
          description: The external account added.
        '400':
          $ref: '#/components/responses/bad_request'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '409':
          $ref: '#/components/responses/already_exists'
        '500':
          $ref: '#/components/responses/internal_server_error'
      summary: Add an external account
      tags:
      - External Accounts
      x-external: true
  /external_accounts/{external_account_id}:
    description: 'The External Account resource is used for managing links to accounts that operate outside of the Synctera ecosystem.

      '
    summary: External Accounts
    delete:
      description: 'Deletes an external account, given an external account ID. If no accounts left, the access token to the financial institution will be removed

        '
      operationId: deleteExternalAccount
      parameters:
      - $ref: '#/components/parameters/external_account_id'
      responses:
        '200':
          $ref: '#/components/responses/delete_response'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/not_found'
        '409':
          $ref: '#/components/responses/already_exists'
        '422':
          $ref: '#/components/responses/unprocessable_entity'
        '500':
          $ref: '#/components/responses/internal_server_error'
      summary: Delete an external account
      tags:
      - External Accounts
      x-external: true
    get:
      description: 'Returns an external account, given an external account ID.

        '
      operationId: getExternalAccount
      parameters:
      - $ref: '#/components/parameters/external_account_id'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/external_account'
          description: The external account
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/not_found'
        '500':
          $ref: '#/components/responses/internal_server_error'
      summary: Get an external account
      tags:
      - External Accounts
      x-external: true
    patch:
      description: 'Edits an unverified external account, given an external account ID.

        '
      operationId: updateExternalAccount
      parameters:
      - $ref: '#/components/parameters/idempotency_key'
      - $ref: '#/components/parameters/external_account_id'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/patch_external_account'
        description: External account to be updated
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/external_account'
          description: Updated external account
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/not_found'
        '409':
          $ref: '#/components/responses/already_exists'
        '422':
          $ref: '#/components/responses/unprocessable_entity'
        '500':
          $ref: '#/components/responses/internal_server_error'
      summary: Patch an external account
      tags:
      - External Accounts
      x-external: true
  /external_accounts/{external_account_id}/balance:
    description: 'The External Account resource is used for managing links to accounts that operate outside of the Synctera ecosystem.

      '
    summary: External Accounts
    get:
      description: 'Returns an external account balance, given an external account ID.

        '
      operationId: getExternalAccountBalance
      parameters:
      - $ref: '#/components/parameters/external_account_id'
      - $ref: '#/components/parameters/max_age'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/external_account_balance'
          description: The external account
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/not_found'
        '500':
          $ref: '#/components/responses/internal_server_error'
      summary: Get an external account balance
      tags:
      - External Accounts
      x-external: true
  /external_accounts/{external_account_id}/transactions:
    description: 'The External Account resource is used for managing links to accounts that operate outside of the Synctera ecosystem.

      '
    summary: External Accounts
    get:
      description: 'Returns a list of transactions on from the external account, given an external account ID. Maximum 500 transctions will be returned.

        '
      operationId: getExternalAccountTransactions
      parameters:
      - $ref: '#/components/parameters/external_account_id'
      - description: Date range filtering for transactions. Date is inclusive. Date must be in UTC.
        in: query
        name: start_date
        required: true
        schema:
          format: date
          type: string
        x-external: true
      - description: Date range filtering for transactions. Date is exclusive. Date must be in UTC.
        in: query
        name: end_date
        required: true
        schema:
          format: date
          type: string
        x-external: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/external_accounts_transaction_list'
          description: The external account
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '404':
          $ref: '#/components/responses/not_found'
        '422':
          $ref: '#/components/responses/unprocessable_entity'
        '500':
          $ref: '#/components/responses/internal_server_error'
      summary: List transactions of a given external account
      tags:
      - External Accounts
      x-external: true
  /external_accounts/access_tokens:
    description: 'Create a permanent access token for an external account

      '
    summary: External account access token
    post:
      operationId: createAccessToken
      parameters:
      - $ref: '#/components/parameters/idempotency_key'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/external_account_access_token'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/external_account_access_token'
          description: New verification link token
        '400':
          $ref: '#/components/responses/bad_request'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '500':
          $ref: '#/components/responses/internal_server_error'
      summary: Create a permanent access token for an external account
      tags:
      - External Accounts
      x-external: true
  /external_accounts/add_vendor_accounts:
    description: 'The External Account resource is used for managing links to accounts that operate outside of the Synctera ecosystem.

      '
    summary: External Accounts
    post:
      description: 'Add external accounts for a customer through an existing access token. The token must be valid, and the information on the accounts returned by the vendor must correspond to the customer. A success response for this route may include failures if an account could not be added, so it''s important that the caller checks the response body.

        '
      operationId: addVendorExternalAccounts
      parameters:
      - $ref: '#/components/parameters/idempotency_key'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/add_vendor_accounts_request'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/add_vendor_accounts_response'
          description: 'Result of adding accounts through the vendor.

            '
        '400':
          $ref: '#/components/responses/bad_request'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '500':
          $ref: '#/components/responses/internal_server_error'
      summary: Add external accounts through a vendor, such as Plaid.
      tags:
      - External Accounts
      x-external: true
  /external_accounts/link_tokens:
    description: 'Create a link token to verify an external account

      '
    summary: External account verification link token
    post:
      operationId: createVerificationLinkToken
      parameters:
      - $ref: '#/components/parameters/idempotency_key'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/external_account_link_token'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/external_account_link_token'
          description: New verification link token
        '400':
          $ref: '#/components/responses/bad_request'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '500':
          $ref: '#/components/responses/internal_server_error'
      summary: Create a link token to verify an external account
      tags:
      - External Accounts
      x-external: true
  /external_accounts/sync_vendor_accounts:
    description: 'The External Account resource is used for managing links to accounts that operate outside of the Synctera ecosystem.

      '
    summary: External Accounts
    post:
      description: 'Sync external accounts for a customer through an existing access token. The token must be valid, and the information on the accounts returned by the vendor must correspond to the customer. A success response for this route may include failures if an account could not be added and deletions if the account is removed by the end user, so it''s important that the caller checks the response body.

        '
      operationId: syncVendorExternalAccounts
      parameters:
      - $ref: '#/components/parameters/idempotency_key'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/add_vendor_accounts_request'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/add_vendor_accounts_response'
          description: 'Result of syncing accounts through the vendor.

            '
        '400':
          $ref: '#/components/responses/bad_request'
        '401':
          $ref: '#/components/responses/unauthorized'
        '403':
          $ref: '#/components/responses/forbidden'
        '500':
          $ref: '#/components/responses/internal_server_error'
      summary: Sync external accounts through a vendor, such as Plaid.
      tags:
      - External Accounts
      x-external: true
components:
  schemas:
    add_vendor_accounts_response:
      properties:
        added_accounts:
          items:
            $ref: '#/components/schemas/external_account'
            description: Information about a successfully added external account.
          type: array
        deleted_accounts:
          items:
            $ref: '#/components/schemas/external_account'
            description: Information about a successfully deleted external account.
          type: array
        failed_accounts:
          items:
            $ref: '#/components/schemas/add_vendor_account_failure'
            description: Information about an external account that could not be added.
          type: array
      required:
      - added_accounts
      - failed_accounts
      type: object
    patch_external_account:
      properties:
        account_identifiers:
          $ref: '#/components/schemas/patch_accounts_request_account_identifiers'
        account_owner_names:
          description: The names of the account owners.
          items:
            example: Monica Keebler
            type: string
          type: array
        nickname:
          description: A user-meaningful name for the account
          example: Money Market Account
          minLength: 1
          type: string
        routing_identifiers:
          $ref: '#/components/schemas/patch_accounts_request_routing_identifiers'
        type:
          description: The type of the account
          enum:
          - CHECKING
          - SAVINGS
          type: string
        verification:
          $ref: '#/components/schemas/account_verification'
      type: object
    external_accounts_transaction_list:
      properties:
        transactions:
          description: Array of transactions of a given external account
          items:
            $ref: '#/components/schemas/external_account_transaction'
          type: array
      required:
      - transactions
      type: object
    vendor_xml:
      properties:
        content_type:
          description: Describes the content-type encoding received from the vendor
          enum:
          - text/xml
          type: string
        vendor:
          example: IDOLOGY
          type: string
        xml:
          description: Data representaion in XML
          type: string
      required:
      - vendor
      - content_type
      - xml
    manual_account_verification:
      allOf:
      - $ref: '#/components/schemas/base_account_verification'
      title: Information specific to Manual verification
    ext_account_customer_type:
      description: 'The type of customer in the external financial institution. _Not_ necessarily the customer type on Synctera''s platform: a business customer might link to the owner''s personal account at an external financial institution.

        '
      enum:
      - PERSONAL
      - BUSINESS
      type: string
    add_accounts_request_routing_identifiers:
      properties:
        ach_routing_number:
          description: 'The routing number used for US ACH payments.

            '
          example: '756392185'
          minLength: 1
          type: string
        bank_countries:
          description: The countries that this bank operates the account in
          items:
            enum:
            - US
            type: string
          minItems: 1
          type: array
        bank_name:
          description: The name of the bank managing the account
          example: Chase
          minLength: 1
          type: string
        wire_routing_number:
          description: 'The routing number used for US wire payments.

            '
          example: '915075033'
          minLength: 1
          type: string
      required:
      - bank_name
      - bank_countries
      - ach_routing_number
      title: Identifiers for the bank
      type: object
    external_accounts_list:
      allOf:
      - properties:
          external_accounts:
            description: Array of external accounts
            items:
              $ref: '#/components/schemas/external_account'
            type: array
        required:
        - external_accounts
        type: object
      - $ref: '#/components/schemas/paginated_response'
    patch_accounts_request_account_identifiers:
      properties:
        number:
          description: 'The account number.

            '
          example: 91981460
          minLength: 1
          type: string
      title: Identifiers for the account
      type: object
    patch_accounts_request_routing_identifiers:
      properties:
        ach_routing_number:
          description: 'The routing number used for US ACH payments. On write, Synctera will store the entire routing number; on read, we only return the last 4 characters.

            '
          example: '756392185'
          minLength: 1
          type: string
        bank_name:
          description: The name of the bank managing the account
          example: Chase
          minLength: 1
          type: string
      title: Identifiers for the bank
      type: object
    paginated_response:
      properties:
        next_page_token:
          description: If returned, use the next_page_token to query for the next page of results. Not returned if there are no more rows.
          example: d61grelm5f
          type: string
      title: Paginated List response
      type: object
    plaid_account_verification:
      allOf:
      - $ref: '#/components/schemas/base_account_verification'
      title: Information specific to Plaid verification
    error:
      properties:
        detail:
          description: a human-readable string explaining this particular error
          example: 'missing required fields: first_name, dob'
          type: string
        status:
          description: the HTTP status code for this response
          example: 400
          type: integer
        title:
          description: a human-readable string for this general category of error
          example: Bad Request Body
          type: string
        type:
          description: a URI that identifies this general category of error
          example: https://dev.synctera.com/errors/bad-request-body
          type: string
      title: Standard error response (RFC 7807 problem report)
      type: object
    account_routing:
      properties:
        ach_routing_number:
          description: 'The routing number used for US ACH payments. Only appears if `bank_countries` contains `US`. Value may be masked, in which case only the last four digits are returned.

            '
          example: '756392185'
          type: string
        bank_countries:
          description: The countries that this bank operates the account in
          items:
            enum:
            - US
            - CA
            type: string
          type: array
        bank_name:
          description: The name of the bank managing the account
          example: Chase
          type: string
        eft_routing_number:
          description: 'The routing number used for EFT payments, identifying a Canadian bank, consisting of the institution number and the branch number. Only appears if `bank_countries` contains `CA`. Value may be masked, in which case only the last four digits are returned.

            '
          example: '02101140'
          type: string
        swift_code:
          description: 'The SWIFT code for the bank. Value may be masked, in which case only the last four characters are returned.

            '
          example: CHASUS3AXXX
          type: string
        wire_routing_number:
          description: 'The routing number used for domestic wire payments. Only appears if `bank_countries` contains `US`. Value may be masked, in which case only the last four digits are returned.

            '
          example: '756392185'
          type: string
      required:
      - bank_name
      - bank_countries
      title: Routing information for the account
      type: object
    external_account_balance:
      properties:
        available:
          description: The available balance of the account
          example: Number in cents. E.g. 1000 represents $10.00
          format: int64
          minimum: 0
          type:
          - integer
          - 'null'
        currency:
          description: ISO 4217 alphabetic currency code
          example: FJD
          type: string
        current:
          description: The current balance of the account
          example: Number in cents. E.g. 1000 represents $10.00
          format: int64
          minimum: 0
          type:
          - integer
          - 'null'
        limit:
          description: The limit on the balance amount
          example: Number in cents. E.g. 1000 represents $10.00
          format: int64
          minimum: 0
          type:
          - integer
          - 'null'
      required:
      - currency
      title: External Account Balance
      type: object
    business_id2:
      description: 'Unique ID for the business. Exactly one of `business_id` or `person_id` must be set.

        '
      example: d4f6d078-ccf9-42c1-a001-df2c96783294
      format: uuid
      type: string
    external_account_link_token:
      properties:
        business_id:
          description: 'The identifier for the business customer associated with this external account. Exactly one of `business_id` or `customer_id` must be specified.

            '
          example: d3087ca5-aaf9-4f7c-9241-58ab458e15ac
          format: uuid
          type: string
        client_name:
          description: The name of your application, as it should be displayed in Link. Maximum length of 30 characters.
          type: string
        country_codes:
          description: Country codes in the ISO-3166-1 alpha-2 country code standard.
          items:
            enum:
            - US
            type: string
          minItems: 1
          type: array
        customer_id:
          description: 'The identifier for the personal customer associated with this external account. Exactly one of `customer_id` or `business_id` must be specified.

            '
          example: 3d92aac9-bdf5-498f-96b0-e67da46be85e
          format: uuid
          type: string
        expiration:
          description: The expiration date for the link_token. Expires in 4 hours.
          format: date-time
          readOnly: true
          type: string
        language:
          description: 'The language that corresponds to the link token. For Plaid, see their [documentation](https://plaid.com/docs/api/tokens/#link-token-create-request-language) for a list of allowed values.

            '
          enum:
          - EN
          - FR
          - ES
          - NL
          - DE
          type: string
        link_customization_name:
          description: 'The name of the Link customization from the Plaid Dashboard to be applied to Link. If not specified, the default customization will be used. When using a Link customization, the language in the customization must match the language selected via the language parameter, and the countries in the customization should match the country codes selected via country_codes.

            '
          type: string
        link_token:
          description: 'A link_token, which can be supplied to Link in order to initialize it and receive a public_token, which can be exchanged for an access_token.

            '
          readOnly: true
          type: string
        redirect_uri:
          description: 'A URI indicating the destination where a user should be forwarded after completing the Link flow; used to support OAuth authentication flows when launching Link in the browser or via a webview.

            '
          type: string
        request_id:
          description: A unique identifier for the request, which can be used for troubleshooting.
          readOnly: true
          type: string
        sdk_type:
          default: WEB
          description: Describes the environment of the client code running a vendor-supplied SDK
          enum:
          - WEB
          - IOS
          - ANDROID
          type: string
        type:
          description: The type of the link token. DEPOSITORY for checking and savings accounts, CREDIT for credit card type accounts, INVESTMENT for investment accounts, and MICRO_DEPOSIT for depository accounts with support for micro-deposits verification.
          enum:
          - DEPOSITORY
          - CREDIT
          - INVESTMENT
          - MICRO_DEPOSIT
          type: string
        vendor_access_token:
          description: The access token associated with the Item data is being requested for.
          type: string
        vendor_institution_id:
          description: 'The ID of the institution the access token is requested for. If present the link token will be created in an update mode.

            '
          minLength: 1
          type: string
        verify_owner:
          default: false
          description: 'If true, Synctera will attempt to verify that the external account owner is the same as the customer by comparing external account data to customer data. At least 2 of the following fields must match: name, phone number, email, address. Verification is disabled by default.

            '
          type: boolean
      required:
      - client_name
      - language
      - country_codes
      - type
      type: object
    vendor_info:
      description: 'The information provided to Synctera from the vendor. Interpretation of this object is up to the client.

        '
      discriminator:
        mapping:
          application/json: '#/components/schemas/vendor_json'
          text/xml: '#/components/schemas/vendor_xml'
        propertyName: content_type
      oneOf:
      - $ref: '#/components/schemas/vendor_json'
      - $ref: '#/components/schemas/vendor_xml'
      title: Vendor Info
      type: object
    base_account_verification:
      properties:
        creation_time:
          description: The time at which verification was first completed.
          example: '2022-01-01T00:00:00.000Z'
          format: date-time
          type: string
        last_updated_time:
          description: The time at which verification was last updated.
          example: '2022-01-01T00:00:00.000Z'
          format: date-time
          type: string
        status:
          description: The status of verification
          enum:
          - VERIFIED
          - UNVERIFIED
          type: string
        vendor:
          description: The vendor used for verifying the account
          enum:
          - PLAID
          - MANUAL
          - FINICITY
          type: string
      required:
      - status
      - vendor
      title: Information about account verification
      type: object
    customer_id:
      example: 4605deb4-3f8d-4566-9bf1-0dc558b63258
      format: uuid
      type: string
    external_account_vendor_values:
      description: 'The vendor selected for the operation.

        '
      enum:
      - PLAID
      - FINICITY
      type: string
    external_account:
      properties:
        account_identifiers:
          $ref: '#/components/schemas/account_identifiers'
        account_owner_names:
          description: 'The names of the account owners. Values may be masked, in which case the array will be empty.

            '
          items:
            example: Dr. Winston Zieme
            type: string
          type: array
        business_id:
          description: 'The identifier for the business customer associated with this external account. Exactly one of `business_id` or `customer_id` will be returned.

            '
          example: 98f62347-33d0-4421-bfc0-91729390eff1
          format: uuid
          type: string
        creation_time:
          example: '2022-01-01T00:00:00.000Z'
          format: date-time
          type: string
        customer_id:
          description: 'The identifier for the personal customer associated with this external account. Exactly one of `customer_id` or `business_id` will be returned.

            '
          example: e2197030-7aaf-472d-a454-5c1703d46417
          format: uuid
          type: string
        id:
          description: External account unique identifier
          example: 90928aae-f478-443a-bdcc-00cf888df49b
          format: uuid
          readOnly: true
          type: string
        last_updated_time:
          example: '2022-01-01T00:00:00.000Z'
          format: date-time
          type: string
        metadata:
          description: User-supplied JSON format metadata.
          type: object
        name:
          description: The official name of the account
          example: Plaid Checking
          type: string
        nickname:
          description: A user-meaningful name for the account
          example: Credit Card Account
          type:
          - string
          - 'null'
        routing_identifiers:
          $ref: '#/components/schemas/account_routing'
        status:
          description: The current state of the account
          enum:
          - ACTIVE
          - CLOSED
          type: string
        type:
          description: The type of the account
          enum:
          - CHECKING
          - SAVINGS
          - CREDIT_CARD
          - MONEY_MARKET
          - INVESTMENT_529
          - OTHER
          type: string
        vendor_data:
          $ref: '#/components/schemas/external_account_vendor_data'
        vendor_info:
          $ref: '#/components/schemas/vendor_info'
        verification:
          $ref: '#/components/schemas/account_verification'
      required:
      - id
      - account_owner_names
      - status
      - type
      - routing_identifiers
      - account_identifiers
      - verification
      - creation_time
      - last_updated_time
      title: External account
      type: object
    external_account_access_token:
      properties:
        business_id:
          description: 'The ide

# --- truncated at 32 KB (47 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/synctera/refs/heads/main/openapi/synctera-external-accounts-api-openapi.yml