Commit cb7ad158 authored by Walter Featherstone's avatar Walter Featherstone
Browse files

Coversion to OpenAPI3

parent 96daa263
Loading
Loading
Loading
Loading
+221 −220
Original line number Diff line number Diff line
{
  "swagger": "2.0",
  "openapi": "3.0.2",
  "info": {
    "description": "The ETSI MEC ISG MEC014 UE Identity API described using OpenAPI",
    "version": "1.1.1",
    "title": "UE Identity API",
    "version": "1.1.1",
    "description": "The ETSI MEC ISG MEC014 UE Identity API described using OpenAPI",
    "license": {
      "name": "ETSI Forge copyright notice",
      "url": "https://forge.etsi.org/etsi-forge-copyright-notice.txt"
    },
    "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"
  },
  "host": "127.0.0.1:8081",
  "basePath": "/ui/v1",
  "schemes": [
    "http",
    "https"
  ],
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "security": [
    {
      "OauthSecurity": [
@@ -32,209 +23,218 @@
      ]
    }
  ],
  "securityDefinitions": {
    "OauthSecurity": {
      "type": "oauth2",
      "flow": "application",
      "tokenUrl": "https://oauth.exampleAPI/token",
      "scopes": {
        "all": "Single oauth2 scope for API"
      }
    }
  },
  "parameters": {
    "Body.UeIdentityTagInfo": {
      "name": "UeIdentityTagInfo",
      "in": "body",
      "description": "'The updated \"state\" for each included UE Identity tag is included in the entity body of the request'",
      "required": true,
      "schema": {
        "$ref": "#/definitions/UeIdentityTagInfo"
      }
    },
    "Path.AppInstanceId": {
      "name": "appInstanceId",
      "in": "path",
      "description": "Represents a mobile edge application instance",
      "required": true,
      "type": "string"
  "servers": [
    {
      "url": "http://127.0.0.1:8081/ui/v1"
    },
    "Query.UeIdentityTag": {
      "name": "ueIdentityTag",
      "in": "query",
      "description": "Represents a UE",
      "required": true,
      "type": "array",
      "items": {
        "type": "string"
    {
      "url": "https://127.0.0.1:8081/ui/v1"
    }
  ],
  "tags": [
    {
      "name": "ueIdentityTagInfo"
    }
  },
  ],
  "paths": {
    "/{appInstanceId}/ue_identity_tag_info": {
      "parameters": [
        {
          "$ref": "#/parameters/Path.AppInstanceId"
          "$ref": "#/components/parameters/Path.AppInstanceId"
        }
      ],
      "get": {
        "description": "Retrieves information about a specific UeIdentityTagInfo resource",
        "produces": [
          "application/json"
        "operationId": "UeIdentityTagInfo_GET",
        "tags": [
          "ueIdentityTagInfo"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/Query.UeIdentityTag"
            "$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": {
              "required": [
                "UeIdentityTagInfo"
              ],
              "properties": {
                "UeIdentityTagInfo": {
                  "$ref": "#/definitions/UeIdentityTagInfo"
                  "$ref": "#/components/schemas/UeIdentityTagInfo"
                }
              }
            }
          },
          "400": {
            "description": "Incorrect parameters were passed in the request.In the returned ProblemDetails structure, the \"detail\" attribute should convey more information about the error.",
            "schema": {
              "properties": {
                "ProblemDetails": {
                  "$ref": "#/definitions/ProblemDetails"
                }
              }
            }
            "$ref": "#/components/responses/Error.400"
          },
          "403": {
            "description": "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.",
            "schema": {
              "required": [
                "ProblemDetails"
              ],
              "properties": {
                "ProblemDetails": {
                  "$ref": "#/definitions/ProblemDetails"
                }
              }
            }
            "$ref": "#/components/responses/Error.403"
          },
          "404": {
            "description": "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.",
            "schema": {
              "properties": {
                "ProblemDetails": {
                  "$ref": "#/definitions/ProblemDetails"
                }
              }
            }
            "$ref": "#/components/responses/Error.404"
          }
        }
      },
      "put": {
        "description": "Register/De-register the information about specific a UeIdentityTagInfo resource",
        "produces": [
          "application/json"
        "operationId": "UeIdentityTagInfo_PUT",
        "tags": [
          "ueIdentityTagInfo"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/Body.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": {
              "required": [
                "UeIdentityTagInfo"
              ],
              "properties": {
                "UeIdentityTagInfo": {
                  "$ref": "#/definitions/UeIdentityTagInfo"
                  "$ref": "#/components/schemas/UeIdentityTagInfo"
                }
              }
            }
          },
          "400": {
            "description": "Incorrect parameters were passed in the request.In the returned ProblemDetails structure, the \"detail\" attribute should convey more information about the error.",
            "$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": {
              "properties": {
                "ProblemDetails": {
                  "$ref": "#/definitions/ProblemDetails"
          "type": "string"
        }
      },
      "Query.UeIdentityTag": {
        "name": "ueIdentityTag",
        "in": "query",
        "description": "Represents a UE",
        "required": true,
        "schema": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
          "401": {
            "description": "An erroneous or missing bearer token. More information should be provided in the \"detail\" attribute of the \"ProblemDetails\" structure.",
    "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": {
              "properties": {
                "ProblemDetails": {
                  "$ref": "#/definitions/ProblemDetails"
              "$ref": "#/components/schemas/ProblemDetails"
            }
          },
          "text/plain": {
            "schema": {
              "$ref": "#/components/schemas/Empty"
            }
          }
        }
      },
          "403": {
            "description": "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.",
      "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": {
              "required": [
                "ProblemDetails"
              ],
              "properties": {
                "ProblemDetails": {
                  "$ref": "#/definitions/ProblemDetails"
              "$ref": "#/components/schemas/ProblemDetails"
            }
          }
        }
      },
          "404": {
            "description": "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.",
      "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": {
              "properties": {
                "ProblemDetails": {
                  "$ref": "#/definitions/ProblemDetails"
              "$ref": "#/components/schemas/ProblemDetails"
            }
          },
          "text/plain": {
            "schema": {
              "$ref": "#/components/schemas/Empty"
            }
          }
        }
      },
          "412": {
            "description": "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.",
      "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": {
              "properties": {
                "ProblemDetails": {
                  "$ref": "#/definitions/ProblemDetails"
              "$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"
            }
          }
        }
      }
    },
  "definitions": {
    "schemas": {
      "Empty": {
        "description": "Empty schema"
      },
      "ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
          "$ref": "#/definitions/Problem.type"
            "$ref": "#/components/schemas/Problem.type"
          },
          "title": {
          "$ref": "#/definitions/Problem.title"
            "$ref": "#/components/schemas/Problem.title"
          },
          "status": {
          "$ref": "#/definitions/Problem.status"
            "$ref": "#/components/schemas/Problem.status"
          },
          "detail": {
          "$ref": "#/definitions/Problem.detail"
            "$ref": "#/components/schemas/Problem.detail"
          },
          "instance": {
          "$ref": "#/definitions/Problem.instance"
            "$ref": "#/components/schemas/Problem.instance"
          }
        }
      },
@@ -269,7 +269,7 @@
        ],
        "properties": {
          "ueIdentityTags": {
          "$ref": "#/definitions/UeIdentityTags"
            "$ref": "#/components/schemas/UeIdentityTags"
          }
        }
      },
@@ -283,10 +283,10 @@
          ],
          "properties": {
            "ueIdentityTag": {
            "$ref": "#/definitions/UeIdentityTag"
              "$ref": "#/components/schemas/UeIdentityTag"
            },
            "state": {
            "$ref": "#/definitions/State"
              "$ref": "#/components/schemas/State"
            }
          }
        }
@@ -307,3 +307,4 @@
      }
    }
  }
}
 No newline at end of file
