openapi: 3.1.0
info:
  title: Customer Organizations Administration
  description: This API administers the banking relationship between a _banking customer_ (member) and an _organization_ (such as a business, non-profit, trust). This API does not manage business roles (such as business owner, chief operating officer, chief financial officer, etc.), only the customer's banking role and the digital banking entitlements that the platform grants to the customer with respect to that business.
  version: 0.8.0
  contact:
    name: Apiture
    url: https://developer.apiture.com/help/support/
    email: api@apiture.com
  termsOfService: https://developer.apiture.com/docs/Apiture-API-License-Agreement.pdf
  license:
    name: Apiture API License
    url: https://developer.apiture.com/docs/Apiture-API-License-Agreement.pdf
x-apiture-namespace: bankingAdminCustomerOrganizations
x-apiture-package-name: banking-admin-customer-organizations
servers:
  - url: /bankingAdmin
tags:
  - name: Customer Organizations Administration
    description: Banking Customer Organizations Administration
paths:
  /bankingCustomers/{bankingCustomerId}/organizations:
    parameters:
      - $ref: '#/components/parameters/bankingCustomerIdPathParam'
    get:
      summary: Return a collection of banking organizations for a customer
      description: Return a list of banking organizations associated with the banking customer.
      operationId: listCustomerBankingOrganizations
      x-apiture-api: bankingAdminCustomerOrganizations
      x-apiture-group: bankingCustomerOrganizations
      tags:
        - Customer Organizations Administration
      parameters:
        - name: organization
          description: Optionally, list only the customer information for a specific organization. The `organization` value is the `id` or `referenceId` value of an organization.
          in: query
          required: false
          schema:
            $ref: '#/components/schemas/resourceId'
        - name: unmasked
          description: When requesting customer/organization details, the sensitive personally identifiable information (PII) about each organization is masked for security reasons. Include this query parameter with a value of `true` to request that the response body includes the full PII. Such requests are auditable.
          in: query
          required: false
          schema:
            type: boolean
            default: false
      security:
        - clientCredentials:
            - bankingAdmin/read
      responses:
        '200':
          description: OK. If the response `items` is empty, no banking organizations are associated with the customer.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/customerBankingOrganizations'
            application/vnd.restful+json:
              schema:
                $ref: '#/components/schemas/customerBankingOrganizations'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '422':
          description: |
            Unprocessable Entity. The request body and/or query parameters were well formed but otherwise invalid.

            This problem response may have one of the following `type` values:
            * [`https://static.api.apiture.com/errors/noSuchOrganization/v1.0.0`](https://static.api.apiture.com/errors/noSuchOrganization/v1.0.0)<br>
              There is no organization matching the requested organization parameter.
              Remediation: Pass the `id` or `referenceId` of a valid banking organization.
          x-apiture-errors:
            - noSuchOrganization
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/problemResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/problemResponse'
        '429':
          $ref: '#/components/responses/429'
        4XX:
          $ref: '#/components/responses/4XX'
        5XX:
          $ref: '#/components/responses/5XX'
  /bankingCustomers/{bankingCustomerId}/organizations/{bankingOrganizationId}/entitlements:
    parameters:
      - $ref: '#/components/parameters/bankingCustomerIdPathParam'
      - $ref: '#/components/parameters/bankingOrganizationIdPathParam'
    put:
      summary: Set entitlements for a customer with respect to an organization
      description: Create or set the entitlements that a banking customer has with respect to a banking organization (such as a business, trust, non-profit or other organization which conducts commercial banking). These roles and entitlements control what banking activity the customer may conduct with respect to the organization, such as opening commercial accounts and managing other customers' entitlements to the organization.
      operationId: setCustomerBankingOrganizations
      x-apiture-api: bankingAdminCustomerOrganizations
      x-apiture-group: bankingCustomerOrganizations
      tags:
        - Customer Organizations Administration
      security:
        - clientCredentials:
            - bankingAdmin/write
      requestBody:
        required: true
        description: The entitlements to assign the customer with respect to this organization.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/customerBankingOrganizationEntitlementsUpdate'
      responses:
        '200':
          description: OK. Customer entitlements updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/customerBankingOrganizationEntitlements'
            application/vnd.restful+json:
              schema:
                $ref: '#/components/schemas/customerBankingOrganizationEntitlements'
        '201':
          description: OK. Customer entitlements created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/customerBankingOrganizationEntitlements'
            application/vnd.restful+json:
              schema:
                $ref: '#/components/schemas/customerBankingOrganizationEntitlements'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '422':
          description: |
            Unprocessable Entity. The request body and/or query parameters were well formed but otherwise invalid.

            This problem response may have one of the following `type` values:
            * [`https://static.api.apiture.com/errors/noSuchCustomer/v1.0.0`](https://static.api.apiture.com/errors/noSuchCustomer/v1.0.0)<br>
              There is no customer matching the requested banking customer parameter.
              Remediation: Pass the `id` or `referenceId` of a valid banking organization.

            * [`https://static.api.apiture.com/errors/noSuchOrganization/v1.0.0`](https://static.api.apiture.com/errors/noSuchOrganization/v1.0.0)<br>
              There is no organization matching the requested organization parameter.
              Remediation: Pass the `id` or `referenceId` of a valid banking organization.

            * [`https://static.api.apiture.com/errors/invalidRoleForRestrictedUser/v1.0.0`](https://static.api.apiture.com/errors/invalidRoleForRestrictedUser/v1.0.0)<br>
              The requested roles may not be assigned to a restricted user.
              Remediation: Select a non-restricted user.

            * [`https://static.api.apiture.com/errors/invalidPermissionForRestrictedUser/v1.0.0`](https://static.api.apiture.com/errors/invalidPermissionForRestrictedUser/v1.0.0)<br>
              The requested permissions may not be assigned to a restricted user.
              Remediation: Select a non-restricted user.
          x-apiture-errors:
            - noSuchCustomer
            - noSuchOrganization
            - invalidRoleForRestrictedUser
            - invalidPermissionForRestrictedUser
        '429':
          $ref: '#/components/responses/429'
        4XX:
          $ref: '#/components/responses/4XX'
        5XX:
          $ref: '#/components/responses/5XX'
components:
  parameters:
    bankingCustomerIdPathParam:
      name: bankingCustomerId
      description: The unique identifier of this banking customer. This is an opaque string.
      in: path
      schema:
        $ref: '#/components/schemas/resourceId'
      required: true
    bankingOrganizationIdPathParam:
      name: bankingOrganizationId
      description: The unique identifier of this banking organization. This is an opaque string.
      in: path
      schema:
        $ref: '#/components/schemas/resourceId'
      required: true
      x-resolved-from: ../../adminOrganizations/openapi.yaml#/components/parameters/bankingOrganizationIdPathParam
  schemas:
    customerBankingOrganizations:
      x-apiture-version: 2.0.0
      title: Customer Banking Organization Collection (v2.0.0)
      description: A list of banking organizations for which a customer has banking entitlements.
      type: object
      allOf:
        - $ref: '#/components/schemas/abstractBody'
        - type: object
          required:
            - items
          properties:
            items:
              description: An array containing an array of banking organization items.
              type: array
              maxItems: 1000
              items:
                $ref: '#/components/schemas/customerBankingOrganizationItem'
      example:
        items:
          - name: Peck Plumbing
            taxId: '****1234'
            organizationId: 52abfb19a4810b8b90e7
            coreOrganizationId: a74c11fc11d4ba1311a7
            institutionId: TIBURON
            customerId: 6d8eebc5cd2bfbbdc4ef
            roles:
              superUser: false
            allows:
              openCommercialAccounts: true
              manageContact: true
              manageAchSettlementType: true
              manageRestrictedUsers: false
              manageAccountNickname: true
              manageBusinessTransfers: false
          - name: Max Peck Handyman
            taxId: '****1234'
            organizationId: 27b7425d804fd02dfe29
            coreOrganizationId: 5b78172d8ce84d04b23e
            institutionId: TIBURON
            customerId: 0dd44afe15f754f81cff
            roles:
              superUser: true
            allows:
              openCommercialAccounts: true
              manageContact: true
              manageAchSettlementType: true
              manageRestrictedUsers: true
              manageAccountNickname: true
              manageBusinessTransfers: true
    customerBankingOrganizationEntitlementsUpdate:
      x-apiture-version: 1.3.0
      title: Customer Banking Organization Entitlements Update (v1.3.0)
      description: New or replacement banking organization entitlements to assign to a customer.
      type: object
      allOf:
        - $ref: '#/components/schemas/abstractBody'
        - properties:
            roles:
              description: Banking roles to assign to the customer relative to this organization. Roles with a value of `false` are removed from the customer when updating a customer's entitlements. The entitlements associated with those removed roles are also removed unless they are granted by other roles or explicitly granted in `allows`.
              $ref: '#/components/schemas/mutableBankingCustomerOrganizationRoles'
      example:
        roles:
          superUser: true
    customerBankingOrganizationEntitlements:
      x-apiture-version: 1.1.0
      title: Customer Banking Organization Entitlements (v1.1.0)
      description: The roles and permissions a banking customer has with respect to a banking organization.
      type: object
      required:
        - roles
      allOf:
        - $ref: '#/components/schemas/abstractBody'
        - properties:
            roles:
              description: Banking roles to assign to the customer relative to this organization. Roles with a value of `false` are removed from the customer when updating a customer's entitlements. The entitlements associated with those removed roles are also removed unless they are granted by other roles or explicitly granted in `allows`.
              $ref: '#/components/schemas/bankingCustomerOrganizationRoles'
      example:
        roles:
          superUser: false
    customerBankingOrganizationItem:
      x-apiture-version: 2.0.0
      title: Customer Banking Organization Item (v2.0.0)
      description: Summary representation of a banking organization for which a customer has entitlements.
      type: object
      required:
        - name
        - taxId
        - organizationId
        - customerId
        - institutionId
        - roles
        - allows
      allOf:
        - $ref: '#/components/schemas/customerBankingOrganizationFields'
      example:
        name: Peck Plumbing
        taxId: '****1234'
        organizationId: 52abfb19a4810b8b90e7
        coreOrganizationId: a74c11fc11d4ba1311a7
        customerId: 6d8eebc5cd2bfbbdc4ef
        institutionId: TIBURON
        roles:
          superUser: false
        allows:
          openCommercialAccounts: false
          manageRestrictedUsers: false
          manageContact: true
          manageAchSettlementType: false
          manageAccountNickname: true
          manageBusinessTransfers: false
    customerBankingOrganizationFields:
      x-apiture-version: 2.0.0
      title: Customer Banking Organization Fields (v2.0.0)
      description: Common fields of the banking customer organization resource used to build other model schemas.
      type: object
      x-apiture-fragment: true
      allOf:
        - $ref: '#/components/schemas/immutableBankingCustomerOrganizationFields'
        - $ref: '#/components/schemas/mutableCustomerBankingOrganizationFields'
      example:
        name: Peck Plumbing
        taxId: '****1234'
        organizationId: 52abfb19a4810b8b90e7
        coreOrganizationId: a74c11fc11d4ba1311a7
        institutionId: TIBURON
        roles:
          superUser: false
        allows:
          openCommercialAccounts: false
          manageRestrictedUsers: false
          manageContact: true
          manageAchSettlementType: false
          manageAccountNickname: true
          manageBusinessTransfers: false
    mutableCustomerBankingOrganizationFields:
      x-apiture-version: 2.0.0
      title: Mutable Customer Banking Organization Fields (v2.0.0)
      description: Common mutable fields of the customer banking organization resource used to build other model schemas.
      type: object
      x-apiture-fragment: true
      properties:
        name:
          description: The name of the organization.
          type: string
          format: text
          minLength: 1
          maxLength: 50
        allows:
          $ref: '#/components/schemas/bankingCustomerOrganizationAllows'
    immutableBankingCustomerOrganizationFields:
      x-apiture-version: 1.1.0
      title: Immutable Customer Banking Organization Identifier Fields (v1.1.0)
      description: Common immutable ID fields of the banking organization resource used to build other model schemas.
      type: object
      x-apiture-fragment: true
      allOf:
        - $ref: '#/components/schemas/initialBankingOrganizationFields'
        - properties:
            organizationId:
              description: The unique identifier for ths banking organization resource. This is an immutable opaque string.
              allOf:
                - $ref: '#/components/schemas/readOnlyResourceId'
            coreOrganizationId:
              description: The ID of the organization as represented in the banking core.
              allOf:
                - $ref: '#/components/schemas/externalResourceId'
            customerId:
              description: The unique identifier for the banking customer resource associated with this organization. This is an immutable opaque string.
              allOf:
                - $ref: '#/components/schemas/readOnlyResourceId'
            institutionId:
              description: The financial institution within which this organization conducts banking.
              allOf:
                - $ref: '#/components/schemas/institutionId'
            roles:
              $ref: '#/components/schemas/bankingCustomerOrganizationRoles'
      example:
        taxId: '****1234'
        organizationId: 52abfb19a4810b8b90e7
        coreOrganizationId: a74c11fc11d4ba1311a7
        institutionId: TIBURON
        customerId: ac21a7ef6274b22fcd8a
        roles:
          superUser: false
    bankingCustomerOrganizationRoleFields:
      title: Banking Customer Organization Role Fields (v1.0.0)
      description: Fields used to construct schemas related to a banking customer's entitlements with respect to an organization.
      type: object
      x-apiture-fragment: true
      properties:
        superUser:
          description: If `true`, this customer has all permissions/entitlements with respect to the organization.
          type: boolean
      example:
        superUser: false
      x-apiture-version: 1.0.0
    bankingCustomerOrganizationRoles:
      title: Banking Customer Organization Roles (v1.0.0)
      description: The banking-related roles the customer holds with respect to this organization.
      type: object
      required:
        - superUser
      allOf:
        - $ref: '#/components/schemas/bankingCustomerOrganizationRoleFields'
      example:
        superUser: false
      x-apiture-version: 1.0.0
    mutableBankingCustomerOrganizationRoles:
      title: Mutable Banking Customer Organization Roles (v1.0.0)
      description: The banking-related roles to assign to the customer with respect to this organization.
      type: object
      properties:
        superUser:
          description: If `true`, this customer has all permissions/entitlements with respect to the organization.
          type: boolean
      example:
        superUser: false
      x-apiture-version: 1.0.0
    bankingCustomerOrganizationAllows:
      title: Banking Customer Organization Allows (v1.0.0)
      description: Specific permissions the customer has with respect to the organization.
      type: object
      required:
        - openCommercialAccounts
        - manageRestrictedUsers
        - manageContact
        - manageAchSettlementType
        - manageAccountNickname
        - manageBusinessTransfers
      allOf:
        - $ref: '#/components/schemas/bankingCustomerOrganizationAllowFields'
      example:
        openCommercialAccounts: false
        manageRestrictedUsers: false
        manageContact: true
        manageAchSettlementType: false
        manageAccountNickname: true
        manageBusinessTransfers: false
      x-apiture-version: 1.0.0
    bankingCustomerOrganizationAllowFields:
      title: Banking Customer Organization Allows (v1.0.0)
      description: Specific permissions the customer has with respect to the organization.
      type: object
      x-apiture-fragment: true
      properties:
        openCommercialAccounts:
          description: If `true`, the customer may open new commerical (business) banking accounts on behalf of the organization.
          type: boolean
        manageRestrictedUsers:
          description: If `true`, the customer may manage restricted users (also known as "subusers") on behalf of the organization.
          type: boolean
        manageContact:
          description: If `true`, the customer may manage the organization's contact data (addresses, phone numbers, email addresses).
          type: boolean
        manageAchSettlementType:
          description: If `true`, the customer may change the organization's default ACH settlement reporting settings (detailed or summary).
          type: boolean
        manageAccountNickname:
          description: If `true`, the customer may change the `nickname` of the organization's accounts.
          type: boolean
        manageBusinessTransfers:
          description: If `true`, the customer may manage account to account business transfers involving the organization's accounts. This does not include ACH payment batches and wire transfers.
          type: boolean
      x-apiture-version: 1.0.0
    resourceId:
      x-apiture-version: 1.0.1
      title: Resource Identifier (v1.0.1)
      description: The unique, opaque system identifier for a resource. This case-sensitive ID is also used as path parameters in URLs or in other properties or parameters that reference a resource by ID rather than URL.
      type: string
      pattern: ^[-_:.~$a-zA-Z0-9]{6,48}$
      minLength: 6
      maxLength: 48
      x-resolved-from: ../../common/openapi.yaml#/components/schemas/resourceId
    problemResponse:
      title: Problem Response (v0.4.1)
      x-apiture-version: 0.4.1
      description: API problem or error response, as per [RFC 9457 application/problem+json](https://tools.ietf.org/html/rfc9457).
      type: object
      allOf:
        - $ref: '#/components/schemas/abstractBody'
        - $ref: '#/components/schemas/apiProblem'
      example:
        id: 3fbad566-be86-4b22-9ba6-3ca99fdc0799
        type: https://static.api.apiture.com/errors/noSuchAccount/v1.0.0
        title: Account Not Found
        status: 422
        occurredAt: '2022-04-25T12:42:21.375Z'
        detail: No account exists for the given account reference
        instance: https://static.api.apiture.com/banking/transfers/bb709151-575041fcd617
      x-resolved-from: ../../common/openapi.yaml#/components/schemas/problemResponse
    abstractBody:
      title: Abstract Body (v0.2.0)
      x-apiture-version: 0.2.0
      description: An abstract schema used to define other request and response body model schemas.
      x-apiture-fragment: true
      type: object
      properties: {}
      x-resolved-from: ../../common/openapi.yaml#/components/schemas/abstractBody
    initialBankingOrganizationFields:
      x-apiture-version: 1.3.0
      title: Initial Banking Organization Fields (v1.3.0)
      description: Initial Banking Organization Fields. This fragment represents properties that may be passed when creating an organization but which are immutable after creating an organization.
      type: object
      x-apiture-fragment: true
      properties:
        taxId:
          description: |-
            The tax identification number (TIN) or Employer Identification Number (EIN) of the business/organization. Note: If the organization is a sole proprietorship, the `taxId` is the proprietor's social security number. This value may be masked for security purposes; masked values have one or more leading `*` characters followed by the last four digits of the ID.

            Use the `?unmasked=true` query  to request that the response include unmasked data.

            A TIN or EIN may contain one or two `-` characters in request bodies. TINs/EINs may be passed as `NN-NNNNNNN` (regular EIN format) or `NNN-NN-NNNN` (when using a sole proprietor's SSN). The `-` characters are removed in responses, yielding the unformatted 9 digits or masked value such as `*****9876` or `*9876`.
          x-apiture-pii: true
          type: string
          format: text
          minLength: 5
          maxLength: 11
        lookupId:
          description: A more convenient ID to allow looking up the organization. If not passed, the service will assign a value.
          type: string
          format: text
          minLength: 5
          maxLength: 20
        coreOrganizationId:
          description: The ID of the organization, as stored and managed in the banking core.
          allOf:
            - $ref: '#/components/schemas/readOnlyResourceId'
        contactName:
          description: The name of the organization's primary contact.
          type: string
          format: text
          minLength: 1
          maxLength: 50
      x-resolved-from: ../../adminOrganizations/openapi.yaml#/components/schemas/initialBankingOrganizationFields
    readOnlyResourceId:
      x-apiture-version: 1.0.1
      title: Read-only Resource Identifier (v1.0.1)
      description: The unique, opaque system-assigned identifier for a resource. This case-sensitive ID is also used in URLs as path parameters or in other properties or parameters that reference a resource by ID rather than URL. Resource IDs are immutable.
      readOnly: true
      allOf:
        - $ref: '#/components/schemas/resourceId'
      x-resolved-from: ../../common/openapi.yaml#/components/schemas/readOnlyResourceId
    externalResourceId:
      x-apiture-version: 1.1.0
      title: External Resource Identifier (v1.1.0)
      description: The unique, opaque system identifier for an external resource. This case-sensitive ID is also used as path parameters in URLs or in other properties or parameters that reference an external resource by ID rather than URL.
      type: string
      format: text
      readOnly: true
      minLength: 1
      maxLength: 256
      x-resolved-from: ../../common/openapi.yaml#/components/schemas/externalResourceId
    institutionId:
      x-apiture-version: 1.1.0
      title: Institution ID (v1.1.0)
      description: The unique immutable identifier of a financial institution.
      type: string
      pattern: ^[A-Z0-9_]{2,8}$
      maxLength: 8
      minLength: 2
      example: TIBURON
      x-resolved-from: ../../common/openapi.yaml#/components/schemas/institutionId
    apiProblem:
      x-apiture-version: 1.2.1
      title: API Problem (v1.2.1)
      description: API problem or error, as per [RFC 7807 application/problem+json](https://tools.ietf.org/html/rfc7807).
      type: object
      properties:
        type:
          type: string
          format: uri-reference
          description: |
            A [URI reference (RFC3986)](https://tools.ietf.org/html/rfc3986) that identifies the problem type. If present, this is the URL of human-readable HTML documentation for the problem type. When this member is not present, its value is assumed to be `"about:blank"`.
          example: https://static.api.apiture.com/errors/forbidden/v1.0.0
          maxLength: 2048
        title:
          type: string
          description: |
            A short, human-readable summary of the problem type. The title is usually the same for all problem with the same `type`.
          maxLength: 120
          format: text
          example: User is not authorized to perform the requested action or access the requested resource.
        status:
          type: integer
          format: int32
          description: |
            The [HTTP status code](https://datatracker.ietf.org/doc/html/rfc7231#section-6) for this occurrence of the problem.
          minimum: 100
          maximum: 599
          example: 403
        detail:
          type: string
          description: |
            A human-readable explanation specific to this occurrence of the problem.
          maxLength: 256
          format: text
          example: User is not authorized to perform this operation.
        instance:
          type: string
          format: uri-reference
          description: |
            A URI reference that identifies the specific occurrence of the problem. This is the URI of an API resource that the problem is related to, with a unique error correlation ID URI fragment
          example: https://prduction.api.apiture.com/banking/accounts/ad80fc3e722q5402a#189c13ff-c54c-45f7-b8e0-c88984ba724d
          maxLength: 2048
        id:
          description: The unique identifier for this problem. This is an immutable opaque string.
          $ref: '#/components/schemas/readOnlyResourceId'
        occurredAt:
          description: The timestamp when the problem occurred, in [RFC 3339](https://tools.ietf.org/html/rfc3339) date-time `YYYY-MM-DDThh:mm:ss.sssZ` format, UTC.
          $ref: '#/components/schemas/readOnlyTimestamp'
        problems:
          description: Optional root-causes if there are multiple problems in the request or API call processing.
          type: array
          maxItems: 128
          items:
            $ref: '#/components/schemas/apiProblem'
        attributes:
          type: object
          description: Additional optional attributes related to the problem. This data conforms to the schema associated with the error type.
      example:
        id: 3fbad566-be86-4b22-9ba6-3ca99fdc0799
        type: https://static.api.apiture.com/errors/accountNotFound/v1.0.0
        title: Account Not Found
        status: 422
        occurredAt: '2022-04-25T12:42:21.375Z'
        detail: No account exists at the given account_url
        instance: https://static.api.apiture.com/banking/transfers/bb709151-575041fcd617
      x-resolved-from: ../../common/openapi.yaml#/components/schemas/apiProblem
    readOnlyTimestamp:
      title: Read-Only Timestamp (v1.0.0)
      description: 'A readonly or derived timestamp (an instant in time) formatted in [RFC 3339](https://tools.ietf.org/html/rfc3339) `date-time` UTC format: `YYYY-MM-DDThh:mm:ss.sssZ`.'
      type: string
      minLength: 20
      maxLength: 30
      format: date-time
      readOnly: true
      example: '2021-10-30T19:06:04.250Z'
      x-apiture-since: 0.4.0
      x-resolved-from: ../../common/openapi.yaml#/components/schemas/readOnlyTimestamp
      x-apiture-version: 1.0.0
    requiredIdentityChallenge:
      x-apiture-version: 1.2.3
      title: Required Challenge (v1.2.3)
      description: A request from the service for the user to verify their identity. This contains a challenge ID, the corresponding operation ID, and a list of challenge factors for identity verification. The user must complete one of these challenge factors to satisfy the challenge. This schema defines the attributes in the 401 [Unauthorized problem response](#schema-apiProblem) when the 401 problem type name is `challengeRequired`. See the "Challenge API" for details.
      type: object
      required:
        - operationId
        - challengeId
        - factors
      properties:
        operationId:
          $ref: '#/components/schemas/challengeOperationId'
        challengeId:
          description: The unique ID of this challenge instance. This is an opaque string. This is passed when starting a challenge factor or when validating the identity challenge responses.
          $ref: '#/components/schemas/readOnlyResourceId'
        factors:
          description: 'A list of challenge factors. The user must complete one of these challenge factors. The `labels` in each factor identify one or more channels the user may use, such as a list of email addresses the system may use to send a one-time passcode to the user. ***Note**: The same channel may be used by multiple factors in the array of factors. For example, the user''s primary mobile phone number may be used for both an `sms` factor and a `voice` factor.'
          type: array
          minItems: 1
          maxItems: 8
          items:
            $ref: '#/components/schemas/challengeFactor'
      example:
        operationId: createTransfer
        challengeId: 0504076c566a3cf7009c
        factors:
          - type: sms
            labels:
              - '9876'
            id: 85c0ee5753fcd0b0953f
          - type: voice
            labels:
              - '9876'
            id: d089e10a80a8627df37b
          - type: voice
            labels:
              - '6754'
            id: 10506ecf9d1c2ee00403
          - type: email
            labels:
              - an****nk@example.com
              - an****98@example.com
            id: e917d671cb2f030b56f1
          - type: authenticatorToken
            labels:
              - Acme fob
            id: fe6c452d7da0bbb4e407
          - type: securityQuestions
            securityQuestions:
              questions:
                - id: q1
                  prompt: What is your mother's maiden name?
                - id: q4
                  prompt: What is your high school's name?
                - id: q9
                  prompt: What is the name of your first pet?
            id: df33c6f88a37d6b3f0a6
      x-resolved-from: ../../common/openapi.yaml#/components/schemas/requiredIdentityChallenge
    challengeOperationId:
      x-apiture-version: 1.0.1
      title: Challenge Operation ID (v1.0.1)
      description: The ID of an operation/action for which the user must verify their identity via an identity challenge. This is passed when starting a challenge factor or when validating the identity challenge responses.
      type: string
      pattern: ^[-a-zA-Z0-9$_]{6,48}$
      minLength: 6
      maxLength: 48
      x-resolved-from: ../../common/openapi.yaml#/components/schemas/challengeOperationId
    challengeFactor:
      x-apiture-version: 1.2.1
      title: Challenge Factor (v1.2.1)
      description: A challenge factor. See [`requiredIdentityChallenge`](#schema-requiredIdentityChallenge) for multiple examples.
      type: object
      required:
        - type
      properties:
        id:
          description: |-
            The ID of an a challenge factor. This ID is unique within the challenge factors associated with a challenge. The client should pass this `id` value as the `factorId` when starting or verifying a challenge factor.

            *Note*: The `id` will become `required` in a future update to this schema.
          $ref: '#/components/schemas/challengeFactorId'
        type:
          $ref: '#/components/schemas/challengeFactorType'
        labels:
          description: A list of text label which identifies the channel(s) through which the user completes the challenge. For an `sms` or `voice` challenge, the only label item is the last four digits of the corresponding phone number. For an `email` challenge, each label is the masked email address.
          type: array
          minItems: 1
          maxItems: 4
          items:
            type: string
            maxLength: 300
            format: text
        securityQuestions:
          $ref: '#/components/schemas/challengeSecurityQuestions'
      example:
        type: sms
        labels:
          - '9876'
      x-resolved-from: ../../common/openapi.yaml#/components/schemas/challengeFactor
    challengeFactorId:
      title: Challenge Factor ID (v1.0.0)
      description: The ID of an a challenge factor. This ID is unique within the factors offered with a challenge.
      type: string
      pattern: ^[-a-zA-Z0-9$_]{3,48}$
      minLength: 3
      maxLength: 48
      x-resolved-from: ../../common/openapi.yaml#/components/schemas/challengeFactorId
      x-apiture-version: 1.0.0
    challengeFactorType:
      title: Challenge Factor Type (v1.0.0)
      description: |+
        The name of challenge factor.

        <strong><code>challengeFactorType</code></strong> strings may have one of the following
        [enumerated values](https://developer.apiture.com/docs/concepts/label-groups#enumerations):

        <table>
        <tr>
          <th>Value</th><th>Description</th>
        </tr>

        <tr>
            <td><strong><code>sms</code></strong></td><td>SMS: <p>One-time passcode sent to the primary mobile phone number</p>
        </td>
            </tr>
        <tr>
            <td><strong><code>email</code></strong></td><td>Email: <p>One-time passcode sent to the primary email address</p>
        </td>
            </tr>
        <tr>
            <td><strong><code>voice</code></strong></td><td>Voice: <p>One-time passcode communicated via automated voice phone call</p>
        </td>
            </tr>
        <tr>
            <td><strong><code>authenticatorToken</code></strong></td><td>authenticator Token: <p>One-time passcode issued by a pre-registered hardware device, such as a token key fob, or an authenticator app</p>
        </td>
            </tr>
        <tr>
            <td><strong><code>securityQuestions</code></strong></td><td>Security Questions: <p>Prompt with the user&#39;s security questions registered with their security profile</p>
        </td>
            </tr>
        </table>

      type: string
      x-apiture-enum: challengeFactorType
      enum:
        - sms
        - email
        - voice
        - securityQuestions
        - authenticatorToken
      x-resolved-from: ../../common/openapi.yaml#/components/schemas/challengeFactorType
      x-apiture-version: 1.0.0
    challengeSecurityQuestions:
      x-apiture-version: 1.0.1
      title: Challenge Security Questions (v1.0.1)
      description: Describes a `securityQuestions` challenge. This is omitted if the challenge `type` is not `securityQuestions`.
      type: object
      required:
        - questions
      properties:
        questions:
          description: The array of security questions.
          type: array
          minItems: 1
          maxItems: 8
          items:
            $ref: '#/components/schemas/challengeSecurityQuestion'
      example:
        questions:
          - id: q1
            prompt: What is your mother's maiden name?
          - id: q4
            prompt: What is your high school's name?
          - id: q9
            prompt: What is the name of your first pet?
      x-resolved-from: ../../common/openapi.yaml#/components/schemas/challengeSecurityQuestions
    challengeSecurityQuestion:
      x-apiture-version: 1.0.1
      title: Challenge Security Question (v1.0.1)
      description: A single security question within the `questions` array of the [`challengeSecurityQuestions`](#schema-challengeSecurityQuestions)
      type: object
      required:
        - id
        - prompt
      properties:
        id:
          description: The unique ID of security question prompt. This should be included in the [`challengeVerification`](#schema-challengeVerification) response as the `promptId`.
          $ref: '#/components/schemas/challengePromptId'
        prompt:
          description: The text prompt of this security question.
          type: string
          format: text
          maxLength: 80
      example:
        id: 74699fa628911e762ea5
        prompt: What is your mother's maiden name?
      x-resolved-from: ../../common/openapi.yaml#/components/schemas/challengeSecurityQuestion
    challengePromptId:
      title: Challenge Prompt ID (v1.0.0)
      description: The unique ID of a prompt (such as a security question) in a challenge factor.
      type: string
      pattern: ^[-_:.~$a-zA-Z0-9]+$
      minLength: 1
      maxLength: 48
      x-resolved-from: ../../common/openapi.yaml#/components/schemas/challengePromptId
      x-apiture-version: 1.0.0
  securitySchemes:
    clientCredentials:
      type: oauth2
      description: Client Credentials OAuth2 flow that allows a secure service application to access resources. (This access is not used with insecure clients such as web or mobile applications.) See details at [Secure Access](https://dx.apiture.com/docs/api/guides/secure-access/).
      flows:
        clientCredentials:
          tokenUrl: https://dev-oidc.apiture-comm-nonprod.com/oidc/token
          scopes:
            bankingAdmin/read: Read a wide variety of banking and other financial institution and customer data.
            bankingAdmin/write: Write a wide variety of banking and other financial institution and customer data.
            adminData/read: Read access to non-banking data and resources.
            adminData/write: Read, write, and delete access to non-banking data and resources.
            samlPlatform/write: Write access to security-critical Apiture internal key and certificate data.
            samlPlatform/read: Read access to integration resources, e.g. supported codes.
            samlAdmin/write: Write, delete and execute access to service provider metadata and SAML computation operations.
            systemIntegrations/read: Read access to integration definition resources.
            systemIntegrations/write: Write, delete and execute access to integration definition resources.
      x-resolved-from: ../../common/openapi.yaml#/components/securitySchemes/clientCredentials
  x-apiture-errors:
    noSuchCustomer:
      description: There is no customer matching the requested banking customer parameter.
      remediation: Pass the `id` or `referenceId` of a valid banking organization.
    noSuchOrganization:
      description: There is no organization matching the requested organization parameter.
      remediation: Pass the `id` or `referenceId` of a valid banking organization.
    invalidRoleForRestrictedUser:
      description: The requested roles may not be assigned to a restricted user.
      remediation: Select a non-restricted user.
    invalidPermissionForRestrictedUser:
      description: The requested permissions may not be assigned to a restricted user.
      remediation: Select a non-restricted user.
    badRequest:
      description: The request body and/or parameters was not well-formed.
      remediation: Correct any syntax or schema errors in the request body or parameters.
      x-resolved-from: ../../common/openapi.yaml#/components/x-apiture-errors/badRequest
    unauthorized:
      description: The request lacks valid authentication credentials for the target resource or operation.
      remediation: Authenticate the user and pass the required authorization with the request.
      x-resolved-from: ../../common/openapi.yaml#/components/x-apiture-errors/unauthorized
    forbidden:
      description: The user or agent is not allowed to perform this operation; authentication credentials were provided in the request, but the server considers them insufficient to grant access.
      remediation: Check the user's permissions and entitlements before attempting the operation.
      x-resolved-from: ../../common/openapi.yaml#/components/x-apiture-errors/forbidden
    customerDisabled:
      description: The customer is disabled.
      remediation: Have the customer contact the financial institution for support.
      x-resolved-from: ../../common/openapi.yaml#/components/x-apiture-errors/customerDisabled
    antiMalwareRequired:
      description: The financial institution requires the customer to have anti-malware software installed.
      remediation: Direct the user to the software requirements guide to install the correct anti-malware software.
      x-resolved-from: ../../common/openapi.yaml#/components/x-apiture-errors/antiMalwareRequired
    modificationForbidden:
      description: The customer is properly authenticated but not authorized to create, modify, or delete resources.
      remediation: Avoid modification operation for customers with read-only authorization.
      x-resolved-from: ../../common/openapi.yaml#/components/x-apiture-errors/modificationForbidden
    challengeRequired:
      description: The operation requires the customer to complete an identity challenge.
      remediation: Complete the challenge as per the problem response, and add an additional `Challenge` header to the call.
      attributes:
        $ref: '#/components/schemas/requiredIdentityChallenge'
      x-resolved-from: ../../common/openapi.yaml#/components/x-apiture-errors/challengeRequired
    challengeBlocked:
      description: The user has failed challenges too many times and is blocked from attempting more or performing operations which require additional authentication.
      remediation: Have the user end their login session and login again.
      x-resolved-from: ../../common/openapi.yaml#/components/x-apiture-errors/challengeBlocked
    noIdentityChallengeFactors:
      description: This operation requires an identity challenge, but the user does not have the necessary registered authentication factors.
      remediation: Have the user register one or more challenge security code delivery factors.
      x-resolved-from: ../../common/openapi.yaml#/components/x-apiture-errors/noIdentityChallengeFactors
    invalidIdentityChallengeHeader:
      description: The additional on-time `Challenge` header in this request is expired, already used, or otherwise invalid.
      remediation: Supply a valid, unexpired, unclaimed `Challenge` header in the request.
      x-resolved-from: ../../common/openapi.yaml#/components/x-apiture-errors/invalidIdentityChallengeHeader
    notFound:
      description: The resource at the requested URL does not exist.
      remediation: Use the URL of an existing resource.
      x-resolved-from: ../../common/openapi.yaml#/components/x-apiture-errors/notFound
    tooManyRequests:
      description: The client has sent too many requests in a given amount of time, exceeding rate limiting.
      remediation: Slow down the rate of API calls.
      x-resolved-from: ../../common/openapi.yaml#/components/x-apiture-errors/tooManyRequests
  responses:
    '400':
      description: |
        Bad Request. The request body, request headers, and/or query parameters are not well-formed.

        This problem response may have one of the following `type` values:
        * [`https://static.api.apiture.com/errors/badRequest/v1.0.0`](https://static.api.apiture.com/errors/badRequest/v1.0.0)<br>
          The request body and/or parameters was not well-formed.
          Remediation: Correct any syntax or schema errors in the request body or parameters.
      x-apiture-errors:
        - $ref: '#/components/x-apiture-errors/badRequest'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/problemResponse'
            example:
              id: 3fbad566-be86-4b22-9ba6-3ca99fdc0799
              type: https://static.api.apiture.com/errors/badRequest/v1.0.0
              title: Bad Request
              status: 400
              occurredAt: '2022-04-25T12:42:21.375Z'
              detail: Input did not parse as JSON
              instance: https://static.api.apiture.com/banking/transfers/bb709151-575041fcd617
        application/json:
          schema:
            $ref: '#/components/schemas/problemResponse'
            example:
              id: 3fbad566-be86-4b22-9ba6-3ca99fdc0799
              type: https://static.api.apiture.com/errors/badRequest/v1.0.0
              title: Bad Request
              status: 400
              occurredAt: '2022-04-25T12:42:21.375Z'
              detail: Input did not parse as JSON
              instance: https://static.api.apiture.com/banking/transfers/bb709151-575041fcd617
      x-resolved-from: ../../common/openapi.yaml#/components/responses/400
    '401':
      description: |
        Unauthorized. The operation requires authentication but no authentication or insufficient authentication was given.

        This problem response may have one of the following `type` values:
        * [`https://static.api.apiture.com/errors/unauthorized/v1.0.0`](https://static.api.apiture.com/errors/unauthorized/v1.0.0)<br>
          The request lacks valid authentication credentials for the target resource or operation.
          Remediation: Authenticate the user and pass the required authorization with the request.
      x-apiture-errors:
        - $ref: '#/components/x-apiture-errors/unauthorized'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/problemResponse'
            example:
              id: 3fbad566-be86-4b22-9ba6-3ca99fdc0799
              type: https://static.api.apiture.com/errors/unauthorized/v1.0.0
              title: Unauthorized
              status: 401
              occurredAt: '2022-04-25T12:42:21.375Z'
              detail: The request lacks valid authentication credentials
              instance: https://static.api.apiture.com/banking/transfers/bb709151-575041fcd617
        application/json:
          schema:
            $ref: '#/components/schemas/problemResponse'
            example:
              id: 3fbad566-be86-4b22-9ba6-3ca99fdc0799
              type: https://static.api.apiture.com/errors/unauthorized/v1.0.0
              title: Unauthorized
              status: 401
              occurredAt: '2022-04-25T12:42:21.375Z'
              detail: The request lacks valid authentication credentials
              instance: https://static.api.apiture.com/banking/transfers/bb709151-575041fcd617
      x-resolved-from: ../../common/openapi.yaml#/components/responses/401
    '403':
      description: |
        Forbidden. The authenticated caller is not authorized to perform the requested operation.

        This problem response may have one of the following `type` values:
        * [`https://static.api.apiture.com/errors/forbidden/v1.0.0`](https://static.api.apiture.com/errors/forbidden/v1.0.0)<br>
          The user or agent is not allowed to perform this operation; authentication credentials were provided in the request, but the server considers them insufficient to grant access.
          Remediation: Check the user's permissions and entitlements before attempting the operation.

        * [`https://static.api.apiture.com/errors/customerDisabled/v1.0.0`](https://static.api.apiture.com/errors/customerDisabled/v1.0.0)<br>
          The customer is disabled.
          Remediation: Have the customer contact the financial institution for support.

        * [`https://static.api.apiture.com/errors/antiMalwareRequired/v1.0.0`](https://static.api.apiture.com/errors/antiMalwareRequired/v1.0.0)<br>
          The financial institution requires the customer to have anti-malware software installed.
          Remediation: Direct the user to the software requirements guide to install the correct anti-malware software.

        * [`https://static.api.apiture.com/errors/modificationForbidden/v1.0.0`](https://static.api.apiture.com/errors/modificationForbidden/v1.0.0)<br>
          The customer is properly authenticated but not authorized to create, modify, or delete resources.
          Remediation: Avoid modification operation for customers with read-only authorization.

        * [`https://static.api.apiture.com/errors/challengeRequired/v1.0.0`](https://static.api.apiture.com/errors/challengeRequired/v1.0.0)<br>
          The operation requires the customer to complete an identity challenge.
          Remediation: Complete the challenge as per the problem response, and add an additional `Challenge` header to the call.
        The `attributes` object in the error may have the properties defined by the [`requiredIdentityChallenge` schema](#schema-requiredIdentityChallenge).
        * [`https://static.api.apiture.com/errors/challengeBlocked/v1.0.0`](https://static.api.apiture.com/errors/challengeBlocked/v1.0.0)<br>
          The user has failed challenges too many times and is blocked from attempting more or performing operations which require additional authentication.
          Remediation: Have the user end their login session and login again.

        * [`https://static.api.apiture.com/errors/noIdentityChallengeFactors/v1.0.0`](https://static.api.apiture.com/errors/noIdentityChallengeFactors/v1.0.0)<br>
          This operation requires an identity challenge, but the user does not have the necessary registered authentication factors.
          Remediation: Have the user register one or more challenge security code delivery factors.

        * [`https://static.api.apiture.com/errors/invalidIdentityChallengeHeader/v1.0.0`](https://static.api.apiture.com/errors/invalidIdentityChallengeHeader/v1.0.0)<br>
          The additional on-time `Challenge` header in this request is expired, already used, or otherwise invalid.
          Remediation: Supply a valid, unexpired, unclaimed `Challenge` header in the request.
      x-apiture-errors:
        - $ref: '#/components/x-apiture-errors/forbidden'
        - $ref: '#/components/x-apiture-errors/customerDisabled'
        - $ref: '#/components/x-apiture-errors/antiMalwareRequired'
        - $ref: '#/components/x-apiture-errors/modificationForbidden'
        - $ref: '#/components/x-apiture-errors/challengeRequired'
        - $ref: '#/components/x-apiture-errors/challengeBlocked'
        - $ref: '#/components/x-apiture-errors/noIdentityChallengeFactors'
        - $ref: '#/components/x-apiture-errors/invalidIdentityChallengeHeader'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/problemResponse'
            example:
              id: 3fbad566-be86-4b22-9ba6-3ca99fdc0799
              type: https://static.api.apiture.com/errors/forbidden/v1.0.0
              title: Forbidden
              status: 403
              occurredAt: '2022-04-25T12:42:21.375Z'
              detail: The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation
              instance: https://static.api.apiture.com/banking/transfers/bb709151-575041fcd617
        application/json:
          schema:
            $ref: '#/components/schemas/problemResponse'
            example:
              id: 3fbad566-be86-4b22-9ba6-3ca99fdc0799
              type: https://static.api.apiture.com/errors/forbidden/v1.0.0
              title: Forbidden
              status: 403
              occurredAt: '2022-04-25T12:42:21.375Z'
              detail: The request has valid authentication, but the authenticated agent is forbidden from accessing this resource or operation
              instance: https://static.api.apiture.com/banking/transfers/bb709151-575041fcd617
      x-resolved-from: ../../common/openapi.yaml#/components/responses/403
    '404':
      description: |
        Not found. There is no such resource at the request URL.

        This problem response may have one of the following `type` values:
        * [`https://static.api.apiture.com/errors/notFound/v1.0.0`](https://static.api.apiture.com/errors/notFound/v1.0.0)<br>
          The resource at the requested URL does not exist.
          Remediation: Use the URL of an existing resource.
      x-apiture-errors:
        - $ref: '#/components/x-apiture-errors/notFound'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/problemResponse'
            example:
              id: 3fbad566-be86-4b22-9ba6-3ca99fdc0799
              type: https://static.api.apiture.com/errors/notFound/v1.0.0
              title: Not Found
              status: 404
              occurredAt: '2022-04-25T12:42:21.375Z'
              detail: The resource at the request URL does not exist.
              instance: https://static.api.apiture.com/banking/transfers/bb709151-575041fcd617
        application/json:
          schema:
            $ref: '#/components/schemas/problemResponse'
            example:
              id: 3fbad566-be86-4b22-9ba6-3ca99fdc0799
              type: https://static.api.apiture.com/errors/notFound/v1.0.0
              title: Not Found
              status: 404
              occurredAt: '2022-04-25T12:42:21.375Z'
              detail: The resource at the request URL does not exist.
              instance: https://static.api.apiture.com/banking/transfers/bb709151-575041fcd617
      x-resolved-from: ../../common/openapi.yaml#/components/responses/404
    '429':
      description: |
        Too Many Requests. The client has sent too many requests in a given amount of time.

        This problem response may have one of the following `type` values:
        * [`https://static.api.apiture.com/errors/tooManyRequests/v1.0.0`](https://static.api.apiture.com/errors/tooManyRequests/v1.0.0)<br>
          The client has sent too many requests in a given amount of time, exceeding rate limiting.
          Remediation: Slow down the rate of API calls.
      x-apiture-errors:
        - $ref: '#/components/x-apiture-errors/tooManyRequests'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/problemResponse'
            example:
              id: 3fbad566-be86-4b22-9ba6-3ca99fdc0799
              type: https://static.api.apiture.com/errors/tooManyRequests/v1.0.0
              title: Too Many Requests
              status: 429
              occurredAt: '2022-04-25T12:42:21.375Z'
              detail: The user has sent too many requests in a given amount of time.
              instance: https://static.api.apiture.com/banking/transfers/bb709151-575041fcd617
        application/json:
          schema:
            $ref: '#/components/schemas/problemResponse'
            example:
              id: 3fbad566-be86-4b22-9ba6-3ca99fdc0799
              type: https://static.api.apiture.com/errors/tooManyRequests/v1.0.0
              title: Too Many Requests
              status: 429
              occurredAt: '2022-04-25T12:42:21.375Z'
              detail: The user has sent too many requests in a given amount of time.
              instance: https://static.api.apiture.com/banking/transfers/bb709151-575041fcd617
      x-resolved-from: ../../common/openapi.yaml#/components/responses/429
    4XX:
      description: Client Request Problem. The client request had a problem not listed under another specific 400-level HTTP response code. View the `detail` in the problem response for additional details.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/problemResponse'
            example:
              id: 3fbad566-be86-4b22-9ba6-3ca99fdc0799
              type: https://static.api.apiture.com/errors/methodNotAllowed/v1.0.0
              title: Method Not Allowed
              status: 405
              occurredAt: '2022-04-25T12:42:21.375Z'
              detail: This HTTP method is not allowed for the given resource URL.
              instance: https://static.api.apiture.com/banking/transfers/bb709151-575041fcd617
        application/json:
          schema:
            $ref: '#/components/schemas/problemResponse'
            example:
              id: 3fbad566-be86-4b22-9ba6-3ca99fdc0799
              type: https://static.api.apiture.com/errors/methodNotAllowed/v1.0.0
              title: Method Not Allowed
              status: 405
              occurredAt: '2022-04-25T12:42:21.375Z'
              detail: This HTTP method is not allowed for the given resource URL.
              instance: https://static.api.apiture.com/banking/transfers/bb709151-575041fcd617
      x-resolved-from: ../../common/openapi.yaml#/components/responses/4XX
    5XX:
      description: Server Problem. The server encountered a problem not listed under another specific 500-level HTTP response code. View the `detail` in the problem response for additional details.
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/problemResponse'
            example:
              id: 3fbad566-be86-4b22-9ba6-3ca99fdc0799
              type: https://static.api.apiture.com/errors/gatewayTimeout/v1.0.0
              title: Insufficient Storage
              status: 507
              occurredAt: '2022-04-25T12:42:21.375Z'
              detail: The server is unable to store the representation needed to successfully complete the request.
              instance: https://static.api.apiture.com/banking/transfers/bb709151-575041fcd617
        application/json:
          schema:
            $ref: '#/components/schemas/problemResponse'
            example:
              id: 3fbad566-be86-4b22-9ba6-3ca99fdc0799
              type: https://static.api.apiture.com/errors/gatewayTimeout/v1.0.0
              title: Insufficient Storage
              status: 507
              occurredAt: '2022-04-25T12:42:21.375Z'
              detail: The server is unable to store the representation needed to successfully complete the request.
              instance: https://static.api.apiture.com/banking/transfers/bb709151-575041fcd617
      x-resolved-from: ../../common/openapi.yaml#/components/responses/5XX
x-resolved-from: ../../adminCustomerOrganizations/status-codes-openapi.yaml
x-resolved-at: '2024-12-09T22:04:08.111Z'
x-apiture-annotated-at: '2024-12-09T22:04:08.344Z'
