KeyBank Wire Inquiry API

The Wire Inquiry API tracks the status and delivery of wire transfers associated with commercial KeyBank accounts. It exposes operations to list wire transactions, retrieve detailed information for a specific wire by transaction id, and a health check, giving treasury teams real-time visibility into outbound and inbound wire activity for reconciliation. Authenticated with OAuth2 bearer tokens and mutual TLS client certificates over https://partner-api.key.com, with a QV sandbox for integration testing.

OpenAPI Specification

keycorp-wire-inquiry-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Wire Inquiry
  version: 1.3.6
  description: Retrieve the status and details of a wire transaction.
  contact:
    name: KeyBank Developer Support
    email: embedded_banking_support@keybank.com
servers:
#---------------------------------------------------
# List of Environments for the API
#---------------------------------------------------
  - url: https://partner-api-qv.key.com
    description: Non-Production environment (QV)
  - url: https://partner-api.key.com
    description: Production and Simulator environment
tags:
  - name: HealthCheck
    description: Verify you can connect to the API service.
  - name: Wire
    description: Wire Inquiry functions to list wires and retrieve wire details
security:
  - bearerAuth: []
paths:
#---------------------------------------------------
# List of API flows
#---------------------------------------------------  
  /wireInquiry/v1/healthCheck:
    get:
      tags:
        - HealthCheck
      summary: Health check
      description: Verify you can connect to the API service. A bearer token is required.
      operationId: healthCheck
      security:
        - bearerAuth: []
      responses:
        '200':
          description: Successful response
          headers:
            X-CorrelationId:
              description: A unique identifier generated for each transaction that remains
                with the transaction through the chain of API operations.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HealthResponse'
              example:
                Status: Ok
                Source: Roundtrip
                Timestamp: '2022-09-15T04:49:03'
                ClientIp: 192.0.2.1
                X-Forwarded-For: '[192.0.2.1]'
  /wireInquiry/v1/transactions/list:
    post:
      tags:
        - Wire
      summary: Search wire transfers
      operationId: searchWireTransactions
      description: Based on search criteria provided, get a list of wire transfers. The account number and date range are required for every request.
      security:
        - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - accountNumber
                - fromDate
                - toDate
              properties:
                accountNumber:
                  type: string
                  description: The bank account number. This number cannot exceed 16
                    characters.
                  minLength: 1
                  maxLength: 16
                  pattern: ^\d+$
                  examples:
                    - '3123456789'
                fromDate:
                  type: string
                  format: date
                  description: >-
                    Start date for the date range. This date can be the current
                    day or within 180 days prior to the current date. To search
                    for a single date, this value will be the same as the
                    toDate. Format: YYYY-MM-DD
                  examples:
                    - '2024-02-01'
                toDate:
                  type: string
                  format: date
                  description: >-
                    End date for the date range. This date must be the same or
                    later than the start date (fromDate). To search for a single
                    date, this value will be the same as the fromDate.  To
                    search for a range of dates, make sure the date range does
                    not exceed 31 days. Format: YYYY-MM-DD
                  examples:
                    - '2024-02-01'
                minimumAmount:
                  allOf:
                    - $ref: '#/components/schemas/Amount0To1B'
                  description: >-
                    The minimum dollar amount of the transaction. This amount
                    must be less than or equal to the maximum amount. Leave
                    blank or enter zero for no minimum amount.
                  examples:
                    - 0.5
                    - 100
                    - 75.1
                    - 83838.23
                    - '0.50'
                    - 75,020.52
                    - '74333.22'
                maximumAmount:
                  allOf:
                    - $ref: '#/components/schemas/Amount0To1B'
                  description: >-
                    The maximum dollar amount of the transaction. This amount
                    must be greater than or equal to the minimum amount. Leave
                    blank to retrieve all amounts. This amount cannot exceed one
                    billion dollars.
                  examples:
                    - 100
                    - 75.1
                    - 83838.23
                    - 75,020.52
                    - '74333.22'
                requestReference:
                  type: string
                  description: >-
                    A reference value for the original request that is useful
                    for traceability and reporting. The ID cannot exceed 32
                    characters.
                  maxLength: 32
                  examples:
                    - '1122334455'
                pageNumber:
                  type: integer
                  format: int32
                  minimum: 1
                  description: >-
                    The number of the page being viewed. This number must be
                    greater than or equal to 1.
                  examples:
                    - 1
                pageSize:
                  type: integer
                  format: int32
                  minimum: 1
                  maximum: 1000
                  description: >-
                    The number of records per page. This number must be greater
                    than or equal to 1 and cannot exceed 1000.
                  examples:
                    - 500
      responses:
        '200':
          description: Search results match the criteria
          headers:
            X-CorrelationId:
              description: >-
                A unique identifier generated for each transaction that remains
                with the transaction through the chain of API operations. The ID
                is unique to each request.
              schema:
                type: string
          content:
            application/json:
              schema:
                type: object
                properties:
                  transactions:
                    type: array
                    maxItems: 1000
                    items:
                      $ref: '#/components/schemas/WireListTransaction'
                  metadata:
                    $ref: '#/components/schemas/PageMetadata'
              example:
                transactions:
                  - transactionId: US99999000999999
                    transactionStatus: COMPLETED
                    transactionStatusTimestamp: '2026-01-12T12:18:01'
                    transactionDate: '2026-01-12'
                    transactionAmount: 32772.63
                    requestReference: '1122334455'
                    sendersReference: US99999000999999
                    creditor:
                      name: Global Markets LLC
                    creditorAccount:
                      accountNumber: '987654321'
                    debtor:
                      name: Paul Wilson
                    debtorAccount:
                      accountNumber: '123456789'
                    originator:
                      name: VAM TEST BANK
                    beneficiary:
                      name: MARKET CAPITAL
                metadata:
                  page:
                    pageNumber: 1
                    pageSize: 25
                    totalPages: 3
                    totalRecords: 75
                    lastPage: false
        '400':
          description: Bad input parameter
          headers:
            X-CorrelationId:
              description: >-
                A unique identifier generated for each transaction that remains
                with the transaction through the chain of API operations. The ID
                is unique to each request.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Exception'
              example:
                ErrorMessage: Error received from backend service
                TransactionId: 84293235-5d2c-42ba-afc3-a5d4afc5f88e27097
                X-CorrelationId: 929618f2-6163-bf73-51b0-6c54a8533c74
                TransactionTime: '2021-06-11T16:31:34.041Z'
                Api-Url: >-
                  https://partner-api-qv.key.com/wireInquiry/v1/transactions/list
                ServiceError:
                  metadata:
                    messages:
                      - code: Wire-List-400-toDate
                        message: toDate format must be YYYY-MM-DD
        '401':
          description: Unauthorized request
          headers:
            X-CorrelationId:
              description: >-
                A unique identifier generated for each transaction that remains
                with the transaction through the chain of API operations.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Exception'
              example:
                ErrorMessage: >-
                  Received request is unauthorized, please provide valid
                  credentials
                TransactionId: 0635f201-8fbb-418f-b93a-138d5103e2b91348
                X-CorrelationId: 929618f2-6163-bf73-51b0-6c54a8533c74
                TransactionTime: '2021-06-11T16:31:34.041Z'
                Api-Url: >-
                  https://partner-api-qv.key.com/wireInquiry/v1/transactions/list
        '403':
          description: Entitlements validation failed
          headers:
            X-CorrelationId:
              description: >-
                A unique identifier generated for each transaction that remains
                with the transaction through the chain of API operations.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Exception'
              example:
                ErrorMessage: Error received from backend service
                TransactionId: 84293235-5d2c-42ba-afc3-a5d4afc5f88e27097
                X-CorrelationId: 929618f2-6163-bf73-51b0-6c54a8533c74
                TransactionTime: '2021-06-11T16:31:34.041Z'
                Api-Url: >-
                  https://partner-api-qv.key.com/wireInquiry/v1/transactions/list
                ServiceError:
                  metadata:
                    messages:
                      - code: 403-Forbidden
                        message: Entitlements Validation Failed
        '408':
          description: Request timeout error
          headers:
            X-CorrelationId:
              description: >-
                A unique identifier generated for each transaction that remains
                with the transaction through the chain of API operations.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Exception'
              example:
                ErrorMessage: Error received from backend service
                TransactionId: 84293235-5d2c-42ba-afc3-a5d4afc5f88e27097
                X-CorrelationId: 929618f2-6163-bf73-51b0-6c54a8533c74
                TransactionTime: '2021-06-11T16:31:34.041Z'
                Api-Url: >-
                  https://partner-api-qv.key.com/wireInquiry/v1/transactions/list
                ServiceError:
                  metadata:
                    messages:
                      - code: Wire-List-408-timeout
                        message: >-
                          The request exceeded the timeout limit.  Please adjust
                          your request parameters and try again.
        '500':
          description: Unexpected server error
          headers:
            X-CorrelationId:
              schema:
                type: string
              description: >-
                A unique identifier generated for each transaction that remains
                with the transaction through the chain of API operations.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Exception'
              example:
                ErrorMessage: Error received from backend
                TransactionId: 84293235-5d2c-42ba-afc3-a5d4afc5f88e27097
                TransactionTime: '2021-06-11T16:31:34.041Z'
                X-CorrelationId: 929618f2-6163-bf73-51b0-6c54a8533c74
                Api-Url: >-
                  https://partner-api-qv.key.com/wireInquiry/v1/transactions/list
                ServiceError:
                  metadata:
                    messages:
                      - code: 500-InternalServerError
                        message: >-
                          An unexpected error occurred.  Please try again later
                          or contact support if the problem persists.
  /wireInquiry/v1/transactions/detail/{transactionId}:
    get:
      tags:
        - Wire
      summary: View the details of a wire transfer by the transaction ID
      operationId: searchWireTransaction
      description: >-
        Provide the transaction ID to retrieve all available fields for that
        wire transfer.
      security:
        - bearerAuth: []
      parameters:
        - name: transactionId
          in: path
          required: true
          description: The unique ID number associated with the original payment request.
          schema:
            maxLength: 100
            type: string
          example: US99999000999999
      responses:
        '200':
          description: A Wire transaction matches the provided transactionId
          headers:
            X-CorrelationId:
              description: >-
                A universal ID to trace the transaction across all the systems
                involved, useful for system logging and identification.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WireDetailTransaction'
              example:
                transactionId: US99999000999999
                transactionStatus: COMPLETED
                transactionStatusTimestamp: '2026-01-12T12:18:01'
                transactionDate: '2026-01-12'
                transactionAmount: 32772.63
                requestReference: '1122334455'
                sendersReference: US99999000999999
                remittanceInformation: Payment 01/12/2026_Invoice 123456789 Cust
                bankToBankInstructions: Final Payment
                customData: USER ID 1
                creditor:
                  name: Global Markets LLC
                  postalAddress:
                    type: Office
                    department: Financial
                    subDepartment: Sub financial
                    street: Columbus pike
                    buildingNumber: '123'
                    postalCode: '43240'
                    city: Columbus
                    region: OH
                    countryCode: US
                    addressLine: 123 SIM ST,STE W123 |SIMCITY OH 12345|I/US
                creditorAccount:
                  accountNumber: '987654321'
                  virtualAccountNumber: '95312346654532'
                debtor:
                  name: Paul Wilson
                  postalAddress:
                    type: Office
                    department: Financial
                    subDepartment: Sub financial
                    street: Columbus pike
                    buildingNumber: '123'
                    postalCode: '43240'
                    city: Columbus
                    region: OH
                    countryCode: US
                    addressLine: 123 SIM ST,STE W123 |SIMCITY OH 12345|I/US
                debtorAccount:
                  accountNumber: '123456789'
                  virtualAccountNumber: '95312346654532'
                originator:
                  name: VAM TEST BANK NA
                  postalAddress:
                    type: Office
                    department: Financial
                    subDepartment: Sub financial
                    street: Columbus pike
                    buildingNumber: '123'
                    postalCode: '43240'
                    city: Columbus
                    region: OH
                    countryCode: US
                    addressLine: 123 SIM ST,STE W123 |SIMCITY OH 12345|I/US
                beneficiary:
                  name: SIM IV INC
                  postalAddress:
                    type: Office
                    department: Mortgage
                    subDepartment: Housing
                    street: 123 BNFW1 ST
                    buildingNumber: '123'
                    postalCode: '12334'
                    city: BNFCITY
                    region: OH
                    countryCode: US
                    addressLine: 123 BNFW1 SIM ST,BNFW1 123 |BNFCITY OH 12334|I/US
                beneficiaryAccount:
                  accountNumber: '9350371100'
                originatorAccount:
                  accountNumber: '9350371111'
                ultimateCreditor:
                  name: ULTCR Party1
                  postalAddress:
                    type: Office
                    department: dept
                    subDepartment: subDept
                    street: Oak Point Rd
                    buildingNumber: '100'
                    postalCode: '12335'
                    city: Amherst
                    region: NY
                    countryCode: US
                    addressLine: dept subDept 100 Oak Point Rd Amherst NY pstC44001d
                ultimateCreditorAccount:
                  accountNumber: '1234321'
                ultimateDebtor:
                  name: ULTDB Party
                  postalAddress:
                    type: Office
                    department: dept
                    subDepartment: subDept
                    street: Oak Point Rd
                    buildingNumber: '100'
                    postalCode: '12335'
                    city: Amherst
                    region: NY
                    countryCode: US
                    addressLine: dept subDept 100 Oak Point Rd Amherst NY pstC44001d
                ultimateDebtorAccount:
                  accountNumber: '567651'
                intermediaryBank1:
                  name: SIMW1 BANK
                  aba: '012345678'
                  bic: SIMWUS01
                  addressLine: 0123 INT2W1 ST|NEW YORK 01234 US
                intermediaryBank2:
                  name: SIMWINT2 BANK
                  aba: '112345555'
                  bic: SIMWUS22
                  addressLine: 0123 INT2W1 ST|NEW YORK 01235 US
                intermediaryBank3:
                  name: SIMINTW3 CANADA BANK
                  aba: '112346666'
                  bic: SIMINT3W1
                  addressLine: 0123 INT2W1 ST|NEW YORK 01238 US
                beneficiaryBank:
                  aba: '021007821'
                  bic: SIMCRKEYBUS21
                originatorBank:
                  aba: '011007822'
                  bic: SIMDBKEYBUS22
        '401':
          description: Unauthorized request
          headers:
            X-CorrelationId:
              description: >-
                A unique identifier generated for each transaction that remains
                with the transaction through the chain of API operations.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Exception'
              example:
                ErrorMessage: >-
                  Received request is unauthorized, please provide valid
                  credentials
                TransactionId: 0635f201-8fbb-418f-b93a-138d5103e2b91348
                X-CorrelationId: 929618f2-6163-bf73-51b0-6c54a8533c74
                TransactionTime: '2021-06-11T16:31:34.041Z'
                Api-Url: >-
                  https://partner-api-qv.key.com/wireInquiry/v1/transactions/detail
        '404':
          description: No Wire transaction was found with the provided transactionId
          headers:
            X-CorrelationId:
              description: >-
                A unique identifier generated for each transaction that remains
                with the transaction through the chain of API operations.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Exception'
              example:
                ErrorMessage: Error received from backend service
                TransactionId: 84293235-5d2c-42ba-afc3-a5d4afc5f88e27097
                X-CorrelationId: 929618f2-6163-bf73-51b0-6c54a8533c74
                TransactionTime: '2021-06-11T16:31:34.041Z'
                Api-Url: >-
                  https://partner-api-qv.key.com/wireInquiry/v1/transactions/detail/US99999000999999
                ServiceError:
                  metadata:
                    messages:
                      - code: Wire-Detail-404-no-records
                        message: Record Not Found
        '500':
          description: Unexpected server error
          headers:
            X-CorrelationId:
              schema:
                type: string
              description: >-
                A unique identifier generated for each transaction that remains
                with the transaction through the chain of API operations.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Exception'
              example:
                ErrorMessage: Error received from backend
                TransactionId: 84293235-5d2c-42ba-afc3-a5d4afc5f88e27097
                TransactionTime: '2021-06-11T16:31:34.041Z'
                X-CorrelationId: 929618f2-6163-bf73-51b0-6c54a8533c74
                Api-Url: >-
                  https://partner-api-qv.key.com/wireInquiry/v1/transactions/detail/US99999000999999
                ServiceError:
                  metadata:
                    messages:
                      - code: 500-InternalServerError
                        message: >-
                          An unexpected error occurred.  Please try again later
                          or contact support if the problem persists.
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Access token supplied in the `Authorization` header using the `Bearer`
        scheme (e.g. `Authorization: Bearer {token}`).
  schemas:
    WireDetailTransaction:
      type: object
      description: Contains the response payload with details about a Wire transfer.
      properties:
        transactionId:
          type: string
          description: The unique ID number associated with the original payment request.
          maxLength: 100
          examples:
            - US99999000999999
        transactionStatus:
          type: string
          enum:
            - CANCELLED
            - COMPLETED
            - FAILED
            - IN PROCESS
            - IN REVIEW
            - RETURNED
          description: >-
            The status of the wire transfer. Valid values: CANCELLED, COMPLETED,
            FAILED, IN PROCESS, IN REVIEW, RETURNED
          maxLength: 50
        transactionStatusTimestamp:
          description: Timestamp for the most recent status change on the transaction.
          type: string
          pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}$
          examples:
            - '2026-01-12T12:18:01'
        transactionDate:
          description: 'Date the transfer occurred. Format: YYYY-MM-DD'
          type: string
          format: date
          examples:
            - '2024-01-12'
        transactionAmount:
          description: The dollar amount of the transaction.
          type: number
          format: double
          examples:
            - 32772.63
            - 32.1
        requestReference:
          type: string
          description: >-
            A reference value for the original request that is useful for
            traceability and reporting. The ID cannot exceed 32 characters.
          maxLength: 32
          examples:
            - USRSIM-0.0001
        sendersReference:
          type: string
          description: >-
            A reference value provided by the sender. For outbound payments,
            this value is the same as the transaction ID. The ID cannot exceed
            35 characters.
          maxLength: 35
          examples:
            - OLB8484848484888
        creditor:
          $ref: '#/components/schemas/PartyDetail'
        creditorAccount:
          $ref: '#/components/schemas/AccountExtended'
        debtor:
          $ref: '#/components/schemas/PartyDetail'
        debtorAccount:
          $ref: '#/components/schemas/AccountExtended'
        originator:
          $ref: '#/components/schemas/PartyDetail'
        originatorAccount:
          $ref: '#/components/schemas/Account'
        beneficiary:
          $ref: '#/components/schemas/PartyDetail'
        beneficiaryAccount:
          $ref: '#/components/schemas/Account'
        ultimateCreditor:
          $ref: '#/components/schemas/PartyDetail'
        ultimateCreditorAccount:
          $ref: '#/components/schemas/Account'
        ultimateDebtor:
          $ref: '#/components/schemas/PartyDetail'
        ultimateDebtorAccount:
          $ref: '#/components/schemas/Account'
        remittanceInformation:
          type: string
          description: >-
            Information that stays with a payment as it is transferred from one
            party to another. This field only displays if there is remittance
            information for the transaction. Message length cannot exceed 256
            characters.
          maxLength: 1024
          examples:
            - Payment 01/12/2026_Invoice 123456789 Cust
        bankToBankInstructions:
          type: string
          description: >-
            Messages or instructions shared from one bank to another. Data
            retrieved if part of the original wire transfer.
          maxLength: 2048
          examples:
            - Final Payment
        customData:
          type: string
          description: >-
            A client-defined free-form text field (up to 500 alphanumeric
            characters) that remains associated with the transaction throughout
            its lifecycle in the KeyBank network.
          minLength: 0
          maxLength: 500
          examples:
            - custom data
        intermediaryBank1:
          $ref: '#/components/schemas/IntermediaryBank'
        intermediaryBank2:
          $ref: '#/components/schemas/IntermediaryBank'
        intermediaryBank3:
          $ref: '#/components/schemas/IntermediaryBank'
        beneficiaryBank:
          $ref: '#/components/schemas/Bank'
        originatorBank:
          $ref: '#/components/schemas/Bank'
    WireListTransaction:
      type: object
      description: Contains the response payload for Wire inquiries.
      properties:
        transactionId:
          type: string
          description: The unique ID number associated with the original payment request
          maxLength: 100
          examples:
            - US99999000999999
        transactionStatus:
          type: string
          enum:
            - CANCELLED
            - COMPLETED
            - FAILED
            - IN PROCESS
            - IN REVIEW
            - RETURNED
          description: >-
            The status of the wire transfer. Valid values: CANCELLED, COMPLETED,
            FAILED, IN PROCESS, IN REVIEW, RETURNED
          maxLength: 50
        transactionStatusTimestamp:
          type: string
          pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}$
          description: Timestamp for the most recent status change on the transaction.
          examples:
            - '2026-01-12T12:18:01'
        transactionDate:
          type: string
          format: date
          description: 'Date the transfer occurred. Format: YYYY-MM-DD'
          examples:
            - '2026-01-12'
        transactionAmount:
          type: number
          format: double
          description: The dollar amount of the transaction.
          examples:
            - 32772.63
            - 32.1
        requestReference:
          type: string
          description: >-
            A reference value for the original request that is useful for
            traceability and reporting. The ID cannot exceed 32 characters.
          maxLength: 32
          examples:
            - USRSIM-0.0001
        sendersReference:
          type: string
          description: >-
            A reference value provided by the sender. For outbound payments,
            this value is the same as the transaction ID. The ID cannot exceed
            35 characters.
          maxLength: 35
          examples:
            - OLB8484848484888
        creditor:
          $ref: '#/components/schemas/PartySummary'
        creditorAccount:
          $ref: '#/components/schemas/Account'
        debtor:
          $ref: '#/components/schemas/PartySummary'
        debtorAccount:
          $ref: '#/components/schemas/Account'
        originator:
          $ref: '#/components/schemas/PartySummary'
        beneficiary:
          $ref: '#/components/schemas/PartySummary'
    HealthResponse:
      type: object
      title: healthResponse
      properties:
        Status:
          type: string
          description: Status of the health check response.
          examples:
            - Ok
        Source:
          type: string
          description: >-
            Origin of the system response can be 'Gateway' or 'Roundtrip'.
            Roundtrip returns a response from the farthest system involved.
          examples:
            - Gateway
            - Roundtrip
        Timestamp:
          type: string
          description: >-
            Date (YYYY-MM-DD) and time (HH:MM:SS) of response from the API
            service.
          pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}$
          examples:
            - '2022-09-15T04:49:03'
        ClientIp:
          type: string
          description: Client IP address the gateway receives from the request.
          examples:
            - 192.0.2.1
        X-Forwarded-For:
          type: string
          description: >-
            Sequence of IP addresses for systems between the client and the
            gateway.
          examples:
            - '[192.0.2.1]'
    Amount0To1B:
      description: >-
        Amount between 0 and 1,000,000,000 inclusive. Accepts a JSON number or a
        string. If a string is used, commas are allowed as thousands separators.
        Decimal precision must be at most 2 decimal places.
      oneOf:
        - title: AmountAsNumber
          type: number
          format: double
          minimum: 0
          maximum: 1000000000
          multipleOf: 0.01
          description: >-
            Amount between 0 and 1 billion.  Decimals are optional.  If present,
            must contain 1 or 2 digits (e.g., 2433.0, 3939.2, 100.25).
        - title: AmountAsString
          type: string
          description: >-
            String amount may include commas. If commas are used, they must be
            valid thousands separators (e.g., 1,234,567). Must be
            0..1,000,000,000 inclusive. Decimals are optional; if present, must
            be 1 or 2 digits (e.g., 2433.0, 3939.2, 100.25). Note: 1,000,000,000
            may only be whole dollars or with a decimal value of .0/.00.
          pattern: >-
            ^(?:(?:1(?:,000){3}|1000000000)(?:\.0{1,2})?|(?:0|[1-9]\d{0,8}|[1-9]\d{0,2}(?:,\d{3}){1,2})(?:\.\d{1,2})?|\.\d{1,2})$
      examples:
        - 0.25
        - 100
        - 100
        - 2433
        - 393

# --- truncated at 32 KB (40 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/keycorp/refs/heads/main/openapi/keycorp-wire-inquiry-openapi.yml