Added a prefix to the PMS NBI 76/116876/2
authorPatrikBuhr <patrik.buhr@est.tech>
Thu, 14 Jan 2021 14:31:39 +0000 (15:31 +0100)
committerPatrikBuhr <patrik.buhr@est.tech>
Fri, 15 Jan 2021 11:03:14 +0000 (12:03 +0100)
Replaced the copied pms api files under offered api with symlinks.

Change-Id: I9421fdb959078e5de1a20987f3c2a2fa626bb25d
Issue-ID: CCSDK-3077
Signed-off-by: PatrikBuhr <patrik.buhr@est.tech>
a1-policy-management/api/pms-api.json
a1-policy-management/api/pms-api.yaml
a1-policy-management/src/main/java/org/onap/ccsdk/oran/a1policymanagementservice/controllers/v2/Consts.java
a1-policy-management/src/test/java/org/onap/ccsdk/oran/a1policymanagementservice/controllers/v2/ConfigurationControllerTest.java
docs/offeredapis/swagger/pms-api.json [changed from file to symlink]
docs/offeredapis/swagger/pms-api.yaml [changed from file to symlink]
pom.xml

index 126eab5..d182389 100644 (file)
@@ -5,7 +5,7 @@
             "summary": "Query policy type names",
             "deprecated": false,
             "produces": ["*/*"],
-            "operationId": "getPolicyTypesUsingGET_1",
+            "operationId": "getPolicyTypesUsingGET",
             "responses": {
                 "200": {
                     "schema": {
             }],
             "tags": ["A1 Policy Management Version 1.0"]
         }},
