openapi: 3.0.1
info:
  title: Manifest Service
  version: 1.0.0
  description: Micro service that collects manifest files from different services and merge them into a single file
paths:
  /manifests:
    get:
      summary: App Suite UI compatible version of manifests data
      responses:
        '200':
          description: manifests data in JSON format
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  required:
                    - namespace
                    - path
                  properties:
                    namespace:
                      type: string
                      example: core
                    title:
                      type: string
                      example: switchboard
                    settings:
                      type: boolean
                      example: true
                    index:
                      type: integer
                      example: 100
                    path:
                      type: string
                      example: io.ox/switchboard/extensions
                    requires:
                      type: string
                      example: switchboard
                    device:
                      type: string
                      example: '!smartphone'
  /dependencies:
    get:
      summary: Mapping of all files to all of its dependencies
      responses:
        '200':
          description: dependency information for all files of the manifest
          content:
            application/json:
              schema:
                type: object
                properties:
                  dependency:
                    type: array
                    items:
                      type: string