Adding Initial ICN API Service
[icn.git] / cmd / bpa-restapi-agent / docs / swagger.yaml
diff --git a/cmd/bpa-restapi-agent/docs/swagger.yaml b/cmd/bpa-restapi-agent/docs/swagger.yaml
new file mode 100644 (file)
index 0000000..a375700
--- /dev/null
@@ -0,0 +1,137 @@
+---
+swagger: "2.0"
+info:
+  description: "Addresses deployment of workloads in the edge"
+  version: "1.0.0"
+  title: "ICN application"
+schemes:
+- "http"
+consumes:
+- "application/json"
+produces:
+- "application/json"
+paths:
+  /:
+    get:
+      tags:
+      - "container_images"
+      operationId: "find_images"
+      parameters:
+      - name: "since"
+        in: "query"
+        required: false
+        type: "integer"
+        format: "int64"
+        x-exportParamName: "Since"
+        x-optionalDataType: "Int64"
+      - name: "limit"
+        in: "query"
+        required: false
+        type: "integer"
+        default: 20
+        format: "int32"
+        x-exportParamName: "Limit"
+        x-optionalDataType: "Int32"
+      responses:
+        200:
+          description: "list the ICN operations"
+          schema:
+            type: "array"
+            items:
+              $ref: "#/definitions/Request"
+        default:
+          description: "generic error response"
+          schema:
+            $ref: "#/definitions/error"
+    post:
+      tags:
+      - "container_images"
+      operationId: "addContainer"
+      parameters:
+      - in: "body"
+        name: "body"
+        required: false
+        schema:
+          $ref: "#/definitions/Request"
+        x-exportParamName: "Body"
+      responses:
+        201:
+          description: "Created"
+          schema:
+            $ref: "#/definitions/Request"
+        default:
+          description: "error"
+          schema:
+            $ref: "#/definitions/error"
+  /{id}:
+    put:
+      tags:
+      - "container_images"
+      operationId: "updateImage"
+      parameters:
+      - name: "id"
+        in: "path"
+        required: true
+        type: "integer"
+        format: "int64"
+        x-exportParamName: "Id"
+      - in: "body"
+        name: "body"
+        required: false
+        schema:
+          $ref: "#/definitions/Request"
+        x-exportParamName: "Body"
+      responses:
+        200:
+          description: "OK"
+          schema:
+            $ref: "#/definitions/Request"
+        default:
+          description: "error"
+          schema:
+            $ref: "#/definitions/error"
+    delete:
+      tags:
+      - "container_images"
+      operationId: "destroyImage"
+      parameters:
+      - name: "id"
+        in: "path"
+        required: true
+        type: "integer"
+        format: "int64"
+        x-exportParamName: "Id"
+      responses:
+        204:
+          description: "Deleted"
+        default:
+          description: "error"
+          schema:
+            $ref: "#/definitions/error"
+definitions:
+  Request:
+    type: "object"
+    properties:
+      image_id:
+        type: "string"
+      repo:
+        type: "string"
+      tag:
+        type: "string"
+      installed:
+        type: "boolean"
+    example:
+      installed: true
+      repo: "repo"
+      tag: "tag"
+      image_id: "image_id"
+  error:
+    type: "object"
+    required:
+    - "message"
+    properties:
+      code:
+        type: "integer"
+        format: "int64"
+      message:
+        type: "string"