---
openapi: 3.0.2
info:
  title: SWIFT Observer
  description: "The Observer Analytics API enables institutions to access and integrate payments data. Information about a specific transaction, identified by its UETR, or transactions for a specific date can be retrieved. The data accessible through the Observer Analytics API is enriched with Observer computation on speed, fees, end-to-end routing, gpi KPIs and SWIFT Totals per market.\n\n**v1.0.1 Release Notes**\n\n * The regular expression in ErrorCode1 has been updated to allow three digits for Gateway related errors. \n * Change required property date in ObserverData1 and ObserverData2 to transaction_date. \n * Change sample responses to correspond to datatype and pattern of defined Schemas. \n * Change userMessage and moreInfo in headerNotIncluded error to user_message and more_info respectively. \n * Change user_info in invalidContract to user_message. \n\n**v1.1.2 Release Notes**\n\n Added 6 new endpoints for SWIFT totals: \n * gCCT end to end speed \n * gCCT forwarding speed \n * gCOV forwarding speed \n * gCCT confirmation speed \n * gCOV confirmation speed \n * End to end activity share \n\n Added 2 new endpoints for routes: \n * gCCT routes \n * gCOV routes \n\n**v1.1.3 Release Notes**\n\n GcovRoute schema update parameters \n * ending with counterparty -> change to bic8 \n* currency -> settlement_currency \n\n ObserverData7 & ObserverData8 \n * schema update remove reported_bic8 \n * update required parameters \n\n Examples updated according to changes above\n\n**v1.1.4 Release Notes**\n\nAdded enum value INMI to CustomerRoute1Code and GeoRoute1Code"
  contact:
    name: Developer Hub
    url: https://developer.swift.com
    email: developer-support@swift.com
  license:
    name: API Restricted License
    url: https://developer.swift.com/api-license
  version: 1.1.4
servers:
- url: https://sandbox.swift.com/bi/observer/v1
  description: Sandbox Environment
- url: https://api.swift.com/bi/observer/v1
  description: Production Environment
