> ## Documentation Index
> Fetch the complete documentation index at: https://docs.synctera.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Sync external accounts through a vendor, such as Plaid.

> 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.




## OpenAPI

````yaml openapi.json post /external_accounts/sync_vendor_accounts
openapi: 3.0.3
info:
  description: >-
    This is the official reference documentation for Synctera APIs. If you need
    something specific or have a question, <a class='text-blue-600'
    href='https://synctera.com/contact-us' 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 API
  version: 0.208.0
servers:
  - description: Sandbox (no real world financial impact)
    url: https://api-sandbox.synctera.com/v0
  - description: Production
    url: https://api.synctera.com/v0
security:
  - bearerAuth: []
tags:
  - description: Lookup merchant information
    name: Merchants
  - description: Requests to generate simulated webhooks
    name: Card Webhook Simulations
  - description: >-
      Account programs define configurations for payment rails and transaction
      capabilities across different account types.
    name: Account Programs
  - description: Simulate receiving ACH transactions and returns
    name: ACH Transaction Simulations
  - description: Requests for risk evaluation and decisioning
    name: Risk Evaluations
  - description: Requests to link and manage External Cards
    name: External Cards
  - description: |
      The disclosures resource is used to track the status of disclosures and
      ensure that all parties have been shown the necessary disclosures to meet
      regulatory obligations.
    name: Disclosures
  - description: Create and manage Cash Order and Cash Deposit transfers
    name: Cash Orders and Deposits (alpha)
  - description: Requests to initiate customer verification.
    name: KYC Verification (deprecated)
  - description: Request to create and manage users
    name: Users
  - description: See balance history
    name: BalanceHistory
  - description: >-
      Migration mappings associate resources from an old tenant identity with a
      new tenant identity.
    name: Migration Mappings
  - description: |
      The External Account resource is used for managing links to accounts
      that operate outside of the Synctera ecosystem.
    name: External Accounts
  - description: Requests to create and manage account products, including fees, interest.
    name: Account Products
  - description: Requests to create and manage webhooks
    name: Webhooks
  - description: Create and manage documents.
    name: Documents
  - description: >-
      Create and manage same currency and multi-currency international wire
      transfers
    name: International Wires (alpha)
  - description: Requests for transaction risk detection
    name: Transaction risk
  - description: >-
      Used to configure bank accounts for which synctera accounts are considered
      a "subledger" to
    name: Bank Account
  - description: Request to create and manage party groups and party group members
    name: Party Groups
  - description: Requests to manage addresses
    name: Addresses
  - description: Requests to manage monitoring subscriptions and alerts for customers.
    name: Monitoring
  - description: Requests to search and manage compliance searches
    name: Compliance Searches
  - description: Requests to create and manage customers
    name: Customers
  - description: |
      The internal account resource is used for managing links to internal
      accounts where the funds are managed by integrators.
    name: Internal Accounts
  - description: Create and manage spending controls
    name: Spend Controls
  - description: Retrieve user identity information
    name: Identity
  - description: Requests to manage banks
    name: Banks
  - description: |
      The Disclosures resource is used to track the status of disclosures and
      ensure that customers have been shown the necessary disclosures to meet
      regulatory obligations.
    name: Disclosures (deprecated)
  - description: Create and manage wire transfers
    name: Wires
  - description: Requests to issue and manage Cards
    name: Cards
  - description: Request to create and manage edd
    name: Trust
  - description: Request to enroll, renew, or cancel watchlist monitors
    name: Watchlist (deprecated)
  - description: Endpoints for modifying or fetching posting dates
    name: Posting Dates
  - description: Transaction lines API
    name: transactions
  - description: Request to create and manage accounts
    name: Accounts
  - description: Requests to create and manage notes
    name: Notes
  - description: Account Template
    name: Account Templates
  - description: API for effective balances
    name: effective_balances
  - description: Requests to create and manage personal ID configurations
    name: Personal ID Configuration
  - description: >
      A natural person (individual human) that is relevant to the Synctera
      platform in some way: e.g. a personal customer or a director/officer/owner
      of a business.
    name: Persons
  - description: >
      Represents the relationships between parties. A relationship can exist
      between personal customers, business customers, or non-customer
      persons/organizations.
    name: Relationships
  - description: >
      A legal entity (corporation, partnership, etc.) that is relevant to the
      Synctera platform in some way: a business customer or some other
      organization that has an ownership share in such a business customer.
    name: Businesses
  - description: Request to create and manage payment_schedules
    name: Cronut
  - description: Requests to manage partners
    name: Partners
  - description: Request to create and manage deposits using remote deposit capture
    name: Remote Check Deposit
  - description: Requests to create and manage API keys
    name: API Keys
  - description: Requests to create and manage ban rules
    name: Ban Rules
  - description: Admin API for Middesk configuration using the tenants API keys.
    name: Middesk
  - description: Request to create and manage exclusions
    name: Stately
  - description: Request to create and manage partner configurations
    name: Quickstart
  - description: Manage contacts for bank and fintech partners
    name: Contacts
  - description: Create and manage transactions
    name: Transactions
  - description: Request to create and manage rdc configurations
    name: RDC Config
  - description: Create and manage holds
    name: Hold
  - description: Requests to create and manage roles
    name: Roles
  - description: Simulate receiving Wire transactions and returns
    name: Wire Transaction Simulations
  - description: Requests to create licenses
    name: Licenses
  - description: Requests to Admins to grant permissions to user
    name: Request Permissions
  - description: Configure vendor secrets for egress requests
    name: Egress Gateway Vendor Secret CRUD API
  - description: Requests to screen parties against sanctions watchlists
    name: Sanctions Screening
  - description: Create and manage payments
    name: ACH
  - description: Requests to calculate and manage CRR
    name: CRR
  - description: Requests to search financial institutions
    name: Institutions (Beta)
  - description: Create and manage tenant configurations
    name: Tenant Configs
  - description: Create and manage sweep configurations
    name: Configs
  - description: >
      Represents the compliance rules that are used to verify certain kinds of
      money movement.
    name: Compliance Rules
  - description: Configure webhook secrets for egress requests
    name: Egress Gateway Webhook Secret CRUD API
  - description: Create and manage transactions
    name: Transactions (internal)
  - description: History
    name: History
  - description: Create and manage EFT Canada transfers
    name: EFT Canada (Beta)
  - description: Requests to generate simulated transactions
    name: Card Transaction Simulations
  - description: Requests to initiate customer verification.
    name: KYC/KYB Verifications
