openapi: 3.0.0
info:
  version: 1.0.0
  title: APP4MC Validation API
  description: APP4MC Validation API to validate an Amalthea model file

servers:
  - url: http://localhost:8080/app4mc/validation
  - url: https://app4mc.eclipseprojects.io/app4mc/validation
  
paths:
  /:
    post:
      summary: Upload the file to validate and start the validation process asynchronously
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: string
                  format: binary
                profiles:
                  type: string
                  description: The validation profiles to execute. Parameter is optional and defaults to the Amalthea Standard Validations profile.
      responses:
        '201':
          description: Upload succeeded and validation process started
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: ID of the created validation resource
          headers:
            Location:
              schema:
                type: string
                format: uri
              description: The URI to the status URL
          links:
            status:
              operationId: getStatus
              parameters:
                statusId: '$response.body#/id'
              description: >
                The `id` value returned in the response can be used as
                the `statusId` parameter in `GET /{statusId}`.
        '400':
          description: No model file provided as upload
        '404':
          description: Upload failed

  /{statusId}:
    get:
      summary: Get the status of the triggered validation process
      operationId: getStatus
      parameters:
        - in: path
          name: statusId
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Processing finished successfully
          headers:
            Cache-Control:
              schema:
                type: string
                enum:
                  - private, no-store, no-cache, must-revalidate
          links:
            result:
              operationId: getDownload
              parameters:
                statusId: $request.path.statusId
        '202':
          description: Validation process in progress
          headers:
            Cache-Control:
              schema:
                type: string
                enum:
                  - private, no-store, no-cache, must-revalidate
        '204':
          description: Processing finished with an error
          headers:
            Cache-Control:
              schema:
                type: string
                enum:
                  - private, no-store, no-cache, must-revalidate
          links:
            result:
              operationId: getError
              parameters:
                statusId: $request.path.statusId
        '404':
          description: Resource not available

    delete:
      summary: Delete the uploaded and result resource from the server
      operationId: deleteResource
      parameters:
        - in: path
          name: statusId
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Resource deleted successfully
        '404':
          description: Resource not available

  /{statusId}/download:
    get:
      summary: Download the validation result file
      operationId: getDownload
      parameters:
        - in: path
          name: statusId
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Validation successful
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
          headers:
            # custom header to configure that the result should not be used as input to the next process in the workflow
            x-app4mc-use-result:
              schema:
                type: string
                enum:
                  - false
          links:
            delete:
              operationId: deleteResource
              parameters:
                statusId: $request.path.statusId
        '400':
          description: Validation finished with validation failures
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
          headers:
            # custom header to configure that the result should not be used as input to the next process in the workflow
            x-app4mc-use-result:
              schema:
                type: string
                enum:
                  - false
          links:
            delete:
              operationId: deleteResource
              parameters:
                statusId: $request.path.statusId
        '404':
          description: Progress still running / Resource not available / No result available
          content:
            application/json:
              schema:
                type: string

  /{statusId}/error:
    get:
      summary: Download the error file of the validation process
      operationId: getError
      parameters:
        - in: path
          name: statusId
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Error occured
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
          links:
            delete:
              operationId: deleteResource
              parameters:
                statusId: $request.path.statusId
        '404':
          description: Resource not available / No error occured
          content:
            application/json:
              schema:
                type: string

  /config:
    get:
      summary: Get the configuration definition of the service
      responses:
        '200':
          description: The configuration definition of the service
          content:
            application/json:
              schema:
                type: string
