summaryrefslogtreecommitdiffstats
path: root/a1-policy-management/api
diff options
context:
space:
mode:
authorPatrikBuhr <patrik.buhr@est.tech>2020-08-11 09:24:25 +0200
committerPatrikBuhr <patrik.buhr@est.tech>2020-08-20 09:21:40 +0200
commit2b2091a87d004ccc3cdd7da567a794aac4fe65ca (patch)
treea592211ab0f32b99cc4e575859826dac487db812 /a1-policy-management/api
parent5d0ad5f3d3158357183849ca329ac6999be6281d (diff)
REST Style alignment for A1 Policy Management
Created a structure for support of different NBI APIs. A version 2 is started, which introduces changes initiated by reviews and aligns to https://opensource.zalando.com/restful-api-guidelines/#118 More alignment will be done in later commits. Issue-ID: CCSDK-2498 Change-Id: I810ecce79b5e2462cc77a1c2e7c638fbc6d54774 Signed-off-by: PatrikBuhr <patrik.buhr@est.tech>
Diffstat (limited to 'a1-policy-management/api')
-rw-r--r--a1-policy-management/api/api_generated.yaml1341
1 files changed, 1341 insertions, 0 deletions
diff --git a/a1-policy-management/api/api_generated.yaml b/a1-policy-management/api/api_generated.yaml
new file mode 100644
index 00000000..06bbf334
--- /dev/null
+++ b/a1-policy-management/api/api_generated.yaml
@@ -0,0 +1,1341 @@
+swagger: '2.0'
+info:
+ description: |
+ The O-RAN NonRT-RIC PolicyAgent provides a REST API for management of policices.
+ It provides support for:
+ -Supervision of clients (R-APPs) to eliminate stray policies in case of failure
+ -Consistency monitoring of the SMO view of policies and the actual situation in the NearRT-RICs
+ -Consistency monitoring of NearRT-RIC capabilities (policy types)-Policy configuration.
+ This includes:-One REST API towards all NearRT-RICs in the network
+ -Query functions that can find all policies in a NearRT-RIC, all policies owned by a service (R-APP),
+ all policies of a type etc.
+ -Maps O1 resources (ManagedElement) as defined in O1 to the controlling NearRT-RIC of A1 policices.
+ version: 1.1.0
+ title: A1 Policy management service
+ contact:
+ name: Ericsson Software Technology
+ email: nonrtric@est.tech
+host: 'localhost:8081'
+basePath: /
+tags:
+ - name: A1 Policy Management Version 1.0
+ description: Policy Controller
+ - name: A1 Policy Management Version 2.0 (in progress)
+ description: Policy Controller
+paths:
+ /policies:
+ get:
+ tags:
+ - A1 Policy Management Version 1.0
+ summary: Query policies
+ operationId: getPoliciesUsingGET_1
+ produces:
+ - '*/*'
+ parameters:
+ - name: ric
+ in: query
+ description: The name of the NearRT-RIC to get policies for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ - name: service
+ in: query
+ description: The name of the service to get policies for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ - name: type
+ in: query
+ description: The name of the policy type to get policies for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Policies
+ schema:
+ type: array
+ items:
+ $ref: '#/definitions/policy_info_v1'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: NearRT-RIC or type not found
+ schema:
+ type: string
+ deprecated: false
+ /policy:
+ get:
+ tags:
+ - A1 Policy Management Version 1.0
+ summary: Returns a policy configuration
+ operationId: getPolicyUsingGET_1
+ produces:
+ - '*/*'
+ parameters:
+ - name: id
+ in: query
+ description: The identity of the policy instance.
+ required: true
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Policy found
+ schema:
+ type: object
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Policy is not found
+ deprecated: false
+ put:
+ tags:
+ - A1 Policy Management Version 1.0
+ summary: Put a policy
+ operationId: putPolicyUsingPUT_1
+ consumes:
+ - application/json
+ produces:
+ - '*/*'
+ parameters:
+ - name: id
+ in: query
+ description: The identity of the policy instance.
+ required: true
+ type: string
+ allowEmptyValue: false
+ - in: body
+ name: jsonBody
+ description: jsonBody
+ required: true
+ schema:
+ type: object
+ - name: ric
+ in: query
+ description: The name of the NearRT-RIC where the policy will be created.
+ required: true
+ type: string
+ allowEmptyValue: false
+ - name: service
+ in: query
+ description: The name of the service creating the policy.
+ required: true
+ type: string
+ allowEmptyValue: false
+ - 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 NearRT-RIC.
+ required: false
+ type: boolean
+ default: false
+ allowEmptyValue: false
+ x-example: false
+ - name: type
+ in: query
+ description: The name of the policy type.
+ required: false
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Policy updated
+ '201':
+ description: Policy created
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: NearRT-RIC or policy type is not found
+ schema:
+ type: string
+ '423':
+ description: NearRT-RIC is not operational
+ schema:
+ type: string
+ deprecated: false
+ delete:
+ tags:
+ - A1 Policy Management Version 1.0
+ summary: Delete a policy
+ operationId: deletePolicyUsingDELETE_1
+ produces:
+ - '*/*'
+ parameters:
+ - name: id
+ in: query
+ description: The identity of the policy instance.
+ required: true
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Not used
+ '204':
+ description: Policy deleted
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Policy is not found
+ schema:
+ type: string
+ '423':
+ description: NearRT-RIC is not operational
+ schema:
+ type: string
+ deprecated: false
+ /policy_ids:
+ get:
+ tags:
+ - A1 Policy Management Version 1.0
+ summary: 'Query policies, only IDs returned'
+ operationId: getPolicyIdsUsingGET_1
+ produces:
+ - '*/*'
+ parameters:
+ - name: ric
+ in: query
+ description: The name of the NearRT-RIC to get policies for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ - name: service
+ in: query
+ description: The name of the service to get policies for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ - name: type
+ in: query
+ description: The name of the policy type to get policies for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Policy ids
+ schema:
+ type: array
+ items:
+ type: string
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: NearRT-RIC or type not found
+ schema:
+ type: string
+ deprecated: false
+ /policy_schema:
+ get:
+ tags:
+ - A1 Policy Management Version 1.0
+ summary: Returns one policy type schema definition
+ operationId: getPolicySchemaUsingGET
+ produces:
+ - '*/*'
+ parameters:
+ - name: id
+ in: query
+ description: The identity of the policy type to get the definition for.
+ required: true
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Policy schema
+ schema:
+ type: object
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: The policy type is not found
+ schema:
+ type: string
+ deprecated: false
+ /policy_schemas:
+ get:
+ tags:
+ - A1 Policy Management Version 1.0
+ summary: Returns policy type schema definitions
+ operationId: getPolicySchemasUsingGET_1
+ produces:
+ - '*/*'
+ parameters:
+ - name: ric
+ in: query
+ description: The name of the NearRT-RIC to get the definitions for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Policy schemas
+ schema:
+ type: array
+ items:
+ type: object
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: NearRT-RIC is not found
+ schema:
+ type: string
+ deprecated: false
+ /policy_status:
+ get:
+ tags:
+ - A1 Policy Management Version 1.0
+ summary: Returns a policy status
+ operationId: getPolicyStatusUsingGET_1
+ produces:
+ - '*/*'
+ parameters:
+ - name: id
+ in: query
+ description: The identity of the policy.
+ required: true
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Policy status
+ schema:
+ type: object
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Policy is not found
+ schema:
+ type: string
+ deprecated: false
+ /policy_types:
+ get:
+ tags:
+ - A1 Policy Management Version 1.0
+ summary: Query policy type names
+ operationId: getPolicyTypesUsingGET_1
+ produces:
+ - '*/*'
+ parameters:
+ - name: ric
+ in: query
+ description: The name of the NearRT-RIC to get types for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Policy type names
+ schema:
+ type: array
+ items:
+ type: string
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: NearRT-RIC is not found
+ schema:
+ type: string
+ deprecated: false
+ /ric:
+ get:
+ tags:
+ - A1 Policy Management Version 1.0
+ summary: Returns the name of a RIC managing one Mananged Element
+ operationId: getRicUsingGET
+ produces:
+ - '*/*'
+ parameters:
+ - name: managedElementId
+ in: query
+ description: The identity of the Managed Element
+ required: true
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: NearRT-RIC is found
+ schema:
+ type: string
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: NearRT-RIC is not found
+ schema:
+ type: string
+ deprecated: false
+ /rics:
+ get:
+ tags:
+ - A1 Policy Management Version 1.0
+ summary: Query NearRT-RIC information
+ operationId: getRicsUsingGET
+ produces:
+ - '*/*'
+ parameters:
+ - name: policyType
+ in: query
+ description: The name of the policy type
+ required: false
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: OK
+ schema:
+ type: array
+ items:
+ $ref: '#/definitions/ric_info_v1'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Policy type is not found
+ schema:
+ type: string
+ deprecated: false
+ /service:
+ put:
+ tags:
+ - A1 Policy Management Version 1.0
+ summary: Register a service
+ operationId: putServiceUsingPUT_1
+ consumes:
+ - application/json
+ produces:
+ - '*/*'
+ parameters:
+ - in: body
+ name: registrationInfo
+ description: registrationInfo
+ required: true
+ schema:
+ $ref: '#/definitions/service_registration_info_v1'
+ responses:
+ '200':
+ description: Service updated
+ schema:
+ type: string
+ '201':
+ description: Service created
+ schema:
+ type: string
+ '400':
+ description: The ServiceRegistrationInfo is not accepted
+ schema:
+ type: string
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Not Found
+ deprecated: false
+ /services:
+ get:
+ tags:
+ - A1 Policy Management Version 1.0
+ summary: Returns service information
+ operationId: getServicesUsingGET_1
+ produces:
+ - '*/*'
+ parameters:
+ - name: name
+ in: query
+ description: The name of the service
+ required: false
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: OK
+ schema:
+ type: array
+ items:
+ $ref: '#/definitions/service_status_v1'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Service is not found
+ schema:
+ type: string
+ deprecated: false
+ delete:
+ tags:
+ - A1 Policy Management Version 1.0
+ summary: Delete a service
+ operationId: deleteServiceUsingDELETE_1
+ produces:
+ - '*/*'
+ parameters:
+ - name: name
+ in: query
+ description: The name of the service
+ required: true
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: OK
+ schema:
+ type: string
+ '204':
+ description: Service deleted
+ schema:
+ type: string
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Service not found
+ schema:
+ type: string
+ deprecated: false
+ /services/keepalive:
+ put:
+ tags:
+ - A1 Policy Management Version 1.0
+ summary: Heartbeat from a serice
+ operationId: keepAliveServiceUsingPUT_1
+ consumes:
+ - application/json
+ produces:
+ - '*/*'
+ parameters:
+ - name: name
+ in: query
+ description: The name of the service
+ required: true
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: 'Service supervision timer refreshed, OK'
+ schema:
+ type: string
+ '201':
+ description: Created
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: 'The service is not found, needs re-registration'
+ deprecated: false
+ /status:
+ get:
+ tags:
+ - A1 Policy Management Version 1.0
+ summary: Returns status and statistics of this service
+ operationId: getStatusUsingGET_1
+ produces:
+ - '*/*'
+ responses:
+ '200':
+ description: Service is living
+ schema:
+ type: string
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Not Found
+ deprecated: false
+ /v2/policies:
+ get:
+ tags:
+ - A1 Policy Management Version 2.0 (in progress)
+ summary: Query policies
+ description: 'If several query parameters are defined, the policies matching all conditions are returned'
+ operationId: getPoliciesUsingGET
+ produces:
+ - application/json
+ parameters:
+ - name: policytype_id
+ in: query
+ description: The identity of the policy type to get policies for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ - name: ric_id
+ in: query
+ description: The identity of the NearRT-RIC to get policies for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ - name: service_id
+ in: query
+ description: The identity of the service to get policies for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Policies
+ schema:
+ $ref: '#/definitions/policy_info_list_v2'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: 'NearRT-RIC, policy type or service not found'
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ /v2/policy:
+ get:
+ tags:
+ - A1 Policy Management Version 2.0 (in progress)
+ summary: Returns a policy configuration
+ operationId: getPolicyUsingGET
+ produces:
+ - application/json
+ parameters:
+ - name: policy_id
+ in: query
+ description: The identity of the policy instance.
+ required: true
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Policy found
+ schema:
+ $ref: '#/definitions/json_object'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Policy is not found
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ put:
+ tags:
+ - A1 Policy Management Version 2.0 (in progress)
+ summary: Create or update a policy
+ operationId: putPolicyUsingPUT
+ consumes:
+ - application/json
+ produces:
+ - application/json
+ parameters:
+ - in: body
+ name: jsonBody
+ description: jsonBody
+ required: true
+ schema:
+ type: object
+ - name: policy_id
+ in: query
+ description: The identity of the policy instance.
+ required: true
+ type: string
+ allowEmptyValue: false
+ - name: policytype_id
+ in: query
+ description: The identity of the policy type.
+ required: false
+ type: string
+ allowEmptyValue: false
+ - name: ric_id
+ in: query
+ description: The identity of the NearRT-RIC where the policy will be created.
+ required: true
+ type: string
+ allowEmptyValue: false
+ - name: service_id
+ in: query
+ description: The identity of the service creating the policy.
+ required: true
+ type: string
+ allowEmptyValue: false
+ - name: transient
+ in: query
+ description: If the policy is transient or not (boolean defaulted to false). A policy is transient if it will not be recreated in the NearRT-RIC when it has been lost (for instance due to a restart)
+ required: false
+ type: boolean
+ default: false
+ allowEmptyValue: false
+ x-example: false
+ responses:
+ '200':
+ description: Policy updated
+ '201':
+ description: Policy created
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: NearRT-RIC or policy type is not found
+ schema:
+ $ref: '#/definitions/error_information'
+ '423':
+ description: NearRT-RIC is not operational
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ delete:
+ tags:
+ - A1 Policy Management Version 2.0 (in progress)
+ summary: Delete a policy
+ operationId: deletePolicyUsingDELETE
+ produces:
+ - '*/*'
+ parameters:
+ - name: policy_id
+ in: query
+ description: The identity of the policy instance.
+ required: true
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Not used
+ '204':
+ description: Policy deleted
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Policy is not found
+ schema:
+ $ref: '#/definitions/error_information'
+ '423':
+ description: NearRT-RIC is not operational
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ /v2/policy-ids:
+ get:
+ tags:
+ - A1 Policy Management Version 2.0 (in progress)
+ summary: 'Query policies, only IDs returned'
+ operationId: getPolicyIdsUsingGET
+ produces:
+ - application/json
+ parameters:
+ - name: policytype_id
+ in: query
+ description: The identity of the policy type to get policies for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ - name: ric_id
+ in: query
+ description: The identity of the NearRT-RIC to get policies for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ - name: service_id
+ in: query
+ description: The identity of the service to get policies for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Policy ids
+ schema:
+ $ref: '#/definitions/policy_id_list_v2'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: NearRT-RIC or type not found
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ /v2/policy-schemas:
+ get:
+ tags:
+ - A1 Policy Management Version 2.0 (in progress)
+ summary: Returns policy type schema definitions
+ operationId: getPolicySchemasUsingGET
+ produces:
+ - application/json
+ parameters:
+ - name: policytype_id
+ in: query
+ description: 'The identity of the policy type to get the definition for. When this parameter is given, max one schema will be returned'
+ required: true
+ type: string
+ allowEmptyValue: false
+ - name: ric_id
+ in: query
+ description: The identity of the NearRT-RIC to get the definitions for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Policy schemas
+ schema:
+ $ref: '#/definitions/policy_schema_list_v2'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: NearRT-RIC is not found
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ /v2/policy-status:
+ get:
+ tags:
+ - A1 Policy Management Version 2.0 (in progress)
+ summary: Returns a policy status
+ operationId: getPolicyStatusUsingGET
+ produces:
+ - application/json
+ parameters:
+ - name: policy_id
+ in: query
+ description: The identity of the policy.
+ required: true
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Policy status
+ schema:
+ $ref: '#/definitions/json_object'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Policy is not found
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ /v2/policy-types:
+ get:
+ tags:
+ - A1 Policy Management Version 2.0 (in progress)
+ summary: Query policy type identities
+ operationId: getPolicyTypesUsingGET
+ produces:
+ - application/json
+ parameters:
+ - name: ric_id
+ in: query
+ description: The identity of the NearRT-RIC to get types for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Policy type IDs
+ schema:
+ $ref: '#/definitions/policy_type_id_list_v2'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: NearRT-RIC is not found
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ /v2/ric:
+ get:
+ tags:
+ - A1 Policy Management Version 2.0 (in progress)
+ summary: Returns info for the NearRT-RIC with the given identity or managing one Mananged Element
+ operationId: getRicUsingGET_1
+ produces:
+ - application/json
+ parameters:
+ - name: managed_element_id
+ in: query
+ description: 'The identity of a Managed Element. If given, the NearRT-RIC managing the ME is returned.'
+ required: false
+ type: string
+ allowEmptyValue: false
+ - name: ric_id
+ in: query
+ description: The identity of a NearRT-RIC to get information for.
+ required: false
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: NearRT-RIC is found
+ schema:
+ $ref: '#/definitions/ric_info_v2'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: NearRT-RIC is not found
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ /v2/rics:
+ get:
+ tags:
+ - A1 Policy Management Version 2.0 (in progress)
+ summary: Query NearRT-RIC information
+ operationId: getRicsUsingGET_1
+ produces:
+ - application/json
+ parameters:
+ - name: policytype_id
+ in: query
+ description: 'The identity of a policy type. If given, all NearRT-RICs supporteing the policy type are returned'
+ required: false
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: OK
+ schema:
+ $ref: '#/definitions/ric_info_list_v2'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Policy type is not found
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ /v2/services:
+ get:
+ tags:
+ - A1 Policy Management Version 2.0 (in progress)
+ summary: Returns service information
+ operationId: getServicesUsingGET
+ produces:
+ - application/json
+ parameters:
+ - name: service_id
+ in: query
+ description: The identity of the service
+ required: false
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: OK
+ schema:
+ $ref: '#/definitions/service_list_v2'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Service is not found
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ put:
+ tags:
+ - A1 Policy Management Version 2.0 (in progress)
+ summary: Register a service
+ operationId: putServiceUsingPUT
+ consumes:
+ - application/json
+ produces:
+ - '*/*'
+ parameters:
+ - in: body
+ name: registrationInfo
+ description: registrationInfo
+ required: true
+ schema:
+ $ref: '#/definitions/service_registration_info_v2'
+ responses:
+ '200':
+ description: Service updated
+ schema:
+ type: object
+ '201':
+ description: Service created
+ schema:
+ type: object
+ '400':
+ description: The ServiceRegistrationInfo is not accepted
+ schema:
+ $ref: '#/definitions/error_information'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Not Found
+ deprecated: false
+ delete:
+ tags:
+ - A1 Policy Management Version 2.0 (in progress)
+ summary: Delete a service
+ operationId: deleteServiceUsingDELETE
+ produces:
+ - '*/*'
+ parameters:
+ - name: service_id
+ in: query
+ description: The name of the service
+ required: true
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: Not used
+ '204':
+ description: Service deleted
+ schema:
+ type: object
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Service not found
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ /v2/services/keepalive:
+ put:
+ tags:
+ - A1 Policy Management Version 2.0 (in progress)
+ summary: Heartbeat indicates that the service is running
+ operationId: keepAliveServiceUsingPUT
+ consumes:
+ - application/json
+ produces:
+ - '*/*'
+ parameters:
+ - name: service_id
+ in: query
+ description: The identity of the service
+ required: true
+ type: string
+ allowEmptyValue: false
+ responses:
+ '200':
+ description: 'Service supervision timer refreshed, OK'
+ schema:
+ type: object
+ '201':
+ description: Created
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: 'The service is not found, needs re-registration'
+ schema:
+ $ref: '#/definitions/error_information'
+ deprecated: false
+ /v2/status:
+ get:
+ tags:
+ - A1 Policy Management Version 2.0 (in progress)
+ summary: Returns status and statistics of this service
+ operationId: getStatusUsingGET
+ produces:
+ - application/json
+ responses:
+ '200':
+ description: Service is living
+ schema:
+ $ref: '#/definitions/status_info_v2'
+ '401':
+ description: Unauthorized
+ '403':
+ description: Forbidden
+ '404':
+ description: Not Found
+ deprecated: false
+definitions:
+ Mono«ResponseEntity«object»»:
+ type: object
+ title: Mono«ResponseEntity«object»»
+ Mono«ResponseEntity«string»»:
+ type: object
+ title: Mono«ResponseEntity«string»»
+ error_information:
+ type: object
+ properties:
+ detail:
+ type: string
+ example: Policy type not found
+ description: ' A human-readable explanation specific to this occurrence of the problem.'
+ status:
+ type: integer
+ format: int32
+ example: 503
+ description: 'The HTTP status code generated by the origin server for this occurrence of the problem. '
+ title: error_information
+ description: 'Problem as defined in https://tools.ietf.org/html/rfc7807'
+ json_object:
+ type: object
+ title: json_object
+ description: A JSON object. The schema is defined by the Policy Type
+ policy_id_list_v2:
+ type: object
+ properties:
+ policy_ids:
+ type: array
+ description: Policy identities
+ items:
+ type: string
+ title: policy_id_list_v2
+ description: A list of policy identities
+ policy_info_list_v2:
+ type: object
+ properties:
+ policies:
+ type: array
+ description: List of policy information
+ items:
+ $ref: '#/definitions/policy_info_v2'
+ title: policy_info_list_v2
+ description: List of policy information
+ policy_info_v1:
+ type: object
+ properties:
+ id:
+ type: string
+ description: identity of the policy
+ json:
+ type: object
+ description: the configuration of the policy
+ lastModified:
+ type: string
+ description: 'timestamp, last modification time'
+ ric:
+ type: string
+ description: identity of the target NearRT-RIC
+ service:
+ type: string
+ description: the name of the service owning the policy
+ type:
+ type: string
+ description: name of the policy type
+ title: policy_info_v1
+ policy_info_v2:
+ type: object
+ properties:
+ last_modified:
+ type: string
+ description: 'timestamp, last modification time'
+ policy_data:
+ type: object
+ description: the configuration of the policy
+ policy_id:
+ type: string
+ description: identity of the policy
+ policy_type_id:
+ type: string
+ description: name of the policy type
+ ric_id:
+ type: string
+ description: identity of the target NearRT-RIC
+ service_id:
+ type: string
+ description: the name of the service owning the policy
+ title: policy_info_v2
+ description: Information for one A1-P Policy
+ policy_schema_list_v2:
+ type: object
+ properties:
+ policy_schemas:
+ type: array
+ description: Policy type json schemas
+ items:
+ type: object
+ title: policy_schema_list_v2
+ description: Policy type json schemas
+ policy_type_id_list_v2:
+ type: object
+ properties:
+ policy_type_ids:
+ type: array
+ description: Policy type identities
+ items:
+ type: string
+ title: policy_type_id_list_v2
+ description: Information about policy types
+ ric_info_list_v2:
+ type: object
+ properties:
+ rics:
+ type: array
+ description: List of NearRT-RIC information
+ items:
+ $ref: '#/definitions/ric_info_v2'
+ title: ric_info_list_v2
+ description: List of NearRT-RIC information
+ 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
+ ricName:
+ type: string
+ description: identity of the NearRT-RIC
+ state:
+ type: string
+ description: state info
+ title: ric_info_v1
+ ric_info_v2:
+ type: object
+ properties:
+ managed_element_ids:
+ type: array
+ description: O1 identities for managed entities
+ items:
+ type: string
+ policy_type_ids:
+ type: array
+ description: supported policy types
+ items:
+ type: string
+ ric_id:
+ type: string
+ description: identity of the NearRT-RIC
+ state:
+ type: string
+ description: |-
+ State for the NearRT-RIC, values:
+ UNAVAILABLE: The NearRT-RIC is not avialable, information may be inconsistent
+ AVAILABLE: The normal state. Policies can be configured. +
+ SYNCHRONIZING: The Policy Management Service is synchronizing the view of the NearRT-RIC. Policies cannot be configured.
+ CONSISTENCY_CHECK: A consistency check between the Policy Management Service and the NearRT-RIC. Policies cannot be configured.
+ enum:
+ - UNAVAILABLE
+ - AVAILABLE
+ - SYNCHRONIZING
+ - CONSISTENCY_CHECK
+ title: ric_info_v2
+ description: Information for a NearRT-RIC
+ service_list_v2:
+ type: object
+ properties:
+ service_list:
+ type: array
+ description: List of service information
+ items:
+ $ref: '#/definitions/service_status_v2'
+ title: service_list_v2
+ description: List of service information
+ service_registration_info_v1:
+ type: object
+ properties:
+ callbackUrl:
+ type: string
+ description: callback for notifying of RIC synchronization
+ keepAliveIntervalSeconds:
+ type: integer
+ 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.'
+ serviceName:
+ type: string
+ title: service_registration_info_v1
+ service_registration_info_v2:
+ type: object
+ required:
+ - service_id
+ properties:
+ callback_url:
+ type: string
+ description: callback for notifying of RIC synchronization
+ keep_alive_interval_seconds:
+ type: integer
+ 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.'
+ service_id:
+ type: string
+ description: identity of the service
+ title: service_registration_info_v2
+ description: Information for one service
+ service_status_v1:
+ type: object
+ properties:
+ callbackUrl:
+ type: string
+ description: callback for notifying of RIC synchronization
+ keepAliveIntervalSeconds:
+ type: integer
+ format: int64
+ description: policy keep alive timeout
+ serviceName:
+ type: string
+ description: identity of the service
+ timeSinceLastActivitySeconds:
+ type: integer
+ format: int64
+ description: time since last invocation by the service
+ title: service_status_v1
+ service_status_v2:
+ type: object
+ properties:
+ callback_url:
+ type: string
+ description: callback for notifying of RIC synchronization
+ keep_alive_interval_seconds:
+ type: integer
+ format: int64
+ description: policy keep alive timeout
+ service_id:
+ type: string
+ description: identity of the service
+ time_since_last_activity_seconds:
+ type: integer
+ format: int64
+ description: time since last invocation by the service
+ title: service_status_v2
+ status_info_v2:
+ type: object
+ properties:
+ status:
+ type: string
+ description: status text
+ title: status_info_v2
+ void:
+ type: object
+ title: void
+ description: Void/empty
+