From 0ec20990e60b9eb9595071f3c4fa8d9d05727043 Mon Sep 17 00:00:00 2001
From: Laurent Velez <laurent.velez@etsi.org>
Date: Tue, 27 Jul 2021 19:05:57 +0200
Subject: [PATCH] added Container3

---
 OpenAPI/openapi-UEidentityAPI.json | 310 +++++++++++++++++++++++++++++
 OpenAPI/openapi-UEidentityAPI.yaml | 219 ++++++++++++++++++++
 2 files changed, 529 insertions(+)
 create mode 100644 OpenAPI/openapi-UEidentityAPI.json
 create mode 100644 OpenAPI/openapi-UEidentityAPI.yaml

diff --git a/OpenAPI/openapi-UEidentityAPI.json b/OpenAPI/openapi-UEidentityAPI.json
new file mode 100644
index 0000000..2d0458c
--- /dev/null
+++ b/OpenAPI/openapi-UEidentityAPI.json
@@ -0,0 +1,310 @@
+{
+  "openapi": "3.0.2",
+  "info": {
+    "title": "UE Identity API",
+    "version": "1.1.1",
+    "description": "The ETSI MEC ISG MEC014 UE Identity API described using OpenAPI",
+    "license": {
+      "name": "BSD-3-Clause",
+      "url": "https://forge.etsi.org/legal-matters"
+    },
+    "contact": {
+      "email": "cti_support@etsi.org"
+    }
+  },
+  "externalDocs": {
+    "description": "ETSI GS MEC014 UE Identity API, V1.1.1",
+    "url": "http://www.etsi.org/deliver/etsi_gs/MEC/001_099/014/01.01.01_60/gs_mec014v010101p.pdf"
+  },
+  "security": [
+    {
+      "OauthSecurity": [
+        "all"
+      ]
+    }
+  ],
+  "servers": [
+    {
+      "url": "http://127.0.0.1:8081/ui/v1"
+    },
+    {
+      "url": "https://127.0.0.1:8081/ui/v1"
+    }
+  ],
+  "tags": [
+    {
+      "name": "ueIdentityTagInfo"
+    }
+  ],
+  "paths": {
+    "/{appInstanceId}/ue_identity_tag_info": {
+      "parameters": [
+        {
+          "$ref": "#/components/parameters/Path.AppInstanceId"
+        }
+      ],
+      "get": {
+        "description": "Retrieves information about a specific UeIdentityTagInfo resource",
+        "operationId": "UeIdentityTagInfo_GET",
+        "tags": [
+          "ueIdentityTagInfo"
+        ],
+        "parameters": [
+          {
+            "$ref": "#/components/parameters/Query.UeIdentityTag"
+          }
+        ],
+        "responses": {
+          "200": {
+            "description": "It is used to indicate nonspecific success. The response body contains a representation of the UeIdentityTagInfo resource.",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "$ref": "#/components/schemas/UeIdentityTagInfo"
+                }
+              }
+            }
+          },
+          "400": {
+            "$ref": "#/components/responses/Error.400"
+          },
+          "403": {
+            "$ref": "#/components/responses/Error.403"
+          },
+          "404": {
+            "$ref": "#/components/responses/Error.404"
+          }
+        }
+      },
+      "put": {
+        "description": "Register/De-register the information about specific a UeIdentityTagInfo resource",
+        "operationId": "UeIdentityTagInfo_PUT",
+        "tags": [
+          "ueIdentityTagInfo"
+        ],
+        "requestBody": {
+          "content": {
+            "application/json": {
+              "schema": {
+                "$ref": "#/components/schemas/UeIdentityTagInfo"
+              }
+            }
+          },
+          "description": "'The updated \"state\" for each included UE Identity tag is included in the entity body of the request'",
+          "required": true
+        },
+        "responses": {
+          "200": {
+            "description": "It is used to indicate success. The response body contains a representation of the UeIdentityTagInfo resource",
+            "content": {
+              "application/json": {
+                "schema": {
+                  "$ref": "#/components/schemas/UeIdentityTagInfo"
+                }
+              }
+            }
+          },
+          "400": {
+            "$ref": "#/components/responses/Error.400"
+          },
+          "403": {
+            "$ref": "#/components/responses/Error.403"
+          },
+          "404": {
+            "$ref": "#/components/responses/Error.404"
+          },
+          "412": {
+            "$ref": "#/components/responses/Error.412"
+          }
+        }
+      }
+    }
+  },
+  "components": {
+    "parameters": {
+      "Path.AppInstanceId": {
+        "name": "appInstanceId",
+        "in": "path",
+        "description": "Represents a mobile edge application instance",
+        "required": true,
+        "schema": {
+          "type": "string"
+        }
+      },
+      "Query.UeIdentityTag": {
+        "name": "ueIdentityTag",
+        "in": "query",
+        "description": "Represents a UE",
+        "required": true,
+        "schema": {
+          "type": "array",
+          "items": {
+            "type": "string"
+          }
+        }
+      }
+    },
+    "responses": {
+      "Error.400": {
+        "description": "Bad Request. Incorrect parameters were passed in the request.In the returned ProblemDetails structure, the \"detail\" attribute should convey more information about the error.",
+        "content": {
+          "application/problem+json": {
+            "schema": {
+              "$ref": "#/components/schemas/ProblemDetails"
+            }
+          },
+          "text/plain": {
+            "schema": {
+              "$ref": "#/components/schemas/Empty"
+            }
+          }
+        }
+      },
+      "Error.403": {
+        "description": "Forbidden. The operation is not allowed given the current status of the resource. More information should be provided in the \"detail\" attribute of the \"ProblemDetails\" structure.",
+        "content": {
+          "application/problem+json": {
+            "schema": {
+              "$ref": "#/components/schemas/ProblemDetails"
+            }
+          }
+        }
+      },
+      "Error.404": {
+        "description": "Not Found. The client provided a URI that cannot be mapped to a valid resource URL. In the returned ProblemDetails structure, the \"detail\" attribute should convey more information about the error.",
+        "content": {
+          "application/problem+json": {
+            "schema": {
+              "$ref": "#/components/schemas/ProblemDetails"
+            }
+          },
+          "text/plain": {
+            "schema": {
+              "$ref": "#/components/schemas/Empty"
+            }
+          }
+        }
+      },
+      "Error.412": {
+        "description": "Precondition Failed. It is used when a condition has failed during conditional requests, e.g. when using ETags to avoid write conflicts.In the returned ProblemDetails structure, the \"detail\" attribute should convey more information about the error.",
+        "content": {
+          "application/problem+json": {
+            "schema": {
+              "$ref": "#/components/schemas/ProblemDetails"
+            }
+          },
+          "text/plain": {
+            "schema": {
+              "$ref": "#/components/schemas/Empty"
+            }
+          }
+        }
+      }
+    },
+    "securitySchemes": {
+      "OauthSecurity": {
+        "type": "oauth2",
+        "flows": {
+          "clientCredentials": {
+            "tokenUrl": "https://oauth.exampleAPI/token",
+            "scopes": {
+              "all": "Single oauth2 scope for API"
+            }
+          }
+        }
+      }
+    },
+    "schemas": {
+      "Empty": {
+        "description": "Empty schema"
+      },
+      "ProblemDetails": {
+        "type": "object",
+        "properties": {
+          "type": {
+            "$ref": "#/components/schemas/Problem.type"
+          },
+          "title": {
+            "$ref": "#/components/schemas/Problem.title"
+          },
+          "status": {
+            "$ref": "#/components/schemas/Problem.status"
+          },
+          "detail": {
+            "$ref": "#/components/schemas/Problem.detail"
+          },
+          "instance": {
+            "$ref": "#/components/schemas/Problem.instance"
+          }
+        }
+      },
+      "Problem.type": {
+        "type": "string",
+        "format": "uri",
+        "description": "A URI reference according to IETF RFC 3986 that identifies the problem type"
+      },
+      "Problem.title": {
+        "type": "string",
+        "description": "A short, human-readable summary of the problem type"
+      },
+      "Problem.status": {
+        "type": "integer",
+        "format": "uint32",
+        "description": "The HTTP status code for this occurrence of the problem"
+      },
+      "Problem.detail": {
+        "type": "string",
+        "description": "A human-readable explanation specific to this occurrence of the problem"
+      },
+      "Problem.instance": {
+        "type": "string",
+        "format": "uri",
+        "description": "A URI reference that identifies the specific occurrence of the problem"
+      },
+      "UeIdentityTagInfo": {
+        "description": "information of UE identity tag used in UE Identity feature",
+        "type": "object",
+        "required": [
+          "ueIdentityTags"
+        ],
+        "properties": {
+          "ueIdentityTags": {
+            "$ref": "#/components/schemas/UeIdentityTags"
+          }
+        }
+      },
+      "UeIdentityTags": {
+        "description": "1 to N tags presented by a ME Application instance to a ME Platform",
+        "type": "array",
+        "items": {
+          "required": [
+            "ueIdentityTag",
+            "state"
+          ],
+          "properties": {
+            "ueIdentityTag": {
+              "$ref": "#/components/schemas/UeIdentityTag"
+            },
+            "state": {
+              "$ref": "#/components/schemas/State"
+            }
+          }
+        }
+      },
+      "UeIdentityTag": {
+        "description": "Specific tag presented by a ME Application instance to a ME Platform",
+        "type": "string",
+        "example": "UeTagA"
+      },
+      "State": {
+        "description": "Status of the resource ueIdentityTagInfo",
+        "type": "string",
+        "enum": [
+          "UNREGISTERED",
+          "REGISTERED"
+        ],
+        "example": "REGISTERED"
+      }
+    }
+  }
+}
diff --git a/OpenAPI/openapi-UEidentityAPI.yaml b/OpenAPI/openapi-UEidentityAPI.yaml
new file mode 100644
index 0000000..001594b
--- /dev/null
+++ b/OpenAPI/openapi-UEidentityAPI.yaml
@@ -0,0 +1,219 @@
+openapi: 3.0.2
+info:
+  title: UE Identity API
+  version: 1.1.1
+  description: The ETSI MEC ISG MEC014 UE Identity API described using OpenAPI
+  license:
+    name: BSD-3-Clause
+    url: https://forge.etsi.org/legal-matters
+  contact:
+    email: cti_support@etsi.org
+externalDocs:
+  description: ETSI GS MEC014 UE Identity API, V1.1.1
+  url: http://www.etsi.org/deliver/etsi_gs/MEC/001_099/014/01.01.01_60/gs_mec014v010101p.pdf
+security:
+  - OauthSecurity:
+      - all
+servers:
+  - url: http://127.0.0.1:8081/ui/v1
+  - url: https://127.0.0.1:8081/ui/v1
+tags:
+  - name: ueIdentityTagInfo
+paths:
+  "/{appInstanceId}/ue_identity_tag_info":
+    parameters:
+      - $ref: "#/components/parameters/Path.AppInstanceId"
+    get:
+      description: Retrieves information about a specific UeIdentityTagInfo resource
+      operationId: UeIdentityTagInfo_GET
+      tags:
+        - ueIdentityTagInfo
+      parameters:
+        - $ref: "#/components/parameters/Query.UeIdentityTag"
+      responses:
+        "200":
+          description: It is used to indicate nonspecific success. The response body
+            contains a representation of the UeIdentityTagInfo resource.
+          content:
+            application/json:
+              schema:
+                $ref: "#/components/schemas/UeIdentityTagInfo"
+        "400":
+          $ref: '#/components/responses/Error.400'
+        "403":
+          $ref: '#/components/responses/Error.403'
+        "404":
+          $ref: '#/components/responses/Error.404'
+    put:
+      description: Register/De-register the information about specific a UeIdentityTagInfo
+        resource
+      operationId: UeIdentityTagInfo_PUT
+      tags:
+        - ueIdentityTagInfo
+      requestBody:
+        content:
+          application/json:
+            schema:
+              $ref: "#/components/schemas/UeIdentityTagInfo"
+        description: "'The updated \"state\" for each included UE Identity tag is included
+          in the entity body of the request'"
+        required: true
+      responses:
+        "200":
+          description: It is used to indicate success. The response body contains a
+            representation of the UeIdentityTagInfo resource
+          content:
+            application/json:
+              schema:
+                $ref: "#/components/schemas/UeIdentityTagInfo"
+        "400":
+          $ref: '#/components/responses/Error.400'
+        "403":
+          $ref: '#/components/responses/Error.403'
+        "404":
+          $ref: '#/components/responses/Error.404'
+        "412":
+          $ref: '#/components/responses/Error.412'
+components:
+  parameters:
+    Path.AppInstanceId:
+      name: appInstanceId
+      in: path
+      description: Represents a mobile edge application instance
+      required: true
+      schema:
+        type: string
+    Query.UeIdentityTag:
+      name: ueIdentityTag
+      in: query
+      description: Represents a UE
+      required: true
+      schema:
+        type: array
+        items:
+          type: string
+  responses:
+    Error.400:
+      description: >-
+        Bad Request.
+        Incorrect parameters were passed in the request.In the returned
+        ProblemDetails structure, the "detail" attribute should convey more
+        information about the error.
+      content:
+        application/problem+json:
+          schema:
+            $ref: "#/components/schemas/ProblemDetails"
+        text/plain:
+          schema:
+            $ref: '#/components/schemas/Empty'
+    Error.403:
+      description: 
+        Forbidden.
+        The operation is not allowed given the current status of the
+        resource. More information should be provided in the "detail"
+        attribute of the "ProblemDetails" structure.
+      content:
+        application/problem+json:
+          schema:
+            $ref: "#/components/schemas/ProblemDetails"
+    Error.404:
+      description: >-
+        Not Found.
+        The client provided a URI that cannot be mapped to a valid resource
+        URL. In the returned ProblemDetails structure, the "detail"
+        attribute should convey more information about the error.
+      content:
+        application/problem+json:
+          schema:
+            $ref: "#/components/schemas/ProblemDetails"
+        text/plain:
+          schema:
+            $ref: '#/components/schemas/Empty'
+    Error.412:
+      description: >-
+        Precondition Failed.
+        It is used when a condition has failed during conditional requests,
+        e.g. when using ETags to avoid write conflicts.In the returned
+        ProblemDetails structure, the "detail" attribute should convey more
+        information about the error.
+      content:
+        application/problem+json:
+          schema:
+            $ref: "#/components/schemas/ProblemDetails"
+        text/plain:
+          schema:
+            $ref: '#/components/schemas/Empty'
+  securitySchemes:
+    OauthSecurity:
+      type: oauth2
+      flows:
+        clientCredentials:
+          tokenUrl: https://oauth.exampleAPI/token
+          scopes:
+            all: Single oauth2 scope for API
+  schemas:
+    Empty:
+      description: Empty schema
+    ProblemDetails:
+      type: object
+      properties:
+        type:
+          $ref: "#/components/schemas/Problem.type"
+        title:
+          $ref: "#/components/schemas/Problem.title"
+        status:
+          $ref: "#/components/schemas/Problem.status"
+        detail:
+          $ref: "#/components/schemas/Problem.detail"
+        instance:
+          $ref: "#/components/schemas/Problem.instance"
+    Problem.type:
+      type: string
+      format: uri
+      description: A URI reference according to IETF RFC 3986 that identifies the problem
+        type
+    Problem.title:
+      type: string
+      description: A short, human-readable summary of the problem type
+    Problem.status:
+      type: integer
+      format: uint32
+      description: The HTTP status code for this occurrence of the problem
+    Problem.detail:
+      type: string
+      description: A human-readable explanation specific to this occurrence of the problem
+    Problem.instance:
+      type: string
+      format: uri
+      description: A URI reference that identifies the specific occurrence of the problem
+    UeIdentityTagInfo:
+      description: information of UE identity tag used in UE Identity feature
+      type: object
+      required:
+        - ueIdentityTags
+      properties:
+        ueIdentityTags:
+          $ref: "#/components/schemas/UeIdentityTags"
+    UeIdentityTags:
+      description: 1 to N tags presented by a ME Application instance to a ME Platform
+      type: array
+      items:
+        required:
+          - ueIdentityTag
+          - state
+        properties:
+          ueIdentityTag:
+            $ref: "#/components/schemas/UeIdentityTag"
+          state:
+            $ref: "#/components/schemas/State"
+    UeIdentityTag:
+      description: Specific tag presented by a ME Application instance to a ME Platform
+      type: string
+      example: UeTagA
+    State:
+      description: Status of the resource ueIdentityTagInfo
+      type: string
+      enum:
+        - UNREGISTERED
+        - REGISTERED
+      example: REGISTERED
-- 
GitLab