Migrate to springboot 2.6.2
[nonrtric.git] / r-app-catalogue / api / rac-api.yaml
index 87e2eb9..9ba6c39 100644 (file)
@@ -11,33 +11,24 @@ paths:
     get:
       tags:
       - rAPP Catalogue API
-      summary: Service names
-      operationId: getServiceNamesUsingGET
+      summary: Services
+      operationId: getServices
       responses:
-        200:
-          description: Service names
+        "200":
+          description: Services
           content:
             application/json:
               schema:
                 type: array
                 items:
-                  type: string
-              example:
-              - DroneIdentifier
-              - Collector
-        401:
-          description: Unauthorized
-        403:
-          description: Forbidden
-        404:
-          description: Not used
+                  $ref: '#/components/schemas/service'
       deprecated: false
   /services/{serviceName}:
     get:
       tags:
       - rAPP Catalogue API
       summary: Individual Service
-      operationId: getIndividualServiceUsingGET
+      operationId: getIndividualService
       parameters:
       - name: serviceName
         in: path
@@ -49,17 +40,13 @@ paths:
           type: string
         example: DroneIdentifier
       responses:
-        200:
-          description: EI Job
+        "200":
+          description: Service
           content:
             application/json:
               schema:
                 $ref: '#/components/schemas/service'
-        401:
-          description: Unauthorized
-        403:
-          description: Forbidden
-        404:
+        "404":
           description: Service is not found
           content:
             application/json:
@@ -70,7 +57,7 @@ paths:
       tags:
       - rAPP Catalogue API
       summary: Create or update a Service
-      operationId: putIndividualServiceUsingPUT
+      operationId: putIndividualService
       parameters:
       - name: serviceName
         in: path
@@ -85,32 +72,35 @@ paths:
         content:
           application/json:
             schema:
-              $ref: '#/components/schemas/service'
+              $ref: '#/components/schemas/inputService'
         required: true
       responses:
-        200:
+        "200":
           description: Service updated
-        201:
+        "201":
           description: Service created
-        401:
-          description: Unauthorized
-        403:
-          description: Forbidden
-        404:
+          headers:
+            Location:
+              description: URL to the created Service
+              style: simple
+              explode: false
+              schema:
+                type: string
+        "400":
           description: Provided service is not correct
           content:
             application/json:
               schema:
                 $ref: '#/components/schemas/error_information'
               example:
-                detail: Service is missing required property version
-                status: 404
+                detail: "Service is missing required property: version"
+                status: 400
       deprecated: false
     delete:
       tags:
       - rAPP Catalogue API
       summary: Remove a Service from the catalogue
-      operationId: deleteIndividualServiceUsingDELETE
+      operationId: deleteIndividualService
       parameters:
       - name: serviceName
         in: path
@@ -121,29 +111,42 @@ paths:
           type: string
         example: DroneIdentifier
       responses:
-        200:
-          description: Not used
-        204:
-          description: Job deleted
-        401:
-          description: Unauthorized
-        403:
-          description: Forbidden
-        404:
-          description: Service is not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
+        "204":
+          description: Service deleted
       deprecated: false
 components:
   schemas:
+    inputService:
+      title: inputService
+      required:
+      - version
+      type: object
+      properties:
+        version:
+          type: string
+          description: Version of the Service
+          example: 1.0.0
+        display_name:
+          type: string
+          description: Display name for the Service
+          example: Drone Identifier
+        description:
+          type: string
+          description: Description of the Service
+          example: Detects if a UE is a drone
+      description: A Service to register
     service:
       title: service
       required:
+      - name
+      - registrationDate
       - version
       type: object
       properties:
+        name:
+          type: string
+          description: Unique identifier of the Service
+          example: DroneIdentifier
         version:
           type: string
           description: Version of the Service
@@ -156,6 +159,10 @@ components:
           type: string
           description: Description of the Service
           example: Detects if a UE is a drone
+        registrationDate:
+          type: string
+          description: Date when the Service was registered in the catalogue
+          example: 2020-11-03
       description: A Service
     error_information:
       title: error_information
@@ -168,8 +175,7 @@ components:
           example: Service not found
         status:
           type: integer
-          description: The HTTP status code generated by the origin server for this
-            occurrence of the problem.
+          description: The HTTP status code for this occurrence of the problem.
           format: int32
           example: 404
       description: Problem as defined in https://tools.ietf.org/html/rfc7807