+195 −208
Original line number Diff line number Diff line
swagger: '2.0'
openapi: 3.0.2
info:
  description: The ETSI MEC ISG MEC014 UE Identity API described using OpenAPI
  version: 1.1.1
  title: UE Identity API
  version: 1.1.1
  description: The ETSI MEC ISG MEC014 UE Identity API described using OpenAPI
  license:
    name: ETSI Forge copyright notice
    url: 'https://forge.etsi.org/etsi-forge-copyright-notice.txt'
    url: https://forge.etsi.org/etsi-forge-copyright-notice.txt
  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'
host: '127.0.0.1:8081'
basePath: /ui/v1
schemes:
  - http
  - https
consumes:
  - application/json
produces:
  - application/json
  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
securityDefinitions:
  OauthSecurity:
    type: oauth2
    flow: application
    tokenUrl: 'https://oauth.exampleAPI/token'
    scopes:
      all: Single oauth2 scope for API
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:
  Body.UeIdentityTagInfo:
    name: UeIdentityTagInfo
    in: body
    description: >-
      'The updated "state" for each included UE Identity tag is included in the entity body of the request'
      - $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: '#/definitions/UeIdentityTagInfo'
                $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
paths:
  '/{appInstanceId}/ue_identity_tag_info':
    parameters:
      - $ref: '#/parameters/Path.AppInstanceId'
    get:
      description: 'Retrieves information about a specific UeIdentityTagInfo resource'
      produces:
        - application/json
      parameters:
        - $ref: '#/parameters/Query.UeIdentityTag'
  responses:
        '200':
          description: >-
            It is used to indicate nonspecific success. The response body
            contains a representation of the UeIdentityTagInfo resource.
          schema:
            required:
              - UeIdentityTagInfo
            properties:
              UeIdentityTagInfo:
                $ref: '#/definitions/UeIdentityTagInfo'
        '400':
    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:
            properties:
              ProblemDetails:
                $ref: '#/definitions/ProblemDetails'
        '403':
          description: >-
            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.
            $ref: "#/components/schemas/ProblemDetails"
        text/plain:
          schema:
            required:
              - ProblemDetails
            properties:
              ProblemDetails:
                $ref: '#/definitions/ProblemDetails'
        '404':
          description: >-
            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.
          schema:
            properties:
              ProblemDetails:
                $ref: '#/definitions/ProblemDetails'
    put:
      description: 'Register/De-register the information about specific a UeIdentityTagInfo resource'
      produces:
        - application/json
      parameters:
        - $ref: '#/parameters/Body.UeIdentityTagInfo'
      responses:
        '200':
          description: >-
            It is used to indicate success. The response body contains a representation of the UeIdentityTagInfo resource
          schema:
            required:
              - UeIdentityTagInfo
            properties:
              UeIdentityTagInfo:
                $ref: '#/definitions/UeIdentityTagInfo'
        '400':
          description: >-
            Incorrect parameters were passed in the request.In the returned
            ProblemDetails structure, the "detail" attribute should convey more
            information about the error.
          schema:
            properties:
              ProblemDetails:
                $ref: '#/definitions/ProblemDetails'
        '401':
          description: >-
            An erroneous or missing bearer token. More information should be
            provided in the "detail" attribute of the "ProblemDetails"
            structure.
          schema:
            properties:
              ProblemDetails:
                $ref: '#/definitions/ProblemDetails'
        '403':
          description: >-
            $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:
            required:
              - ProblemDetails
            properties:
              ProblemDetails:
                $ref: '#/definitions/ProblemDetails'
        '404':
            $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:
            properties:
              ProblemDetails:
                $ref: '#/definitions/ProblemDetails'
        '412':
            $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:
            properties:
              ProblemDetails:
                $ref: '#/definitions/ProblemDetails'