paths:
  /external_accounts/sync_vendor_accounts:
    summary: External Accounts
    description: >
      The External Account resource is used for managing links to accounts that
      operate outside of the Synctera ecosystem.
    post:
      tags:
        - External Accounts
      summary: Sync external accounts through a vendor, such as Plaid.
      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'
components:
  parameters:
    idempotency_key:
      description: >-
        An idempotency key is an arbitrary unique value generated by client to
        detect subsequent retries of the same request. It is recommended that a
        UUID or a similar random identifier be used as an idempotency key. A
        different key must be used for each request, unless it is a retry.
      in: header
      name: Idempotency-Key
      schema:
        example: 7d943c51-e4ff-4e57-9558-08cab6b963c7
        type: string
  schemas:
    add_vendor_accounts_request:
      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: 7d943c51-e4ff-4e57-9558-08cab6b963c7
          format: uuid
          type: string
        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: 7d943c51-e4ff-4e57-9558-08cab6b963c7
          format: uuid
          type: string
        customer_type:
          $ref: '#/components/schemas/ext_account_customer_type'
        vendor:
          $ref: '#/components/schemas/external_account_vendor_values'
        vendor_access_token:
          description: >
            The token provided to link external accounts. For Plaid, this is
            their `access_token`.
          example: access-sandbox-de3ce8ef-33f8-452c-a685-8671031fc0f6
          minLength: 1
          type: string
        vendor_account_ids:
          description: >
            The list of vendor account IDs that the customer chose to link. For
            Plaid, these are `account_id`s.
          items:
            description: The Plaid account_id.
            example: blgvvBlXw3cq5GMPwqB6s6q4dLKB9WcVqGDGo
            minLength: 1
            type: string
          minItems: 1
          type: array
        vendor_customer_id:
          description: >
            The identifier provided by the vendor for the customer associated
            with this external account.
          example: 123
          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:
        - customer_type
        - vendor
      type: object
    add_vendor_accounts_response:
      properties:
        added_accounts:
          items:
            $ref: '#/components/schemas/external_account'
          type: array
        deleted_accounts:
          items:
            $ref: '#/components/schemas/external_account'
          type: array
        failed_accounts:
          items:
            $ref: '#/components/schemas/add_vendor_account_failure'
          type: array
      required:
        - added_accounts
        - failed_accounts
      type: object
    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:
        - BUSINESS
        - PERSONAL
      type: string
    external_account_vendor_values:
      description: |
        The vendor selected for the operation.
      enum:
        - FINICITY
        - PLAID
      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: Jane Smith
            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: 7d943c51-e4ff-4e57-9558-08cab6b963c7
          format: uuid
          type: string
        creation_time:
          example: '2010-05-06T12:23:34.321Z'
          format: date-time
          type: string
        currency:
          description: ISO 4217 alphabetic currency code
          example: USD
          pattern: ^[A-Z]{3}$
          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: 7d943c51-e4ff-4e57-9558-08cab6b963c7
          format: uuid
          type: string
        deletion_time:
          example: '2010-05-06T12:23:34.321Z'
          format: date-time
          type: string
        id:
          description: External account unique identifier
          example: 7d943c51-e4ff-4e57-9558-08cab6b963c7
          format: uuid
          readOnly: true
          type: string
        last_updated_time:
          example: '2010-05-06T12:23:34.321Z'
          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: Vacation savings
          nullable: true
          type: string
        routing_identifiers:
          $ref: '#/components/schemas/account_routing'
        status:
          description: The current state of the account
          enum:
            - ACTIVE
            - CLOSED
            - DELETED
            - INACTIVE
          type: string
        status_reason:
          description: The reason for the status for the external account.
          type: string
        tenant:
          $ref: '#/components/schemas/tenant_id'
        type:
          description: The type of the account
          enum:
            - CHECKING
            - CREDIT_CARD
            - CRYPTO_WALLET
            - INVESTMENT_529
            - MONEY_MARKET
            - OTHER
            - OTHER_BANK_ACCOUNT
            - SAVINGS
            - WALLET
          type: string
        vendor_data:
          $ref: '#/components/schemas/external_account_vendor_data'
        vendor_info:
          $ref: '#/components/schemas/vendor_info1'
        verification:
          $ref: '#/components/schemas/account_verification'
      required:
        - account_identifiers
        - account_owner_names
        - creation_time
        - id
        - last_updated_time
        - routing_identifiers
        - status
        - type
        - verification
      title: External account
      type: object
    add_vendor_account_failure:
      properties:
        reason:
          $ref: '#/components/schemas/add_vendor_accounts_error_reason'
        reason_description:
          description: A human-readable message describing the reason for the failure.
          type: string
        vendor_account_id:
          description: >
            The vendor account ID for the account that failed. For Plaid, this
            is an `account_id`.
          example: blgvvBlXw3cq5GMPwqB6s6q4dLKB9WcVqGDGo
          type: string
        vendor_error_message:
          description: >
            The display_message returned by the vendor. Only returned if reason
            is set to `PROVIDER_ERROR`. For Plaid, this is the
            `display_message`.
          type: string
        vendor_request_id:
          description: >
            A unique identifier for the request from the vendor, which can be
            used for troubleshooting. Only returned if reason is set to
            `PROVIDER_ERROR`.
          type: string
      required:
        - reason
        - reason_description
        - vendor_account_id
      type: object
    error:
      description: >-
        Synctera error responses in API v0 follow [RFC
        7807](https://datatracker.ietf.org/doc/html/rfc7807). Following that
        standard, the field for a machine-readable "error code" in API v0 is
        `type`.

        In our future API v1, we are phasing out RFC 7807 and adopting a custom
        error format. That format will be documented in our API v1 spec. But you
        may see some v0 error responses with a machine-readable `code` field
        while we are making the transition from v0 to v1.
      properties:
        code:
          description: >-
            An optional “sneak preview” of our future API v1 error responses.
            This is provided to give integrators a chance to work with our
            future error codes. Error codes for the same error may change
            between v0 and v1.
          example: BAD_REQUEST_BODY
          type: string
        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, which
            corresponds 1-to-1 with error types (`title` is the human-readable
            version of `type`). There can be multiple distinct titles for the
            same HTTP status code, and the same `title` can result in many
            different `detail` strings.

            This field will be removed in API v1.
          example: Bad Request Body
          type: string
        type:
          description: >
            A machine-readable string that identifies the error for programmatic
            use. This is a URI, i.e. a globally unique identifier. It is _not_
            necessarily a URL, so do not expect it to resolve to a web page. You
            can use this whole string as an error code, or just everything after
            the last slash.

            This field will be removed in API v1.
          example: https://dev.synctera.com/errors/bad-request-body
          type: string
      title: Standard error response (RFC 7807 problem report)
      type: object
    account_identifiers:
      properties:
        iban:
          description: >
            The IBAN of the account. Value may be masked, in which case only the
            last four digits are returned.
          example: LI4476584648937N59B00
          type: string
        number:
          description: >
            The unique identifier of the account. Value may be masked, in which
            case only the last four digits are returned.
          example: '78277121'
          type: string
      required:
        - number
      title: Identifiers for the account
      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_address:
          $ref: '#/components/schemas/address'
        bank_countries:
          description: The countries that this bank operates the account in
          items:
            example: US
            type: string
          type: array
        bank_name:
          description: The name of the bank managing the account
          example: Chase
          type: string
        correspondent_bank_details:
          description: |
            The details of the correspondent banks for the account.
          items:
            $ref: '#/components/schemas/correspondent_bank_details'
          nullable: true
          type: array
        eft_ca_routing_number:
          description: >
            > 🚧 Alpha > This is an Alpha property. Feedback from the community
            is welcome. We may make breaking changes to this property.

            The 9 digit routing number used for EFT CA payments, identifying a
            Canadian bank. The format is 0xxxyyyyy where xxx is the institution
            number and yyyyy is the transit number. On write, Synctera will
            store the entire routing number; on read, we only return the last 4
            characters. Value may be masked, in which case only the last four
            digits are returned.
          example: '02101140'
          type: string
        eft_routing_number:
          deprecated: true
          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. This attribute
            is deprecated and will be removed in a future API version. Use
            eft_ca_routing_number instead.
          example: '02101140'
          type: string
        network:
          $ref: '#/components/schemas/external_account_network'
        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_countries
        - bank_name
      title: Routing information for the account
      type: object
    tenant_id:
      description: >
        The id of the tenant containing the resource. This is relevant for
        Fintechs that have multiple workspaces.
      example: abcdef_ghijkl
      type: string
    external_account_vendor_data:
      properties:
        account_number_mask:
          description: >
            The last alphanumeric characters of an account's official account
            number. Note that the mask may be non-unique between accounts, and
            it may also not match the mask that the bank displays to the user.
          type: string
        institution_id:
          description: The ID of the institution external account belongs
          type: string
      type: object
    vendor_info1:
      description: >
        The information provided to Synctera from the vendor. Interpretation of
        this object is up to the client.
      discriminator:
        mapping:
          application/json:
            $ref: '#/components/schemas/vendor_json'
          text/xml:
            $ref: '#/components/schemas/vendor_xml'
        propertyName: content_type
      oneOf:
        - $ref: '#/components/schemas/vendor_json'
        - $ref: '#/components/schemas/vendor_xml'
      title: Vendor Info
      type: object
    account_verification:
      description: >
        Information about the account verification process. If the account has
        not been verified, this will be null.
      discriminator:
        mapping:
          FINICITY:
            $ref: '#/components/schemas/finicity_account_verification'
          MANUAL:
            $ref: '#/components/schemas/manual_account_verification'
          PLAID:
            $ref: '#/components/schemas/plaid_account_verification'
        propertyName: vendor
      nullable: true
      oneOf:
        - $ref: '#/components/schemas/plaid_account_verification'
        - $ref: '#/components/schemas/finicity_account_verification'
        - $ref: '#/components/schemas/manual_account_verification'
      title: Information about the account verification process
      type: object
    add_vendor_accounts_error_reason:
      description: A machine-readable code describing the reason for the failure.
      enum:
        - ACCOUNT_NOT_FOUND
        - DUPLICATE_ACCOUNT
        - FAILED_VERIFICATION
        - PROVIDER_ERROR
        - UNSUPPORTED_ACCOUNT_TYPE
      type: string
    address:
      properties:
        address_line_1:
          description: Street address line 1
          example: 100 Main St.
          type: string
        address_line_2:
          description: Street address line 2
          example: Suite 99
          type: string
        address_type:
          description: |
            Specifies the address type.
          enum:
            - BILLING
            - LEGAL
            - OPERATING
            - OTHER
            - SHIPPING
          example: SHIPPING
          readOnly: true
          type: string
        city:
          description: City
          example: New York
          type: string
        country_code:
          description: ISO-3166-1 Alpha-2 country code
          example: US
          pattern: ^[A-Z]{2}$
          type: string
        id:
          $ref: '#/components/schemas/id'
        is_registered_agent:
          description: >-
            Indicates whether an address is a registered agent. Omitted if the
            address is not a registered agent.
          example: true
          type: boolean
        nickname:
          description: >
            A nickname for the address. This is used to identify the address in
            the UI.
          example: Home
          type: string
        postal_code:
          description: >
            Postal code.

            For US, formats of 12345 or 12345-1234 are accepted.

            For CA, formats of A1A 1A1 or A1A1A1 (regardless of case) are
            accepted, and will be converted to A1A 1A1 format.
          example: '28620'
          type: string
        state:
          description: >
            State, region, province, or prefecture.

            This is the ISO-3166-2 subdivision code, excluding the country
            prefix.

            For example, TX for Texas USA or TAM for Tamaulipas Mexico.

            Its length varies by country, e.g. 2 characters for US, 3 for MX.
          example: NY
          type: string
      required:
        - address_line_1
        - country_code
      type: object
    correspondent_bank_details:
      properties:
        bank_address:
          $ref: '#/components/schemas/address'
        bank_name:
          description: |
            The name of the correspondent bank.
          example: Bank of Greece
          minLength: 1
          type: string
        swift_code:
          description: >
            The SWIFT code (also known as BIC code) used for international
            payments.
          example: BNGRGRAAXXX
          pattern: ^[A-Z]{6}[A-Z0-9]{2}([A-Z0-9]{3})?$
          type: string
      required:
        - bank_address
        - bank_name
        - swift_code
      title: Correspondent bank details
      type: object
    external_account_network:
      description: >-
        The infrastructure or network governing the transfer of assets for your
        account.
      enum:
        - ALGORAND
        - AVALANCHE
        - BITCOIN
        - CARDANO
        - CIRCLE
        - EOS
        - ETHEREUM
        - OTHER
        - POLKADOT
        - SOLANA
        - TRON
      type: string
    vendor_json:
      properties:
        content_type:
          description: Describes the content-type encoding received from the vendor
          enum:
            - application/json
          type: string
        json:
          description: Data representation in JSON
          type: object
        vendor:
          example: SOCURE
          type: string
      required:
        - content_type
        - json
        - vendor
    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:
        - content_type
        - vendor
        - xml
    finicity_account_verification:
      allOf:
        - $ref: '#/components/schemas/base_account_verification'
      title: Information specific to Finicity verification
    manual_account_verification:
      allOf:
        - $ref: '#/components/schemas/base_account_verification'
      title: Information specific to Manual verification
    plaid_account_verification:
      allOf:
        - $ref: '#/components/schemas/base_account_verification'
      title: Information specific to Plaid verification
    id:
      description: The unique identifier for this resource.
      example: 7d943c51-e4ff-4e57-9558-08cab6b963c7
      format: uuid
      readOnly: true
      type: string
    base_account_verification:
      properties:
        creation_time:
          description: The time at which verification was first completed.
          example: '2010-05-06T12:23:34.321Z'
          format: date-time
          type: string
        last_updated_time:
          description: The time at which verification was last updated.
          example: '2010-05-06T12:23:34.321Z'
          format: date-time
          type: string
        status:
          description: The status of verification
          enum:
            - UNVERIFIED
            - VERIFIED
          type: string
        vendor:
          description: The vendor used for verifying the account
          enum:
            - FINICITY
            - MANUAL
            - PLAID
          type: string
      required:
        - status
        - vendor
      title: Information about account verification
      type: object
  responses:
    bad_request:
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/error'
      description: BadRequest
    unauthorized:
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/error'
      description: Unauthorized
    forbidden:
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/error'
      description: Forbidden error
    internal_server_error:
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/error'
      description: Internal server error
  securitySchemes:
    bearerAuth:
      bearerFormat: api_key
      scheme: bearer
      type: http

````