get:
  summary: List all available procedures
  description: |-
    List or search all `Procedure` resources available from this server endpoint.
  tags:
    - Procedures
  parameters:
    - $ref: ../parameters/idList.yaml
    - $ref: ../parameters/datetime.yaml
    - $ref: ../parameters/keyword.yaml
    #- $ref: ../parameters/foiIdList.yaml
    - $ref: ../parameters/obsPropIdList.yaml
    - $ref: ../parameters/controlPropIdList.yaml
    #- $ref: '#/components/parameters/select'
    - $ref: ../parameters/limit.yaml
  responses:
    '200':
      $ref: ../responses/procedureCollection.yaml
    '400':
      $ref: ../responses/StandardResponses.yaml#/400
    '401':
      $ref: ../responses/StandardResponses.yaml#/401
    '403':
      $ref: ../responses/StandardResponses.yaml#/403
    '404':
      $ref: ../responses/StandardResponses.yaml#/404
    '5XX':
      $ref: ../responses/StandardResponses.yaml#/5XX

post:
  summary: Create a procedure
  description: |-
    Add a new `Procedure` resources.

    Note that it is possible to create multiple resources in a single batch request.
    In this case, several resource descriptions are provided in the content body inside a JSON array.
    On success, the server will send a `200` response with the list of URIs of all created resources,
    in the same order as the array in the request.
  tags:
    - Procedures
  requestBody:
    $ref: ../requests/procedure.yaml
  responses:
    '201':
      $ref: ../responses/StandardResponses.yaml#/201
    '400':
      $ref: ../responses/StandardResponses.yaml#/400
    '401':
      $ref: ../responses/StandardResponses.yaml#/401
    '403':
      $ref: ../responses/StandardResponses.yaml#/403
    '404':
      $ref: ../responses/StandardResponses.yaml#/404
    '5XX':
      $ref: ../responses/StandardResponses.yaml#/5XX