-        "/v2/status": {"get": {
-            "summary": "Returns status and statistics of this service",
+        "/a1-policy/v2/policy-instances": {"get": {
+            "summary": "Query for A1 policy instances",
             "deprecated": false,
             "produces": ["application/json"],
-            "operationId": "getStatusUsingGET_1",
+            "description": "Returns a list of A1 policies matching given search criteria. <br>If several query parameters are defined, the policies matching all conditions are returned.",
+            "operationId": "getPolicyInstancesUsingGET",
             "responses": {
                 "200": {
-                    "schema": {"$ref": "#/definitions/status_info_v2"},
-                    "description": "Service is living"
+                    "schema": {"$ref": "#/definitions/policy_info_list_v2"},
+                    "description": "Policies"
                 },
                 "401": {"description": "Unauthorized"},
                 "403": {"description": "Forbidden"},
-                "404": {"description": "Not Found"}
+                "404": {
+                    "schema": {"$ref": "#/definitions/error_information"},
+                    "description": "Near-RT RIC, policy type or service not found"
+                }
             },
+            "parameters": [
+                {
+                    "in": "query",
+                    "allowEmptyValue": false,
+                    "name": "policytype_id",
+                    "description": "The identity of the policy type to get policies for.",
+                    "type": "string",
+                    "required": false
+                },
+                {
+                    "in": "query",
+                    "allowEmptyValue": false,
+                    "name": "ric_id",
+                    "description": "The identity of the Near-RT RIC to get policies for.",
+                    "type": "string",
+                    "required": false
+                },
+                {
+                    "in": "query",
+                    "allowEmptyValue": false,
+                    "name": "service_id",
+                    "description": "The identity of the service to get policies for.",
+                    "type": "string",
+                    "required": false
+                }
+            ],
             "tags": ["A1 Policy Management Version 2.0 (in progress)"]
         }},
-        "/v2/policy-types": {"get": {
-            "summary": "Query policy type identities",
+        "/a1-policy/v2/status": {"get": {
+            "summary": "Returns status and statistics of this service",
             "deprecated": false,
             "produces": ["application/json"],
-            "operationId": "getPolicyTypesUsingGET",
+            "operationId": "getStatusUsingGET",
             "responses": {
                 "200": {
-                    "schema": {"$ref": "#/definitions/policytype_id_list_v2"},
-                    "description": "Policy type IDs"
+                    "schema": {"$ref": "#/definitions/status_info_v2"},
+                    "description": "Service is living"
                 },
                 "401": {"description": "Unauthorized"},
                 "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"$ref": "#/definitions/error_information"},
-                    "description": "Near-RT RIC is not found"
-                }
+                "404": {"description": "Not Found"}
             },
-            "parameters": [{
-                "in": "query",
-                "allowEmptyValue": false,
-                "name": "ric_id",
-                "description": "The identity of the Near-RT RIC to get types for.",
-                "type": "string",
-                "required": false
-            }],
             "tags": ["A1 Policy Management Version 2.0 (in progress)"]
         }},
         "/services": {
@@ -79,7 +98,7 @@
                 "summary": "Returns service information",
                 "deprecated": false,
                 "produces": ["*/*"],
-                "operationId": "getServicesUsingGET_1",
+                "operationId": "getServicesUsingGET",
                 "responses": {
                     "200": {
                         "schema": {
                 "summary": "Delete a service",
                 "deprecated": false,
                 "produces": ["*/*"],
-                "operationId": "deleteServiceUsingDELETE_1",
+                "operationId": "deleteServiceUsingDELETE",
                 "responses": {
                     "200": {
                         "schema": {"type": "string"},
                 "tags": ["A1 Policy Management Version 1.0"]
             }
         },
-        "/v2/services/{service_id}": {"delete": {
-            "summary": "Unregister a service",
+        "/a1-policy/v2/rics/ric": {"get": {
+            "summary": "Returns info for one Near-RT RIC",
             "deprecated": false,
-            "produces": ["*/*"],
-            "operationId": "deleteServiceUsingDELETE",
+            "produces": ["application/json"],
+            "description": "Either a Near-RT RIC identity or a Mananged Element identity can be specified.<br>The intention with Mananged Element identity is the ID used in O1 for accessing the traffical element (such as the ID of CU).",
+            "operationId": "getRicUsingGET",
             "responses": {
-                "200": {"description": "Not used"},
+                "200": {
+                    "schema": {"$ref": "#/definitions/ric_info_v2"},
+                    "description": "Near-RT RIC is found"
+                },
                 "401": {"description": "Unauthorized"},
-                "204": {
-                    "schema": {"type": "object"},
-                    "description": "Service unregistered"
+                "403": {"description": "Forbidden"},
+                "404": {
+                    "schema": {"$ref": "#/definitions/error_information"},
+                    "description": "Near-RT RIC is not found"
+                }
+            },
+            "parameters": [
+                {
+                    "in": "query",
+                    "allowEmptyValue": false,
+                    "name": "managed_element_id",
+                    "description": "The identity of a Managed Element. If given, the Near-RT RIC managing the ME is returned.",
+                    "type": "string",
+                    "required": false
+                },
+                {
+                    "in": "query",
+                    "allowEmptyValue": false,
+                    "name": "ric_id",
+                    "description": "The identity of a Near-RT RIC to get information for.",
+                    "type": "string",
+                    "required": false
+                }
+            ],
+            "tags": ["A1 Policy Management Version 2.0 (in progress)"]
+        }},
+        "/a1-policy/v2/policies/{policy_id}": {
+            "get": {
+                "summary": "Returns a policy",
+                "deprecated": false,
+                "produces": ["application/json"],
+                "operationId": "getPolicyUsingGET_1",
+                "responses": {
+                    "200": {
+                        "schema": {"$ref": "#/definitions/policy_info_v2"},
+                        "description": "Policy found"
+                    },
+                    "401": {"description": "Unauthorized"},
+                    "403": {"description": "Forbidden"},
+                    "404": {
+                        "schema": {"$ref": "#/definitions/error_information"},
+                        "description": "Policy is not found"
+                    }
+                },
+                "parameters": [{
+                    "in": "path",
+                    "name": "policy_id",
+                    "description": "policy_id",
+                    "type": "string",
+                    "required": true
+                }],
+                "tags": ["A1 Policy Management Version 2.0 (in progress)"]
+            },
+            "delete": {
+                "summary": "Delete a policy",
+                "deprecated": false,
+                "produces": ["*/*"],
+                "operationId": "deletePolicyUsingDELETE_1",
+                "responses": {
+                    "200": {"description": "Not used"},
+                    "401": {"description": "Unauthorized"},
+                    "423": {
+                        "schema": {"$ref": "#/definitions/error_information"},
+                        "description": "Near-RT RIC is not operational"
+                    },
+                    "204": {"description": "Policy deleted"},
+                    "403": {"description": "Forbidden"},
+                    "404": {
+                        "schema": {"$ref": "#/definitions/error_information"},
+                        "description": "Policy is not found"
+                    }
+                },
+                "parameters": [{
+                    "in": "path",
+                    "name": "policy_id",
+                    "description": "policy_id",
+                    "type": "string",
+                    "required": true
+                }],
+                "tags": ["A1 Policy Management Version 2.0 (in progress)"]
+            }
+        },
+        "/a1-policy/v2/policy-types": {"get": {
+            "summary": "Query policy type identities",
+            "deprecated": false,
+            "produces": ["application/json"],
+            "operationId": "getPolicyTypesUsingGET_1",
+            "responses": {
+                "200": {
+                    "schema": {"$ref": "#/definitions/policytype_id_list_v2"},
+                    "description": "Policy type IDs"
                 },
+                "401": {"description": "Unauthorized"},
                 "403": {"description": "Forbidden"},
                 "404": {
                     "schema": {"$ref": "#/definitions/error_information"},
-                    "description": "Service not found"
+                    "description": "Near-RT RIC is not found"
                 }
             },
             "parameters": [{
-                "in": "path",
-                "name": "service_id",
-                "description": "service_id",
+                "in": "query",
+                "allowEmptyValue": false,
+                "name": "ric_id",
+                "description": "The identity of the Near-RT RIC to get types for.",
                 "type": "string",
-                "required": true
+                "required": false
             }],
             "tags": ["A1 Policy Management Version 2.0 (in progress)"]
         }},
+        "/a1-policy/v2/configuration": {
+            "get": {
+                "summary": "Returns the contents of the configuration file",
+                "deprecated": false,
+                "produces": ["application/json"],
+                "description": "Note that the file contents is not relevant if the Consul is used.",
+                "operationId": "getConfigurationUsingGET",
+                "responses": {
+                    "200": {
+                        "schema": {"type": "object"},
+                        "description": "Configuration"
+                    },
+                    "401": {"description": "Unauthorized"},
+                    "403": {"description": "Forbidden"},
+                    "404": {
+                        "schema": {"$ref": "#/definitions/error_information"},
+                        "description": "File is not found or readable"
+                    }
+                },
+                "tags": ["Component Configuration"]
+            },
+            "put": {
+                "summary": "Replace the current configuration file with the given configuration",
+                "deprecated": false,
+                "produces": ["*/*"],
+                "description": "Note that the file is ignored if the Consul is used.",
+                "operationId": "putConfigurationUsingPUT",
+                "responses": {
+                    "200": {"description": "Configuration updated"},
+                    "201": {"description": "Created"},
+                    "400": {
+                        "schema": {"$ref": "#/definitions/error_information"},
+                        "description": "Invalid configuration provided"
+                    },
+                    "401": {"description": "Unauthorized"},
+                    "500": {
+                        "schema": {"$ref": "#/definitions/error_information"},
+                        "description": "Something went wrong when replacing the configuration. Try again."
+                    },
+                    "403": {"description": "Forbidden"},
+                    "404": {"description": "Not Found"}
+                },
+                "parameters": [{
+                    "schema": {"type": "object"},
+                    "in": "body",
+                    "name": "configuration",
+                    "description": "configuration",
+                    "required": true
+                }],
+                "tags": ["Component Configuration"],
+                "consumes": ["application/json"]
+            }
+        },
         "/policy": {
             "get": {
                 "summary": "Returns a policy configuration",
                 "deprecated": false,
                 "produces": ["*/*"],
-                "operationId": "getPolicyUsingGET_1",
+                "operationId": "getPolicyUsingGET",
                 "responses": {
                     "200": {
                         "schema": {"type": "object"},
                 "summary": "Delete a policy",
                 "deprecated": false,
                 "produces": ["*/*"],
-                "operationId": "deletePolicyUsingDELETE_1",
+                "operationId": "deletePolicyUsingDELETE",
                 "responses": {
                     "200": {"description": "Not used"},
                     "401": {"description": "Unauthorized"},
                 "summary": "Put a policy",
                 "deprecated": false,
                 "produces": ["*/*"],
-                "operationId": "putPolicyUsingPUT_1",
+                "operationId": "putPolicyUsingPUT",
                 "responses": {
                     "200": {"description": "Policy updated"},
                     "201": {"description": "Policy created"},
             ],
             "tags": ["A1 Policy Management Version 1.0"]
         }},
-        "/v2/policies/{policy_id}": {
-            "get": {
-                "summary": "Returns a policy",
-                "deprecated": false,
-                "produces": ["application/json"],
-                "operationId": "getPolicyUsingGET",
-                "responses": {
-                    "200": {
-                        "schema": {"$ref": "#/definitions/policy_info_v2"},
-                        "description": "Policy found"
-                    },
-                    "401": {"description": "Unauthorized"},
-                    "403": {"description": "Forbidden"},
-                    "404": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "Policy is not found"
-                    }
-                },
-                "parameters": [{
-                    "in": "path",
-                    "name": "policy_id",
-                    "description": "policy_id",
-                    "type": "string",
-                    "required": true
-                }],
-                "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-            },
-            "delete": {
-                "summary": "Delete a policy",
-                "deprecated": false,
-                "produces": ["*/*"],
-                "operationId": "deletePolicyUsingDELETE",
-                "responses": {
-                    "200": {"description": "Not used"},
-                    "401": {"description": "Unauthorized"},
-                    "423": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "Near-RT RIC is not operational"
-                    },
-                    "204": {"description": "Policy deleted"},
-                    "403": {"description": "Forbidden"},
-                    "404": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "Policy is not found"
-                    }
+        "/a1-policy/v2/services/{service_id}/keepalive": {"put": {
+            "summary": "Heartbeat indicates that the service is running",
+            "deprecated": false,
+            "produces": ["*/*"],
+            "operationId": "keepAliveServiceUsingPUT_1",
+            "responses": {
+                "200": {
+                    "schema": {"type": "object"},
+                    "description": "Service supervision timer refreshed, OK"
                 },
-                "parameters": [{
-                    "in": "path",
-                    "name": "policy_id",
-                    "description": "policy_id",
-                    "type": "string",
-                    "required": true
-                }],
-                "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-            }
-        },
+                "201": {"description": "Created"},
+                "401": {"description": "Unauthorized"},
+                "403": {"description": "Forbidden"},
+                "404": {
+                    "schema": {"$ref": "#/definitions/error_information"},
+                    "description": "The service is not found, needs re-registration"
+                }
+            },
+            "parameters": [{
+                "in": "path",
+                "name": "service_id",
+                "description": "service_id",
+                "type": "string",
+                "required": true
+            }],
+            "tags": ["A1 Policy Management Version 2.0 (in progress)"],
+            "consumes": ["application/json"]
+        }},
         "/policy_schema": {"get": {
             "summary": "Returns one policy type schema definition",
             "deprecated": false,
             "summary": "Returns a policy status",
             "deprecated": false,
             "produces": ["*/*"],
-            "operationId": "getPolicyStatusUsingGET_1",
+            "operationId": "getPolicyStatusUsingGET",
             "responses": {
                 "200": {
                     "schema": {"type": "object"},
             }],
             "tags": ["A1 Policy Management Version 1.0"]
         }},
-        "/v2/policies/{policy_id}/status": {"get": {
-            "summary": "Returns a policy status",
-            "deprecated": false,
-            "produces": ["application/json"],
-            "operationId": "getPolicyStatusUsingGET",
-            "responses": {
-                "200": {
-                    "schema": {"$ref": "#/definitions/policy_status_info_v2"},
-                    "description": "Policy status"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"$ref": "#/definitions/error_information"},
-                    "description": "Policy is not found"
-                }
-            },
-            "parameters": [{
-                "in": "path",
-                "name": "policy_id",
-                "description": "policy_id",
-                "type": "string",
-                "required": true
-            }],
-            "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-        }},
-        "/v2/rics": {"get": {
+        "/a1-policy/v2/rics": {"get": {
             "summary": "Query Near-RT RIC information",
             "deprecated": false,
             "produces": ["application/json"],
             }],
             "tags": ["A1 Policy Management Version 2.0 (in progress)"]
         }},
-        "/v2/configuration": {
-            "get": {
-                "summary": "Returns the contents of the configuration file",
-                "deprecated": false,
-                "produces": ["application/json"],
-                "description": "Note that the file contents is not relevant if the Consul is used.",
-                "operationId": "getConfigurationUsingGET",
-                "responses": {
-                    "200": {
-                        "schema": {"type": "object"},
-                        "description": "Configuration"
-                    },
-                    "401": {"description": "Unauthorized"},
-                    "403": {"description": "Forbidden"},
-                    "404": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "File is not found or readable"
-                    }
-                },
-                "tags": ["Component Configuration"]
-            },
-            "put": {
-                "summary": "Replace the current configuration file with the given configuration",
-                "deprecated": false,
-                "produces": ["*/*"],
-                "description": "Note that the file is ignored if the Consul is used.",
-                "operationId": "putConfigurationUsingPUT",
-                "responses": {
-                    "200": {"description": "Configuration updated"},
-                    "201": {"description": "Created"},
-                    "400": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "Invalid configuration provided"
-                    },
-                    "401": {"description": "Unauthorized"},
-                    "500": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "Something went wrong when replacing the configuration. Try again."
-                    },
-                    "403": {"description": "Forbidden"},
-                    "404": {"description": "Not Found"}
-                },
-                "parameters": [{
-                    "schema": {"type": "object"},
-                    "in": "body",
-                    "name": "configuration",
-                    "description": "configuration",
-                    "required": true
-                }],
-                "tags": ["Component Configuration"],
-                "consumes": ["application/json"]
-            }
-        },
         "/policy_ids": {"get": {
             "summary": "Query policies, only policy identities returned",
             "deprecated": false,
             "produces": ["*/*"],
-            "operationId": "getPolicyIdsUsingGET_1",
+            "operationId": "getPolicyIdsUsingGET",
             "responses": {
                 "200": {
                     "schema": {
             }],
             "tags": ["A1 Policy Management Version 1.0"]
         }},
-        "/v2/policy-instances": {"get": {
-            "summary": "Query for A1 policy instances",
-            "deprecated": false,
-            "produces": ["application/json"],
-            "description": "Returns a list of A1 policies matching given search criteria. <br>If several query parameters are defined, the policies matching all conditions are returned.",
-            "operationId": "getPolicyInstancesUsingGET",
-            "responses": {
-                "200": {
-                    "schema": {"$ref": "#/definitions/policy_info_list_v2"},
-                    "description": "Policies"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"$ref": "#/definitions/error_information"},
-                    "description": "Near-RT RIC, policy type or service not found"
-                }
-            },
-            "parameters": [
-                {
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "policytype_id",
-                    "description": "The identity of the policy type to get policies for.",
-                    "type": "string",
-                    "required": false
-                },
-                {
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "ric_id",
-                    "description": "The identity of the Near-RT RIC to get policies for.",
-                    "type": "string",
-                    "required": false
-                },
-                {
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "service_id",
-                    "description": "The identity of the service to get policies for.",
-                    "type": "string",
-                    "required": false
-                }
-            ],
-            "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-        }},
-        "/v2/services": {
+        "/a1-policy/v2/services": {
             "get": {
                 "summary": "Returns service information",
                 "deprecated": false,
                 "produces": ["application/json"],
                 "description": "Either information about a registered service with given identity or all registered services are returned.",
-                "operationId": "getServicesUsingGET",
+                "operationId": "getServicesUsingGET_1",
                 "responses": {
                     "200": {
                         "schema": {"$ref": "#/definitions/service_list_v2"},
                 "deprecated": false,
                 "produces": ["*/*"],
                 "description": "Registering a service is needed to:<ul><li>Get callbacks.<\/li><li>Activate supervision of the service. If a service is inactive, its policies will be deleted.<\/li><\/ul>",
-                "operationId": "putServiceUsingPUT",
+                "operationId": "putServiceUsingPUT_1",
                 "responses": {
                     "200": {
                         "schema": {"type": "object"},
             "summary": "Heartbeat from a service",
             "deprecated": false,
             "produces": ["*/*"],
-            "operationId": "keepAliveServiceUsingPUT_1",
+            "operationId": "keepAliveServiceUsingPUT",
             "responses": {
                 "200": {
                     "schema": {"type": "string"},
             "tags": ["A1 Policy Management Version 1.0"],
             "consumes": ["application/json"]
         }},
-        "/v2/services/{service_id}/keepalive": {"put": {
-            "summary": "Heartbeat indicates that the service is running",
-            "deprecated": false,
-            "produces": ["*/*"],
-            "operationId": "keepAliveServiceUsingPUT",
-            "responses": {
-                "200": {
-                    "schema": {"type": "object"},
-                    "description": "Service supervision timer refreshed, OK"
-                },
-                "201": {"description": "Created"},
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"$ref": "#/definitions/error_information"},
-                    "description": "The service is not found, needs re-registration"
-                }
-            },
-            "parameters": [{
-                "in": "path",
-                "name": "service_id",
-                "description": "service_id",
-                "type": "string",
-                "required": true
-            }],
-            "tags": ["A1 Policy Management Version 2.0 (in progress)"],
-            "consumes": ["application/json"]
-        }},
-        "/status": {"get": {
-            "summary": "Returns status and statistics of this service",
-            "deprecated": false,
-            "produces": ["*/*"],
-            "operationId": "getStatusUsingGET",
-            "responses": {
-                "200": {
-                    "schema": {"type": "string"},
-                    "description": "Service is living"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {"description": "Not Found"}
-            },
-            "tags": ["A1 Policy Management Version 1.0"]
-        }},
-        "/v2/rics/ric": {"get": {
-            "summary": "Returns info for one Near-RT RIC",
-            "deprecated": false,
-            "produces": ["application/json"],
-            "description": "Either a Near-RT RIC identity or a Mananged Element identity can be specified.<br>The intention with Mananged Element identity is the ID used in O1 for accessing the traffical element (such as the ID of CU).",
-            "operationId": "getRicUsingGET",
-            "responses": {
-                "200": {
-                    "schema": {"$ref": "#/definitions/ric_info_v2"},
-                    "description": "Near-RT RIC is found"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"$ref": "#/definitions/error_information"},
-                    "description": "Near-RT RIC is not found"
-                }
-            },
-            "parameters": [
-                {
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "managed_element_id",
-                    "description": "The identity of a Managed Element. If given, the Near-RT RIC managing the ME is returned.",
-                    "type": "string",
-                    "required": false
-                },
-                {
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "ric_id",
-                    "description": "The identity of a Near-RT RIC to get information for.",
-                    "type": "string",
-                    "required": false
-                }
-            ],
-            "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-        }},
-        "/r-app/pms-callback": {"post": {
-            "summary": "Callback for Near-RT RIC status",
-            "deprecated": false,
-            "produces": ["application/json"],
-            "description": "The URL to this call is registerred at Service registration.",
-            "operationId": "jobStatusCallbackUsingPOST",
-            "responses": {
-                "200": {"description": "OK"},
-                "201": {"description": "Created"},
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {"description": "Not Found"}
-            },
-            "parameters": [{
-                "schema": {"$ref": "#/definitions/service_callback_info_v2"},
-                "in": "body",
-                "name": "body",
-                "description": "body",
-                "required": true
-            }],
-            "tags": ["R-App Callbacks"],
-            "consumes": ["application/json"]
-        }},
-        "/v2/policy-types/{policytype_id}": {"get": {
+        "/a1-policy/v2/policy-types/{policytype_id}": {"get": {
             "summary": "Returns a policy type definition",
             "deprecated": false,
             "produces": ["application/json"],
             }],
             "tags": ["A1 Policy Management Version 2.0 (in progress)"]
         }},
-        "/service": {"put": {
-            "summary": "Register a service",
+        "/status": {"get": {
+            "summary": "Returns status and statistics of this service",
             "deprecated": false,
             "produces": ["*/*"],
-            "operationId": "putServiceUsingPUT_1",
+            "operationId": "getStatusUsingGET_1",
             "responses": {
                 "200": {
                     "schema": {"type": "string"},
-                    "description": "Service updated"
-                },
-                "201": {
-                    "schema": {"type": "string"},
-                    "description": "Service created"
-                },
-                "400": {
-                    "schema": {"type": "string"},
-                    "description": "The ServiceRegistrationInfo is not accepted"
+                    "description": "Service is living"
                 },
                 "401": {"description": "Unauthorized"},
                 "403": {"description": "Forbidden"},
                 "404": {"description": "Not Found"}
             },
-            "parameters": [{
-                "schema": {"$ref": "#/definitions/service_registration_info_v1"},
-                "in": "body",
-                "name": "registrationInfo",
-                "description": "registrationInfo",
-                "required": true
-            }],
-            "tags": ["A1 Policy Management Version 1.0"],
-            "consumes": ["application/json"]
+            "tags": ["A1 Policy Management Version 1.0"]
         }},
-        "/v2/policies": {
+        "/a1-policy/v2/policies": {
             "get": {
                 "summary": "Query policy identities",
                 "deprecated": false,
                 "produces": ["application/json"],
                 "description": "Returns a list of A1 policies matching given search criteria. <br>If several query parameters are defined, the policies matching all conditions are returned.",
-                "operationId": "getPolicyIdsUsingGET",
+                "operationId": "getPolicyIdsUsingGET_1",
                 "responses": {
                     "200": {
                         "schema": {"$ref": "#/definitions/policy_id_list_v2"},
                 "summary": "Create or update a policy",
                 "deprecated": false,
                 "produces": ["application/json"],
-                "operationId": "putPolicyUsingPUT",
+                "operationId": "putPolicyUsingPUT_1",
                 "responses": {
                     "200": {"description": "Policy updated"},
                     "201": {"description": "Policy created"},
                 "tags": ["A1 Policy Management Version 2.0 (in progress)"],
                 "consumes": ["application/json"]
             }
-        }
+        },
+        "/r-app/pms-callback": {"post": {
+            "summary": "Callback for Near-RT RIC status",
+            "deprecated": false,
+            "produces": ["application/json"],
+            "description": "The URL to this call is registerred at Service registration.",
+            "operationId": "jobStatusCallbackUsingPOST",
+            "responses": {
+                "200": {"description": "OK"},
+                "201": {"description": "Created"},
+                "401": {"description": "Unauthorized"},
+                "403": {"description": "Forbidden"},
+                "404": {"description": "Not Found"}
+            },
+            "parameters": [{
+                "schema": {"$ref": "#/definitions/service_callback_info_v2"},
+                "in": "body",
+                "name": "body",
+                "description": "body",
+                "required": true
+            }],
+            "tags": ["R-App Callbacks"],
+            "consumes": ["application/json"]
+        }},
+        "/a1-policy/v2/services/{service_id}": {"delete": {
+            "summary": "Unregister a service",
+            "deprecated": false,
+            "produces": ["*/*"],
+            "operationId": "deleteServiceUsingDELETE_1",
+            "responses": {
+                "200": {"description": "Not used"},
+                "401": {"description": "Unauthorized"},
+                "204": {
+                    "schema": {"type": "object"},
+                    "description": "Service unregistered"
+                },
+                "403": {"description": "Forbidden"},
+                "404": {
+                    "schema": {"$ref": "#/definitions/error_information"},
+                    "description": "Service not found"
+                }
+            },
+            "parameters": [{
+                "in": "path",
+                "name": "service_id",
+                "description": "service_id",
+                "type": "string",
+                "required": true
+            }],
+            "tags": ["A1 Policy Management Version 2.0 (in progress)"]
+        }},
+        "/service": {"put": {
+            "summary": "Register a service",
+            "deprecated": false,
+            "produces": ["*/*"],
+            "operationId": "putServiceUsingPUT",
+            "responses": {
+                "200": {
+                    "schema": {"type": "string"},
+                    "description": "Service updated"
+                },
+                "201": {
+                    "schema": {"type": "string"},
+                    "description": "Service created"
+                },
+                "400": {
+                    "schema": {"type": "string"},
+                    "description": "The ServiceRegistrationInfo is not accepted"
+                },
+                "401": {"description": "Unauthorized"},
+                "403": {"description": "Forbidden"},
+                "404": {"description": "Not Found"}
+            },
+            "parameters": [{
+                "schema": {"$ref": "#/definitions/service_registration_info_v1"},
+                "in": "body",
+                "name": "registrationInfo",
+                "description": "registrationInfo",
+                "required": true
+            }],
+            "tags": ["A1 Policy Management Version 1.0"],
+            "consumes": ["application/json"]
+        }},
+        "/a1-policy/v2/policies/{policy_id}/status": {"get": {
+            "summary": "Returns a policy status",
+            "deprecated": false,
+            "produces": ["application/json"],
+            "operationId": "getPolicyStatusUsingGET_1",
+            "responses": {
+                "200": {
+                    "schema": {"$ref": "#/definitions/policy_status_info_v2"},
+                    "description": "Policy status"
+                },
+                "401": {"description": "Unauthorized"},
+                "403": {"description": "Forbidden"},
+                "404": {
+                    "schema": {"$ref": "#/definitions/error_information"},
+                    "description": "Policy is not found"
+                }
+            },
+            "parameters": [{
+                "in": "path",
+                "name": "policy_id",
+                "description": "policy_id",
+                "type": "string",
+                "required": true
+            }],
+            "tags": ["A1 Policy Management Version 2.0 (in progress)"]
+        }}
     },
     "definitions": {
         "error_information": {
index 8f2a040..11aad23 100644 (file)
@@ -30,7 +30,7 @@ paths:
       tags:
       - A1 Policy Management Version 1.0
       summary: Query policy type names
-      operationId: getPolicyTypesUsingGET_1
+      operationId: getPolicyTypesUsingGET
       parameters:
       - name: ric
         in: query
@@ -58,21 +58,43 @@ paths:
           content:
             '*/*':
               schema:
-                type: string
+                $ref: '#/components/schemas/error_information'
       deprecated: false
-  /v2/status:
+  /a1-policy/v2/policy-instances:
     get:
       tags:
       - A1 Policy Management Version 2.0 (in progress)
-      summary: Returns status and statistics of this service
-      operationId: getStatusUsingGET_1
+      summary: Query for A1 policy instances
+      description: Returns a list of A1 policies matching given search criteria. <br>If
+        several query parameters are defined, the policies matching all conditions
+        are returned.
+      operationId: getPolicyInstancesUsingGET
+      parameters:
+      - name: policytype_id
+        in: query
+        description: The identity of the policy type to get policies for.
+        allowEmptyValue: false
+        schema:
+          type: string
+      - name: ric_id
+        in: query
+        description: The identity of the Near-RT RIC to get policies for.
+        allowEmptyValue: false
+        schema:
+          type: string
+      - name: service_id
+        in: query
+        description: The identity of the service to get policies for.
+        allowEmptyValue: false
+        schema:
+          type: string
       responses:
         200:
-          description: Service is living
+          description: Policies
           content:
             application/json:
               schema:
-                $ref: '#/components/schemas/status_info_v2'
+                $ref: '#/components/schemas/policy_info_list_v2'
         401:
           description: Unauthorized
           content: {}
@@ -80,29 +102,25 @@ paths:
           description: Forbidden
           content: {}
         404:
-          description: Not Found
-          content: {}
+          description: Near-RT RIC, policy type or service not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/error_information'
       deprecated: false
-  /v2/policy-types:
+  /a1-policy/v2/status:
     get:
       tags:
       - A1 Policy Management Version 2.0 (in progress)
-      summary: Query policy type identities
-      operationId: getPolicyTypesUsingGET
-      parameters:
-      - name: ric_id
-        in: query
-        description: The identity of the Near-RT RIC to get types for.
-        allowEmptyValue: false
-        schema:
-          type: string
+      summary: Returns status and statistics of this service
+      operationId: getStatusUsingGET
       responses:
         200:
-          description: Policy type IDs
+          description: Service is living
           content:
             application/json:
               schema:
-                $ref: '#/components/schemas/policytype_id_list_v2'
+                $ref: '#/components/schemas/status_info_v2'
         401:
           description: Unauthorized
           content: {}
@@ -110,11 +128,8 @@ paths:
           description: Forbidden
           content: {}
         404:
-          description: Near-RT RIC is not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
+          description: Not Found
+          content: {}
       deprecated: false
   /services:
     get:
@@ -190,16 +205,91 @@ paths:
               schema:
                 type: string
       deprecated: false
-  /v2/services/{service_id}:
+  /a1-policy/v2/rics/ric:
+    get:
+      tags:
+      - A1 Policy Management Version 2.0 (in progress)
+      summary: Returns info for one Near-RT RIC
+      description: Either a Near-RT RIC identity or a Mananged Element identity can
+        be specified.<br>The intention with Mananged Element identity is the ID used
+        in O1 for accessing the traffical element (such as the ID of CU).
+      operationId: getRicUsingGET
+      parameters:
+      - name: managed_element_id
+        in: query
+        description: The identity of a Managed Element. If given, the Near-RT RIC
+          managing the ME is returned.
+        allowEmptyValue: false
+        schema:
+          type: string
+      - name: ric_id
+        in: query
+        description: The identity of a Near-RT RIC to get information for.
+        allowEmptyValue: false
+        schema:
+          type: string
+      responses:
+        200:
+          description: Near-RT RIC is found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/ric_info_v2'
+        401:
+          description: Unauthorized
+          content: {}
+        403:
+          description: Forbidden
+          content: {}
+        404:
+          description: Near-RT RIC is not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/error_information'
+      deprecated: false
+  /a1-policy/v2/policies/{policy_id}:
+    get:
+      tags:
+      - A1 Policy Management Version 2.0 (in progress)
+      summary: Returns a policy
+      operationId: getPolicyUsingGET_1
+      parameters:
+      - name: policy_id
+        in: path
+        description: policy_id
+        required: true
+        schema:
+          type: string
+      responses:
+        200:
+          description: Policy found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/policy_info_v2'
+        401:
+          description: Unauthorized
+          content: {}
+        403:
+          description: Forbidden
+          content: {}
+        404:
+          description: Policy is not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/error_information'
+      deprecated: false
     delete:
       tags:
       - A1 Policy Management Version 2.0 (in progress)
-      summary: Unregister a service
-      operationId: deleteServiceUsingDELETE_1
+      summary: Delete a policy
+      operationId: deletePolicyUsingDELETE_1
       parameters:
-      - name: service_id
+      - name: policy_id
         in: path
-        description: service_id
+        description: policy_id
         required: true
         schema:
           type: string
@@ -208,9 +298,72 @@ paths:
           description: Not used
           content: {}
         204:
-          description: Service unregistered
+          description: Policy deleted
+          content: {}
+        401:
+          description: Unauthorized
+          content: {}
+        403:
+          description: Forbidden
+          content: {}
+        404:
+          description: Policy is not found
           content:
             '*/*':
+              schema:
+                $ref: '#/components/schemas/error_information'
+        423:
+          description: Near-RT RIC is not operational
+          content:
+            '*/*':
+              schema:
+                $ref: '#/components/schemas/error_information'
+      deprecated: false
+  /a1-policy/v2/policy-types:
+    get:
+      tags:
+      - A1 Policy Management Version 2.0 (in progress)
+      summary: Query policy type identities
+      operationId: getPolicyTypesUsingGET_1
+      parameters:
+      - name: ric_id
+        in: query
+        description: The identity of the Near-RT RIC to get types for.
+        allowEmptyValue: false
+        schema:
+          type: string
+      responses:
+        200:
+          description: Policy type IDs
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/policytype_id_list_v2'
+        401:
+          description: Unauthorized
+          content: {}
+        403:
+          description: Forbidden
+          content: {}
+        404:
+          description: Near-RT RIC is not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/error_information'
+      deprecated: false
+  /a1-policy/v2/configuration:
+    get:
+      tags:
+      - Component Configuration
+      summary: Returns the contents of the configuration file
+      description: Note that the file contents is not relevant if the Consul is used.
+      operationId: getConfigurationUsingGET
+      responses:
+        200:
+          description: Configuration
+          content:
+            application/json:
               schema:
                 type: object
         401:
@@ -220,7 +373,50 @@ paths:
           description: Forbidden
           content: {}
         404:
-          description: Service not found
+          description: File is not found or readable
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/error_information'
+      deprecated: false
+    put:
+      tags:
+      - Component Configuration
+      summary: Replace the current configuration file with the given configuration
+      description: Note that the file is ignored if the Consul is used.
+      operationId: putConfigurationUsingPUT
+      requestBody:
+        description: configuration
+        content:
+          application/json:
+            schema:
+              type: object
+        required: true
+      responses:
+        200:
+          description: Configuration updated
+          content: {}
+        201:
+          description: Created
+          content: {}
+        400:
+          description: Invalid configuration provided
+          content:
+            '*/*':
+              schema:
+                $ref: '#/components/schemas/error_information'
+        401:
+          description: Unauthorized
+          content: {}
+        403:
+          description: Forbidden
+          content: {}
+        404:
+          description: Not Found
+          content: {}
+        500:
+          description: Something went wrong when replacing the configuration. Try
+            again.
           content:
             '*/*':
               schema:
@@ -231,7 +427,7 @@ paths:
       tags:
       - A1 Policy Management Version 1.0
       summary: Returns a policy configuration
-      operationId: getPolicyUsingGET_1
+      operationId: getPolicyUsingGET
       parameters:
       - name: id
         in: query
@@ -255,13 +451,16 @@ paths:
           content: {}
         404:
           description: Policy is not found
-          content: {}
+          content:
+            '*/*':
+              schema:
+                $ref: '#/components/schemas/error_information'
       deprecated: false
     put:
       tags:
       - A1 Policy Management Version 1.0
       summary: Put a policy
-      operationId: putPolicyUsingPUT_1
+      operationId: putPolicyUsingPUT
       parameters:
       - name: id
         in: query
@@ -337,7 +536,7 @@ paths:
       tags:
       - A1 Policy Management Version 1.0
       summary: Delete a policy
-      operationId: deletePolicyUsingDELETE_1
+      operationId: deletePolicyUsingDELETE
       parameters:
       - name: id
         in: query
@@ -419,57 +618,28 @@ paths:
               schema:
                 type: string
       deprecated: false
-  /v2/policies/{policy_id}:
-    get:
+  /a1-policy/v2/services/{service_id}/keepalive:
+    put:
       tags:
       - A1 Policy Management Version 2.0 (in progress)
-      summary: Returns a policy
-      operationId: getPolicyUsingGET
+      summary: Heartbeat indicates that the service is running
+      operationId: keepAliveServiceUsingPUT_1
       parameters:
-      - name: policy_id
+      - name: service_id
         in: path
-        description: policy_id
+        description: service_id
         required: true
         schema:
           type: string
       responses:
         200:
-          description: Policy found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/policy_info_v2'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Policy is not found
+          description: Service supervision timer refreshed, OK
           content:
-            application/json:
+            '*/*':
               schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-    delete:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Delete a policy
-      operationId: deletePolicyUsingDELETE
-      parameters:
-      - name: policy_id
-        in: path
-        description: policy_id
-        required: true
-        schema:
-          type: string
-      responses:
-        200:
-          description: Not used
-          content: {}
-        204:
-          description: Policy deleted
+                type: object
+        201:
+          description: Created
           content: {}
         401:
           description: Unauthorized
@@ -478,13 +648,7 @@ paths:
           description: Forbidden
           content: {}
         404:
-          description: Policy is not found
-          content:
-            '*/*':
-              schema:
-                $ref: '#/components/schemas/error_information'
-        423:
-          description: Near-RT RIC is not operational
+          description: The service is not found, needs re-registration
           content:
             '*/*':
               schema:
@@ -522,14 +686,14 @@ paths:
           content:
             '*/*':
               schema:
-                type: string
+                $ref: '#/components/schemas/error_information'
       deprecated: false
   /rics:
     get:
       tags:
       - A1 Policy Management Version 1.0
       summary: Query Near-RT RIC information
-      operationId: getRicsUsingGET
+      operationId: getRicsUsingGET_1
       parameters:
       - name: policyType
         in: query
@@ -564,7 +728,7 @@ paths:
       tags:
       - A1 Policy Management Version 1.0
       summary: Returns a policy status
-      operationId: getPolicyStatusUsingGET_1
+      operationId: getPolicyStatusUsingGET
       parameters:
       - name: id
         in: query
@@ -593,128 +757,29 @@ paths:
               schema:
                 type: string
       deprecated: false
-  /v2/policies/{policy_id}/status:
-    get:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Returns a policy status
-      operationId: getPolicyStatusUsingGET
-      parameters:
-      - name: policy_id
-        in: path
-        description: policy_id
-        required: true
-        schema:
-          type: string
-      responses:
-        200:
-          description: Policy status
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/policy_status_info_v2'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Policy is not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-  /v2/rics:
+  /a1-policy/v2/rics:
     get:
       tags:
       - A1 Policy Management Version 2.0 (in progress)
       summary: Query Near-RT RIC information
       description: The call returns all Near-RT RICs that supports a given policy
         type identity
-      operationId: getRicsUsingGET_1
+      operationId: getRicsUsingGET
       parameters:
       - name: policytype_id
         in: query
         description: The identity of a policy type. If given, all Near-RT RICs supporteing
-          the policy type are returned
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: OK
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ric_info_list_v2'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Policy type is not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-  /v2/configuration:
-    get:
-      tags:
-      - Component Configuration
-      summary: Returns the contents of the configuration file
-      description: Note that the file contents is not relevant if the Consul is used.
-      operationId: getConfigurationUsingGET
-      responses:
-        200:
-          description: Configuration
-          content:
-            application/json:
-              schema:
-                type: object
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: File is not found or readable
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-    put:
-      tags:
-      - Component Configuration
-      summary: Replace the current configuration file with the given configuration
-      description: Note that the file is ignored if the Consul is used.
-      operationId: putConfigurationUsingPUT
-      requestBody:
-        description: configuration
-        content:
-          application/json:
-            schema:
-              type: object
-        required: true
-      responses:
-        200:
-          description: Configuration updated
-          content: {}
-        201:
-          description: Created
-          content: {}
-        400:
-          description: Invalid configuration provided
+          the policy type are returned
+        allowEmptyValue: false
+        schema:
+          type: string
+      responses:
+        200:
+          description: OK
           content:
-            '*/*':
+            application/json:
               schema:
-                $ref: '#/components/schemas/error_information'
+                $ref: '#/components/schemas/ric_info_list_v2'
         401:
           description: Unauthorized
           content: {}
@@ -722,13 +787,9 @@ paths:
           description: Forbidden
           content: {}
         404:
-          description: Not Found
-          content: {}
-        500:
-          description: Something went wrong when replacing the configuration. Try
-            again.
+          description: Policy type is not found
           content:
-            '*/*':
+            application/json:
               schema:
                 $ref: '#/components/schemas/error_information'
       deprecated: false
@@ -737,7 +798,7 @@ paths:
       tags:
       - A1 Policy Management Version 1.0
       summary: Query policies, only policy identities returned
-      operationId: getPolicyIdsUsingGET_1
+      operationId: getPolicyIdsUsingGET
       parameters:
       - name: ric
         in: query
@@ -812,58 +873,10 @@ paths:
           description: Near-RT RIC is not found
           content:
             '*/*':
-              schema:
-                type: string
-      deprecated: false
-  /v2/policy-instances:
-    get:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Query for A1 policy instances
-      description: Returns a list of A1 policies matching given search criteria. <br>If
-        several query parameters are defined, the policies matching all conditions
-        are returned.
-      operationId: getPolicyInstancesUsingGET
-      parameters:
-      - name: policytype_id
-        in: query
-        description: The identity of the policy type to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      - name: ric_id
-        in: query
-        description: The identity of the Near-RT RIC to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      - name: service_id
-        in: query
-        description: The identity of the service to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: Policies
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/policy_info_list_v2'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Near-RT RIC, policy type or service not found
-          content:
-            application/json:
               schema:
                 $ref: '#/components/schemas/error_information'
       deprecated: false
-  /v2/services:
+  /a1-policy/v2/services:
     get:
       tags:
       - A1 Policy Management Version 2.0 (in progress)
@@ -947,7 +960,7 @@ paths:
       tags:
       - A1 Policy Management Version 1.0
       summary: Returns the name of a RIC managing one Mananged Element
-      operationId: getRicUsingGET
+      operationId: getRicUsingGET_1
       parameters:
       - name: managedElementId
         in: query
@@ -1010,29 +1023,26 @@ paths:
           description: The service is not found, needs re-registration
           content: {}
       deprecated: false
-  /v2/services/{service_id}/keepalive:
-    put:
+  /a1-policy/v2/policy-types/{policytype_id}:
+    get:
       tags:
       - A1 Policy Management Version 2.0 (in progress)
-      summary: Heartbeat indicates that the service is running
-      operationId: keepAliveServiceUsingPUT_1
+      summary: Returns a policy type definition
+      operationId: getPolicyTypeUsingGET
       parameters:
-      - name: service_id
+      - name: policytype_id
         in: path
-        description: service_id
+        description: policytype_id
         required: true
         schema:
           type: string
       responses:
         200:
-          description: Service supervision timer refreshed, OK
+          description: Policy type
           content:
-            '*/*':
+            application/json:
               schema:
-                type: object
-        201:
-          description: Created
-          content: {}
+                $ref: '#/components/schemas/policytype_v2'
         401:
           description: Unauthorized
           content: {}
@@ -1040,9 +1050,9 @@ paths:
           description: Forbidden
           content: {}
         404:
-          description: The service is not found, needs re-registration
+          description: Policy type is not found
           content:
-            '*/*':
+            application/json:
               schema:
                 $ref: '#/components/schemas/error_information'
       deprecated: false
@@ -1051,7 +1061,7 @@ paths:
       tags:
       - A1 Policy Management Version 1.0
       summary: Returns status and statistics of this service
-      operationId: getStatusUsingGET
+      operationId: getStatusUsingGET_1
       responses:
         200:
           description: Service is living
@@ -1069,36 +1079,41 @@ paths:
           description: Not Found
           content: {}
       deprecated: false
-  /v2/rics/ric:
+  /a1-policy/v2/policies:
     get:
       tags:
       - A1 Policy Management Version 2.0 (in progress)
-      summary: Returns info for one Near-RT RIC
-      description: Either a Near-RT RIC identity or a Mananged Element identity can
-        be specified.<br>The intention with Mananged Element identity is the ID used
-        in O1 for accessing the traffical element (such as the ID of CU).
-      operationId: getRicUsingGET_1
+      summary: Query policy identities
+      description: Returns a list of A1 policies matching given search criteria. <br>If
+        several query parameters are defined, the policies matching all conditions
+        are returned.
+      operationId: getPolicyIdsUsingGET_1
       parameters:
-      - name: managed_element_id
+      - name: policytype_id
         in: query
-        description: The identity of a Managed Element. If given, the Near-RT RIC
-          managing the ME is returned.
+        description: The identity of the policy type to get policies for.
         allowEmptyValue: false
         schema:
           type: string
       - name: ric_id
         in: query
-        description: The identity of a Near-RT RIC to get information for.
+        description: The identity of the Near-RT RIC to get policies for.
+        allowEmptyValue: false
+        schema:
+          type: string
+      - name: service_id
+        in: query
+        description: The identity of the service to get policies for.
         allowEmptyValue: false
         schema:
           type: string
       responses:
         200:
-          description: Near-RT RIC is found
+          description: Policy identities
           content:
             application/json:
               schema:
-                $ref: '#/components/schemas/ric_info_v2'
+                $ref: '#/components/schemas/policy_id_list_v2'
         401:
           description: Unauthorized
           content: {}
@@ -1106,7 +1121,45 @@ paths:
           description: Forbidden
           content: {}
         404:
-          description: Near-RT RIC is not found
+          description: Near-RT RIC or type not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/error_information'
+      deprecated: false
+    put:
+      tags:
+      - A1 Policy Management Version 2.0 (in progress)
+      summary: Create or update a policy
+      operationId: putPolicyUsingPUT_1
+      requestBody:
+        description: policyInfo
+        content:
+          application/json:
+            schema:
+              $ref: '#/components/schemas/policy_info_v2'
+        required: true
+      responses:
+        200:
+          description: Policy updated
+          content: {}
+        201:
+          description: Policy created
+          content: {}
+        401:
+          description: Unauthorized
+          content: {}
+        403:
+          description: Forbidden
+          content: {}
+        404:
+          description: Near-RT RIC or policy type is not found
+          content:
+            application/json:
+              schema:
+                $ref: '#/components/schemas/error_information'
+        423:
+          description: Near-RT RIC is not operational
           content:
             application/json:
               schema:
@@ -1143,26 +1196,29 @@ paths:
           description: Not Found
           content: {}
       deprecated: false
-  /v2/policy-types/{policytype_id}:
-    get:
+  /a1-policy/v2/services/{service_id}:
+    delete:
       tags:
       - A1 Policy Management Version 2.0 (in progress)
-      summary: Returns a policy type definition
-      operationId: getPolicyTypeUsingGET
+      summary: Unregister a service
+      operationId: deleteServiceUsingDELETE_1
       parameters:
-      - name: policytype_id
+      - name: service_id
         in: path
-        description: policytype_id
+        description: service_id
         required: true
         schema:
           type: string
       responses:
         200:
-          description: Policy type
+          description: Not used
+          content: {}
+        204:
+          description: Service unregistered
           content:
-            application/json:
+            '*/*':
               schema:
-                $ref: '#/components/schemas/policytype_v2'
+                type: object
         401:
           description: Unauthorized
           content: {}
@@ -1170,9 +1226,9 @@ paths:
           description: Forbidden
           content: {}
         404:
-          description: Policy type is not found
+          description: Service not found
           content:
-            application/json:
+            '*/*':
               schema:
                 $ref: '#/components/schemas/error_information'
       deprecated: false
@@ -1218,73 +1274,26 @@ paths:
           description: Not Found
           content: {}
       deprecated: false
-  /v2/policies:
+  /a1-policy/v2/policies/{policy_id}/status:
     get:
       tags:
       - A1 Policy Management Version 2.0 (in progress)
-      summary: Query policy identities
-      description: Returns a list of A1 policies matching given search criteria. <br>If
-        several query parameters are defined, the policies matching all conditions
-        are returned.
-      operationId: getPolicyIdsUsingGET
+      summary: Returns a policy status
+      operationId: getPolicyStatusUsingGET_1
       parameters:
-      - name: policytype_id
-        in: query
-        description: The identity of the policy type to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      - name: ric_id
-        in: query
-        description: The identity of the Near-RT RIC to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      - name: service_id
-        in: query
-        description: The identity of the service to get policies for.
-        allowEmptyValue: false
+      - name: policy_id
+        in: path
+        description: policy_id
+        required: true
         schema:
           type: string
       responses:
         200:
-          description: Policy identities
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/policy_id_list_v2'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Near-RT RIC or type not found
+          description: Policy status
           content:
             application/json:
               schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-    put:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Create or update a policy
-      operationId: putPolicyUsingPUT
-      requestBody:
-        description: policyInfo
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/policy_info_v2'
-        required: true
-      responses:
-        200:
-          description: Policy updated
-          content: {}
-        201:
-          description: Policy created
-          content: {}
+                $ref: '#/components/schemas/policy_status_info_v2'
         401:
           description: Unauthorized
           content: {}
@@ -1292,13 +1301,7 @@ paths:
           description: Forbidden
           content: {}
         404:
-          description: Near-RT RIC or policy type is not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
-        423:
-          description: Near-RT RIC is not operational
+          description: Policy is not found
           content:
             application/json:
               schema:
index 81021b1..d791ff2 100644 (file)
@@ -28,7 +28,7 @@ public class Consts {
     public static final String TRANSIENT_PARAM = "transient";
     public static final String MANAGED_ELEMENT_ID_PARAM = "managed_element_id";
 
-    public static final String V2_API_ROOT = "/v2";
+    public static final String V2_API_ROOT = "a1-policy/v2";
     public static final String V2_API_NAME = "A1 Policy Management Version 2.0 (in progress)";
     public static final String V2_CONFIG_API_NAME = "Component Configuration";
 
index 376ce76..482c94f 100644 (file)
@@ -105,7 +105,7 @@ class ConfigurationControllerTest {
 
     @Test
     void putValidConfigurationWithNewRic_shouldUpdateRepository() throws Exception {
-        String url = "/v2/configuration";
+        String url = "a1-policy/v2/configuration";
 
         String resp = restClient().put(url, configAsString()).block();
 
@@ -119,7 +119,7 @@ class ConfigurationControllerTest {
 
     @Test
     void getNoFileExists() {
-        String url = "/v2/configuration";
+        String url = "a1-policy/v2/configuration";
         testErrorCode(restClient().get(url), HttpStatus.NOT_FOUND, "File does not exist");
     }
 
@@ -131,7 +131,7 @@ class ConfigurationControllerTest {
 
     @Test
     void putInvalidConfiguration_shouldReturnError400() throws Exception {
-        String url = "/v2/configuration";
+        String url = "a1-policy/v2/configuration";
 
         // Valid JSON but invalid configuration.
         testErrorCode(restClient().put(url, "{\"error\":\"error\"}"), HttpStatus.BAD_REQUEST, "Faulty configuration");
deleted file mode 100644 (file)
index b1bea446bf3058874066c86f00a5b7198c3483f4..0000000000000000000000000000000000000000
+++ /dev/null
-{
-    "basePath": "/",
-    "paths": {
-        "/policy_types": {"get": {
-            "summary": "Query policy type names",
-            "deprecated": false,
-            "produces": ["*/*"],
-            "operationId": "getPolicyTypesUsingGET_1",
-            "responses": {
-                "200": {
-                    "schema": {
-                        "type": "array",
-                        "items": {"type": "string"}
-                    },
-                    "description": "Policy type names"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"type": "string"},
-                    "description": "Near-RT RIC is not found"
-                }
-            },
-            "parameters": [{
-                "in": "query",
-                "allowEmptyValue": false,
-                "name": "ric",
-                "description": "The name of the Near-RT RIC to get types for.",
-                "type": "string",
-                "required": false
-            }],
-            "tags": ["A1 Policy Management Version 1.0"]
-        }},
-        "/v2/status": {"get": {
-            "summary": "Returns status and statistics of this service",
-            "deprecated": false,
-            "produces": ["application/json"],
-            "operationId": "getStatusUsingGET_1",
-            "responses": {
-                "200": {
-                    "schema": {"$ref": "#/definitions/status_info_v2"},
-                    "description": "Service is living"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {"description": "Not Found"}
-            },
-            "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-        }},
-        "/v2/policy-types": {"get": {
-            "summary": "Query policy type identities",
-            "deprecated": false,
-            "produces": ["application/json"],
-            "operationId": "getPolicyTypesUsingGET",
-            "responses": {
-                "200": {
-                    "schema": {"$ref": "#/definitions/policytype_id_list_v2"},
-                    "description": "Policy type IDs"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"$ref": "#/definitions/error_information"},
-                    "description": "Near-RT RIC is not found"
-                }
-            },
-            "parameters": [{
-                "in": "query",
-                "allowEmptyValue": false,
-                "name": "ric_id",
-                "description": "The identity of the Near-RT RIC to get types for.",
-                "type": "string",
-                "required": false
-            }],
-            "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-        }},
-        "/services": {
-            "get": {
-                "summary": "Returns service information",
-                "deprecated": false,
-                "produces": ["*/*"],
-                "operationId": "getServicesUsingGET",
-                "responses": {
-                    "200": {
-                        "schema": {
-                            "type": "array",
-                            "items": {"$ref": "#/definitions/service_status_v1"}
-                        },
-                        "description": "OK"
-                    },
-                    "401": {"description": "Unauthorized"},
-                    "403": {"description": "Forbidden"},
-                    "404": {
-                        "schema": {"type": "string"},
-                        "description": "Service is not found"
-                    }
-                },
-                "parameters": [{
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "name",
-                    "description": "The name of the service",
-                    "type": "string",
-                    "required": false
-                }],
-                "tags": ["A1 Policy Management Version 1.0"]
-            },
-            "delete": {
-                "summary": "Delete a service",
-                "deprecated": false,
-                "produces": ["*/*"],
-                "operationId": "deleteServiceUsingDELETE",
-                "responses": {
-                    "200": {
-                        "schema": {"type": "string"},
-                        "description": "OK"
-                    },
-                    "401": {"description": "Unauthorized"},
-                    "204": {
-                        "schema": {"type": "string"},
-                        "description": "Service deleted"
-                    },
-                    "403": {"description": "Forbidden"},
-                    "404": {
-                        "schema": {"type": "string"},
-                        "description": "Service not found"
-                    }
-                },
-                "parameters": [{
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "name",
-                    "description": "The name of the service",
-                    "type": "string",
-                    "required": true
-                }],
-                "tags": ["A1 Policy Management Version 1.0"]
-            }
-        },
-        "/v2/services/{service_id}": {"delete": {
-            "summary": "Unregister a service",
-            "deprecated": false,
-            "produces": ["*/*"],
-            "operationId": "deleteServiceUsingDELETE_1",
-            "responses": {
-                "200": {"description": "Not used"},
-                "401": {"description": "Unauthorized"},
-                "204": {
-                    "schema": {"type": "object"},
-                    "description": "Service unregistered"
-                },
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"$ref": "#/definitions/error_information"},
-                    "description": "Service not found"
-                }
-            },
-            "parameters": [{
-                "in": "path",
-                "name": "service_id",
-                "description": "service_id",
-                "type": "string",
-                "required": true
-            }],
-            "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-        }},
-        "/policy": {
-            "get": {
-                "summary": "Returns a policy configuration",
-                "deprecated": false,
-                "produces": ["*/*"],
-                "operationId": "getPolicyUsingGET_1",
-                "responses": {
-                    "200": {
-                        "schema": {"type": "object"},
-                        "description": "Policy found"
-                    },
-                    "401": {"description": "Unauthorized"},
-                    "403": {"description": "Forbidden"},
-                    "404": {"description": "Policy is not found"}
-                },
-                "parameters": [{
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "id",
-                    "description": "The identity of the policy instance.",
-                    "type": "string",
-                    "required": true
-                }],
-                "tags": ["A1 Policy Management Version 1.0"]
-            },
-            "delete": {
-                "summary": "Delete a policy",
-                "deprecated": false,
-                "produces": ["*/*"],
-                "operationId": "deletePolicyUsingDELETE_1",
-                "responses": {
-                    "200": {"description": "Not used"},
-                    "401": {"description": "Unauthorized"},
-                    "423": {
-                        "schema": {"type": "string"},
-                        "description": "Near-RT RIC is not operational"
-                    },
-                    "204": {"description": "Policy deleted"},
-                    "403": {"description": "Forbidden"},
-                    "404": {
-                        "schema": {"type": "string"},
-                        "description": "Policy is not found"
-                    }
-                },
-                "parameters": [{
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "id",
-                    "description": "The identity of the policy instance.",
-                    "type": "string",
-                    "required": true
-                }],
-                "tags": ["A1 Policy Management Version 1.0"]
-            },
-            "put": {
-                "summary": "Put a policy",
-                "deprecated": false,
-                "produces": ["*/*"],
-                "operationId": "putPolicyUsingPUT_1",
-                "responses": {
-                    "200": {"description": "Policy updated"},
-                    "201": {"description": "Policy created"},
-                    "401": {"description": "Unauthorized"},
-                    "423": {
-                        "schema": {"type": "string"},
-                        "description": "Near-RT RIC is not operational"
-                    },
-                    "403": {"description": "Forbidden"},
-                    "404": {
-                        "schema": {"type": "string"},
-                        "description": "Near-RT RIC or policy type is not found"
-                    }
-                },
-                "parameters": [
-                    {
-                        "in": "query",
-                        "allowEmptyValue": false,
-                        "name": "id",
-                        "description": "The identity of the policy instance.",
-                        "type": "string",
-                        "required": true
-                    },
-                    {
-                        "schema": {"type": "object"},
-                        "in": "body",
-                        "name": "jsonBody",
-                        "description": "jsonBody",
-                        "required": true
-                    },
-                    {
-                        "in": "query",
-                        "allowEmptyValue": false,
-                        "name": "ric",
-                        "description": "The name of the Near-RT RIC where the policy will be created.",
-                        "type": "string",
-                        "required": true
-                    },
-                    {
-                        "in": "query",
-                        "allowEmptyValue": false,
-                        "name": "service",
-                        "description": "The name of the service creating the policy.",
-                        "type": "string",
-                        "required": true
-                    },
-                    {
-                        "default": false,
-                        "in": "query",
-                        "allowEmptyValue": false,
-                        "name": "transient",
-                        "x-example": false,
-                        "description": "If the policy is transient or not (boolean defaulted to false). A policy is transient if it will be forgotten when the service needs to reconnect to the Near-RT RIC.",
-                        "type": "boolean",
-                        "required": false
-                    },
-                    {
-                        "in": "query",
-                        "allowEmptyValue": false,
-                        "name": "type",
-                        "description": "The name of the policy type.",
-                        "type": "string",
-                        "required": false
-                    }
-                ],
-                "tags": ["A1 Policy Management Version 1.0"],
-                "consumes": ["application/json"]
-            }
-        },
-        "/policies": {"get": {
-            "summary": "Query policies",
-            "deprecated": false,
-            "produces": ["*/*"],
-            "operationId": "getPoliciesUsingGET",
-            "responses": {
-                "200": {
-                    "schema": {
-                        "type": "array",
-                        "items": {"$ref": "#/definitions/policy_info_v1"}
-                    },
-                    "description": "Policies"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"type": "string"},
-                    "description": "Near-RT RIC or type not found"
-                }
-            },
-            "parameters": [
-                {
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "ric",
-                    "description": "The name of the Near-RT RIC to get policies for.",
-                    "type": "string",
-                    "required": false
-                },
-                {
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "service",
-                    "description": "The name of the service to get policies for.",
-                    "type": "string",
-                    "required": false
-                },
-                {
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "type",
-                    "description": "The name of the policy type to get policies for.",
-                    "type": "string",
-                    "required": false
-                }
-            ],
-            "tags": ["A1 Policy Management Version 1.0"]
-        }},
-        "/v2/policies/{policy_id}": {
-            "get": {
-                "summary": "Returns a policy",
-                "deprecated": false,
-                "produces": ["application/json"],
-                "operationId": "getPolicyUsingGET",
-                "responses": {
-                    "200": {
-                        "schema": {"$ref": "#/definitions/policy_info_v2"},
-                        "description": "Policy found"
-                    },
-                    "401": {"description": "Unauthorized"},
-                    "403": {"description": "Forbidden"},
-                    "404": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "Policy is not found"
-                    }
-                },
-                "parameters": [{
-                    "in": "path",
-                    "name": "policy_id",
-                    "description": "policy_id",
-                    "type": "string",
-                    "required": true
-                }],
-                "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-            },
-            "delete": {
-                "summary": "Delete a policy",
-                "deprecated": false,
-                "produces": ["*/*"],
-                "operationId": "deletePolicyUsingDELETE",
-                "responses": {
-                    "200": {"description": "Not used"},
-                    "401": {"description": "Unauthorized"},
-                    "423": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "Near-RT RIC is not operational"
-                    },
-                    "204": {"description": "Policy deleted"},
-                    "403": {"description": "Forbidden"},
-                    "404": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "Policy is not found"
-                    }
-                },
-                "parameters": [{
-                    "in": "path",
-                    "name": "policy_id",
-                    "description": "policy_id",
-                    "type": "string",
-                    "required": true
-                }],
-                "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-            }
-        },
-        "/policy_schema": {"get": {
-            "summary": "Returns one policy type schema definition",
-            "deprecated": false,
-            "produces": ["*/*"],
-            "operationId": "getPolicySchemaUsingGET",
-            "responses": {
-                "200": {
-                    "schema": {"type": "object"},
-                    "description": "Policy schema"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"type": "string"},
-                    "description": "The policy type is not found"
-                }
-            },
-            "parameters": [{
-                "in": "query",
-                "allowEmptyValue": false,
-                "name": "id",
-                "description": "The identity of the policy type to get the definition for.",
-                "type": "string",
-                "required": true
-            }],
-            "tags": ["A1 Policy Management Version 1.0"]
-        }},
-        "/rics": {"get": {
-            "summary": "Query Near-RT RIC information",
-            "deprecated": false,
-            "produces": ["*/*"],
-            "operationId": "getRicsUsingGET_1",
-            "responses": {
-                "200": {
-                    "schema": {
-                        "type": "array",
-                        "items": {"$ref": "#/definitions/ric_info_v1"}
-                    },
-                    "description": "OK"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"type": "string"},
-                    "description": "Policy type is not found"
-                }
-            },
-            "parameters": [{
-                "in": "query",
-                "allowEmptyValue": false,
-                "name": "policyType",
-                "description": "The name of the policy type",
-                "type": "string",
-                "required": false
-            }],
-            "tags": ["A1 Policy Management Version 1.0"]
-        }},
-        "/policy_status": {"get": {
-            "summary": "Returns a policy status",
-            "deprecated": false,
-            "produces": ["*/*"],
-            "operationId": "getPolicyStatusUsingGET_1",
-            "responses": {
-                "200": {
-                    "schema": {"type": "object"},
-                    "description": "Policy status"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"type": "string"},
-                    "description": "Policy is not found"
-                }
-            },
-            "parameters": [{
-                "in": "query",
-                "allowEmptyValue": false,
-                "name": "id",
-                "description": "The identity of the policy.",
-                "type": "string",
-                "required": true
-            }],
-            "tags": ["A1 Policy Management Version 1.0"]
-        }},
-        "/v2/policies/{policy_id}/status": {"get": {
-            "summary": "Returns a policy status",
-            "deprecated": false,
-            "produces": ["application/json"],
-            "operationId": "getPolicyStatusUsingGET",
-            "responses": {
-                "200": {
-                    "schema": {"$ref": "#/definitions/policy_status_info_v2"},
-                    "description": "Policy status"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"$ref": "#/definitions/error_information"},
-                    "description": "Policy is not found"
-                }
-            },
-            "parameters": [{
-                "in": "path",
-                "name": "policy_id",
-                "description": "policy_id",
-                "type": "string",
-                "required": true
-            }],
-            "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-        }},
-        "/v2/rics": {"get": {
-            "summary": "Query Near-RT RIC information",
-            "deprecated": false,
-            "produces": ["application/json"],
-            "description": "The call returns all Near-RT RICs that supports a given policy type identity",
-            "operationId": "getRicsUsingGET",
-            "responses": {
-                "200": {
-                    "schema": {"$ref": "#/definitions/ric_info_list_v2"},
-                    "description": "OK"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"$ref": "#/definitions/error_information"},
-                    "description": "Policy type is not found"
-                }
-            },
-            "parameters": [{
-                "in": "query",
-                "allowEmptyValue": false,
-                "name": "policytype_id",
-                "description": "The identity of a policy type. If given, all Near-RT RICs supporteing the policy type are returned",
-                "type": "string",
-                "required": false
-            }],
-            "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-        }},
-        "/v2/configuration": {
-            "get": {
-                "summary": "Returns the contents of the configuration file",
-                "deprecated": false,
-                "produces": ["application/json"],
-                "description": "Note that the file contents is not relevant if the Consul is used.",
-                "operationId": "getConfigurationUsingGET",
-                "responses": {
-                    "200": {
-                        "schema": {"type": "object"},
-                        "description": "Configuration"
-                    },
-                    "401": {"description": "Unauthorized"},
-                    "403": {"description": "Forbidden"},
-                    "404": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "File is not found or readable"
-                    }
-                },
-                "tags": ["Component Configuration"]
-            },
-            "put": {
-                "summary": "Replace the current configuration file with the given configuration",
-                "deprecated": false,
-                "produces": ["*/*"],
-                "description": "Note that the file is ignored if the Consul is used.",
-                "operationId": "putConfigurationUsingPUT",
-                "responses": {
-                    "200": {"description": "Configuration updated"},
-                    "201": {"description": "Created"},
-                    "400": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "Invalid configuration provided"
-                    },
-                    "401": {"description": "Unauthorized"},
-                    "500": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "Something went wrong when replacing the configuration. Try again."
-                    },
-                    "403": {"description": "Forbidden"},
-                    "404": {"description": "Not Found"}
-                },
-                "parameters": [{
-                    "schema": {"type": "object"},
-                    "in": "body",
-                    "name": "configuration",
-                    "description": "configuration",
-                    "required": true
-                }],
-                "tags": ["Component Configuration"],
-                "consumes": ["application/json"]
-            }
-        },
-        "/policy_ids": {"get": {
-            "summary": "Query policies, only policy identities returned",
-            "deprecated": false,
-            "produces": ["*/*"],
-            "operationId": "getPolicyIdsUsingGET_1",
-            "responses": {
-                "200": {
-                    "schema": {
-                        "type": "array",
-                        "items": {"type": "string"}
-                    },
-                    "description": "Policy identitiess"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"type": "string"},
-                    "description": "Near-RT RIC or type not found"
-                }
-            },
-            "parameters": [
-                {
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "ric",
-                    "description": "The name of the Near-RT RIC to get policies for.",
-                    "type": "string",
-                    "required": false
-                },
-                {
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "service",
-                    "description": "The name of the service to get policies for.",
-                    "type": "string",
-                    "required": false
-                },
-                {
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "type",
-                    "description": "The name of the policy type to get policies for.",
-                    "type": "string",
-                    "required": false
-                }
-            ],
-            "tags": ["A1 Policy Management Version 1.0"]
-        }},
-        "/policy_schemas": {"get": {
-            "summary": "Returns policy type schema definitions",
-            "deprecated": false,
-            "produces": ["*/*"],
-            "operationId": "getPolicySchemasUsingGET",
-            "responses": {
-                "200": {
-                    "schema": {
-                        "type": "array",
-                        "items": {"type": "object"}
-                    },
-                    "description": "Policy schemas"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"type": "string"},
-                    "description": "Near-RT RIC is not found"
-                }
-            },
-            "parameters": [{
-                "in": "query",
-                "allowEmptyValue": false,
-                "name": "ric",
-                "description": "The name of the Near-RT RIC to get the definitions for.",
-                "type": "string",
-                "required": false
-            }],
-            "tags": ["A1 Policy Management Version 1.0"]
-        }},
-        "/v2/policy-instances": {"get": {
-            "summary": "Query for A1 policy instances",
-            "deprecated": false,
-            "produces": ["application/json"],
-            "description": "Returns a list of A1 policies matching given search criteria. <br>If several query parameters are defined, the policies matching all conditions are returned.",
-            "operationId": "getPolicyInstancesUsingGET",
-            "responses": {
-                "200": {
-                    "schema": {"$ref": "#/definitions/policy_info_list_v2"},
-                    "description": "Policies"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"$ref": "#/definitions/error_information"},
-                    "description": "Near-RT RIC, policy type or service not found"
-                }
-            },
-            "parameters": [
-                {
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "policytype_id",
-                    "description": "The identity of the policy type to get policies for.",
-                    "type": "string",
-                    "required": false
-                },
-                {
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "ric_id",
-                    "description": "The identity of the Near-RT RIC to get policies for.",
-                    "type": "string",
-                    "required": false
-                },
-                {
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "service_id",
-                    "description": "The identity of the service to get policies for.",
-                    "type": "string",
-                    "required": false
-                }
-            ],
-            "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-        }},
-        "/v2/services": {
-            "get": {
-                "summary": "Returns service information",
-                "deprecated": false,
-                "produces": ["application/json"],
-                "description": "Either information about a registered service with given identity or all registered services are returned.",
-                "operationId": "getServicesUsingGET_1",
-                "responses": {
-                    "200": {
-                        "schema": {"$ref": "#/definitions/service_list_v2"},
-                        "description": "OK"
-                    },
-                    "401": {"description": "Unauthorized"},
-                    "403": {"description": "Forbidden"},
-                    "404": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "Service is not found"
-                    }
-                },
-                "parameters": [{
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "service_id",
-                    "description": "The identity of the service",
-                    "type": "string",
-                    "required": false
-                }],
-                "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-            },
-            "put": {
-                "summary": "Register a service",
-                "deprecated": false,
-                "produces": ["*/*"],
-                "description": "Registering a service is needed to:<ul><li>Get callbacks.<\/li><li>Activate supervision of the service. If a service is inactive, its policies will be deleted.<\/li><\/ul>",
-                "operationId": "putServiceUsingPUT_1",
-                "responses": {
-                    "200": {
-                        "schema": {"type": "object"},
-                        "description": "Service updated"
-                    },
-                    "201": {
-                        "schema": {"type": "object"},
-                        "description": "Service created"
-                    },
-                    "400": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "The ServiceRegistrationInfo is not accepted"
-                    },
-                    "401": {"description": "Unauthorized"},
-                    "403": {"description": "Forbidden"},
-                    "404": {"description": "Not Found"}
-                },
-                "parameters": [{
-                    "schema": {"$ref": "#/definitions/service_registration_info_v2"},
-                    "in": "body",
-                    "name": "registrationInfo",
-                    "description": "registrationInfo",
-                    "required": true
-                }],
-                "tags": ["A1 Policy Management Version 2.0 (in progress)"],
-                "consumes": ["application/json"]
-            }
-        },
-        "/ric": {"get": {
-            "summary": "Returns the name of a RIC managing one Mananged Element",
-            "deprecated": false,
-            "produces": ["*/*"],
-            "operationId": "getRicUsingGET_1",
-            "responses": {
-                "200": {
-                    "schema": {"type": "string"},
-                    "description": "Near-RT RIC is found"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"type": "string"},
-                    "description": "Near-RT RIC is not found"
-                }
-            },
-            "parameters": [{
-                "in": "query",
-                "allowEmptyValue": false,
-                "name": "managedElementId",
-                "description": "The identity of the Managed Element",
-                "type": "string",
-                "required": true
-            }],
-            "tags": ["A1 Policy Management Version 1.0"]
-        }},
-        "/services/keepalive": {"put": {
-            "summary": "Heartbeat from a service",
-            "deprecated": false,
-            "produces": ["*/*"],
-            "operationId": "keepAliveServiceUsingPUT",
-            "responses": {
-                "200": {
-                    "schema": {"type": "string"},
-                    "description": "Service supervision timer refreshed, OK"
-                },
-                "201": {"description": "Created"},
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {"description": "The service is not found, needs re-registration"}
-            },
-            "parameters": [{
-                "in": "query",
-                "allowEmptyValue": false,
-                "name": "name",
-                "description": "The name of the service",
-                "type": "string",
-                "required": true
-            }],
-            "tags": ["A1 Policy Management Version 1.0"],
-            "consumes": ["application/json"]
-        }},
-        "/v2/services/{service_id}/keepalive": {"put": {
-            "summary": "Heartbeat indicates that the service is running",
-            "deprecated": false,
-            "produces": ["*/*"],
-            "operationId": "keepAliveServiceUsingPUT_1",
-            "responses": {
-                "200": {
-                    "schema": {"type": "object"},
-                    "description": "Service supervision timer refreshed, OK"
-                },
-                "201": {"description": "Created"},
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"$ref": "#/definitions/error_information"},
-                    "description": "The service is not found, needs re-registration"
-                }
-            },
-            "parameters": [{
-                "in": "path",
-                "name": "service_id",
-                "description": "service_id",
-                "type": "string",
-                "required": true
-            }],
-            "tags": ["A1 Policy Management Version 2.0 (in progress)"],
-            "consumes": ["application/json"]
-        }},
-        "/status": {"get": {
-            "summary": "Returns status and statistics of this service",
-            "deprecated": false,
-            "produces": ["*/*"],
-            "operationId": "getStatusUsingGET",
-            "responses": {
-                "200": {
-                    "schema": {"type": "string"},
-                    "description": "Service is living"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {"description": "Not Found"}
-            },
-            "tags": ["A1 Policy Management Version 1.0"]
-        }},
-        "/v2/rics/ric": {"get": {
-            "summary": "Returns info for one Near-RT RIC",
-            "deprecated": false,
-            "produces": ["application/json"],
-            "description": "Either a Near-RT RIC identity or a Mananged Element identity can be specified.<br>The intention with Mananged Element identity is the ID used in O1 for accessing the traffical element (such as the ID of CU).",
-            "operationId": "getRicUsingGET",
-            "responses": {
-                "200": {
-                    "schema": {"$ref": "#/definitions/ric_info_v2"},
-                    "description": "Near-RT RIC is found"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"$ref": "#/definitions/error_information"},
-                    "description": "Near-RT RIC is not found"
-                }
-            },
-            "parameters": [
-                {
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "managed_element_id",
-                    "description": "The identity of a Managed Element. If given, the Near-RT RIC managing the ME is returned.",
-                    "type": "string",
-                    "required": false
-                },
-                {
-                    "in": "query",
-                    "allowEmptyValue": false,
-                    "name": "ric_id",
-                    "description": "The identity of a Near-RT RIC to get information for.",
-                    "type": "string",
-                    "required": false
-                }
-            ],
-            "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-        }},
-        "/r-app/pms-callback": {"post": {
-            "summary": "Callback for Near-RT RIC status",
-            "deprecated": false,
-            "produces": ["application/json"],
-            "description": "The URL to this call is registerred at Service registration.",
-            "operationId": "jobStatusCallbackUsingPOST",
-            "responses": {
-                "200": {"description": "OK"},
-                "201": {"description": "Created"},
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {"description": "Not Found"}
-            },
-            "parameters": [{
-                "schema": {"$ref": "#/definitions/service_callback_info_v2"},
-                "in": "body",
-                "name": "body",
-                "description": "body",
-                "required": true
-            }],
-            "tags": ["R-App Callbacks"],
-            "consumes": ["application/json"]
-        }},
-        "/v2/policy-types/{policytype_id}": {"get": {
-            "summary": "Returns a policy type definition",
-            "deprecated": false,
-            "produces": ["application/json"],
-            "operationId": "getPolicyTypeUsingGET",
-            "responses": {
-                "200": {
-                    "schema": {"$ref": "#/definitions/policytype_v2"},
-                    "description": "Policy type"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {
-                    "schema": {"$ref": "#/definitions/error_information"},
-                    "description": "Policy type is not found"
-                }
-            },
-            "parameters": [{
-                "in": "path",
-                "name": "policytype_id",
-                "description": "policytype_id",
-                "type": "string",
-                "required": true
-            }],
-            "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-        }},
-        "/service": {"put": {
-            "summary": "Register a service",
-            "deprecated": false,
-            "produces": ["*/*"],
-            "operationId": "putServiceUsingPUT",
-            "responses": {
-                "200": {
-                    "schema": {"type": "string"},
-                    "description": "Service updated"
-                },
-                "201": {
-                    "schema": {"type": "string"},
-                    "description": "Service created"
-                },
-                "400": {
-                    "schema": {"type": "string"},
-                    "description": "The ServiceRegistrationInfo is not accepted"
-                },
-                "401": {"description": "Unauthorized"},
-                "403": {"description": "Forbidden"},
-                "404": {"description": "Not Found"}
-            },
-            "parameters": [{
-                "schema": {"$ref": "#/definitions/service_registration_info_v1"},
-                "in": "body",
-                "name": "registrationInfo",
-                "description": "registrationInfo",
-                "required": true
-            }],
-            "tags": ["A1 Policy Management Version 1.0"],
-            "consumes": ["application/json"]
-        }},
-        "/v2/policies": {
-            "get": {
-                "summary": "Query policy identities",
-                "deprecated": false,
-                "produces": ["application/json"],
-                "description": "Returns a list of A1 policies matching given search criteria. <br>If several query parameters are defined, the policies matching all conditions are returned.",
-                "operationId": "getPolicyIdsUsingGET",
-                "responses": {
-                    "200": {
-                        "schema": {"$ref": "#/definitions/policy_id_list_v2"},
-                        "description": "Policy identities"
-                    },
-                    "401": {"description": "Unauthorized"},
-                    "403": {"description": "Forbidden"},
-                    "404": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "Near-RT RIC or type not found"
-                    }
-                },
-                "parameters": [
-                    {
-                        "in": "query",
-                        "allowEmptyValue": false,
-                        "name": "policytype_id",
-                        "description": "The identity of the policy type to get policies for.",
-                        "type": "string",
-                        "required": false
-                    },
-                    {
-                        "in": "query",
-                        "allowEmptyValue": false,
-                        "name": "ric_id",
-                        "description": "The identity of the Near-RT RIC to get policies for.",
-                        "type": "string",
-                        "required": false
-                    },
-                    {
-                        "in": "query",
-                        "allowEmptyValue": false,
-                        "name": "service_id",
-                        "description": "The identity of the service to get policies for.",
-                        "type": "string",
-                        "required": false
-                    }
-                ],
-                "tags": ["A1 Policy Management Version 2.0 (in progress)"]
-            },
-            "put": {
-                "summary": "Create or update a policy",
-                "deprecated": false,
-                "produces": ["application/json"],
-                "operationId": "putPolicyUsingPUT",
-                "responses": {
-                    "200": {"description": "Policy updated"},
-                    "201": {"description": "Policy created"},
-                    "401": {"description": "Unauthorized"},
-                    "423": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "Near-RT RIC is not operational"
-                    },
-                    "403": {"description": "Forbidden"},
-                    "404": {
-                        "schema": {"$ref": "#/definitions/error_information"},
-                        "description": "Near-RT RIC or policy type is not found"
-                    }
-                },
-                "parameters": [{
-                    "schema": {"$ref": "#/definitions/policy_info_v2"},
-                    "in": "body",
-                    "name": "policyInfo",
-                    "description": "policyInfo",
-                    "required": true
-                }],
-                "tags": ["A1 Policy Management Version 2.0 (in progress)"],
-                "consumes": ["application/json"]
-            }
-        }
-    },
-    "host": "localhost:46233",
-    "definitions": {
-        "error_information": {
-            "description": "Problem as defined in https://tools.ietf.org/html/rfc7807",
-            "type": "object",
-            "title": "error_information",
-            "properties": {
-                "detail": {
-                    "description": " A human-readable explanation specific to this occurrence of the problem.",
-                    "type": "string",
-                    "example": "Policy type not found"
-                },
-                "status": {
-                    "format": "int32",
-                    "description": "The HTTP status code generated by the origin server for this occurrence of the problem. ",
-                    "type": "integer",
-                    "example": 503
-                }
-            }
-        },
-        "void": {
-            "description": "Void/empty",
-            "type": "object",
-            "title": "void"
-        },
-        "status_info_v2": {
-            "type": "object",
-            "title": "status_info_v2",
-            "properties": {"status": {
-                "description": "status text",
-                "type": "string"
-            }}
-        },
-        "policy_info_v1": {
-            "type": "object",
-            "title": "policy_info_v1",
-            "properties": {
-                "service": {
-                    "description": "the name of the service owning the policy",
-                    "type": "string"
-                },
-                "json": {
-                    "description": "the configuration of the policy",
-                    "type": "object"
-                },
-                "id": {
-                    "description": "identity of the policy",
-                    "type": "string"
-                },
-                "lastModified": {
-                    "description": "timestamp, last modification time",
-                    "type": "string"
-                },
-                "type": {
-                    "description": "name of the policy type",
-                    "type": "string"
-                },
-                "ric": {
-                    "description": "identity of the target Near-RT RIC",
-                    "type": "string"
-                }
-            }
-        },
-        "Mono«ResponseEntity«object»»": {
-            "type": "object",
-            "title": "Mono«ResponseEntity«object»»"
-        },
-        "ric_info_v2": {
-            "description": "Information for a Near-RT RIC",
-            "type": "object",
-            "title": "ric_info_v2",
-            "properties": {
-                "ric_id": {
-                    "description": "identity of the Near-RT RIC",
-                    "type": "string"
-                },
-                "managed_element_ids": {
-                    "description": "O1 identities for managed entities",
-                    "type": "array",
-                    "items": {"type": "string"}
-                },
-                "state": {
-                    "description": "State for the Near-RT RIC, values: \nUNAVAILABLE: The Near-RT RIC is not avialable, information may be inconsistent \nAVAILABLE: The normal state. Policies can be configured. +\nSYNCHRONIZING: The Policy Management Service is synchronizing the view of the Near-RT RIC. Policies cannot be configured. \nCONSISTENCY_CHECK: A consistency check between the Policy Management Service and the Near-RT RIC. Policies cannot be configured.",
-                    "type": "string",
-                    "enum": [
-                        "UNAVAILABLE",
-                        "AVAILABLE",
-                        "SYNCHRONIZING",
-                        "CONSISTENCY_CHECK"
-                    ]
-                },
-                "policytype_ids": {
-                    "description": "supported policy types",
-                    "type": "array",
-                    "items": {"type": "string"}
-                }
-            }
-        },
-        "service_registration_info_v1": {
-            "type": "object",
-            "title": "service_registration_info_v1",
-            "properties": {
-                "keepAliveIntervalSeconds": {
-                    "format": "int64",
-                    "description": "keep alive interval for the service. This is a heartbeat supervision of the service, which in regular intevals must invoke a 'keepAlive' REST call. When a service does not invoke this call within the given time, it is considered unavailble. An unavailable service will be automatically deregistered and its policies will be deleted. Value 0 means no timeout supervision.",
-                    "type": "integer"
-                },
-                "callbackUrl": {
-                    "description": "callback for notifying of RIC synchronization",
-                    "type": "string"
-                },
-                "serviceName": {"type": "string"}
-            }
-        },
-        "policy_info_list_v2": {
-            "description": "List of policy information",
-            "type": "object",
-            "title": "policy_info_list_v2",
-            "properties": {"policies": {
-                "description": "List of policy information",
-                "type": "array",
-                "items": {"$ref": "#/definitions/policy_info_v2"}
-            }}
-        },
-        "service_registration_info_v2": {
-            "description": "Information for one service",
-            "type": "object",
-            "title": "service_registration_info_v2",
-            "required": ["service_id"],
-            "properties": {
-                "callback_url": {
-                    "description": "callback for notifying of Near-RT RIC state changes",
-                    "type": "string"
-                },
-                "service_id": {
-                    "description": "identity of the service",
-                    "type": "string"
-                },
-                "keep_alive_interval_seconds": {
-                    "format": "int64",
-                    "description": "keep alive interval for the service. This is a heartbeat supervision of the service, which in regular intevals must invoke a 'keepAlive' REST call. When a service does not invoke this call within the given time, it is considered unavailble. An unavailable service will be automatically deregistered and its policies will be deleted. Value 0 means no timeout supervision.",
-                    "type": "integer"
-                }
-            }
-        },
-        "ric_info_v1": {
-            "type": "object",
-            "title": "ric_info_v1",
-            "properties": {
-                "managedElementIds": {
-                    "description": "O1 identities for managed entities",
-                    "type": "array",
-                    "items": {"type": "string"}
-                },
-                "policyTypes": {
-                    "description": "supported policy types",
-                    "type": "array",
-                    "items": {"type": "string"}
-                },
-                "state": {
-                    "description": "state info",
-                    "type": "string"
-                },
-                "ricName": {
-                    "description": "identity of the Near-RT RIC",
-                    "type": "string"
-                }
-            }
-        },
-        "policy_status_info_v2": {
-            "description": "Status for one A1-P Policy",
-            "type": "object",
-            "title": "policy_status_info_v2",
-            "properties": {
-                "last_modified": {
-                    "description": "timestamp, last modification time",
-                    "type": "string"
-                },
-                "status": {
-                    "description": "the Policy status",
-                    "type": "object"
-                }
-            }
-        },
-        "service_status_v1": {
-            "type": "object",
-            "title": "service_status_v1",
-            "properties": {
-                "keepAliveIntervalSeconds": {
-                    "format": "int64",
-                    "description": "policy keep alive timeout",
-                    "type": "integer"
-                },
-                "callbackUrl": {
-                    "description": "callback for notifying of RIC synchronization",
-                    "type": "string"
-                },
-                "timeSinceLastActivitySeconds": {
-                    "format": "int64",
-                    "description": "time since last invocation by the service",
-                    "type": "integer"
-                },
-                "serviceName": {
-                    "description": "identity of the service",
-                    "type": "string"
-                }
-            }
-        },
-        "service_status_v2": {
-            "type": "object",
-            "title": "service_status_v2",
-            "properties": {
-                "callback_url": {
-                    "description": "callback for notifying of RIC synchronization",
-                    "type": "string"
-                },
-                "service_id": {
-                    "description": "identity of the service",
-                    "type": "string"
-                },
-                "keep_alive_interval_seconds": {
-                    "format": "int64",
-                    "description": "policy keep alive timeout",
-                    "type": "integer"
-                },
-                "time_since_last_activity_seconds": {
-                    "format": "int64",
-                    "description": "time since last invocation by the service",
-                    "type": "integer"
-                }
-            }
-        },
-        "policytype_v2": {
-            "description": "Policy type",
-            "type": "object",
-            "title": "policytype_v2",
-            "properties": {"policy_schema": {
-                "description": "Policy type json scema. The schema is a json object following http://json-schema.org/draft-07/schema",
-                "type": "object"
-            }}
-        },
-        "ric_info_list_v2": {
-            "description": "List of Near-RT RIC information",
-            "type": "object",
-            "title": "ric_info_list_v2",
-            "properties": {"rics": {
-                "description": "List of Near-RT RIC information",
-                "type": "array",
-                "items": {"$ref": "#/definitions/ric_info_v2"}
-            }}
-        },
-        "policytype_id_list_v2": {
-            "description": "Information about policy types",
-            "type": "object",
-            "title": "policytype_id_list_v2",
-            "properties": {"policytype_ids": {
-                "description": "Policy type identities",
-                "type": "array",
-                "items": {"type": "string"}
-            }}
-        },
-        "policy_id_list_v2": {
-            "description": "A list of policy identities",
-            "type": "object",
-            "title": "policy_id_list_v2",
-            "properties": {"policy_ids": {
-                "description": "Policy identities",
-                "type": "array",
-                "items": {"type": "string"}
-            }}
-        },
-        "policy_info_v2": {
-            "description": "Information for one A1-P Policy",
-            "type": "object",
-            "title": "policy_info_v2",
-            "required": [
-                "policy_data",
-                "policy_id",
-                "policytype_id",
-                "ric_id",
-                "service_id"
-            ],
-            "properties": {
-                "ric_id": {
-                    "description": "identity of the target Near-RT RIC",
-                    "type": "string"
-                },
-                "policy_id": {
-                    "description": "identity of the policy",
-                    "type": "string"
-                },
-                "transient": {
-                    "description": "if true, the policy is deleted at RIC restart. If false, its value is maintained by this service until explicitly deleted. Default false.",
-                    "type": "boolean"
-                },
-                "service_id": {
-                    "description": "the name of the service owning the policy",
-                    "type": "string"
-                },
-                "policy_data": {
-                    "description": "the configuration of the policy",
-                    "type": "object"
-                },
-                "status_notification_uri": {
-                    "description": "Callback URI for policy status updates",
-                    "type": "string"
-                },
-                "policytype_id": {
-                    "description": "identity of the policy type",
-                    "type": "string"
-                }
-            }
-        },
-        "service_list_v2": {
-            "description": "List of service information",
-            "type": "object",
-            "title": "service_list_v2",
-            "properties": {"service_list": {
-                "description": "List of service information",
-                "type": "array",
-                "items": {"$ref": "#/definitions/service_status_v2"}
-            }}
-        },
-        "service_callback_info_v2": {
-            "description": "Information transferred as in Service callbacks (callback_url)",
-            "type": "object",
-            "title": "service_callback_info_v2",
-            "required": [
-                "event_type",
-                "ric_id"
-            ],
-            "properties": {
-                "ric_id": {
-                    "description": "identity of a Near-RT RIC",
-                    "type": "string"
-                },
-                "event_type": {
-                    "description": "values:\nAVAILABLE: the  Near-RT RIC has become available for A1 Policy management",
-                    "type": "string",
-                    "enum": ["AVAILABLE"]
-                }
-            }
-        },
-        "Mono«ResponseEntity«string»»": {
-            "type": "object",
-            "title": "Mono«ResponseEntity«string»»"
-        }
-    },
-    "swagger": "2.0",
-    "info": {
-        "x-audience": "external-partner",
-        "x-api-id": "60f9a0e7-343f-43bf-9194-d8d65688d465",
-        "contact": {
-            "name": "Ericsson Software Technology",
-            "email": "nonrtric@est.tech"
-        },
-        "description": "The O-RAN Non-RT RIC Policy Management Service provides a REST API for management of A1 policices. \nIt provides support for:<ul><li>A1 Policy creation and modification.<\/li><li>Maintaining a view of supported Near-RT RIC policy types <\/li><li>Supervision of using services (R-APPs). When a service is unavailble, its policies are removed. <\/li> <li>Monitoring and maintaining consistency of the SMO view of A1 policies and the Near-RT RICs <\/li><\/ul>",
-        "title": "A1 Policy management service",
-        "version": "1.1.0"
-    },
-    "tags": [
-        {
-            "name": "A1 Policy Management Version 1.0",
-            "description": "Policy Controller"
-        },
-        {
-            "name": "A1 Policy Management Version 2.0 (in progress)",
-            "description": "Policy Controller"
-        },
-        {
-            "name": "Component Configuration",
-            "description": "Configuration Controller"
-        },
-        {
-            "name": "R-App Callbacks",
-            "description": "Rapp Simulator Controller"
-        }
-    ]
-}
\ No newline at end of file
new file mode 120000 (symlink)
index 0000000000000000000000000000000000000000..5812031cf86b207f48656ba6e9de12dba0e983ac
--- /dev/null
@@ -0,0 +1 @@
+../../../a1-policy-management/api/pms-api.json
\ No newline at end of file
deleted file mode 100644 (file)
index 665c9b65ee4b860f6ea461d3cbc49b9b4fbabbde..0000000000000000000000000000000000000000
+++ /dev/null
-openapi: 3.0.1
-info:
-  title: A1 Policy management service
-  description: "The O-RAN Non-RT RIC Policy Management Service provides a REST API\
-    \ for management of A1 policices. \nIt provides support for:<ul><li>A1 Policy\
-    \ creation and modification.</li><li>Maintaining a view of supported Near-RT RIC\
-    \ policy types </li><li>Supervision of using services (R-APPs). When a service\
-    \ is unavailble, its policies are removed. </li> <li>Monitoring and maintaining\
-    \ consistency of the SMO view of A1 policies and the Near-RT RICs </li></ul>"
-  contact:
-    name: Ericsson Software Technology
-    email: nonrtric@est.tech
-  version: 1.1.0
-  x-audience: external-partner
-  x-api-id: 60f9a0e7-343f-43bf-9194-d8d65688d465
-servers:
-- url: //localhost:46233/
-tags:
-- name: A1 Policy Management Version 1.0
-  description: Policy Controller
-- name: A1 Policy Management Version 2.0 (in progress)
-  description: Policy Controller
-- name: Component Configuration
-  description: Configuration Controller
-- name: R-App Callbacks
-  description: Rapp Simulator Controller
-paths:
-  /policy_types:
-    get:
-      tags:
-      - A1 Policy Management Version 1.0
-      summary: Query policy type names
-      operationId: getPolicyTypesUsingGET_1
-      parameters:
-      - name: ric
-        in: query
-        description: The name of the Near-RT RIC to get types for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: Policy type names
-          content:
-            '*/*':
-              schema:
-                type: array
-                items:
-                  type: string
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Near-RT RIC is not found
-          content:
-            '*/*':
-              schema:
-                type: string
-      deprecated: false
-  /v2/status:
-    get:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Returns status and statistics of this service
-      operationId: getStatusUsingGET_1
-      responses:
-        200:
-          description: Service is living
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/status_info_v2'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Not Found
-          content: {}
-      deprecated: false
-  /v2/policy-types:
-    get:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Query policy type identities
-      operationId: getPolicyTypesUsingGET
-      parameters:
-      - name: ric_id
-        in: query
-        description: The identity of the Near-RT RIC to get types for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: Policy type IDs
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/policytype_id_list_v2'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Near-RT RIC is not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-  /services:
-    get:
-      tags:
-      - A1 Policy Management Version 1.0
-      summary: Returns service information
-      operationId: getServicesUsingGET
-      parameters:
-      - name: name
-        in: query
-        description: The name of the service
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: OK
-          content:
-            '*/*':
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/service_status_v1'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Service is not found
-          content:
-            '*/*':
-              schema:
-                type: string
-      deprecated: false
-    delete:
-      tags:
-      - A1 Policy Management Version 1.0
-      summary: Delete a service
-      operationId: deleteServiceUsingDELETE
-      parameters:
-      - name: name
-        in: query
-        description: The name of the service
-        required: true
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: OK
-          content:
-            '*/*':
-              schema:
-                type: string
-        204:
-          description: Service deleted
-          content:
-            '*/*':
-              schema:
-                type: string
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Service not found
-          content:
-            '*/*':
-              schema:
-                type: string
-      deprecated: false
-  /v2/services/{service_id}:
-    delete:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Unregister a service
-      operationId: deleteServiceUsingDELETE_1
-      parameters:
-      - name: service_id
-        in: path
-        description: service_id
-        required: true
-        schema:
-          type: string
-      responses:
-        200:
-          description: Not used
-          content: {}
-        204:
-          description: Service unregistered
-          content:
-            '*/*':
-              schema:
-                type: object
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Service not found
-          content:
-            '*/*':
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-  /policy:
-    get:
-      tags:
-      - A1 Policy Management Version 1.0
-      summary: Returns a policy configuration
-      operationId: getPolicyUsingGET_1
-      parameters:
-      - name: id
-        in: query
-        description: The identity of the policy instance.
-        required: true
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: Policy found
-          content:
-            '*/*':
-              schema:
-                type: object
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Policy is not found
-          content: {}
-      deprecated: false
-    put:
-      tags:
-      - A1 Policy Management Version 1.0
-      summary: Put a policy
-      operationId: putPolicyUsingPUT_1
-      parameters:
-      - name: id
-        in: query
-        description: The identity of the policy instance.
-        required: true
-        allowEmptyValue: false
-        schema:
-          type: string
-      - name: ric
-        in: query
-        description: The name of the Near-RT RIC where the policy will be created.
-        required: true
-        allowEmptyValue: false
-        schema:
-          type: string
-      - name: service
-        in: query
-        description: The name of the service creating the policy.
-        required: true
-        allowEmptyValue: false
-        schema:
-          type: string
-      - name: transient
-        in: query
-        description: If the policy is transient or not (boolean defaulted to false).
-          A policy is transient if it will be forgotten when the service needs to
-          reconnect to the Near-RT RIC.
-        allowEmptyValue: false
-        schema:
-          type: boolean
-          default: false
-        example: false
-      - name: type
-        in: query
-        description: The name of the policy type.
-        allowEmptyValue: false
-        schema:
-          type: string
-      requestBody:
-        description: jsonBody
-        content:
-          application/json:
-            schema:
-              type: object
-        required: true
-      responses:
-        200:
-          description: Policy updated
-          content: {}
-        201:
-          description: Policy created
-          content: {}
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Near-RT RIC or policy type is not found
-          content:
-            '*/*':
-              schema:
-                type: string
-        423:
-          description: Near-RT RIC is not operational
-          content:
-            '*/*':
-              schema:
-                type: string
-      deprecated: false
-    delete:
-      tags:
-      - A1 Policy Management Version 1.0
-      summary: Delete a policy
-      operationId: deletePolicyUsingDELETE_1
-      parameters:
-      - name: id
-        in: query
-        description: The identity of the policy instance.
-        required: true
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: Not used
-          content: {}
-        204:
-          description: Policy deleted
-          content: {}
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Policy is not found
-          content:
-            '*/*':
-              schema:
-                type: string
-        423:
-          description: Near-RT RIC is not operational
-          content:
-            '*/*':
-              schema:
-                type: string
-      deprecated: false
-  /policies:
-    get:
-      tags:
-      - A1 Policy Management Version 1.0
-      summary: Query policies
-      operationId: getPoliciesUsingGET
-      parameters:
-      - name: ric
-        in: query
-        description: The name of the Near-RT RIC to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      - name: service
-        in: query
-        description: The name of the service to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      - name: type
-        in: query
-        description: The name of the policy type to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: Policies
-          content:
-            '*/*':
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/policy_info_v1'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Near-RT RIC or type not found
-          content:
-            '*/*':
-              schema:
-                type: string
-      deprecated: false
-  /v2/policies/{policy_id}:
-    get:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Returns a policy
-      operationId: getPolicyUsingGET
-      parameters:
-      - name: policy_id
-        in: path
-        description: policy_id
-        required: true
-        schema:
-          type: string
-      responses:
-        200:
-          description: Policy found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/policy_info_v2'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Policy is not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-    delete:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Delete a policy
-      operationId: deletePolicyUsingDELETE
-      parameters:
-      - name: policy_id
-        in: path
-        description: policy_id
-        required: true
-        schema:
-          type: string
-      responses:
-        200:
-          description: Not used
-          content: {}
-        204:
-          description: Policy deleted
-          content: {}
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Policy is not found
-          content:
-            '*/*':
-              schema:
-                $ref: '#/components/schemas/error_information'
-        423:
-          description: Near-RT RIC is not operational
-          content:
-            '*/*':
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-  /policy_schema:
-    get:
-      tags:
-      - A1 Policy Management Version 1.0
-      summary: Returns one policy type schema definition
-      operationId: getPolicySchemaUsingGET
-      parameters:
-      - name: id
-        in: query
-        description: The identity of the policy type to get the definition for.
-        required: true
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: Policy schema
-          content:
-            '*/*':
-              schema:
-                type: object
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: The policy type is not found
-          content:
-            '*/*':
-              schema:
-                type: string
-      deprecated: false
-  /rics:
-    get:
-      tags:
-      - A1 Policy Management Version 1.0
-      summary: Query Near-RT RIC information
-      operationId: getRicsUsingGET_1
-      parameters:
-      - name: policyType
-        in: query
-        description: The name of the policy type
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: OK
-          content:
-            '*/*':
-              schema:
-                type: array
-                items:
-                  $ref: '#/components/schemas/ric_info_v1'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Policy type is not found
-          content:
-            '*/*':
-              schema:
-                type: string
-      deprecated: false
-  /policy_status:
-    get:
-      tags:
-      - A1 Policy Management Version 1.0
-      summary: Returns a policy status
-      operationId: getPolicyStatusUsingGET_1
-      parameters:
-      - name: id
-        in: query
-        description: The identity of the policy.
-        required: true
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: Policy status
-          content:
-            '*/*':
-              schema:
-                type: object
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Policy is not found
-          content:
-            '*/*':
-              schema:
-                type: string
-      deprecated: false
-  /v2/policies/{policy_id}/status:
-    get:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Returns a policy status
-      operationId: getPolicyStatusUsingGET
-      parameters:
-      - name: policy_id
-        in: path
-        description: policy_id
-        required: true
-        schema:
-          type: string
-      responses:
-        200:
-          description: Policy status
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/policy_status_info_v2'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Policy is not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-  /v2/rics:
-    get:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Query Near-RT RIC information
-      description: The call returns all Near-RT RICs that supports a given policy
-        type identity
-      operationId: getRicsUsingGET
-      parameters:
-      - name: policytype_id
-        in: query
-        description: The identity of a policy type. If given, all Near-RT RICs supporteing
-          the policy type are returned
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: OK
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ric_info_list_v2'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Policy type is not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-  /v2/configuration:
-    get:
-      tags:
-      - Component Configuration
-      summary: Returns the contents of the configuration file
-      description: Note that the file contents is not relevant if the Consul is used.
-      operationId: getConfigurationUsingGET
-      responses:
-        200:
-          description: Configuration
-          content:
-            application/json:
-              schema:
-                type: object
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: File is not found or readable
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-    put:
-      tags:
-      - Component Configuration
-      summary: Replace the current configuration file with the given configuration
-      description: Note that the file is ignored if the Consul is used.
-      operationId: putConfigurationUsingPUT
-      requestBody:
-        description: configuration
-        content:
-          application/json:
-            schema:
-              type: object
-        required: true
-      responses:
-        200:
-          description: Configuration updated
-          content: {}
-        201:
-          description: Created
-          content: {}
-        400:
-          description: Invalid configuration provided
-          content:
-            '*/*':
-              schema:
-                $ref: '#/components/schemas/error_information'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Not Found
-          content: {}
-        500:
-          description: Something went wrong when replacing the configuration. Try
-            again.
-          content:
-            '*/*':
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-  /policy_ids:
-    get:
-      tags:
-      - A1 Policy Management Version 1.0
-      summary: Query policies, only policy identities returned
-      operationId: getPolicyIdsUsingGET_1
-      parameters:
-      - name: ric
-        in: query
-        description: The name of the Near-RT RIC to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      - name: service
-        in: query
-        description: The name of the service to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      - name: type
-        in: query
-        description: The name of the policy type to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: Policy identitiess
-          content:
-            '*/*':
-              schema:
-                type: array
-                items:
-                  type: string
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Near-RT RIC or type not found
-          content:
-            '*/*':
-              schema:
-                type: string
-      deprecated: false
-  /policy_schemas:
-    get:
-      tags:
-      - A1 Policy Management Version 1.0
-      summary: Returns policy type schema definitions
-      operationId: getPolicySchemasUsingGET
-      parameters:
-      - name: ric
-        in: query
-        description: The name of the Near-RT RIC to get the definitions for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: Policy schemas
-          content:
-            '*/*':
-              schema:
-                type: array
-                items:
-                  type: object
-                  properties: {}
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Near-RT RIC is not found
-          content:
-            '*/*':
-              schema:
-                type: string
-      deprecated: false
-  /v2/policy-instances:
-    get:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Query for A1 policy instances
-      description: Returns a list of A1 policies matching given search criteria. <br>If
-        several query parameters are defined, the policies matching all conditions
-        are returned.
-      operationId: getPolicyInstancesUsingGET
-      parameters:
-      - name: policytype_id
-        in: query
-        description: The identity of the policy type to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      - name: ric_id
-        in: query
-        description: The identity of the Near-RT RIC to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      - name: service_id
-        in: query
-        description: The identity of the service to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: Policies
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/policy_info_list_v2'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Near-RT RIC, policy type or service not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-  /v2/services:
-    get:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Returns service information
-      description: Either information about a registered service with given identity
-        or all registered services are returned.
-      operationId: getServicesUsingGET_1
-      parameters:
-      - name: service_id
-        in: query
-        description: The identity of the service
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: OK
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/service_list_v2'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Service is not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-    put:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Register a service
-      description: Registering a service is needed to:<ul><li>Get callbacks.</li><li>Activate
-        supervision of the service. If a service is inactive, its policies will be
-        deleted.</li></ul>
-      operationId: putServiceUsingPUT_1
-      requestBody:
-        description: registrationInfo
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/service_registration_info_v2'
-        required: true
-      responses:
-        200:
-          description: Service updated
-          content:
-            '*/*':
-              schema:
-                type: object
-        201:
-          description: Service created
-          content:
-            '*/*':
-              schema:
-                type: object
-        400:
-          description: The ServiceRegistrationInfo is not accepted
-          content:
-            '*/*':
-              schema:
-                $ref: '#/components/schemas/error_information'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Not Found
-          content: {}
-      deprecated: false
-  /ric:
-    get:
-      tags:
-      - A1 Policy Management Version 1.0
-      summary: Returns the name of a RIC managing one Mananged Element
-      operationId: getRicUsingGET_1
-      parameters:
-      - name: managedElementId
-        in: query
-        description: The identity of the Managed Element
-        required: true
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: Near-RT RIC is found
-          content:
-            '*/*':
-              schema:
-                type: string
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Near-RT RIC is not found
-          content:
-            '*/*':
-              schema:
-                type: string
-      deprecated: false
-  /services/keepalive:
-    put:
-      tags:
-      - A1 Policy Management Version 1.0
-      summary: Heartbeat from a service
-      operationId: keepAliveServiceUsingPUT
-      parameters:
-      - name: name
-        in: query
-        description: The name of the service
-        required: true
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: Service supervision timer refreshed, OK
-          content:
-            '*/*':
-              schema:
-                type: string
-        201:
-          description: Created
-          content: {}
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: The service is not found, needs re-registration
-          content: {}
-      deprecated: false
-  /v2/services/{service_id}/keepalive:
-    put:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Heartbeat indicates that the service is running
-      operationId: keepAliveServiceUsingPUT_1
-      parameters:
-      - name: service_id
-        in: path
-        description: service_id
-        required: true
-        schema:
-          type: string
-      responses:
-        200:
-          description: Service supervision timer refreshed, OK
-          content:
-            '*/*':
-              schema:
-                type: object
-        201:
-          description: Created
-          content: {}
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: The service is not found, needs re-registration
-          content:
-            '*/*':
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-  /status:
-    get:
-      tags:
-      - A1 Policy Management Version 1.0
-      summary: Returns status and statistics of this service
-      operationId: getStatusUsingGET
-      responses:
-        200:
-          description: Service is living
-          content:
-            '*/*':
-              schema:
-                type: string
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Not Found
-          content: {}
-      deprecated: false
-  /v2/rics/ric:
-    get:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Returns info for one Near-RT RIC
-      description: Either a Near-RT RIC identity or a Mananged Element identity can
-        be specified.<br>The intention with Mananged Element identity is the ID used
-        in O1 for accessing the traffical element (such as the ID of CU).
-      operationId: getRicUsingGET
-      parameters:
-      - name: managed_element_id
-        in: query
-        description: The identity of a Managed Element. If given, the Near-RT RIC
-          managing the ME is returned.
-        allowEmptyValue: false
-        schema:
-          type: string
-      - name: ric_id
-        in: query
-        description: The identity of a Near-RT RIC to get information for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: Near-RT RIC is found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/ric_info_v2'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Near-RT RIC is not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-  /r-app/pms-callback:
-    post:
-      tags:
-      - R-App Callbacks
-      summary: Callback for Near-RT RIC status
-      description: The URL to this call is registerred at Service registration.
-      operationId: jobStatusCallbackUsingPOST
-      requestBody:
-        description: body
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/service_callback_info_v2'
-        required: true
-      responses:
-        200:
-          description: OK
-          content: {}
-        201:
-          description: Created
-          content: {}
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Not Found
-          content: {}
-      deprecated: false
-  /v2/policy-types/{policytype_id}:
-    get:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Returns a policy type definition
-      operationId: getPolicyTypeUsingGET
-      parameters:
-      - name: policytype_id
-        in: path
-        description: policytype_id
-        required: true
-        schema:
-          type: string
-      responses:
-        200:
-          description: Policy type
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/policytype_v2'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Policy type is not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-  /service:
-    put:
-      tags:
-      - A1 Policy Management Version 1.0
-      summary: Register a service
-      operationId: putServiceUsingPUT
-      requestBody:
-        description: registrationInfo
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/service_registration_info_v1'
-        required: true
-      responses:
-        200:
-          description: Service updated
-          content:
-            '*/*':
-              schema:
-                type: string
-        201:
-          description: Service created
-          content:
-            '*/*':
-              schema:
-                type: string
-        400:
-          description: The ServiceRegistrationInfo is not accepted
-          content:
-            '*/*':
-              schema:
-                type: string
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Not Found
-          content: {}
-      deprecated: false
-  /v2/policies:
-    get:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Query policy identities
-      description: Returns a list of A1 policies matching given search criteria. <br>If
-        several query parameters are defined, the policies matching all conditions
-        are returned.
-      operationId: getPolicyIdsUsingGET
-      parameters:
-      - name: policytype_id
-        in: query
-        description: The identity of the policy type to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      - name: ric_id
-        in: query
-        description: The identity of the Near-RT RIC to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      - name: service_id
-        in: query
-        description: The identity of the service to get policies for.
-        allowEmptyValue: false
-        schema:
-          type: string
-      responses:
-        200:
-          description: Policy identities
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/policy_id_list_v2'
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Near-RT RIC or type not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-    put:
-      tags:
-      - A1 Policy Management Version 2.0 (in progress)
-      summary: Create or update a policy
-      operationId: putPolicyUsingPUT
-      requestBody:
-        description: policyInfo
-        content:
-          application/json:
-            schema:
-              $ref: '#/components/schemas/policy_info_v2'
-        required: true
-      responses:
-        200:
-          description: Policy updated
-          content: {}
-        201:
-          description: Policy created
-          content: {}
-        401:
-          description: Unauthorized
-          content: {}
-        403:
-          description: Forbidden
-          content: {}
-        404:
-          description: Near-RT RIC or policy type is not found
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
-        423:
-          description: Near-RT RIC is not operational
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/error_information'
-      deprecated: false
-components:
-  schemas:
-    error_information:
-      title: error_information
-      type: object
-      properties:
-        detail:
-          type: string
-          description: ' A human-readable explanation specific to this occurrence
-            of the problem.'
-          example: Policy type not found
-        status:
-          type: integer
-          description: 'The HTTP status code generated by the origin server for this
-            occurrence of the problem. '
-          format: int32
-          example: 503
-      description: Problem as defined in https://tools.ietf.org/html/rfc7807
-    void:
-      title: void
-      type: object
-      description: Void/empty
-    status_info_v2:
-      title: status_info_v2
-      type: object
-      properties:
-        status:
-          type: string
-          description: status text
-    policy_info_v1:
-      title: policy_info_v1
-      type: object
-      properties:
-        service:
-          type: string
-          description: the name of the service owning the policy
-        json:
-          type: object
-          properties: {}
-          description: the configuration of the policy
-        id:
-          type: string
-          description: identity of the policy
-        lastModified:
-          type: string
-          description: timestamp, last modification time
-        type:
-          type: string
-          description: name of the policy type
-        ric:
-          type: string
-          description: identity of the target Near-RT RIC
-    Mono«ResponseEntity«object»»:
-      title: Mono«ResponseEntity«object»»
-      type: object
-    ric_info_v2:
-      title: ric_info_v2
-      type: object
-      properties:
-        ric_id:
-          type: string
-          description: identity of the Near-RT RIC
-        managed_element_ids:
-          type: array
-          description: O1 identities for managed entities
-          items:
-            type: string
-        state:
-          type: string
-          description: "State for the Near-RT RIC, values: \nUNAVAILABLE: The Near-RT\
-            \ RIC is not avialable, information may be inconsistent \nAVAILABLE: The\
-            \ normal state. Policies can be configured. +\nSYNCHRONIZING: The Policy\
-            \ Management Service is synchronizing the view of the Near-RT RIC. Policies\
-            \ cannot be configured. \nCONSISTENCY_CHECK: A consistency check between\
-            \ the Policy Management Service and the Near-RT RIC. Policies cannot be\
-            \ configured."
-          enum:
-          - UNAVAILABLE
-          - AVAILABLE
-          - SYNCHRONIZING
-          - CONSISTENCY_CHECK
-        policytype_ids:
-          type: array
-          description: supported policy types
-          items:
-            type: string
-      description: Information for a Near-RT RIC
-    service_registration_info_v1:
-      title: service_registration_info_v1
-      type: object
-      properties:
-        keepAliveIntervalSeconds:
-          type: integer
-          description: keep alive interval for the service. This is a heartbeat supervision
-            of the service, which in regular intevals must invoke a 'keepAlive' REST
-            call. When a service does not invoke this call within the given time,
-            it is considered unavailble. An unavailable service will be automatically
-            deregistered and its policies will be deleted. Value 0 means no timeout
-            supervision.
-          format: int64
-        callbackUrl:
-          type: string
-          description: callback for notifying of RIC synchronization
-        serviceName:
-          type: string
-    policy_info_list_v2:
-      title: policy_info_list_v2
-      type: object
-      properties:
-        policies:
-          type: array
-          description: List of policy information
-          items:
-            $ref: '#/components/schemas/policy_info_v2'
-      description: List of policy information
-    service_registration_info_v2:
-      title: service_registration_info_v2
-      required:
-      - service_id
-      type: object
-      properties:
-        callback_url:
-          type: string
-          description: callback for notifying of Near-RT RIC state changes
-        service_id:
-          type: string
-          description: identity of the service
-        keep_alive_interval_seconds:
-          type: integer
-          description: keep alive interval for the service. This is a heartbeat supervision
-            of the service, which in regular intevals must invoke a 'keepAlive' REST
-            call. When a service does not invoke this call within the given time,
-            it is considered unavailble. An unavailable service will be automatically
-            deregistered and its policies will be deleted. Value 0 means no timeout
-            supervision.
-          format: int64
-      description: Information for one service
-    ric_info_v1:
-      title: ric_info_v1
-      type: object
-      properties:
-        managedElementIds:
-          type: array
-          description: O1 identities for managed entities
-          items:
-            type: string
-        policyTypes:
-          type: array
-          description: supported policy types
-          items:
-            type: string
-        state:
-          type: string
-          description: state info
-        ricName:
-          type: string
-          description: identity of the Near-RT RIC
-    policy_status_info_v2:
-      title: policy_status_info_v2
-      type: object
-      properties:
-        last_modified:
-          type: string
-          description: timestamp, last modification time
-        status:
-          type: object
-          properties: {}
-          description: the Policy status
-      description: Status for one A1-P Policy
-    service_status_v1:
-      title: service_status_v1
-      type: object
-      properties:
-        keepAliveIntervalSeconds:
-          type: integer
-          description: policy keep alive timeout
-          format: int64
-        callbackUrl:
-          type: string
-          description: callback for notifying of RIC synchronization
-        timeSinceLastActivitySeconds:
-          type: integer
-          description: time since last invocation by the service
-          format: int64
-        serviceName:
-          type: string
-          description: identity of the service
-    service_status_v2:
-      title: service_status_v2
-      type: object
-      properties:
-        callback_url:
-          type: string
-          description: callback for notifying of RIC synchronization
-        service_id:
-          type: string
-          description: identity of the service
-        keep_alive_interval_seconds:
-          type: integer
-          description: policy keep alive timeout
-          format: int64
-        time_since_last_activity_seconds:
-          type: integer
-          description: time since last invocation by the service
-          format: int64
-    policytype_v2:
-      title: policytype_v2
-      type: object
-      properties:
-        policy_schema:
-          type: object
-          properties: {}
-          description: Policy type json scema. The schema is a json object following
-            http://json-schema.org/draft-07/schema
-      description: Policy type
-    ric_info_list_v2:
-      title: ric_info_list_v2
-      type: object
-      properties:
-        rics:
-          type: array
-          description: List of Near-RT RIC information
-          items:
-            $ref: '#/components/schemas/ric_info_v2'
-      description: List of Near-RT RIC information
-    policytype_id_list_v2:
-      title: policytype_id_list_v2
-      type: object
-      properties:
-        policytype_ids:
-          type: array
-          description: Policy type identities
-          items:
-            type: string
-      description: Information about policy types
-    policy_id_list_v2:
-      title: policy_id_list_v2
-      type: object
-      properties:
-        policy_ids:
-          type: array
-          description: Policy identities
-          items:
-            type: string
-      description: A list of policy identities
-    policy_info_v2:
-      title: policy_info_v2
-      required:
-      - policy_data
-      - policy_id
-      - policytype_id
-      - ric_id
-      - service_id
-      type: object
-      properties:
-        ric_id:
-          type: string
-          description: identity of the target Near-RT RIC
-        policy_id:
-          type: string
-          description: identity of the policy
-        transient:
-          type: boolean
-          description: if true, the policy is deleted at RIC restart. If false, its
-            value is maintained by this service until explicitly deleted. Default
-            false.
-        service_id:
-          type: string
-          description: the name of the service owning the policy
-        policy_data:
-          type: object
-          properties: {}
-          description: the configuration of the policy
-        status_notification_uri:
-          type: string
-          description: Callback URI for policy status updates
-        policytype_id:
-          type: string
-          description: identity of the policy type
-      description: Information for one A1-P Policy
-    service_list_v2:
-      title: service_list_v2
-      type: object
-      properties:
-        service_list:
-          type: array
-          description: List of service information
-          items:
-            $ref: '#/components/schemas/service_status_v2'
-      description: List of service information
-    service_callback_info_v2:
-      title: service_callback_info_v2
-      required:
-      - event_type
-      - ric_id
-      type: object
-      properties:
-        ric_id:
-          type: string
-          description: identity of a Near-RT RIC
-        event_type:
-          type: string
-          description: |-
-            values:
-            AVAILABLE: the  Near-RT RIC has become available for A1 Policy management
-          enum:
-          - AVAILABLE
-      description: Information transferred as in Service callbacks (callback_url)
-    Mono«ResponseEntity«string»»:
-      title: Mono«ResponseEntity«string»»
-      type: object
new file mode 120000 (symlink)
index 0000000000000000000000000000000000000000..29be6bdfe1c2730fbf8788bfc03f37b4964a585e
--- /dev/null
@@ -0,0 +1 @@
+../../../a1-policy-management/api/pms-api.yaml
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 7e732e0..0430d6d 100644 (file)
--- a/pom.xml
+++ b/pom.xml
                 <groupId>org.sonarsource.scanner.maven</groupId>
                 <artifactId>sonar-maven-plugin</artifactId>
                 <version>${sonar-maven-plugin.version}</version>
-            </plugin>
-            <plugin>
-                <artifactId>maven-resources-plugin</artifactId>
-                <version>${maven-resources-plugin.version}</version>
-                <executions>
-                    <execution>
-                        <id>copy-resource-one</id>
-                        <phase>install</phase>
-                        <goals>
-                            <goal>copy-resources</goal>
-                        </goals>
-                        <configuration>
-                            <outputDirectory>${basedir}/docs/offeredapis/swagger</outputDirectory>
-                            <resources>
-                                <resource>
-                                    <directory>${basedir}/a1-policy-management/api</directory>
-                                    <includes>
-                                        <include>pms-api.*</include>
-                                    </includes>
-                                </resource>
-                            </resources>
-                        </configuration>
-                    </execution>
-               </executions>
-            </plugin>
+            </plugin>           
         </plugins>
     </build>
 </project>