security:
- oauthBearerToken: []
tags:
- name: Observer Analytics
paths:
  /uetrs/gcct/e2e/speed:
    get:
      tags:
      - Speed
      summary: GCCT transaction ; speed-related information.
      description: Get the end-to-end duration of your payments transaction, at UETR level, for a specified time period and institution.
      operationId: getObserverData1
      parameters:
      - name: date
        in: query
        description: Date of the transactions to be reported on.
        required: true
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/ISODate'
        examples:
          "2019-07-01":
            value: 2019-07-01
          "2019-01-05":
            value: 2019-01-05
      - name: bic
        in: query
        description: BIC to be reported on. If not present all BICs in scope are returned.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        examples:
          DEMOUS33:
            value: DEMOUS33
          DEMOBE33:
            value: DEMOBE33
      - name: currency
        in: query
        description: The reference currency amounts should be converted to.
        required: true
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/CurrencyCode'
        examples:
          EUR:
            value: EUR
          USD:
            value: USD
      - name: limit
        in: query
        description: Limits the maximum number of results to be displayed on a page with a minimum of 25 (putting less defaults to 25) and a maximum of 1000 (putting more defaults to 1000).
        required: false
        style: form
        explode: true
        schema:
          maximum: 1000
          minimum: 25
          type: integer
          default: 1000
        examples:
          "25":
            value: "25"
          "50":
            value: "50"
          "500":
            value: "500"
          "1000":
            value: "1000"
      - name: offset
        in: query
        description: Specifies the number of items from which to start returning results.
        required: false
        style: form
        explode: true
        schema:
          minimum: 0
          type: integer
        examples:
          "0":
            value: "0"
          "25":
            value: "25"
          "500":
            value: "500"
          "1000":
            value: "1000"
      responses:
        "200":
          description: Returns a list of transactions (UETRs) with their transaction-level speed-related information for a particular day, possibly filtered on a set of BIC 8.
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObserverResponse1'
              examples:
                "2019-07-20_DEMOUS33_USD_25_0":
                  $ref: '#/components/examples/2019-07-20_DEMOUS33_USD_25_0'
                "2019-07-21_DEMOBE33_EUR_25_25":
                  $ref: '#/components/examples/2019-07-21_DEMOBE33_EUR_25_25'
        "303":
          description: See Other
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
            Location:
              description: Specifies a redirection URI because the original request cannot be handled by the server.
              style: simple
              explode: false
              schema:
                $ref: '#/components/schemas/Max256Text'
        "400":
          description: Bad request
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                missingParameter:
                  $ref: '#/components/examples/missingParameter'
                parameterInvalid:
                  $ref: '#/components/examples/parameterInvalid'
                bodyIsNotWellFormed:
                  $ref: '#/components/examples/bodyIsNotWellFormed'
                headerNotIncluded:
                  $ref: '#/components/examples/headerNotIncluded'
                xbicHeaderNotValid:
                  $ref: '#/components/examples/xbicHeaderNotValid'
        "401":
          description: Unauthorized
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidOAuthToken:
                  $ref: '#/components/examples/invalidOAuthToken'
                OAuthTokenHasInsufficentScopeForRequestedService:
                  $ref: '#/components/examples/OAuthTokenHasInsufficentScopeForRequestedService'
                OAuthTokenNotProvided:
                  $ref: '#/components/examples/OAuthTokenNotProvided'
        "403":
          description: Forbidden
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidContract:
                  $ref: '#/components/examples/invalidContract'
        "404":
          description: Not Found
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                notFound:
                  $ref: '#/components/examples/notFound'
        "406":
          description: Server cannot produce a response matching the list of media types accepted by the client
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                noAcceptableReturnType:
                  $ref: '#/components/examples/noAcceptableReturnType'
        "429":
          description: Too Many Requests
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                tooManyRequest:
                  $ref: '#/components/examples/tooManyRequest'
        "500":
          description: Internal server error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                internalServerError:
                  $ref: '#/components/examples/internalServerError'
        "502":
          description: Bad Gateway
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                badGateway:
                  $ref: '#/components/examples/badGateway'
        "503":
          description: Service Unavailable
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unavailable:
                  $ref: '#/components/examples/unavailable'
        "504":
          description: Gateway timeout
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                timeOut:
                  $ref: '#/components/examples/timeOut'
        default:
          description: Unexpected Error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unexpectedError:
                  $ref: '#/components/examples/unexpectedError'
  /uetrs/gcct/own/speed:
    get:
      tags:
      - Speed
      summary: GCCT transaction's participations ; speed related information.
      description: Get the duration of your payments transaction per participant, at UETR level, for a specified time period and institution.
      operationId: getObserverData2
      parameters:
      - name: date
        in: query
        description: Date of the transactions to be reported on.
        required: true
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/ISODate'
        examples:
          "2019-07-01":
            value: 2019-07-01
          "2019-01-05":
            value: 2019-01-05
      - name: bic
        in: query
        description: BIC to be reported on. If not present all BICs in scope are returned.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        examples:
          DEMOUS33:
            value: DEMOUS33
          DEMOBE33:
            value: DEMOBE33
      - name: limit
        in: query
        description: Limits the maximum number of results to be displayed on a page with a minimum of 25 (putting less defaults to 25) and a maximum of 1000 (putting more defaults to 1000).
        required: false
        style: form
        explode: true
        schema:
          maximum: 1000
          minimum: 25
          type: integer
          default: 1000
        examples:
          "25":
            value: "25"
          "50":
            value: "50"
          "500":
            value: "500"
          "1000":
            value: "1000"
      - name: offset
        in: query
        description: Specifies the number of items from which to start returning results.
        required: false
        style: form
        explode: true
        schema:
          minimum: 0
          type: integer
        examples:
          "0":
            value: "0"
          "25":
            value: "25"
          "500":
            value: "500"
          "1000":
            value: "1000"
      responses:
        "200":
          description: Returns a list of transactions participations with their participation-level speed-related information for a particular day, possibly filtered on a set of BIC 8.
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObserverResponse2'
              examples:
                "2019-07-22_DEMOUS33_25_0":
                  $ref: '#/components/examples/2019-07-22_DEMOUS33_25_0'
                "2019-07-23_DEMOBE33_25_25":
                  $ref: '#/components/examples/2019-07-23_DEMOBE33_25_25'
        "303":
          description: See Other
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
            Location:
              description: Specifies a redirection URI because the original request cannot be handled by the server.
              style: simple
              explode: false
              schema:
                $ref: '#/components/schemas/Max256Text'
        "400":
          description: Bad request
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                missingParameter:
                  $ref: '#/components/examples/missingParameter'
                parameterInvalid:
                  $ref: '#/components/examples/parameterInvalid'
                bodyIsNotWellFormed:
                  $ref: '#/components/examples/bodyIsNotWellFormed'
                headerNotIncluded:
                  $ref: '#/components/examples/headerNotIncluded'
                xbicHeaderNotValid:
                  $ref: '#/components/examples/xbicHeaderNotValid'
        "401":
          description: Unauthorized
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidOAuthToken:
                  $ref: '#/components/examples/invalidOAuthToken'
                OAuthTokenHasInsufficentScopeForRequestedService:
                  $ref: '#/components/examples/OAuthTokenHasInsufficentScopeForRequestedService'
                OAuthTokenNotProvided:
                  $ref: '#/components/examples/OAuthTokenNotProvided'
        "403":
          description: Forbidden
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidContract:
                  $ref: '#/components/examples/invalidContract'
        "404":
          description: Not Found
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                notFound:
                  $ref: '#/components/examples/notFound'
        "406":
          description: Server cannot produce a response matching the list of media types accepted by the client
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                noAcceptableReturnType:
                  $ref: '#/components/examples/noAcceptableReturnType'
        "429":
          description: Too Many Requests
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                tooManyRequest:
                  $ref: '#/components/examples/tooManyRequest'
        "500":
          description: Internal server error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                internalServerError:
                  $ref: '#/components/examples/internalServerError'
        "502":
          description: Bad Gateway
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                badGateway:
                  $ref: '#/components/examples/badGateway'
        "503":
          description: Service Unavailable
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unavailable:
                  $ref: '#/components/examples/unavailable'
        "504":
          description: Gateway timeout
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                timeOut:
                  $ref: '#/components/examples/timeOut'
        default:
          description: Unexpected Error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unexpectedError:
                  $ref: '#/components/examples/unexpectedError'
  /totals/monthly/gcct/e2e/speed:
    get:
      tags:
      - Benchmarking
      summary: Transaction speed benchmarking.
      description: Get community data on end-to-end speed by corridor for a specified creditor or debtor country.
      operationId: getGcctE2ESpeed
      parameters:
      - name: period
        in: query
        description: Period of the transactions to be reported on.
        required: true
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/ISOYearMonth'
        examples:
          "2019-07":
            value: 2019-07
          "2019-01":
            value: 2019-01
      - name: debtor_country
        in: query
        description: Country of the debtor BIC. Either this parameter is used or creditor_country or both.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/CountryCode'
        examples:
          FR:
            value: FR
          UK:
            value: UK
      - name: creditor_country
        in: query
        description: Country of the creditor BIC. Either this parameter is used or debtor_country or both.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/CountryCode'
        examples:
          FR:
            value: FR
          UK:
            value: UK
      - name: trn_future_value_date
        in: query
        description: Indicates whether a future value date is present in any event in the transaction. True will return transactions with a future value date set and false will only return transactions without future value date set. If the parameter is not present all transactions are in scope.
        required: false
        style: form
        explode: false
        schema:
          type: boolean
        examples:
          "true":
            value: true
          "false":
            value: false
      - name: trn_status_code
        in: query
        description: Transaction Last known status code. When none, all transactions are in scope.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/GPITransactionStatus1Code'
        examples:
          RJCT:
            value: RJCT
          ACSP:
            value: ACSP
      - name: instructed_currency
        in: query
        description: Transaction's instructed currency. When none, all transactions are in scope.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/CurrencyCode'
        examples:
          EUR:
            value: EUR
          USD:
            value: USD
      - name: bic
        in: query
        description: BIC to be reported on. If not present all BICs in scope are returned.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        examples:
          DEMOUS33:
            value: DEMOUS33
          DEMOBE33:
            value: DEMOBE33
      responses:
        "200":
          description: Returns a list of speed metrics for transactions with the corresponding SWIFT totals for a particular month, filtered on debtor and/or creditor country; and possibly future value date, transaction status code, Instructed currency and customer bic.
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObserverResponse3'
              examples:
                "2020-07_BE_US_false_DEMOBE11":
                  $ref: '#/components/examples/2020-07_BE_US_false_DEMOBE11'
                "2020-07_BE_US_false_DEMOBE12":
                  $ref: '#/components/examples/2020-07_BE_US_false_DEMOBE12'
        "303":
          description: See Other
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
            Location:
              description: Specifies a redirection URI because the original request cannot be handled by the server.
              style: simple
              explode: false
              schema:
                $ref: '#/components/schemas/Max256Text'
        "400":
          description: Bad request
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                missingParameter:
                  $ref: '#/components/examples/missingParameter'
                parameterInvalid:
                  $ref: '#/components/examples/parameterInvalid'
                bodyIsNotWellFormed:
                  $ref: '#/components/examples/bodyIsNotWellFormed'
                headerNotIncluded:
                  $ref: '#/components/examples/headerNotIncluded'
                xbicHeaderNotValid:
                  $ref: '#/components/examples/xbicHeaderNotValid'
        "401":
          description: Unauthorized
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidOAuthToken:
                  $ref: '#/components/examples/invalidOAuthToken'
                OAuthTokenHasInsufficentScopeForRequestedService:
                  $ref: '#/components/examples/OAuthTokenHasInsufficentScopeForRequestedService'
                OAuthTokenNotProvided:
                  $ref: '#/components/examples/OAuthTokenNotProvided'
        "403":
          description: Forbidden
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidContract:
                  $ref: '#/components/examples/invalidContract'
        "404":
          description: Not Found
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                notFound:
                  $ref: '#/components/examples/notFound'
        "406":
          description: Server cannot produce a response matching the list of media types accepted by the client
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                noAcceptableReturnType:
                  $ref: '#/components/examples/noAcceptableReturnType'
        "429":
          description: Too Many Requests
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                tooManyRequest:
                  $ref: '#/components/examples/tooManyRequest'
        "500":
          description: Internal server error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                internalServerError:
                  $ref: '#/components/examples/internalServerError'
        "502":
          description: Bad Gateway
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                badGateway:
                  $ref: '#/components/examples/badGateway'
        "503":
          description: Service Unavailable
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unavailable:
                  $ref: '#/components/examples/unavailable'
        "504":
          description: Gateway timeout
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                timeOut:
                  $ref: '#/components/examples/timeOut'
        default:
          description: Unexpected Error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unexpectedError:
                  $ref: '#/components/examples/unexpectedError'
  /totals/monthly/gcct/country/fwd-speed:
    get:
      tags:
      - Benchmarking
      summary: GCCT message speed benchmarking.
      description: Get community data on forwarding speed as intermediary by corridor for a specified intermediary country.
      operationId: getGcctCountryFwdSpeed
      parameters:
      - name: period
        in: query
        description: Period of the transactions to be reported on.
        required: true
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/ISOYearMonth'
        examples:
          "2019-07":
            value: 2019-07
          "2019-01":
            value: 2019-01
      - name: intermediary_country
        in: query
        description: Country of the forwarding BIC.
        required: true
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/CountryCode'
        examples:
          FR:
            value: FR
          UK:
            value: UK
      - name: trn_future_value_date
        in: query
        description: Indicates whether a future value date is present in any event in the transaction. True will return transactions with a future value date set and false will only return transactions without future value date set. If the parameter is not present all transactions are in scope.
        required: false
        style: form
        explode: false
        schema:
          type: boolean
        examples:
          "true":
            value: true
          "false":
            value: false
      - name: settlement_currency
        in: query
        description: Inbound message's settlement currency. When none, all transactions are in scope.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/CurrencyCode'
        examples:
          EUR:
            value: EUR
          USD:
            value: USD
      - name: bic
        in: query
        description: BIC to be reported on. If not present all BICs in scope are returned.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        examples:
          DEMOUS33:
            value: DEMOUS33
          DEMOBE33:
            value: DEMOBE33
      responses:
        "200":
          description: Returns a list of speed metrics for messages with the corresponding SWIFT totals for a particular month, filtered on intermediary country ; and possibly future value date, settlement currency and customer bic.
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObserverResponse4'
              examples:
                "2020-07_BE_false_EUR_DEMOBE11":
                  $ref: '#/components/examples/2020-07_BE_false_EUR_DEMOBE11'
                "2020-07_US_false_USD_DEMOUS12":
                  $ref: '#/components/examples/2020-07_US_false_USD_DEMOUS12'
        "303":
          description: See Other
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
            Location:
              description: Specifies a redirection URI because the original request cannot be handled by the server.
              style: simple
              explode: false
              schema:
                $ref: '#/components/schemas/Max256Text'
        "400":
          description: Bad request
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                missingParameter:
                  $ref: '#/components/examples/missingParameter'
                parameterInvalid:
                  $ref: '#/components/examples/parameterInvalid'
                bodyIsNotWellFormed:
                  $ref: '#/components/examples/bodyIsNotWellFormed'
                headerNotIncluded:
                  $ref: '#/components/examples/headerNotIncluded'
                xbicHeaderNotValid:
                  $ref: '#/components/examples/xbicHeaderNotValid'
        "401":
          description: Unauthorized
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidOAuthToken:
                  $ref: '#/components/examples/invalidOAuthToken'
                OAuthTokenHasInsufficentScopeForRequestedService:
                  $ref: '#/components/examples/OAuthTokenHasInsufficentScopeForRequestedService'
                OAuthTokenNotProvided:
                  $ref: '#/components/examples/OAuthTokenNotProvided'
        "403":
          description: Forbidden
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidContract:
                  $ref: '#/components/examples/invalidContract'
        "404":
          description: Not Found
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                notFound:
                  $ref: '#/components/examples/notFound'
        "406":
          description: Server cannot produce a response matching the list of media types accepted by the client
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                noAcceptableReturnType:
                  $ref: '#/components/examples/noAcceptableReturnType'
        "429":
          description: Too Many Requests
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                tooManyRequest:
                  $ref: '#/components/examples/tooManyRequest'
        "500":
          description: Internal server error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                internalServerError:
                  $ref: '#/components/examples/internalServerError'
        "502":
          description: Bad Gateway
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                badGateway:
                  $ref: '#/components/examples/badGateway'
        "503":
          description: Service Unavailable
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unavailable:
                  $ref: '#/components/examples/unavailable'
        "504":
          description: Gateway timeout
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                timeOut:
                  $ref: '#/components/examples/timeOut'
        default:
          description: Unexpected Error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unexpectedError:
                  $ref: '#/components/examples/unexpectedError'
  /totals/monthly/gcov/country/fwd-speed:
    get:
      tags:
      - Benchmarking
      summary: GCOV message forwarding speed benchmarking.
      description: Get community data on forwarding speed as cover intermediary by corridor for a specified cover intermediary country.
      operationId: getGcovCountryFwdSpeed
      parameters:
      - name: period
        in: query
        description: Period of the transactions to be reported on.
        required: true
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/ISOYearMonth'
        examples:
          "2019-07":
            value: 2019-07
          "2019-01":
            value: 2019-01
      - name: intermediary_country
        in: query
        description: Country of the forwarding BIC.
        required: true
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/CountryCode'
        examples:
          FR:
            value: FR
          UK:
            value: UK
      - name: trn_future_value_date
        in: query
        description: Indicates whether a future value date is present in any event in the transaction. True will return transactions with a future value date set and false will only return transactions without future value date set. If the parameter is not present all transactions are in scope.
        required: false
        style: form
        explode: false
        schema:
          type: boolean
        examples:
          "true":
            value: true
          "false":
            value: false
      - name: settlement_currency
        in: query
        description: Inbound message's settlement currency. When none, all transactions are in scope.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/CurrencyCode'
        examples:
          EUR:
            value: EUR
          USD:
            value: USD
      - name: bic
        in: query
        description: BIC to be reported on. If not present all BICs in scope are returned.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        examples:
          DEMOUS33:
            value: DEMOUS33
          DEMOBE33:
            value: DEMOBE33
      responses:
        "200":
          description: Returns a list of speed metrics for messages with the corresponding SWIFT totals for a particular month, filtered on intermediary country ; and possibly future value date, settlement currency and customer bic.
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObserverResponse4'
              examples:
                "2020-07_BE_false_EUR_DEMOBE11":
                  $ref: '#/components/examples/2020-07_BE_false_EUR_DEMOBE11'
                "2020-07_US_false_USD_DEMOUS12":
                  $ref: '#/components/examples/2020-07_US_false_USD_DEMOUS12'
        "303":
          description: See Other
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
            Location:
              description: Specifies a redirection URI because the original request cannot be handled by the server.
              style: simple
              explode: false
              schema:
                $ref: '#/components/schemas/Max256Text'
        "400":
          description: Bad request
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                missingParameter:
                  $ref: '#/components/examples/missingParameter'
                parameterInvalid:
                  $ref: '#/components/examples/parameterInvalid'
                bodyIsNotWellFormed:
                  $ref: '#/components/examples/bodyIsNotWellFormed'
                headerNotIncluded:
                  $ref: '#/components/examples/headerNotIncluded'
                xbicHeaderNotValid:
                  $ref: '#/components/examples/xbicHeaderNotValid'
        "401":
          description: Unauthorized
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidOAuthToken:
                  $ref: '#/components/examples/invalidOAuthToken'
                OAuthTokenHasInsufficentScopeForRequestedService:
                  $ref: '#/components/examples/OAuthTokenHasInsufficentScopeForRequestedService'
                OAuthTokenNotProvided:
                  $ref: '#/components/examples/OAuthTokenNotProvided'
        "403":
          description: Forbidden
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidContract:
                  $ref: '#/components/examples/invalidContract'
        "404":
          description: Not Found
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                notFound:
                  $ref: '#/components/examples/notFound'
        "406":
          description: Server cannot produce a response matching the list of media types accepted by the client
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                noAcceptableReturnType:
                  $ref: '#/components/examples/noAcceptableReturnType'
        "429":
          description: Too Many Requests
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                tooManyRequest:
                  $ref: '#/components/examples/tooManyRequest'
        "500":
          description: Internal server error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                internalServerError:
                  $ref: '#/components/examples/internalServerError'
        "502":
          description: Bad Gateway
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                badGateway:
                  $ref: '#/components/examples/badGateway'
        "503":
          description: Service Unavailable
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unavailable:
                  $ref: '#/components/examples/unavailable'
        "504":
          description: Gateway timeout
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                timeOut:
                  $ref: '#/components/examples/timeOut'
        default:
          description: Unexpected Error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unexpectedError:
                  $ref: '#/components/examples/unexpectedError'
  /totals/monthly/gcct/own/conf-speed:
    get:
      tags:
      - Benchmarking
      summary: GCCT message confirmation speed benchmarking.
      description: Get community data on forwarding speed as creditor by corridor for a specified creditor country.
      operationId: getGcctOwnConfSpeed
      parameters:
      - name: period
        in: query
        description: Period of the transactions to be reported on.
        required: true
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/ISOYearMonth'
        examples:
          "2019-07":
            value: 2019-07
          "2019-01":
            value: 2019-01
      - name: creditor_country
        in: query
        description: Country of the creditor BIC. Either this parameter is used or debtor_country or both.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/CountryCode'
        examples:
          FR:
            value: FR
          UK:
            value: UK
      - name: trn_future_value_date
        in: query
        description: Indicates whether a future value date is present in any event in the transaction. True will return transactions with a future value date set and false will only return transactions without future value date set. If the parameter is not present all transactions are in scope.
        required: false
        style: form
        explode: false
        schema:
          type: boolean
        examples:
          "true":
            value: true
          "false":
            value: false
      - name: settlement_currency
        in: query
        description: Inbound message's settlement currency. When none, all transactions are in scope.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/CurrencyCode'
        examples:
          EUR:
            value: EUR
          USD:
            value: USD
      - name: bic
        in: query
        description: BIC to be reported on. If not present all BICs in scope are returned.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        examples:
          DEMOUS33:
            value: DEMOUS33
          DEMOBE33:
            value: DEMOBE33
      responses:
        "200":
          description: Returns a list of speed metrics for messages with the corresponding SWIFT totals for a particular month, filtered on creditor country ; and possibly future value date, settlement currency and customer bic.
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObserverResponse5'
              examples:
                "2020-11_BE_false_EUR_DEMOBE11":
                  $ref: '#/components/examples/2020-11_BE_false_EUR_DEMOBE11'
                "2020-11_US_false_USD_DEMOUS12":
                  $ref: '#/components/examples/2020-11_US_false_USD_DEMOUS12'
        "303":
          description: See Other
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
            Location:
              description: Specifies a redirection URI because the original request cannot be handled by the server.
              style: simple
              explode: false
              schema:
                $ref: '#/components/schemas/Max256Text'
        "400":
          description: Bad request
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                missingParameter:
                  $ref: '#/components/examples/missingParameter'
                parameterInvalid:
                  $ref: '#/components/examples/parameterInvalid'
                bodyIsNotWellFormed:
                  $ref: '#/components/examples/bodyIsNotWellFormed'
                headerNotIncluded:
                  $ref: '#/components/examples/headerNotIncluded'
                xbicHeaderNotValid:
                  $ref: '#/components/examples/xbicHeaderNotValid'
        "401":
          description: Unauthorized
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidOAuthToken:
                  $ref: '#/components/examples/invalidOAuthToken'
                OAuthTokenHasInsufficentScopeForRequestedService:
                  $ref: '#/components/examples/OAuthTokenHasInsufficentScopeForRequestedService'
                OAuthTokenNotProvided:
                  $ref: '#/components/examples/OAuthTokenNotProvided'
        "403":
          description: Forbidden
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidContract:
                  $ref: '#/components/examples/invalidContract'
        "404":
          description: Not Found
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                notFound:
                  $ref: '#/components/examples/notFound'
        "406":
          description: Server cannot produce a response matching the list of media types accepted by the client
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                noAcceptableReturnType:
                  $ref: '#/components/examples/noAcceptableReturnType'
        "429":
          description: Too Many Requests
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                tooManyRequest:
                  $ref: '#/components/examples/tooManyRequest'
        "500":
          description: Internal server error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                internalServerError:
                  $ref: '#/components/examples/internalServerError'
        "502":
          description: Bad Gateway
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                badGateway:
                  $ref: '#/components/examples/badGateway'
        "503":
          description: Service Unavailable
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unavailable:
                  $ref: '#/components/examples/unavailable'
        "504":
          description: Gateway timeout
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                timeOut:
                  $ref: '#/components/examples/timeOut'
        default:
          description: Unexpected Error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unexpectedError:
                  $ref: '#/components/examples/unexpectedError'
  /totals/monthly/gcov/own/conf-speed:
    get:
      tags:
      - Benchmarking
      summary: GCOV message confirmation speed benchmarking.
      description: Get community data on forwarding speed as cover creditor by corridor for a specified cover creditor country.
      operationId: getGcovOwnConfSpeed
      parameters:
      - name: period
        in: query
        description: Period of the transactions to be reported on.
        required: true
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/ISOYearMonth'
        examples:
          "2019-07":
            value: 2019-07
          "2019-01":
            value: 2019-01
      - name: creditor_country
        in: query
        description: Country of the creditor BIC. Either this parameter is used or debtor_country or both.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/CountryCode'
        examples:
          FR:
            value: FR
          UK:
            value: UK
      - name: trn_future_value_date
        in: query
        description: Indicates whether a future value date is present in any event in the transaction. True will return transactions with a future value date set and false will only return transactions without future value date set. If the parameter is not present all transactions are in scope.
        required: false
        style: form
        explode: false
        schema:
          type: boolean
        examples:
          "true":
            value: true
          "false":
            value: false
      - name: settlement_currency
        in: query
        description: Inbound message's settlement currency. When none, all transactions are in scope.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/CurrencyCode'
        examples:
          EUR:
            value: EUR
          USD:
            value: USD
      - name: bic
        in: query
        description: BIC to be reported on. If not present all BICs in scope are returned.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        examples:
          DEMOUS33:
            value: DEMOUS33
          DEMOBE33:
            value: DEMOBE33
      responses:
        "200":
          description: Returns a list of speed metrics for messages with the corresponding SWIFT totals for a particular month, filtered on creditor country ; and possibly future value date and settlement currency.
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObserverResponse5'
              examples:
                "2020-11_BE_false_EUR_DEMOBE11":
                  $ref: '#/components/examples/2020-11_BE_false_EUR_DEMOBE11'
                "2020-11_US_false_USD_DEMOUS12":
                  $ref: '#/components/examples/2020-11_US_false_USD_DEMOUS12'
        "303":
          description: See Other
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
            Location:
              description: Specifies a redirection URI because the original request cannot be handled by the server.
              style: simple
              explode: false
              schema:
                $ref: '#/components/schemas/Max256Text'
        "400":
          description: Bad request
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                missingParameter:
                  $ref: '#/components/examples/missingParameter'
                parameterInvalid:
                  $ref: '#/components/examples/parameterInvalid'
                bodyIsNotWellFormed:
                  $ref: '#/components/examples/bodyIsNotWellFormed'
                headerNotIncluded:
                  $ref: '#/components/examples/headerNotIncluded'
                xbicHeaderNotValid:
                  $ref: '#/components/examples/xbicHeaderNotValid'
        "401":
          description: Unauthorized
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidOAuthToken:
                  $ref: '#/components/examples/invalidOAuthToken'
                OAuthTokenHasInsufficentScopeForRequestedService:
                  $ref: '#/components/examples/OAuthTokenHasInsufficentScopeForRequestedService'
                OAuthTokenNotProvided:
                  $ref: '#/components/examples/OAuthTokenNotProvided'
        "403":
          description: Forbidden
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidContract:
                  $ref: '#/components/examples/invalidContract'
        "404":
          description: Not Found
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                notFound:
                  $ref: '#/components/examples/notFound'
        "406":
          description: Server cannot produce a response matching the list of media types accepted by the client
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                noAcceptableReturnType:
                  $ref: '#/components/examples/noAcceptableReturnType'
        "429":
          description: Too Many Requests
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                tooManyRequest:
                  $ref: '#/components/examples/tooManyRequest'
        "500":
          description: Internal server error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                internalServerError:
                  $ref: '#/components/examples/internalServerError'
        "502":
          description: Bad Gateway
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                badGateway:
                  $ref: '#/components/examples/badGateway'
        "503":
          description: Service Unavailable
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unavailable:
                  $ref: '#/components/examples/unavailable'
        "504":
          description: Gateway timeout
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                timeOut:
                  $ref: '#/components/examples/timeOut'
        default:
          description: Unexpected Error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unexpectedError:
                  $ref: '#/components/examples/unexpectedError'
  /totals/monthly/gcct/e2e/activity-share:
    get:
      tags:
      - Activity Share
      summary: Transaction activity share benchmarking.
      description: Get community data on payments transaction volume and amount by corridor for a specified creditor or debtor country.
      operationId: getE2EActivityShare
      parameters:
      - name: period
        in: query
        description: Period of the transactions to be reported on.
        required: true
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/ISOYearMonth'
        examples:
          "2019-07":
            value: 2019-07
          "2019-01":
            value: 2019-01
      - name: debtor_country
        in: query
        description: Country of the debtor BIC. Either this parameter is used or creditor_country or both.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/CountryCode'
        examples:
          FR:
            value: FR
          UK:
            value: UK
      - name: creditor_country
        in: query
        description: Country of the creditor BIC. Either this parameter is used or debtor_country or both.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/CountryCode'
        examples:
          FR:
            value: FR
          UK:
            value: UK
      - name: currency
        in: query
        description: The reference currency amounts should be converted to.
        required: true
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/CurrencyCode'
        examples:
          EUR:
            value: EUR
          USD:
            value: USD
      - name: instructed_currency
        in: query
        description: Transaction's instructed currency. When none, all transactions are in scope.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/CurrencyCode'
        examples:
          EUR:
            value: EUR
          USD:
            value: USD
      - name: bic
        in: query
        description: BIC to be reported on. If not present all BICs in scope are returned.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        examples:
          DEMOUS33:
            value: DEMOUS33
          DEMOBE33:
            value: DEMOBE33
      responses:
        "200":
          description: Returns a list of volume and value metrics for transactions with the corresponding SWIFT totals for a particular month, filtered on debtor and/or creditor country ; and possibly instructed currency and customer bic.
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObserverResponse6'
              examples:
                "2020-11_BE_NL_EUR_EUR_DEMOBE11":
                  $ref: '#/components/examples/2020-11_BE_NL_EUR_EUR_DEMOBE11'
                "2020-11_US_UK_GBP_USD_DEMOUS12":
                  $ref: '#/components/examples/2020-11_US_UK_GBP_USD_DEMOUS12'
        "303":
          description: See Other
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
            Location:
              description: Specifies a redirection URI because the original request cannot be handled by the server.
              style: simple
              explode: false
              schema:
                $ref: '#/components/schemas/Max256Text'
        "400":
          description: Bad request
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                missingParameter:
                  $ref: '#/components/examples/missingParameter'
                parameterInvalid:
                  $ref: '#/components/examples/parameterInvalid'
                bodyIsNotWellFormed:
                  $ref: '#/components/examples/bodyIsNotWellFormed'
                headerNotIncluded:
                  $ref: '#/components/examples/headerNotIncluded'
                xbicHeaderNotValid:
                  $ref: '#/components/examples/xbicHeaderNotValid'
        "401":
          description: Unauthorized
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidOAuthToken:
                  $ref: '#/components/examples/invalidOAuthToken'
                OAuthTokenHasInsufficentScopeForRequestedService:
                  $ref: '#/components/examples/OAuthTokenHasInsufficentScopeForRequestedService'
                OAuthTokenNotProvided:
                  $ref: '#/components/examples/OAuthTokenNotProvided'
        "403":
          description: Forbidden
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidContract:
                  $ref: '#/components/examples/invalidContract'
        "404":
          description: Not Found
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                notFound:
                  $ref: '#/components/examples/notFound'
        "406":
          description: Server cannot produce a response matching the list of media types accepted by the client
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                noAcceptableReturnType:
                  $ref: '#/components/examples/noAcceptableReturnType'
        "429":
          description: Too Many Requests
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                tooManyRequest:
                  $ref: '#/components/examples/tooManyRequest'
        "500":
          description: Internal server error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                internalServerError:
                  $ref: '#/components/examples/internalServerError'
        "502":
          description: Bad Gateway
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                badGateway:
                  $ref: '#/components/examples/badGateway'
        "503":
          description: Service Unavailable
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unavailable:
                  $ref: '#/components/examples/unavailable'
        "504":
          description: Gateway timeout
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                timeOut:
                  $ref: '#/components/examples/timeOut'
        default:
          description: Unexpected Error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unexpectedError:
                  $ref: '#/components/examples/unexpectedError'
  /uetrs/gcct/e2e/routes:
    get:
      tags:
      - Routes
      summary: GCCT transaction ; route-related information.
      description: Get detailed end-to-end routes of your payments transaction, at UETR level, for a specified time period and institution. Routes include all BIC8s participating to the transaction with its role, the details of charges and the currency sent.
      operationId: getGcctRoutes
      parameters:
      - name: date
        in: query
        description: Date of the transactions to be reported on.
        required: true
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/ISODate'
        examples:
          "2019-07-01":
            value: 2019-07-01
          "2019-01-05":
            value: 2019-01-05
      - name: bic
        in: query
        description: BIC to be reported on. If not present all BICs in scope are returned.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        examples:
          DEMOUS33:
            value: DEMOUS33
          DEMOBE33:
            value: DEMOBE33
      - name: limit
        in: query
        description: Limits the maximum number of results to be displayed on a page with a minimum of 25 (putting less defaults to 25) and a maximum of 1000 (putting more defaults to 1000).
        required: false
        style: form
        explode: true
        schema:
          maximum: 1000
          minimum: 25
          type: integer
          default: 1000
        examples:
          "25":
            value: "25"
          "50":
            value: "50"
          "500":
            value: "500"
          "1000":
            value: "1000"
      - name: offset
        in: query
        description: Specifies the number of items from which to start returning results.
        required: false
        style: form
        explode: true
        schema:
          minimum: 0
          type: integer
        examples:
          "0":
            value: "0"
          "25":
            value: "25"
          "500":
            value: "500"
          "1000":
            value: "1000"
      responses:
        "200":
          description: Returns a list of transactions (UETRs) with their transaction-level routing-related information for a particular day, possibly filtered on a set of BIC8.
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObserverResponse7'
              examples:
                "2021-03-20_DEMOBE10_25_0":
                  $ref: '#/components/examples/2021-03-20_DEMOBE10_25_0'
                "2021-04-20_DEMOUS31_25_25":
                  $ref: '#/components/examples/2021-04-20_DEMOUS31_25_25'
        "303":
          description: See Other
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
            Location:
              description: Specifies a redirection URI because the original request cannot be handled by the server.
              style: simple
              explode: false
              schema:
                $ref: '#/components/schemas/Max256Text'
        "400":
          description: Bad request
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                missingParameter:
                  $ref: '#/components/examples/missingParameter'
                parameterInvalid:
                  $ref: '#/components/examples/parameterInvalid'
                bodyIsNotWellFormed:
                  $ref: '#/components/examples/bodyIsNotWellFormed'
                headerNotIncluded:
                  $ref: '#/components/examples/headerNotIncluded'
                xbicHeaderNotValid:
                  $ref: '#/components/examples/xbicHeaderNotValid'
        "401":
          description: Unauthorized
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidOAuthToken:
                  $ref: '#/components/examples/invalidOAuthToken'
                OAuthTokenHasInsufficentScopeForRequestedService:
                  $ref: '#/components/examples/OAuthTokenHasInsufficentScopeForRequestedService'
                OAuthTokenNotProvided:
                  $ref: '#/components/examples/OAuthTokenNotProvided'
        "403":
          description: Forbidden
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidContract:
                  $ref: '#/components/examples/invalidContract'
        "404":
          description: Not Found
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                notFound:
                  $ref: '#/components/examples/notFound'
        "406":
          description: Server cannot produce a response matching the list of media types accepted by the client
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                noAcceptableReturnType:
                  $ref: '#/components/examples/noAcceptableReturnType'
        "429":
          description: Too Many Requests
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                tooManyRequest:
                  $ref: '#/components/examples/tooManyRequest'
        "500":
          description: Internal server error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                internalServerError:
                  $ref: '#/components/examples/internalServerError'
        "502":
          description: Bad Gateway
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                badGateway:
                  $ref: '#/components/examples/badGateway'
        "503":
          description: Service Unavailable
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unavailable:
                  $ref: '#/components/examples/unavailable'
        "504":
          description: Gateway timeout
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                timeOut:
                  $ref: '#/components/examples/timeOut'
        default:
          description: Unexpected Error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unexpectedError:
                  $ref: '#/components/examples/unexpectedError'
  /uetrs/gcov/e2e/routes:
    get:
      tags:
      - Routes
      summary: GCOV transaction ; route-related information.
      description: Get detailed end-to-end routes of your Cover payments transaction, at UETR level, for a specified time period and institution. Routes include all BIC8s participating to the transaction with its role and the currency sent.
      operationId: getObserverData
      parameters:
      - name: date
        in: query
        description: Date of the transactions to be reported on.
        required: true
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/ISODate'
        examples:
          "2019-07-01":
            value: 2019-07-01
          "2019-01-05":
            value: 2019-01-05
      - name: bic
        in: query
        description: BIC to be reported on. If not present all BICs in scope are returned.
        required: false
        style: form
        explode: false
        schema:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        examples:
          DEMOUS33:
            value: DEMOUS33
          DEMOBE33:
            value: DEMOBE33
      - name: limit
        in: query
        description: Limits the maximum number of results to be displayed on a page with a minimum of 25 (putting less defaults to 25) and a maximum of 1000 (putting more defaults to 1000).
        required: false
        style: form
        explode: true
        schema:
          maximum: 1000
          minimum: 25
          type: integer
          default: 1000
        examples:
          "25":
            value: "25"
          "50":
            value: "50"
          "500":
            value: "500"
          "1000":
            value: "1000"
      - name: offset
        in: query
        description: Specifies the number of items from which to start returning results.
        required: false
        style: form
        explode: true
        schema:
          minimum: 0
          type: integer
        examples:
          "0":
            value: "0"
          "25":
            value: "25"
          "500":
            value: "500"
          "1000":
            value: "1000"
      responses:
        "200":
          description: Returns a list of transactions (UETRs) with their transaction-level routing-related information for a particular day, possibly filtered on a set of BIC8.
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObserverResponse8'
              examples:
                "2021-03-20_DEMOBE11_25_0":
                  $ref: '#/components/examples/2021-03-20_DEMOBE11_25_0'
                "2021-04-20_DEMOUS30_25_25":
                  $ref: '#/components/examples/2021-04-20_DEMOUS30_25_25'
        "303":
          description: See Other
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
            Location:
              description: Specifies a redirection URI because the original request cannot be handled by the server.
              style: simple
              explode: false
              schema:
                $ref: '#/components/schemas/Max256Text'
        "400":
          description: Bad request
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                missingParameter:
                  $ref: '#/components/examples/missingParameter'
                parameterInvalid:
                  $ref: '#/components/examples/parameterInvalid'
                bodyIsNotWellFormed:
                  $ref: '#/components/examples/bodyIsNotWellFormed'
                headerNotIncluded:
                  $ref: '#/components/examples/headerNotIncluded'
                xbicHeaderNotValid:
                  $ref: '#/components/examples/xbicHeaderNotValid'
        "401":
          description: Unauthorized
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidOAuthToken:
                  $ref: '#/components/examples/invalidOAuthToken'
                OAuthTokenHasInsufficentScopeForRequestedService:
                  $ref: '#/components/examples/OAuthTokenHasInsufficentScopeForRequestedService'
                OAuthTokenNotProvided:
                  $ref: '#/components/examples/OAuthTokenNotProvided'
        "403":
          description: Forbidden
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                invalidContract:
                  $ref: '#/components/examples/invalidContract'
        "404":
          description: Not Found
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                notFound:
                  $ref: '#/components/examples/notFound'
        "406":
          description: Server cannot produce a response matching the list of media types accepted by the client
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                noAcceptableReturnType:
                  $ref: '#/components/examples/noAcceptableReturnType'
        "429":
          description: Too Many Requests
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                tooManyRequest:
                  $ref: '#/components/examples/tooManyRequest'
        "500":
          description: Internal server error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                internalServerError:
                  $ref: '#/components/examples/internalServerError'
        "502":
          description: Bad Gateway
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                badGateway:
                  $ref: '#/components/examples/badGateway'
        "503":
          description: Service Unavailable
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unavailable:
                  $ref: '#/components/examples/unavailable'
        "504":
          description: Gateway timeout
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                timeOut:
                  $ref: '#/components/examples/timeOut'
        default:
          description: Unexpected Error
          headers:
            X-Response-Timestamp:
              $ref: '#/components/headers/X-Response-Timestamp'
            X-Request-ID:
              $ref: '#/components/headers/X-Request-ID'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                unexpectedError:
                  $ref: '#/components/examples/unexpectedError'
components:
  schemas:
    AnyBICDec2014Identifier:
      pattern: ^[A-Z0-9]{4,4}[A-Z]{2,2}[A-Z0-9]{2,2}([A-Z0-9]{3,3}){0,1}$
      type: string
      description: 'Code allocated to a financial or non-financial institution by the ISO 9362 Registration Authority, as described in ISO 9362: 2014 - "Banking - Banking telecommunication messages - Business identifier code (BIC)".'
    ChargeBearerType3Code:
      type: string
      description: |-
        Specifies which party/parties will bear the charges associated with the processing of the payment transaction.
        *`SHAR` - shared -In a credit transfer context, means that transaction charges on the sender side are to be borne by the debtor, transaction charges on the receiver side are to be borne by the creditor. In a direct debit context, means that transaction charges on the sender side are to be borne by the creditor, transaction charges on the receiver side are to be borne by the debtor.
        *`DEBT` - borne_by_debtor -All transaction charges are to be borne by the debtor.
        *`CRED` - borne_by_creditor -All transaction charges are to be borne by the creditor.
      enum:
      - SHAR
      - DEBT
      - CRED
    CountryCode:
      pattern: ^[A-Z]{2,2}$
      type: string
      description: Code to identify a country, a dependency, or another area of particular geopolitical interest, on the basis of country names obtained from the United Nations (ISO 3166, Alpha-2 code).
    CurrencyCode:
      pattern: ^[A-Z]{3,3}$
      type: string
      description: Code allocated to a currency, by a maintenance agency, under an international identification scheme as described in the latest edition of the international standard ISO 4217 "Codes for the representation of currencies and funds". Valid currency codes are registered with the ISO 4217 Maintenance Agency, and consist of three contiguous letters.
    CustomerRoute1Code:
      type: string
      description: |-
        Specifies the customer route of the message.
        *`ITER` - inter_customer_group -Traffic exchanged between different institutions.
        *`ITRA` - intra_customer_group -Traffic exchanged within the same institution group of branches.
        *`SWFT` - swift -Traffic exchanged with SWIFT.
        *`INMI` – International MI – Message involving an international Market Infrastructure .
      enum:
      - ITER
      - ITRA
      - SWFT
      - INMI
    ErrorCode1:
      pattern: ^(SwAP\d{3,3})|(BI_\d{3,3})$
      type: string
      description: A string representing the code of an error
    ErrorMessage:
      required:
      - code
      - severity
      - text
      type: object
      properties:
        code:
          $ref: '#/components/schemas/ErrorCode1'
        severity:
          $ref: '#/components/schemas/ErrorSeverity3Code'
        text:
          $ref: '#/components/schemas/Max256Text'
        user_message:
          $ref: '#/components/schemas/Max256Text'
        more_info:
          $ref: '#/components/schemas/Max256Text'
      additionalProperties: false
      description: Specifies the generic status as a result of a method applied to a Resource.
    ErrorSeverity3Code:
      type: string
      description: A enum describing the severity of an error
      enum:
      - Fatal
      - Logic
      - Transient
    ExternalPaymentStatusReason1Code:
      type: string
      description: "Provides the reason for a payment status.\r\n\n*`G000`-The Status Originator transferred the Credit Transfer to the next Agent or to a Market Infrastructure maintaining the transaction’s service obligations.\n*`G001`-The Status Originator transferred the Credit Transfer to the next Agent or to a Market Infrastructure where the transaction’s service obligations may no longer be guaranteed.\n*`G003`-In an FI to FI Customer Credit Transfer: Credit to creditor's account is pending receipt of required documents. The Status Originator has requested creditor to provide additional documentation.\n*`G004`-Credit to the creditor's account is pending as status Originator is waiting for funds provided via a cover.\n*`G002`-The transaction processing cannot be completed the same day.\n*`G005`-Credit Transfer has been delivered to creditor agent with transaction’s service obligations maintained.\n*`G006`-Credit Transfer has been delivered to creditor agent where the transaction’s service obligations were no longer maintained.\n*`AC01`-Account number is invalid or missing\n*`AC04`-Account number specified has been closed on the bank of account's books.\n*`AC06`-Account specified is blocked, prohibiting posting of transactions against it.\n*`BE01`-Identification of end customer is not consistent with associated account number. (formerly CreditorConsistency).\n*`NOAS`-Failed to contact beneficiary.\n*`RR03`-Specification of the creditor's name and/or address needed for regulatory requirements is insufficient or missing.\n*`FF07`-Purpose is missing or invalid.\n*`RC01`-Bank identifier code specified in the message has an incorrect format (formerly IncorrectFormatForRoutingCode).\n*`RC08`-Routing code not valid for local clearing.\n*`FOCR`-Return following a cancellation request.\n*`DUPL`-Payment is a duplicate of another payment.\n*`RR05`-Regulatory or Central Bank Reporting information missing, incomplete or invalid.\n*`AM06`-Below limit.\n*`CUST`-At request of creditor.\n*`MS03`-Reason has not been specified by agent."
      enum:
      - G000
      - G001
      - G003
      - G004
      - G002
      - G005
      - G006
      - AC01
      - AC04
      - AC06
      - BE01
      - NOAS
      - RR03
      - FF07
      - RC01
      - RC08
      - FOCR
      - DUPL
      - RR05
      - AM06
      - CUST
      - MS03
    GcctRoute:
      required:
      - bic8
      - position
      - role
      type: object
      properties:
        position:
          type: integer
        sending_bic8:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        bic8:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        receiving_bic8:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        role:
          $ref: '#/components/schemas/GPITransactionRole1Code'
        charge_code:
          $ref: '#/components/schemas/ChargeBearerType3Code'
        settlement_currency:
          $ref: '#/components/schemas/CurrencyCode'
      additionalProperties: false
      description: Ordered collection of steps composing the gCCT Route.
    GcovRoute:
      required:
      - bic8
      - position
      - role
      type: object
      properties:
        position:
          type: integer
        sending_bic8:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        bic8:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        receiving_bic8:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        role:
          $ref: '#/components/schemas/GPITransactionRole1Code'
        settlement_currency:
          $ref: '#/components/schemas/CurrencyCode'
      additionalProperties: false
      description: Ordered collection of steps composing the gCOV Route.
    GeoRoute1Code:
      type: string
      description: |-
        Specifies information about the geographic route the message is following.
        *`DMST` - domestic -Sender and receiver of the information are in the same country.
        *`INTL` - international -Sender and Receiver in different countries or the location of at least one of them is unknown.
        *`SWFT` - swift -Message involved SWIFT.
        *`INMI` – International MI – Message involving an international Market Infrastructure.
      enum:
      - DMST
      - INTL
      - SWFT
      - INMI
    GPITransactionRole1Code:
      type: string
      description: |-
        Role of the current transaction owner.
        *`GCASE-AE`-gCASE Assignee
        *`GCASE-AR`-gCASE Assigner
        *`GCCT-IDA`-gCCT Instructed gpi Agent
        *`GCCT-IDN`-gCCT Instructed Non-gpi Agent
        *`GCCT-IGA`-gCCT Instructing gpi Agent
        *`GCCT-IGN`-gCCT Instructing Non-gpi Agent
        *`GCCT-IYA`-gCCT Intermediary gpi Agent
        *`GCCT-IYN`-gCCT Intermediary Non-gpi Agent
        *`GCOV-IGA`-gCOV Instructing gpi Agent
        *`GCOV-IGN`-gCOV Instructing Non-gpi Agent
        *`GCOV-LRA`-gCOV Last Reimbursement gpi Agent
        *`GCOV-LRN`-gCOV Last Reimbursement Non-gpi Agent
        *`GCOV-RA`-gCOV Reimbursement gpi Agent
        *`GCOV-RN`-gCOV Reimbursement Non-gpi Agent
        *`GFIT-BYA`-gFIT Beneficiary gpi Agent
        *`GFIT-BYN`-gFIT Beneficiary Non-gpi Agent
        *`GFIT-IDA`-gFIT Instructed gpi Agent
        *`GFIT-IDN`-gFIT Instructed Non-gpi Agent
        *`GFIT-IGA`-gFIT Instructing gpi Agent
        *`GFIT-IGN`-gFIT Instructing Non-gpi Agent
        *`GFIT-IYA`-gFIT Intermediary gpi Agent
        *`GFIT-IYN`-gFIT Intermediary Non-gpi Agent
        *`GSRP-A`-gSRP Assignee
        *`GSRP-I`-gSRP Initiator
      enum:
      - GCASE-AE
      - GCASE-AR
      - GCCT-IDA
      - GCCT-IDN
      - GCCT-IGA
      - GCCT-IGN
      - GCCT-IYA
      - GCCT-IYN
      - GCOV-IGA
      - GCOV-IGN
      - GCOV-LRA
      - GCOV-LRN
      - GCOV-RA
      - GCOV-RN
      - GFIT-BYA
      - GFIT-BYN
      - GFIT-IDA
      - GFIT-IDN
      - GFIT-IGA
      - GFIT-IGN
      - GFIT-IYA
      - GFIT-IYN
      - GSRP-A
      - GSRP-I
    GPITransactionStatus1Code:
      type: string
      description: "Transaction's Last known status\n*`ACCC_accepted_settlement_completed_creditor_account`-Settlement on the creditor's account has been completed.\n*`ACCP_accepted_customer_profile`-Preceding check of technical validation was successful. Customer profile check was also successful.\n*`ACFC_accepted_funds_checked`-Preceding check of technical validation and customer profile was successful and an automatic funds check was positive.\n*`ACSC_accepted_settlement_completed_debitor_account`-Settlement completed.\r\nUsage : this can be used by a Market Infrastructure reporting to Infrastructure Participant or an Account Servicer to Account Owner to report that the transaction account entry has been completed.\r\nWarning : this status is provided for transaction status reasons, not for financial information. It can only be used after bilateral agreement\n*`ACSP_accepted_settlement_in_process`-All preceding checks such as technical validation and customer profile were successful and therefore the payment instruction has been accepted for execution.\n*`ACTC_accepted_technical_validation`-Authentication and syntactical and semantical validation are successful\n*`ACWC_accepted_with_change`-Instruction is accepted but a change will be made, such as date or remittance not sent.\n*`ACWP_accepted_without_posting`-Payment instruction included in the credit transfer is accepted without being posted to the creditor customer’s account.\n*`CANC_cancelled`-Payment initiation has been successfully cancelled after having received a request for cancellation.\r\nUsage: code to be used in the context of APIs only.\n*`PATC_partially_accepted_technical_correct`-Payment initiation needs multiple authentications, where some but not yet all have been performed. Syntactical and semantical validations are successful.\n*`PDNG_pending`-Payment instruction is pending. Further checks and status update will be performed.\n*`RCVD_received`-Payment instruction has been received.\n*`RJCT_rejected`-Payment instruction has been rejected."
      enum:
      - ACCC
      - ACCP
      - ACFC
      - ACSC
      - ACSP
      - ACTC
      - ACWC
      - ACWP
      - CANC
      - PATC
      - PDNG
      - RCVD
      - RJCT
    ImpliedCurrencyAndAmount:
      maxLength: 19
      pattern: ^0*(([0-9]{0,13}\.[0-9]{1,5})|([0-9]{0,14}\.[0-9]{1,4})|([0-9]{0,15}\.[0-9]{1,3})|([0-9]{0,16}\.[0-9]{1,2})|([0-9]{0,17}\.[0-9]{1,1})|0*|([0-9]{0,18}))$
      type: string
      description: |-
        Number of monetary units specified in a currency where the unit of currency is implied by the context and compliant with ISO 4217. The decimal separator is a dot.
        Note: a zero amount is considered a positive amount.
    InstitutionRole2Code:
      type: string
      description: |-
        Business role reporting BIC assumed in transaction
        *`ORIG`-Originator
        *`BENF`-Beneficiary
        *`ITMD`-Intermediary
      enum:
      - ORIG
      - BENF
      - ITMD
    ISODate:
      pattern: ^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)$
      type: string
      description: 'A particular point in the progression of time in a calendar year expressed in the YYYY-MM-DD format. This representation is defined in "XML Schema Part 2: Datatypes Second Edition - W3C Recommendation 28 October 2004" which is aligned with ISO 8601.'
      format: date
    ISOYearMonth:
      pattern: ^(?:[1-9]\d{3}-(?:0[1-9]|1[0-2]))$
      type: string
      description: Month within a particular calendar year represented by YYYY-MM (ISO 8601).
    Max15NumericText:
      pattern: ^[0-9]{1,15}$
      type: string
      description: Specifies a numeric string with a maximum length of 15 digits.
    Max256Text:
      maxLength: 256
      minLength: 1
      type: string
      description: Specifies a character string with a maximum length of 256 characters.
    ObserverData1:
      required:
      - converted_amount
      - converted_currency
      - instructed_currency
      - transaction_date
      - uetr
      type: object
      properties:
        transaction_date:
          $ref: '#/components/schemas/ISODate'
        uetr:
          $ref: '#/components/schemas/UUIDv4Identifier'
        ordering_bic:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        beneficiary_bic:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        instructed_currency:
          $ref: '#/components/schemas/CurrencyCode'
        converted_currency:
          $ref: '#/components/schemas/CurrencyCode'
        transaction_status:
          $ref: '#/components/schemas/GPITransactionStatus1Code'
        transaction_status_reason:
          $ref: '#/components/schemas/ExternalPaymentStatusReason1Code'
        geo_route:
          $ref: '#/components/schemas/GeoRoute1Code'
        customer_route:
          $ref: '#/components/schemas/CustomerRoute1Code'
        future_value_date_present:
          type: boolean
          description: Does transaction contain a future value date
        converted_amount:
          $ref: '#/components/schemas/ImpliedCurrencyAndAmount'
        end_to_end_elapsed_time:
          type: integer
          description: Full time elapsed euntil transaction completion (in seconds)
        end_to_end_processing_time:
          type: integer
          description: Total processing time spent until transaction completion (in seconds)
      additionalProperties: false
      description: Returns a list of transactions (UETRs) with their transaction-level speed-related information for a particular day, possibly filtered on a set of BIC 8.
    ObserverData2:
      required:
      - bic8
      - bic8_position
      - transaction_date
      - uetr
      type: object
      properties:
        transaction_date:
          $ref: '#/components/schemas/ISODate'
        uetr:
          $ref: '#/components/schemas/UUIDv4Identifier'
        bic8:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        bic8_position:
          type: integer
          description: Position of BIC8 in chain
        business_role:
          $ref: '#/components/schemas/InstitutionRole2Code'
        sender_bic8:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        receiver_bic8:
          $ref: '#/components/schemas/AnyBICDec2014Identifier'
        future_value_date_present:
          type: boolean
          description: Does participation feature future value date
        geo_route:
          $ref: '#/components/schemas/GeoRoute1Code'
        customer_route:
          $ref: '#/components/schemas/CustomerRoute1Code'
        message_elapsed_time:
          type: integer
          description: Time elapsed until message was confirmed/forwarded (in seconds)
        message_processing_time:
          type: integer
          description: Processing time spent until message was confirmed/forwarded (in seconds)
        receiving_counterparty_message_elapsed_time:
          type: integer
          description: Time elapsed until message was confirmed/forwarded by receiveing counterparty (in seconds)
        receiving_counterparty_message_processing_time:
          type: integer
          description: Processing time spent until message was confirmed/forwarded by receiveing counterparty (in seconds)
      additionalProperties: false
      description: Returns a list of transactions participations with their participation-level speed-related information for a particular day, possibly filtered on a set of BIC 8.
    ObserverData3:
      required:
      - own_transaction_count
      - swift_transaction_count
      type: object
      properties:
        debtor_country:
          $ref: '#/components/schemas/CountryCode'
        creditor_country:
          $ref: '#/components/schemas/CountryCode'
        own_transaction_count:
          $ref: '#/components/schemas/Max15NumericText'
        swift_transaction_count:
          $ref: '#/components/schemas/Max15NumericText'
        own_avg_e2e_elapsed_time:
          $ref: '#/components/schemas/Max15NumericText'
        swift_avg_e2e_elapsed_time:
          $ref: '#/components/schemas/Max15NumericText'
      additionalProperties: false
      description: Returns a list of speed metrics for transactions with the corresponding SWIFT totals for a particular month, filtered on debtor and/or creditor country ; and possibly future value date, transaction status code, Instructed currency and customer bic.
    ObserverData4:
      required:
      - intermediary_country
      - own_message_count
      - swift_message_count
      type: object
      properties:
        sending_country:
          $ref: '#/components/schemas/CountryCode'
        intermediary_country:
          $ref: '#/components/schemas/CountryCode'
        receiving_country:
          $ref: '#/components/schemas/CountryCode'
        own_message_count:
          $ref: '#/components/schemas/Max15NumericText'
        swift_message_count:
          $ref: '#/components/schemas/Max15NumericText'
        own_avg_country_elapsed_time:
          $ref: '#/components/schemas/Max15NumericText'
        swift_avg_country_elapsed_time:
          $ref: '#/components/schemas/Max15NumericText'
      additionalProperties: false
      description: Returns a list of speed metrics for messages with the corresponding SWIFT totals for a particular month, filtered on intermediary country ; and possibly future value date, settlement currency and customer bic.
    ObserverData5:
      required:
      - creditor_country
      - own_message_count
      - swift_message_count
      type: object
      properties:
        sending_country:
          $ref: '#/components/schemas/CountryCode'
        creditor_country:
          $ref: '#/components/schemas/CountryCode'
        own_message_count:
          $ref: '#/components/schemas/Max15NumericText'
        swift_message_count:
          $ref: '#/components/schemas/Max15NumericText'
        own_avg_country_elapsed_time:
          $ref: '#/components/schemas/Max15NumericText'
        swift_avg_country_elapsed_time:
          $ref: '#/components/schemas/Max15NumericText'
      additionalProperties: false
      description: Returns a list of speed metrics for messages with the corresponding SWIFT totals for a particular month, filtered on creditor country ; and possibly future value date, settlement currency and customer bic.
    ObserverData6:
      required:
      - converted_amount_share
      - own_converted_amount
      - own_transaction_count
      - swift_converted_amount
      - swift_transaction_count
      - transaction_count_share
      type: object
      properties:
        debtor_country:
          $ref: '#/components/schemas/CountryCode'
        creditor_country:
          $ref: '#/components/schemas/CountryCode'
        own_transaction_count:
          $ref: '#/components/schemas/Max15NumericText'
        swift_transaction_count:
          $ref: '#/components/schemas/Max15NumericText'
        transaction_count_share:
          type: number
          description: Own share of the transaction count.
          format: double
        own_converted_amount:
          $ref: '#/components/schemas/ImpliedCurrencyAndAmount'
        swift_converted_amount:
          $ref: '#/components/schemas/ImpliedCurrencyAndAmount'
        converted_amount_share:
          type: number
          description: Own share of converted instructed amount.
          format: double
      additionalProperties: false
      description: Returns a list of volume and value metrics for transactions with the corresponding SWIFT totals for a particular month, filtered on debtor and/or creditor country ; and possibly instructed currency and customer bic.
    ObserverData7:
      required:
      - gcct_route
      - transaction_date
      - uetr
      type: object
      properties:
        transaction_date:
          $ref: '#/components/schemas/ISODate'
        uetr:
          $ref: '#/components/schemas/UUIDv4Identifier'
        gcct_route:
          type: array
          description: Ordered collection of steps composing the gCCT Route.
          items:
            $ref: '#/components/schemas/GcctRoute'
      additionalProperties: false
      description: Returns a list of transactions (UETRs) with their transaction-level routing-related information for a particular day, possibly filtered on a set of BIC8.
    ObserverData8:
      required:
      - gcov_route
      - transaction_date
      - uetr
      type: object
      properties:
        transaction_date:
          $ref: '#/components/schemas/ISODate'
        uetr:
          $ref: '#/components/schemas/UUIDv4Identifier'
        gcov_route:
          type: array
          description: Ordered collection of steps composing the gCCT Route.
          items:
            $ref: '#/components/schemas/GcovRoute'
      additionalProperties: false
      description: Returns a list of transactions (UETRs) with their transaction-level routing-related information for a particular day, possibly filtered on a set of BIC8.
    ObserverResponse1:
      type: object
      properties:
        observer_data:
          type: array
          items:
            $ref: '#/components/schemas/ObserverData1'
        links:
          $ref: '#/components/schemas/PaginationLinks'
    ObserverResponse2:
      type: object
      properties:
        observer_data:
          type: array
          items:
            $ref: '#/components/schemas/ObserverData2'
        links:
          $ref: '#/components/schemas/PaginationLinks'
    ObserverResponse3:
      type: object
      properties:
        observer_data:
          type: array
          items:
            $ref: '#/components/schemas/ObserverData3'
    ObserverResponse4:
      type: object
      properties:
        observer_data:
          type: array
          items:
            $ref: '#/components/schemas/ObserverData4'
    ObserverResponse5:
      type: object
      properties:
        observer_data:
          type: array
          items:
            $ref: '#/components/schemas/ObserverData5'
    ObserverResponse6:
      type: object
      properties:
        observer_data:
          type: array
          items:
            $ref: '#/components/schemas/ObserverData6'
    ObserverResponse7:
      type: object
      properties:
        observer_data:
          type: array
          items:
            $ref: '#/components/schemas/ObserverData7'
        links:
          $ref: '#/components/schemas/PaginationLinks'
    ObserverResponse8:
      type: object
      properties:
        observer_data:
          type: array
          items:
            $ref: '#/components/schemas/ObserverData8'
        links:
          $ref: '#/components/schemas/PaginationLinks'
    PaginationLinks:
      type: object
      properties:
        self:
          type: string
          description: The URI to the current page in the response
          format: uri
        next:
          type: string
          description: The URI to the next page of response data
          format: uri
        previous:
          type: string
          description: The URI to the previous page of response data
          format: uri
        first:
          type: string
          description: The URI to the first page in the response
          format: uri
        last:
          type: string
          description: The URI to the last page in the response
          format: uri
      description: Links to help to find the self, next, previous, first and last pages of the response
    UUIDv4Identifier:
      pattern: ^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$
      type: string
      description: Universally Unique IDentifier (UUID) version 4, as described in IETC RFC 4122 "Universally Unique IDentifier (UUID) URN Namespace".
  responses:
    SeeOther:
      description: See Other
      headers:
        X-Response-Timestamp:
          $ref: '#/components/headers/X-Response-Timestamp'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
        Location:
          description: Specifies a redirection URI because the original request cannot be handled by the server.
          style: simple
          explode: false
          schema:
            $ref: '#/components/schemas/Max256Text'
    BadRequest:
      description: Bad request
      headers:
        X-Response-Timestamp:
          $ref: '#/components/headers/X-Response-Timestamp'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            missingParameter:
              $ref: '#/components/examples/missingParameter'
            parameterInvalid:
              $ref: '#/components/examples/parameterInvalid'
            bodyIsNotWellFormed:
              $ref: '#/components/examples/bodyIsNotWellFormed'
            headerNotIncluded:
              $ref: '#/components/examples/headerNotIncluded'
            xbicHeaderNotValid:
              $ref: '#/components/examples/xbicHeaderNotValid'
    Unauthorized:
      description: Unauthorized
      headers:
        X-Response-Timestamp:
          $ref: '#/components/headers/X-Response-Timestamp'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            invalidOAuthToken:
              $ref: '#/components/examples/invalidOAuthToken'
            OAuthTokenHasInsufficentScopeForRequestedService:
              $ref: '#/components/examples/OAuthTokenHasInsufficentScopeForRequestedService'
            OAuthTokenNotProvided:
              $ref: '#/components/examples/OAuthTokenNotProvided'
    Forbidden:
      description: Forbidden
      headers:
        X-Response-Timestamp:
          $ref: '#/components/headers/X-Response-Timestamp'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            invalidContract:
              $ref: '#/components/examples/invalidContract'
    NotFound:
      description: Not Found
      headers:
        X-Response-Timestamp:
          $ref: '#/components/headers/X-Response-Timestamp'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            notFound:
              $ref: '#/components/examples/notFound'
    NotAcceptable:
      description: Server cannot produce a response matching the list of media types accepted by the client
      headers:
        X-Response-Timestamp:
          $ref: '#/components/headers/X-Response-Timestamp'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            noAcceptableReturnType:
              $ref: '#/components/examples/noAcceptableReturnType'
    TooManyRequests:
      description: Too Many Requests
      headers:
        X-Response-Timestamp:
          $ref: '#/components/headers/X-Response-Timestamp'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            tooManyRequest:
              $ref: '#/components/examples/tooManyRequest'
    Conflict:
      description: Conflict
      headers:
        X-Response-Timestamp:
          $ref: '#/components/headers/X-Response-Timestamp'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
    InternalServerError:
      description: Internal server error
      headers:
        X-Response-Timestamp:
          $ref: '#/components/headers/X-Response-Timestamp'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            internalServerError:
              $ref: '#/components/examples/internalServerError'
    BadGateway:
      description: Bad Gateway
      headers:
        X-Response-Timestamp:
          $ref: '#/components/headers/X-Response-Timestamp'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            badGateway:
              $ref: '#/components/examples/badGateway'
    ServiceUnavailable:
      description: Service Unavailable
      headers:
        X-Response-Timestamp:
          $ref: '#/components/headers/X-Response-Timestamp'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            unavailable:
              $ref: '#/components/examples/unavailable'
    GatewayTimeout:
      description: Gateway timeout
      headers:
        X-Response-Timestamp:
          $ref: '#/components/headers/X-Response-Timestamp'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            timeOut:
              $ref: '#/components/examples/timeOut'
    UnexpectedError:
      description: Unexpected Error
      headers:
        X-Response-Timestamp:
          $ref: '#/components/headers/X-Response-Timestamp'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorMessage'
          examples:
            unexpectedError:
              $ref: '#/components/examples/unexpectedError'
  parameters:
    TransactionDate:
      name: date
      in: query
      description: Date of the transactions to be reported on.
      required: true
      style: form
      explode: false
      schema:
        $ref: '#/components/schemas/ISODate'
      examples:
        "2019-07-01":
          value: 2019-07-01
        "2019-01-05":
          value: 2019-01-05
    Bic:
      name: bic
      in: query
      description: BIC to be reported on. If not present all BICs in scope are returned.
      required: false
      style: form
      explode: false
      schema:
        $ref: '#/components/schemas/AnyBICDec2014Identifier'
      examples:
        DEMOUS33:
          value: DEMOUS33
        DEMOBE33:
          value: DEMOBE33
    Currency:
      name: currency
      in: query
      description: The reference currency amounts should be converted to.
      required: true
      style: form
      explode: false
      schema:
        $ref: '#/components/schemas/CurrencyCode'
      examples:
        EUR:
          value: EUR
        USD:
          value: USD
    InstructedCurrency:
      name: instructed_currency
      in: query
      description: Transaction's instructed currency. When none, all transactions are in scope.
      required: false
      style: form
      explode: false
      schema:
        $ref: '#/components/schemas/CurrencyCode'
      examples:
        EUR:
          value: EUR
        USD:
          value: USD
    SettlementCurrency:
      name: settlement_currency
      in: query
      description: Inbound message's settlement currency. When none, all transactions are in scope.
      required: false
      style: form
      explode: false
      schema:
        $ref: '#/components/schemas/CurrencyCode'
      examples:
        EUR:
          value: EUR
        USD:
          value: USD
    Limit:
      name: limit
      in: query
      description: Limits the maximum number of results to be displayed on a page with a minimum of 25 (putting less defaults to 25) and a maximum of 1000 (putting more defaults to 1000).
      required: false
      style: form
      explode: true
      schema:
        maximum: 1000
        minimum: 25
        type: integer
        default: 1000
      examples:
        "25":
          value: "25"
        "50":
          value: "50"
        "500":
          value: "500"
        "1000":
          value: "1000"
    Offset:
      name: offset
      in: query
      description: Specifies the number of items from which to start returning results.
      required: false
      style: form
      explode: true
      schema:
        minimum: 0
        type: integer
      examples:
        "0":
          value: "0"
        "25":
          value: "25"
        "500":
          value: "500"
        "1000":
          value: "1000"
    Period:
      name: period
      in: query
      description: Period of the transactions to be reported on.
      required: true
      style: form
      explode: false
      schema:
        $ref: '#/components/schemas/ISOYearMonth'
      examples:
        "2019-07":
          value: 2019-07
        "2019-01":
          value: 2019-01
    DebtorCountry:
      name: debtor_country
      in: query
      description: Country of the debtor BIC. Either this parameter is used or creditor_country or both.
      required: false
      style: form
      explode: false
      schema:
        $ref: '#/components/schemas/CountryCode'
      examples:
        FR:
          value: FR
        UK:
          value: UK
    CreditorCountry:
      name: creditor_country
      in: query
      description: Country of the creditor BIC. Either this parameter is used or debtor_country or both.
      required: false
      style: form
      explode: false
      schema:
        $ref: '#/components/schemas/CountryCode'
      examples:
        FR:
          value: FR
        UK:
          value: UK
    IntermediaryCountry:
      name: intermediary_country
      in: query
      description: Country of the forwarding BIC.
      required: true
      style: form
      explode: false
      schema:
        $ref: '#/components/schemas/CountryCode'
      examples:
        FR:
          value: FR
        UK:
          value: UK
    TrnFutureValueDate:
      name: trn_future_value_date
      in: query
      description: Indicates whether a future value date is present in any event in the transaction. True will return transactions with a future value date set and false will only return transactions without future value date set. If the parameter is not present all transactions are in scope.
      required: false
      style: form
      explode: false
      schema:
        type: boolean
      examples:
        "true":
          value: true
        "false":
          value: false
    TrnStatusCode:
      name: trn_status_code
      in: query
      description: Transaction Last known status code. When none, all transactions are in scope.
      required: false
      style: form
      explode: false
      schema:
        $ref: '#/components/schemas/GPITransactionStatus1Code'
      examples:
        RJCT:
          value: RJCT
        ACSP:
          value: ACSP
  examples:
    "2019-07-20_DEMOUS33_USD_25_0":
      value:
        observer_data:
        - transaction_date: 2019-07-20
          uetr: aeb0005c-9999-4f7f-89da-16487c27b42d
          ordering_bic: DEMOUS01
          beneficiary_bic: DEMOUS03
          instructed_currency: USD
          converted_currency: USD
          transaction_status: ACSP
          transaction_status_reason: G001
          geo_route: DMST
          customer_route: ITER
          future_value_date_present: true
          converted_amount: "356784.0"
          end_to_end_elapsed_time: 200
          end_to_end_processing_time: 152
        - transaction_date: 2019-07-20
          uetr: aeb6305c-1f7f-49da-aed0-16487c27b45a
          ordering_bic: DEMOCA55
          beneficiary_bic: DEMOUS88
          instructed_currency: CAD
          converted_currency: USD
          transaction_status: ACSP
          transaction_status_reason: G001
          geo_route: INTL
          customer_route: ITER
          future_value_date_present: false
          converted_amount: "158789.0"
          end_to_end_elapsed_time: 1258
          end_to_end_processing_time: 654
        links:
          self: /uetrs/gcct/e2e/speed?date=2019-07-20&bic=DEMOUS33&currency=USD&limit=25&offset=0
          next: /uetrs/gcct/e2e/speed?date=2019-07-20&bic=DEMOUS33&currency=USD&limit=25&offset=25
          first: /uetrs/gcct/e2e/speed?date=2019-07-20&bic=DEMOUS33&currency=USD&limit=25&offset=0
          last: /uetrs/gcct/e2e/speed?date=2019-07-20&bic=DEMOUS33&currency=USD&limit=25&offset=5000
    "2019-07-21_DEMOBE33_EUR_25_25":
      value:
        observer_data:
        - transaction_date: 2019-07-21
          uetr: aeb6305c-1f7f-49da-aed0-16555c27b45a
          ordering_bic: DEMOBE02
          beneficiary_bic: DEMOBE05
          instructed_currency: EUR
          converted_currency: EUR
          transaction_status: ACSP
          transaction_status_reason: G001
          geo_route: DMST
          customer_route: ITER
          future_value_date_present: false
          converted_amount: "568912.0"
          end_to_end_elapsed_time: 1458
          end_to_end_processing_time: 687
        - transaction_date: 2019-07-21
          uetr: aeb4444c-1f5a-49da-aed0-16487c27b45a
          ordering_bic: DEMOFR44
          beneficiary_bic: DEMOGB88
          instructed_currency: EUR
          converted_currency: GBP
          transaction_status: ACSP
          transaction_status_reason: G001
          geo_route: INTL
          customer_route: ITER
          future_value_date_present: true
          converted_amount: "256897.0"
          end_to_end_elapsed_time: 156
          end_to_end_processing_time: 45
        links:
          self: /uetrs/gcct/e2e/speed?date=2019-07-21&bic=DEMOBE33&currency=EUR&limit=25&offset=25
          next: /uetrs/gcct/e2e/speed?date=2019-07-21&bic=DEMOBE33&currency=EUR&limit=25&offset=50
          previous: /uetrs/gcct/e2e/speed?date=2019-07-21&bic=DEMOBE33&currency=EUR&limit=25&offset=0
          first: /uetrs/gcct/e2e/speed?date=2019-07-21&bic=DEMOBE33&currency=EUR&limit=25&offset=0
          last: /uetrs/gcct/e2e/speed?date=2019-07-21&bic=DEMOBE33&currency=EUR&limit=25&offset=5000
    "2019-07-22_DEMOUS33_25_0":
      value:
        observer_data:
        - transaction_date: 2019-07-22
          uetr: aeb6885c-1f7f-49da-aed0-16555c27b45a
          bic8: DEMOUS33
          bic8_position: 2
          business_role: ITMD
          sender_bic8: DEMOUS01
          receiver_bic8: DEMOUS05
          future_value_date_present: true
          geo_route: DMST
          customer_route: ITER
          message_elapsed_time: 55
          message_processing_time: 20
          receiving_counterparty_message_elapsed_time: 255
          receiving_counterparty_message_processing_time: 50
        - transaction_date: 2019-07-22
          uetr: aeb6305c-1f7f-49da-aed0-20555c27b45a
          bic8: DEMOUS33
          bic8_position: 3
          business_role: ITMD
          sender_bic8: DEMOUS02
          receiver_bic8: DEMOUS03
          future_value_date_present: false
          geo_route: DMST
          customer_route: ITER
          message_elapsed_time: 15
          message_processing_time: 14
          receiving_counterparty_message_elapsed_time: 125
          receiving_counterparty_message_processing_time: 88
        links:
          self: /uetrs/gcct/own/speed?date=2019-07-20&bic=DEMOUS33&limit=25&offset=0
          next: /uetrs/gcct/own/speed?date=2019-07-20&bic=DEMOUS33&limit=25&offset=25
          first: /uetrs/gcct/own/speed?date=2019-07-20&bic=DEMOUS33&limit=25&offset=0
          last: /uetrs/gcct/own/speed?date=2019-07-20&bic=DEMOUS33&limit=25&offset=5000
    "2019-07-23_DEMOBE33_25_25":
      value:
        observer_data:
        - transaction_date: 2019-07-23
          uetr: aeb4444c-1f7f-49da-aed0-16555c27b45a
          bic8: DEMOBE33
          bic8_position: 1
          business_role: ORIG
          sender_bic8: DEMOBE33
          receiver_bic8: DEMOBE01
          future_value_date_present: true
          geo_route: DMST
          customer_route: ITER
          message_elapsed_time: 200
          message_processing_time: 20
          receiving_counterparty_message_elapsed_time: 477
          receiving_counterparty_message_processing_time: 7
        - transaction_date: 2019-07-23
          uetr: aeb6305c-1f7f-49da-aed0-17755c27b45a
          bic8: DEMOBE33
          bic8_position: 2
          business_role: ITMD
          sender_bic8: DEMOBE53
          receiver_bic8: DEMOBE88
          future_value_date_present: false
          geo_route: DMST
          customer_route: ITER
          message_elapsed_time: 66
          message_processing_time: 9
          receiving_counterparty_message_elapsed_time: 55
          receiving_counterparty_message_processing_time: 50
        links:
          self: /uetrs/gcct/own/speed?date=2019-07-21&bic=DEMOBE33&limit=25&offset=25
          next: /uetrs/gcct/own/speed?date=2019-07-21&bic=DEMOBE33&limit=25&offset=50
          previous: /uetrs/gcct/own/speed?date=2019-07-21&bic=DEMOBE33&limit=25&offset=0
          first: /uetrs/gcct/own/speed?date=2019-07-21&bic=DEMOBE33&limit=25&offset=0
          last: /uetrs/gcct/own/speed?date=2019-07-21&bic=DEMOBE33&limit=25&offset=5000
    "2020-07_BE_US_false_DEMOBE11":
      value:
        observer_data:
        - debtor_country: BE
          creditor_country: US
          own_transaction_count: "1578"
          swift_transaction_count: "25789"
          own_avg_e2e_elapsed_time: "54"
          swift_avg_e2e_elapsed_time: "10"
    "2020-07_BE_US_false_DEMOBE12":
      value:
        observer_data:
        - debtor_country: BE
          creditor_country: US
          own_transaction_count: "155"
          swift_transaction_count: "25789"
          own_avg_e2e_elapsed_time: "8"
          swift_avg_e2e_elapsed_time: "10"
    "2020-07_BE_false_EUR_DEMOBE11":
      value:
        observer_data:
        - sending_country: NL
          intermediary_country: BE
          receiving_country: FR
          own_message_count: "155"
          swift_message_count: "25789"
          own_avg_country_elapsed_time: "8"
          swift_avg_country_elapsed_time: "10"
        - sending_country: FR
          intermediary_country: BE
          receiving_country: NL
          own_message_count: "155"
          swift_message_count: "25789"
          own_avg_country_elapsed_time: "8"
          swift_avg_country_elapsed_time: "10"
    "2020-07_US_false_USD_DEMOUS12":
      value:
        observer_data:
        - sending_country: NL
          intermediary_country: US
          receiving_country: FR
          own_message_count: "155"
          swift_message_count: "25789"
          own_avg_country_elapsed_time: "8"
          swift_avg_country_elapsed_time: "10"
        - sending_country: FR
          intermediary_country: US
          receiving_country: NL
          own_message_count: "155"
          swift_message_count: "25789"
          own_avg_country_elapsed_time: "8"
          swift_avg_country_elapsed_time: "10"
    "2020-11_BE_false_EUR_DEMOBE11":
      value:
        observer_data:
        - sending_country: NL
          creditor_country: BE
          own_message_count: "155"
          swift_message_count: "25789"
          own_avg_country_elapsed_time: "8"
          swift_avg_country_elapsed_time: "10"
        - sending_country: FR
          creditor_country: BE
          own_message_count: "155"
          swift_message_count: "25789"
          own_avg_country_elapsed_time: "8"
          swift_avg_country_elapsed_time: "10"
    "2020-11_US_false_USD_DEMOUS12":
      value:
        observer_data:
        - sending_country: NL
          creditor_country: US
          own_message_count: "155"
          swift_message_count: "25789"
          own_avg_country_elapsed_time: "8"
          swift_avg_country_elapsed_time: "10"
        - sending_country: FR
          creditor_country: US
          own_message_count: "155"
          swift_message_count: "25789"
          own_avg_country_elapsed_time: "8"
          swift_avg_country_elapsed_time: "10"
    "2020-11_BE_NL_EUR_EUR_DEMOBE11":
      value:
        observer_data:
        - debtor_country: BE
          creditor_country: NL
          own_transaction_count: "1578"
          swift_transaction_count: "25789"
          transaction_count_share: 0.06
          own_converted_amount: "54789856"
          swift_converted_amount: "1000587947"
          converted_amount_share: 0.055
    "2020-11_US_UK_GBP_USD_DEMOUS12":
      value:
        observer_data:
        - debtor_country: US
          creditor_country: UK
          own_transaction_count: "1578"
          swift_transaction_count: "25789"
          transaction_count_share: 0.06
          own_converted_amount: "54789856"
          swift_converted_amount: "1000587947"
          converted_amount_share: 0.055
    "2021-03-20_DEMOBE10_25_0":
      value:
        observer_data:
        - transaction_date: 2021-03-20
          uetr: aeb0005c-9999-4f7f-89da-16487c27b42d
          gcct_route:
          - position: 1
            sending_bic8: DEMONL01
            bic8: DEMOBE10
            receiving_bic8: DEMONL02
            role: GCCT-IYA
            charge_code: SHAR
            settlement_currency: EUR
          - position: 2
            sending_bic8: DEMONL03
            bic8: DEMOBE10
            receiving_bic8: DEMONL04
            role: GCCT-IYA
            charge_code: SHAR
            settlement_currency: EUR
        - transaction_date: 2021-03-20
          uetr: aeb6305c-1f7f-49da-aed0-16487c27b45a
          gcct_route:
          - position: 1
            sending_bic8: DEMONL01
            bic8: DEMOBE10
            receiving_bic8: DEMONL02
            role: GCCT-IYA
            charge_code: SHAR
            settlement_currency: EUR
          - position: 2
            sending_bic8: DEMONL03
            bic8: DEMOBE10
            receiving_bic8: DEMONL04
            role: GCCT-IYA
            charge_code: SHAR
            settlement_currency: EUR
        links:
          self: /uetrs/gcct/e2e/routes?date=2021-03-20&bic=DEMOBE10&limit=25&offset=0
          next: /uetrs/gcct/e2e/routes?date=2021-03-20&bic=DEMOBE10&limit=25&offset=25
          first: /uetrs/gcct/e2e/routes?date=2021-03-20&bic=DEMOBE10&limit=25&offset=0
          last: /uetrs/gcct/e2e/routes?date=2021-03-20&bic=DEMOBE10&limit=25&offset=5000
    "2021-04-20_DEMOUS31_25_25":
      value:
        observer_data:
        - transaction_date: 2021-04-20
          uetr: aeb0005c-9999-4f7f-89da-16487c27b42d
          gcct_route:
          - position: 1
            sending_bic8: DEMONL01
            bic8: DEMOBE10
            receiving_bic8: DEMONL02
            role: GCCT-IYA
            charge_code: SHAR
            settlement_currency: EUR
          - position: 2
            sending_bic8: DEMONL03
            bic8: DEMOBE10
            receiving_bic8: DEMONL04
            role: GCCT-IYA
            charge_code: SHAR
            settlement_currency: EUR
        - transaction_date: 2021-04-20
          uetr: aeb6305c-1f7f-49da-aed0-16487c27b45a
          gcct_route:
          - position: 1
            sending_bic8: DEMONL01
            bic8: DEMOBE10
            receiving_bic8: DEMONL02
            role: GCCT-IYA
            charge_code: SHAR
            settlement_currency: EUR
          - position: 2
            sending_bic8: DEMONL03
            bic8: DEMOBE10
            receiving_bic8: DEMONL04
            role: GCCT-IYA
            charge_code: SHAR
            settlement_currency: EUR
        links:
          self: /uetrs/gcct/e2e/routes?date=2021-04-20&bic=DEMOUS31&limit=25&offset=25
          next: /uetrs/gcct/e2e/routes?date=2021-04-20&bic=DEMOUS31&limit=25&offset=50
          previous: /uetrs/gcct/e2e/routes?date=2021-04-20&bic=DEMOUS31&limit=25&offset=0
          first: /uetrs/gcct/e2e/routes?date=2021-04-20&bic=DEMOUS31&limit=25&offset=0
          last: /uetrs/gcct/e2e/routes?date=2021-04-20&bic=DEMOUS31&limit=25&offset=5000
    "2021-03-20_DEMOBE11_25_0":
      value:
        observer_data:
        - transaction_date: 2021-03-20
          uetr: aeb0005c-9999-4f7f-89da-16487c27b42d
          gcov_route:
          - position: 1
            sending_bic8: DEMONL01
            bic8: DEMOBE10
            receiving_bic8: DEMONL02
            role: GCOV-RA
            settlement_currency: EUR
          - position: 2
            sending_bic8: DEMONL03
            bic8: DEMOBE10
            receiving_bic8: DEMONL04
            role: GCOV-RA
            settlement_currency: EUR
        - transaction_date: 2021-03-20
          uetr: aeb6305c-1f7f-49da-aed0-16487c27b45a
          gcov_route:
          - position: 1
            sending_bic8: DEMONL01
            bic8: DEMOBE10
            receiving_bic8: DEMONL02
            role: GCOV-RA
            settlement_currency: EUR
          - position: 2
            sending_bic8: DEMONL03
            bic8: DEMOBE10
            receiving_bic8: DEMONL04
            role: GCOV-RA
            settlement_currency: EUR
        links:
          self: /uetrs/gcct/e2e/routes?date=2021-03-20&bic=DEMOBE11&limit=25&offset=0
          next: /uetrs/gcct/e2e/routes?date=2021-03-20&bic=DEMOBE11&limit=25&offset=25
          first: /uetrs/gcct/e2e/routes?date=2021-03-20&bic=DEMOBE11&limit=25&offset=0
          last: /uetrs/gcct/e2e/routes?date=2021-03-20&bic=DEMOBE11&limit=25&offset=5000
    "2021-04-20_DEMOUS30_25_25":
      value:
        observer_data:
        - transaction_date: 2021-04-20
          uetr: aeb0005c-9999-4f7f-89da-16487c27b42d
          gcov_route:
          - position: 1
            sending_bic8: DEMONL01
            bic8: DEMOBE10
            receiving_bic8: DEMONL02
            role: GCOV-RA
            settlement_currency: EUR
          - position: 2
            sending_bic8: DEMONL03
            bic8: DEMOBE10
            receiving_bic8: DEMONL04
            role: GCOV-RA
            settlement_currency: EUR
        - transaction_date: 2021-04-20
          uetr: aeb6305c-1f7f-49da-aed0-16487c27b45a
          gcov_route:
          - position: 1
            sending_bic8: DEMONL01
            bic8: DEMOBE10
            receiving_bic8: DEMONL02
            role: GCOV-RA
            settlement_currency: EUR
          - position: 2
            sending_bic8: DEMONL03
            bic8: DEMOBE10
            receiving_bic8: DEMONL04
            role: GCOV-RA
            settlement_currency: EUR
        links:
          self: /uetrs/gcov/e2e/routes?date=2021-04-20&bic=DEMOUS30&limit=25&offset=25
          next: /uetrs/gcov/e2e/routes?date=2021-04-20&bic=DEMOUS30&limit=25&offset=50
          previous: /uetrs/gcov/e2e/routes?date=2021-04-20&bic=DEMOUS30&limit=25&offset=0
          first: /uetrs/gcov/e2e/routes?date=2021-04-20&bic=DEMOUS30&limit=25&offset=0
          last: /uetrs/gcov/e2e/routes?date=2021-04-20&bic=DEMOUS30&limit=25&offset=5000
    seeOther:
      value:
        code: BI_303
        severity: Transient
        text: See Other
        user_message: Resource is too big to be returned as one response, the request should use limit and offset. (header Location indicates the url of the first page).
    missingParameter:
      value:
        code: SwAP501
        severity: Fatal
        text: APIRequestIsMalformed
        user_message: The required parameter '<parameter>' is missing. Add the missing required parameter and try again
    parameterInvalid:
      value:
        code: BI_400
        severity: Fatal
        text: The '<parameter>' parameter is invalid
        user_message: ' You have sent the value ''<parameter_value>'' although the valid values are ''<valid_parameter_value(s)>'''
    bodyIsNotWellFormed:
      value:
        code: SwAP504
        severity: Fatal
        text: RequestBodyIsNotWellFormed
    headerNotIncluded:
      value:
        code: SwAP521
        severity: Fatal
        text: XBICHeaderNotIncluded
    xbicHeaderNotValid:
      value:
        code: SwAP522
        severity: Fatal
        text: XBICHeaderNotValid
    invalidOAuthToken:
      value:
        code: SwAP502
        severity: Fatal
        text: InvalidOAuthToken
    OAuthTokenHasInsufficentScopeForRequestedService:
      value:
        code: SwAP503
        severity: Fatal
        text: OAuthTokenHasInsufficentScopeForRequestedService
    OAuthTokenNotProvided:
      value:
        code: SwAP508
        severity: Fatal
        text: OAuthTokenNotProvided
    invalidContract:
      value:
        code: BI_403
        severity: Fatal
        text: MissingContract
        user_message: You have not the right contract to access this API
    notFound:
      value:
        severity: Fatal
        code: SwAP506
        text: Resource does not exist.
    noAcceptableReturnType:
      value:
        code: BI_406
        severity: Fatal
        text: NoReturnMediaTypePossible
        user_message: You have asked a response format that is not supported by the server. The supported response format are 'JSON'. Change your HTTP header accordingly
    tooManyRequest:
      value:
        code: SwAP507
        severity: Transient
        text: RequestCannotBeProcessedAtThisTime
        user_message: Request cannot be processed at this time. Please try later. (header Retry-After indicates how long to wait before making a follow-up request).
    internalServerError:
      value:
        code: SwAP599
        severity: Fatal
        text: UnexpectedError
        user_message: Server encountered an unexpected condition and cannot fulfill the request.
    badGateway:
      value:
        code: SwAP008
        severity: Transient
        text: Invalid response received from Service Provider.
    unavailable:
      value:
        code: SwAP590
        severity: Transient
        text: Service is temporary unavailable (header Retry-After indicates how long to wait before making a follow-up request).
    timeOut:
      value:
        code: SwAP591
        severity: Transient
        text: ServiceProvideTimeOut
        user_message: Service Provider time out.
    unexpectedError:
      value:
        code: SwAP599
        severity: Fatal
        text: UnexpectedError
        user_message: Unexpected error occurs. Try again later and if the problem persist contact SWIFT support
  headers:
    X-Response-Timestamp:
      description: Timestamp at which the operation was processed.
      style: simple
      explode: false
      schema:
        type: string
        format: date-time
    X-Request-ID:
      description: Specify an unique end to end tracking request ID. The element will be populated by the SWIFT API gateway
      style: simple
      explode: false
      schema:
        type: string
  securitySchemes:
    oauthBearerToken:
      type: http
      description: |
        The access token obtained as a result of OAuth 2.0 flows. SWIFT supports two OAuth grant types depending on the API service.
        * JWT-Bearer grant type [RFC 7523](https://tools.ietf.org/html/rfc7523)
        * Password grant type

        This API uses password grant type.

        Please visit [SWIFT OAuth Token API](https://developer.swift.com/swift-oauth-token-api) page for more information and examples on how to generate an OAuth token.

        In this declaration only the basic security element to transport the bearer token of an OAuth2 process is declared.
      scheme: bearer
      bearerFormat: opaque OAuth 2.0