definitions:
            $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: '#/definitions/Problem.type'
          $ref: "#/components/schemas/Problem.type"
        title:
        $ref: '#/definitions/Problem.title'
          $ref: "#/components/schemas/Problem.title"
        status:
        $ref: '#/definitions/Problem.status'
          $ref: "#/components/schemas/Problem.status"
        detail:
        $ref: '#/definitions/Problem.detail'
          $ref: "#/components/schemas/Problem.detail"
        instance:
        $ref: '#/definitions/Problem.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
      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'
      description: A short, human-readable summary of the problem type
    Problem.status:
      type: integer
      format: uint32
@@ -206,9 +193,9 @@ definitions:
        - ueIdentityTags
      properties:
        ueIdentityTags:
        $ref: '#/definitions/UeIdentityTags'
          $ref: "#/components/schemas/UeIdentityTags"
    UeIdentityTags:
    description: '1 to N tags presented by a ME Application instance to a ME Platform'
      description: 1 to N tags presented by a ME Application instance to a ME Platform
      type: array
      items:
        required:
@@ -216,11 +203,11 @@ definitions:
          - state
        properties:
          ueIdentityTag:
          $ref: '#/definitions/UeIdentityTag'
            $ref: "#/components/schemas/UeIdentityTag"
          state:
          $ref: '#/definitions/State'
            $ref: "#/components/schemas/State"
    UeIdentityTag:
    description: 'Specific tag presented by a ME Application instance to a ME Platform'
      description: Specific tag presented by a ME Application instance to a ME Platform
      type: string
      example: UeTagA
    State: