aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrikBuhr <patrik.buhr@est.tech>2021-01-14 15:31:39 +0100
committerPatrikBuhr <patrik.buhr@est.tech>2021-01-15 12:03:14 +0100
commitbe0ae3e197f5d5032c0766a59050b03e2a4deb99 (patch)
treed5e4977b41c67285434bd10125f9a876c484f460
parent157f8cb05752a6bff2b7b9ad192acba4b6def6c3 (diff)
Added a prefix to the PMS NBI
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>
-rw-r--r--a1-policy-management/api/pms-api.json718
-rw-r--r--a1-policy-management/api/pms-api.yaml693
-rw-r--r--a1-policy-management/src/main/java/org/onap/ccsdk/oran/a1policymanagementservice/controllers/v2/Consts.java2
-rw-r--r--a1-policy-management/src/test/java/org/onap/ccsdk/oran/a1policymanagementservice/controllers/v2/ConfigurationControllerTest.java6
l---------[-rw-r--r--]docs/offeredapis/swagger/pms-api.json1450
l---------[-rw-r--r--]docs/offeredapis/swagger/pms-api.yaml1618
-rw-r--r--pom.xml26
7 files changed, 714 insertions, 3799 deletions
diff --git a/a1-policy-management/api/pms-api.json b/a1-policy-management/api/pms-api.json
index 126eab56..d1823894 100644
--- a/a1-policy-management/api/pms-api.json
+++ b/a1-policy-management/api/pms-api.json
@@ -5,7 +5,7 @@
"summary": "Query policy type names",
"deprecated": false,
"produces": ["*/*"],
- "operationId": "getPolicyTypesUsingGET_1",
+ "operationId": "getPolicyTypesUsingGET",
"responses": {
"200": {
"schema": {
@@ -31,47 +31,66 @@
}],
"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": {
@@ -109,7 +128,7 @@
"summary": "Delete a service",
"deprecated": false,
"produces": ["*/*"],
- "operationId": "deleteServiceUsingDELETE_1",
+ "operationId": "deleteServiceUsingDELETE",
"responses": {
"200": {
"schema": {"type": "string"},
@@ -137,39 +156,186 @@
"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"},
@@ -196,7 +362,7 @@
"summary": "Delete a policy",
"deprecated": false,
"produces": ["*/*"],
- "operationId": "deletePolicyUsingDELETE_1",
+ "operationId": "deletePolicyUsingDELETE",
"responses": {
"200": {"description": "Not used"},
"401": {"description": "Unauthorized"},
@@ -225,7 +391,7 @@
"summary": "Put a policy",
"deprecated": false,
"produces": ["*/*"],
- "operationId": "putPolicyUsingPUT_1",
+ "operationId": "putPolicyUsingPUT",
"responses": {
"200": {"description": "Policy updated"},
"201": {"description": "Policy created"},
@@ -343,62 +509,34 @@
],
"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"
- }
+ "/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"
+ }
},
- "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)"]
- }
- },
+ "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,
@@ -460,7 +598,7 @@
"summary": "Returns a policy status",
"deprecated": false,
"produces": ["*/*"],
- "operationId": "getPolicyStatusUsingGET_1",
+ "operationId": "getPolicyStatusUsingGET",
"responses": {
"200": {
"schema": {"type": "object"},
@@ -483,33 +621,7 @@
}],
"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"],
@@ -537,64 +649,11 @@
}],
"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": {
@@ -668,59 +727,13 @@
}],
"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"},
@@ -748,7 +761,7 @@
"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"},
@@ -808,7 +821,7 @@
"summary": "Heartbeat from a service",
"deprecated": false,
"produces": ["*/*"],
- "operationId": "keepAliveServiceUsingPUT_1",
+ "operationId": "keepAliveServiceUsingPUT",
"responses": {
"200": {
"schema": {"type": "string"},
@@ -830,112 +843,7 @@
"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"],
@@ -961,45 +869,29 @@
}],
"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"},
@@ -1044,7 +936,7 @@
"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"},
@@ -1069,7 +961,115 @@
"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": {
diff --git a/a1-policy-management/api/pms-api.yaml b/a1-policy-management/api/pms-api.yaml
index 8f2a040d..11aad23d 100644
--- a/a1-policy-management/api/pms-api.yaml
+++ b/a1-policy-management/api/pms-api.yaml
@@ -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,10 +298,73 @@ 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:
description: Unauthorized
@@ -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,47 +757,14 @@ 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
@@ -662,82 +793,12 @@ paths:
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
+ operationId: getPolicyIdsUsingGET
parameters:
- name: ric
in: query
@@ -813,57 +874,9 @@ paths:
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:
diff --git a/a1-policy-management/src/main/java/org/onap/ccsdk/oran/a1policymanagementservice/controllers/v2/Consts.java b/a1-policy-management/src/main/java/org/onap/ccsdk/oran/a1policymanagementservice/controllers/v2/Consts.java
index 81021b15..d791ff26 100644
--- a/a1-policy-management/src/main/java/org/onap/ccsdk/oran/a1policymanagementservice/controllers/v2/Consts.java
+++ b/a1-policy-management/src/main/java/org/onap/ccsdk/oran/a1policymanagementservice/controllers/v2/Consts.java
@@ -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";
diff --git a/a1-policy-management/src/test/java/org/onap/ccsdk/oran/a1policymanagementservice/controllers/v2/ConfigurationControllerTest.java b/a1-policy-management/src/test/java/org/onap/ccsdk/oran/a1policymanagementservice/controllers/v2/ConfigurationControllerTest.java
index 376ce76e..482c94fb 100644
--- a/a1-policy-management/src/test/java/org/onap/ccsdk/oran/a1policymanagementservice/controllers/v2/ConfigurationControllerTest.java
+++ b/a1-policy-management/src/test/java/org/onap/ccsdk/oran/a1policymanagementservice/controllers/v2/ConfigurationControllerTest.java
@@ -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");
diff --git a/docs/offeredapis/swagger/pms-api.json b/docs/offeredapis/swagger/pms-api.json
index b1bea446..5812031c 100644..120000
--- a/docs/offeredapis/swagger/pms-api.json
+++ b/docs/offeredapis/swagger/pms-api.json
@@ -1,1449 +1 @@
-{
- "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
+../../../a1-policy-management/api/pms-api.json \ No newline at end of file
diff --git a/docs/offeredapis/swagger/pms-api.yaml b/docs/offeredapis/swagger/pms-api.yaml
index 665c9b65..29be6bdf 100644..120000
--- a/docs/offeredapis/swagger/pms-api.yaml
+++ b/docs/offeredapis/swagger/pms-api.yaml
@@ -1,1617 +1 @@
-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
+../../../a1-policy-management/api/pms-api.yaml \ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 7e732e0b..0430d6d0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -52,31 +52,7 @@
<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>