parameters:
  - $ref: ../components/parameters/ID.yaml
  - $ref: ../components/parameters/Content-Type.yaml
  - $ref: ../components/parameters/Date.yaml
  - $ref: ../components/parameters/X-Forwarded-For.yaml
  - $ref: ../components/parameters/FSPIOP-Source.yaml
  - $ref: ../components/parameters/FSPIOP-Destination.yaml
  - $ref: ../components/parameters/FSPIOP-Encryption.yaml
  - $ref: ../components/parameters/FSPIOP-Signature.yaml
  - $ref: ../components/parameters/FSPIOP-URI.yaml
  - $ref: ../components/parameters/FSPIOP-HTTP-Method.yaml
get:
  description: >-
    The HTTP request `GET /transfers/{ID}` is used to get information regarding
    a transfer created or requested earlier. The `{ID}` in the URI should
    contain the `transferId` that was used for the creation of the transfer.
  summary: Retrieve transfer information
  tags:
    - transfers
  operationId: TransfersByIDGet
  parameters:
    - $ref: ../components/parameters/Accept.yaml
  responses:
    '202':
      $ref: ../components/responses/202.yaml
    '400':
      $ref: ../components/responses/400.yaml
    '401':
      $ref: ../components/responses/401.yaml
    '403':
      $ref: ../components/responses/403.yaml
    '404':
      $ref: ../components/responses/404.yaml
    '405':
      $ref: ../components/responses/405.yaml
    '406':
      $ref: ../components/responses/406.yaml
    '501':
      $ref: ../components/responses/501.yaml
    '503':
      $ref: ../components/responses/503.yaml
patch:
  description: >-
    The HTTP request PATCH /transfers/<ID> is used by a Switch to update the
    state of a previously reserved transfer, if the Payee FSP has requested a
    commit notification when the Switch has completed processing of the
    transfer. The <ID> in the URI should contain the transferId that was used
    for the creation of the transfer. Please note that this request does not
    generate a callback.
  summary: Return transfer information
  tags:
    - transfers
  operationId: TransfersByIDPatch
  parameters:
    - $ref: ../components/parameters/Content-Length.yaml
  requestBody:
    description: Transfer notification upon completion.
    required: true
    content:
      application/json:
        schema:
          $ref: ../components/schemas/TransfersIDPatchResponse.yaml
  responses:
    '200':
      $ref: ../components/responses/200.yaml
    '400':
      $ref: ../components/responses/400.yaml
    '401':
      $ref: ../components/responses/401.yaml
    '403':
      $ref: ../components/responses/403.yaml
    '404':
      $ref: ../components/responses/404.yaml
    '405':
      $ref: ../components/responses/405.yaml
    '406':
      $ref: ../components/responses/406.yaml
    '501':
      $ref: ../components/responses/501.yaml
    '503':
      $ref: ../components/responses/503.yaml
put:
  description: >-
    The callback `PUT /transfers/{ID}` is used to inform the client of a
    requested or created transfer. The `{ID}` in the URI should contain the
    `transferId` that was used for the creation of the transfer, or the `{ID}`
    that was used in the `GET /transfers/{ID}` request.
  summary: Return transfer information
  tags:
    - transfers
  operationId: TransfersByIDPut
  parameters:
    - $ref: ../components/parameters/Content-Length.yaml
  requestBody:
    description: Transfer information returned.
    required: true
    content:
      application/json:
        schema:
          $ref: ../components/schemas/TransfersIDPutResponse.yaml
  responses:
    '200':
      $ref: ../components/responses/200.yaml
    '400':
      $ref: ../components/responses/400.yaml
    '401':
      $ref: ../components/responses/401.yaml
    '403':
      $ref: ../components/responses/403.yaml
    '404':
      $ref: ../components/responses/404.yaml
    '405':
      $ref: ../components/responses/405.yaml
    '406':
      $ref: ../components/responses/406.yaml
    '501':
      $ref: ../components/responses/501.yaml
    '503':
      $ref: ../components/responses/503.yaml
