summaryrefslogtreecommitdiffstats
path: root/a1-policy-management/api/pms-api.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'a1-policy-management/api/pms-api.yaml')
-rw-r--r--a1-policy-management/api/pms-api.yaml956
1 files changed, 518 insertions, 438 deletions
diff --git a/a1-policy-management/api/pms-api.yaml b/a1-policy-management/api/pms-api.yaml
index 2c692de2..755df4bd 100644
--- a/a1-policy-management/api/pms-api.yaml
+++ b/a1-policy-management/api/pms-api.yaml
@@ -1,32 +1,32 @@
openapi: 3.0.1
info:
- title: A1 Policy Management Service
- description: <h2>General</h2><p>The O-RAN Non-RT RIC Policy Management Service provides
- a REST API for management of A1 policies. <br/>The main tasks of the service are:</p><ul><li>A1
- Policy creation, modification and deletion.</li><li>Monitoring and maintaining
- consistency of the SMO view of A1 policies and the Near-RT RICs</li><li>Maintaining
- a view of supported Near-RT RIC policy types</li><li>Supervision of using services
- (R-APPs). When a service is unavailable, its policies are removed.</li></ul><h2>APIs
- provided by the service</h2><h3>A1 Policy Management</h3><p>This is an API for
- management of A1 Policies.</p><ul><li>A1 Policy retrieval, creation, modification
- and deletion.</li><li>Retrieval of supported A1 Policy types for a Near-RT RIC</li><li>Retrieval
- of status for existing A1 policies</li></ul><h3>Management of configuration</h3><p>API
- for updating and retrieval of the component configuration. Note that there other
- ways to maintain the configuration.</p><h3>Callbacks</h3><p>These are endpoints
- that are invoked by this service. The callbacks are registered in this service
- at service registration.</p><h3>NearRT-RIC Repository</h3><p>This is an API that
- provides support for looking up a NearRT-RIC. Each A1 policy is targeted for one
- Near-RT RIC.</p><h3>Health Check</h3><p>API used for supervision of the PMS component.</p><h3>Service
- Registry and Supervision</h3><p>API used for registering services that uses PMS.
- Each A1 policy is optionally owned by a service. PMS can supervise each registered
- service by a heart-beat supervision and will automatically remove policies for
- unavailable services. Note that a service does not need to be registered in order
- to create A1 Policies. This is a feature that is optional to use.</p><h3>Spring
- Boot Actuator</h3><p>Provides generic functions used to monitor and manage the
- Spring web application.</p>
+ description: "<h2>General</h2><p>The O-RAN Non-RT RIC Policy Management Service\
+ \ provides a REST API for management of A1 policies. <br/>The main tasks of the\
+ \ service are:</p><ul><li>A1 Policy creation, modification and deletion.</li><li>Monitoring\
+ \ and maintaining consistency of the SMO view of A1 policies and the Near-RT RICs</li><li>Maintaining\
+ \ a view of supported Near-RT RIC policy types</li><li>Supervision of using services\
+ \ (R-APPs). When a service is unavailable, its policies are removed.</li></ul><h2>APIs\
+ \ provided by the service</h2><h3>A1 Policy Management</h3><p>This is an API for\
+ \ management of A1 Policies.</p><ul><li>A1 Policy retrieval, creation, modification\
+ \ and deletion.</li><li>Retrieval of supported A1 Policy types for a Near-RT RIC</li><li>Retrieval\
+ \ of status for existing A1 policies</li></ul><h3>Management of configuration</h3><p>API\
+ \ for updating and retrieval of the component configuration. Note that there other\
+ \ ways to maintain the configuration.</p><h3>Callbacks</h3><p>These are endpoints\
+ \ that are invoked by this service. The callbacks are registered in this service\
+ \ at service registration.</p><h3>NearRT-RIC Repository</h3><p>This is an API\
+ \ that provides support for looking up a NearRT-RIC. Each A1 policy is targeted\
+ \ for one Near-RT RIC.</p><h3>Health Check</h3><p>API used for supervision of\
+ \ the PMS component.</p><h3>Service Registry and Supervision</h3><p>API used for\
+ \ registering services that uses PMS. Each A1 policy is optionally owned by a\
+ \ service. PMS can supervise each registered service by a heart-beat supervision\
+ \ and will automatically remove policies for unavailable services. Note that a\
+ \ service does not need to be registered in order to create A1 Policies. This\
+ \ is a feature that is optional to use.</p><h3>Spring Boot Actuator</h3><p>Provides\
+ \ generic functions used to monitor and manage the Spring web application.</p>"
license:
name: Copyright (C) 2020-2023 Nordix Foundation. Licensed under the Apache License.
url: http://www.apache.org/licenses/LICENSE-2.0
+ title: A1 Policy Management Service
version: 1.1.0
servers:
- url: /
@@ -36,331 +36,328 @@ tags:
- name: NearRT-RIC Repository
- name: Callbacks
- name: Health Check
-- name: Actuator
- description: Monitor and interact
+- description: Monitor and interact
externalDocs:
description: Spring Boot Actuator Web API Documentation
url: https://docs.spring.io/spring-boot/docs/current/actuator-api/html/
+ name: Actuator
- name: Management of configuration
paths:
/a1-policy/v2/policy-instances:
get:
- tags:
- - A1 Policy Management
- 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.
+ 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: getPolicyInstances
parameters:
- - name: policytype_id
+ - description: Select policies with a given type identity.
+ explode: true
in: query
- description: Select policies with a given type identity.
+ name: policytype_id
required: false
- style: form
- explode: true
schema:
type: string
- - name: ric_id
- in: query
- description: Select policies for a given Near-RT RIC identity.
- required: false
style: form
+ - description: Select policies for a given Near-RT RIC identity.
explode: true
- schema:
- type: string
- - name: service_id
in: query
- description: Select policies owned by a given service.
+ name: ric_id
required: false
- style: form
- explode: true
schema:
type: string
- - name: type_name
+ style: form
+ - description: Select policies owned by a given service.
+ explode: true
in: query
- description: Select policies of a given type name (type identity has the format
- <typename_version>)
+ name: service_id
required: false
+ schema:
+ type: string
style: form
+ - description: Select policies of a given type name (type identity has the format
+ <typename_version>)
explode: true
+ in: query
+ name: type_name
+ required: false
schema:
type: string
+ style: form
responses:
- 200:
- description: Policies
+ "200":
content:
application/json:
schema:
$ref: '#/components/schemas/policy_info_list_v2'
- 404:
- description: Near-RT RIC, policy type or service not found
+ description: Policies
+ "404":
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
+ description: "Near-RT RIC, policy type or service not found"
+ summary: Query for A1 policy instances
+ tags:
+ - A1 Policy Management
/actuator/threaddump:
get:
- tags:
- - Actuator
- summary: Actuator web endpoint 'threaddump'
operationId: threaddump_2
responses:
- 200:
- description: OK
+ "200":
content:
'*/*':
schema:
type: object
+ description: OK
+ summary: Actuator web endpoint 'threaddump'
+ tags:
+ - Actuator
/a1-policy/v2/status:
get:
- tags:
- - Health Check
- summary: Returns status and statistics of this service
operationId: getStatus
responses:
- 200:
- description: Service is living
+ "200":
content:
application/json:
schema:
$ref: '#/components/schemas/status_info_v2'
+ description: Service is living
+ summary: Returns status and statistics of this service
+ tags:
+ - Health Check
/actuator/loggers:
get:
- tags:
- - Actuator
- summary: Actuator web endpoint 'loggers'
operationId: loggers
responses:
- 200:
- description: OK
+ "200":
content:
'*/*':
schema:
type: object
- /actuator/health/**:
- get:
+ description: OK
+ summary: Actuator web endpoint 'loggers'
tags:
- Actuator
- summary: Actuator web endpoint 'health-path'
+ /actuator/health/**:
+ get:
operationId: health-path
responses:
- 200:
- description: OK
+ "200":
content:
'*/*':
schema:
type: object
+ description: OK
+ summary: Actuator web endpoint 'health-path'
+ tags:
+ - Actuator
/a1-policy/v2/rics/ric:
get:
- tags:
- - NearRT-RIC Repository
- summary: Returns info for one Near-RT RIC
description: Either a Near-RT RIC identity or a Managed Element identity can
be specified.<br>The intention with Managed Element identity is the ID used
in O1 for accessing the traffical element (such as the ID of CU).
operationId: getRic
parameters:
- - name: managed_element_id
+ - description: "The identity of a Managed Element. If given, the Near-RT RIC\
+ \ managing the ME is returned."
+ explode: true
in: query
- description: The identity of a Managed Element. If given, the Near-RT RIC
- managing the ME is returned.
+ name: managed_element_id
required: false
- style: form
- explode: true
schema:
type: string
- - name: ric_id
- in: query
- description: The identity of a Near-RT RIC to get information for.
- required: false
style: form
+ - description: The identity of a Near-RT RIC to get information for.
explode: true
+ in: query
+ name: ric_id
+ required: false
schema:
type: string
+ style: form
responses:
- 200:
- description: Near-RT RIC is found
+ "200":
content:
application/json:
schema:
$ref: '#/components/schemas/ric_info_v2'
- 404:
- description: Near-RT RIC is not found
+ description: Near-RT RIC is found
+ "404":
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
+ description: Near-RT RIC is not found
+ summary: Returns info for one Near-RT RIC
+ tags:
+ - NearRT-RIC Repository
/actuator/shutdown:
post:
- tags:
- - Actuator
- summary: Actuator web endpoint 'shutdown'
operationId: shutdown
responses:
- 200:
- description: OK
+ "200":
content:
'*/*':
schema:
type: object
+ description: OK
+ summary: Actuator web endpoint 'shutdown'
+ tags:
+ - Actuator
/a1-policy/v2/policy-types:
get:
- tags:
- - A1 Policy Management
- summary: Query policy type identities
operationId: getPolicyTypes
parameters:
- - name: ric_id
+ - description: Select types for the given Near-RT RIC identity.
+ explode: true
in: query
- description: Select types for the given Near-RT RIC identity.
+ name: ric_id
required: false
- style: form
- explode: true
schema:
type: string
- - name: type_name
- in: query
- description: Select types with the given type name (type identity has the
- format <typename_version>)
- required: false
style: form
+ - description: Select types with the given type name (type identity has the
+ format <typename_version>)
explode: true
+ in: query
+ name: type_name
+ required: false
schema:
type: string
- - name: compatible_with_version
- in: query
- description: Select types that are compatible with the given version. This
+ style: form
+ - description: Select types that are compatible with the given version. This
parameter is only applicable in conjunction with type_name. As an example
version 1.9.1 is compatible with 1.0.0 but not the other way around. Matching
types will be returned sorted in ascending order.
- required: false
- style: form
explode: true
+ in: query
+ name: compatible_with_version
+ required: false
schema:
type: string
+ style: form
responses:
- 200:
- description: Policy type IDs
+ "200":
content:
application/json:
schema:
$ref: '#/components/schemas/policytype_id_list_v2'
- 404:
- description: Near-RT RIC is not found
+ description: Policy type IDs
+ "404":
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
- /a1-policy/v2/policies/{policy_id}:
- get:
+ description: Near-RT RIC is not found
+ summary: Query policy type identities
tags:
- A1 Policy Management
- summary: Returns a policy
- operationId: getPolicy
+ /a1-policy/v2/policies/{policy_id}:
+ delete:
+ operationId: deletePolicy
parameters:
- - name: policy_id
+ - explode: false
in: path
+ name: policy_id
required: true
- style: simple
- explode: false
schema:
type: string
+ style: simple
responses:
- 200:
- description: Policy found
+ "200":
content:
- application/json:
+ '*/*':
schema:
- $ref: '#/components/schemas/policy_info_v2'
- 404:
- description: Policy is not found
+ $ref: '#/components/schemas/void'
+ description: Not used
+ "423":
content:
- application/json:
+ '*/*':
schema:
$ref: '#/components/schemas/error_information'
- delete:
+ description: Near-RT RIC is not operational
+ "204":
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/void'
+ description: Policy deleted
+ "404":
+ content:
+ '*/*':
+ schema:
+ $ref: '#/components/schemas/error_information'
+ description: Policy is not found
+ summary: Delete a policy
tags:
- A1 Policy Management
- summary: Delete a policy
- operationId: deletePolicy
+ get:
+ operationId: getPolicy
parameters:
- - name: policy_id
+ - explode: false
in: path
+ name: policy_id
required: true
- style: simple
- explode: false
schema:
type: string
+ style: simple
responses:
- 200:
- description: Not used
+ "200":
content:
- '*/*':
+ application/json:
schema:
- $ref: '#/components/schemas/void'
- 423:
- description: Near-RT RIC is not operational
+ $ref: '#/components/schemas/policy_info_v2'
+ description: Policy found
+ "404":
content:
- '*/*':
+ application/json:
schema:
$ref: '#/components/schemas/error_information'
- 204:
- description: Policy deleted
- content:
- '*/*':
- schema:
- $ref: '#/components/schemas/void'
- 404:
description: Policy is not found
- content:
- '*/*':
- schema:
- $ref: '#/components/schemas/error_information'
+ summary: Returns a policy
+ tags:
+ - A1 Policy Management
/actuator/metrics/{requiredMetricName}:
get:
- tags:
- - Actuator
- summary: Actuator web endpoint 'metrics-requiredMetricName'
operationId: metrics-requiredMetricName
parameters:
- - name: requiredMetricName
+ - explode: false
in: path
+ name: requiredMetricName
required: true
- style: simple
- explode: false
schema:
type: string
+ style: simple
responses:
- 200:
- description: OK
+ "200":
content:
'*/*':
schema:
type: object
+ description: OK
+ summary: Actuator web endpoint 'metrics-requiredMetricName'
+ tags:
+ - Actuator
/a1-policy/v2/configuration:
get:
- tags:
- - Management of configuration
- summary: Returns the contents of the application configuration file
operationId: getConfiguration
responses:
- 200:
- description: Configuration
+ "200":
content:
application/json:
schema:
type: object
- 404:
- description: File is not found or readable
+ description: Configuration
+ "404":
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
- put:
+ description: File is not found or readable
+ summary: Returns the contents of the application configuration file
tags:
- Management of configuration
- summary: Replace the current configuration file with the given configuration
+ put:
operationId: putConfiguration
requestBody:
content:
@@ -369,88 +366,88 @@ paths:
type: object
required: true
responses:
- 200:
- description: Configuration updated
+ "200":
content:
'*/*':
schema:
$ref: '#/components/schemas/void'
- 400:
- description: Invalid configuration provided
+ description: Configuration updated
+ "400":
content:
'*/*':
schema:
$ref: '#/components/schemas/error_information'
- 500:
- description: Something went wrong when replacing the configuration. Try
- again.
+ description: Invalid configuration provided
+ "500":
content:
'*/*':
schema:
$ref: '#/components/schemas/error_information'
+ description: Something went wrong when replacing the configuration. Try
+ again.
+ summary: Replace the current configuration file with the given configuration
+ tags:
+ - Management of configuration
/actuator:
get:
- tags:
- - Actuator
- summary: Actuator root web endpoint
operationId: links
responses:
- 200:
- description: OK
+ "200":
content:
'*/*':
schema:
- type: object
additionalProperties:
- type: object
additionalProperties:
$ref: '#/components/schemas/Link'
- /actuator/loggers/{name}:
- get:
+ type: object
+ type: object
+ description: OK
+ summary: Actuator root web endpoint
tags:
- Actuator
- summary: Actuator web endpoint 'loggers-name'
+ /actuator/loggers/{name}:
+ get:
operationId: loggers-name_2
parameters:
- - name: name
+ - explode: false
in: path
+ name: name
required: true
- style: simple
- explode: false
schema:
type: string
+ style: simple
responses:
- 200:
- description: OK
+ "200":
content:
'*/*':
schema:
type: object
- post:
+ description: OK
+ summary: Actuator web endpoint 'loggers-name'
tags:
- Actuator
- summary: Actuator web endpoint 'loggers-name'
+ post:
operationId: loggers-name
parameters:
- - name: name
+ - explode: false
in: path
+ name: name
required: true
- style: simple
- explode: false
schema:
type: string
+ style: simple
responses:
- 200:
- description: OK
+ "200":
content:
'*/*':
schema:
type: object
+ description: OK
+ summary: Actuator web endpoint 'loggers-name'
+ tags:
+ - Actuator
/a1-policy/v2/services/{service_id}/keepalive:
put:
- tags:
- - Service Registry and Supervision
- summary: Heartbeat indicates that the service is running
description: A registered service should invoke this operation regularly to
indicate that it is still alive. If a registered service fails to invoke this
operation before the end of a timeout period the service will be deregistered
@@ -458,109 +455,109 @@ paths:
when each service is initially registered)
operationId: keepAliveService
parameters:
- - name: service_id
+ - explode: false
in: path
+ name: service_id
required: true
- style: simple
- explode: false
schema:
type: string
+ style: simple
responses:
- 200:
- description: Service supervision timer refreshed, OK
+ "200":
content:
'*/*':
schema:
type: object
- 404:
- description: The service is not found, needs re-registration
+ description: "Service supervision timer refreshed, OK"
+ "404":
content:
'*/*':
schema:
$ref: '#/components/schemas/error_information'
+ description: "The service is not found, needs re-registration"
+ summary: Heartbeat indicates that the service is running
+ tags:
+ - Service Registry and Supervision
/actuator/metrics:
get:
- tags:
- - Actuator
- summary: Actuator web endpoint 'metrics'
operationId: metrics
responses:
- 200:
- description: OK
+ "200":
content:
'*/*':
schema:
type: object
+ description: OK
+ summary: Actuator web endpoint 'metrics'
+ tags:
+ - Actuator
/a1-policy/v2/rics:
get:
- tags:
- - NearRT-RIC Repository
- summary: Query Near-RT RIC information
description: The call returns all Near-RT RICs that supports a given policy
type identity
operationId: getRics
parameters:
- - name: policytype_id
+ - description: "The identity of a policy type. If given, all Near-RT RICs supporting\
+ \ the policy type are returned"
+ explode: true
in: query
- description: The identity of a policy type. If given, all Near-RT RICs supporting
- the policy type are returned
+ name: policytype_id
required: false
- style: form
- explode: true
schema:
type: string
+ style: form
responses:
- 200:
- description: OK
+ "200":
content:
application/json:
schema:
$ref: '#/components/schemas/ric_info_list_v2'
- 404:
- description: Policy type is not found
+ description: OK
+ "404":
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
+ description: Policy type is not found
+ summary: Query Near-RT RIC information
+ tags:
+ - NearRT-RIC Repository
/a1-policy/v2/services:
get:
- tags:
- - Service Registry and Supervision
- summary: Returns service information
description: Either information about a registered service with given identity
or all registered services are returned.
operationId: getServices
parameters:
- - name: service_id
+ - description: The identity of the service
+ explode: true
in: query
- description: The identity of the service
+ name: service_id
required: false
- style: form
- explode: true
schema:
type: string
+ style: form
responses:
- 200:
- description: OK
+ "200":
content:
application/json:
schema:
$ref: '#/components/schemas/service_list_v2'
- 404:
- description: Service is not found
+ description: OK
+ "404":
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
- put:
+ description: Service is not found
+ summary: Returns service information
tags:
- Service Registry and Supervision
- summary: Register a service
- description: Registering a service is needed to:<ul><li>Get callbacks about
- available NearRT RICs.</li><li>Activate supervision of the service. If a service
- is inactive, its policies will automatically be deleted.</li></ul>Policies
- can be created even if the service is not registerred. This is a feature which
- it is optional to use.
+ put:
+ description: "Registering a service is needed to:<ul><li>Get callbacks about\
+ \ available NearRT RICs.</li><li>Activate supervision of the service. If a\
+ \ service is inactive, its policies will automatically be deleted.</li></ul>Policies\
+ \ can be created even if the service is not registerred. This is a feature\
+ \ which it is optional to use."
operationId: putService
requestBody:
content:
@@ -569,163 +566,163 @@ paths:
$ref: '#/components/schemas/service_registration_info_v2'
required: true
responses:
- 200:
- description: Service updated
+ "200":
content:
'*/*':
schema:
type: object
- 201:
- description: Service created
+ description: Service updated
+ "201":
content:
'*/*':
schema:
type: object
- 400:
- description: The ServiceRegistrationInfo is not accepted
+ description: Service created
+ "400":
content:
'*/*':
schema:
$ref: '#/components/schemas/error_information'
+ description: The ServiceRegistrationInfo is not accepted
+ summary: Register a service
+ tags:
+ - Service Registry and Supervision
/actuator/info:
get:
- tags:
- - Actuator
- summary: Actuator web endpoint 'info'
operationId: info
responses:
- 200:
- description: OK
+ "200":
content:
'*/*':
schema:
type: object
+ description: OK
+ summary: Actuator web endpoint 'info'
+ tags:
+ - Actuator
/status:
get:
- tags:
- - Health Check
- summary: Returns status and statistics of this service
operationId: getStatusV1
responses:
- 200:
- description: Service is living
+ "200":
content:
'*/*':
schema:
type: string
+ description: Service is living
+ summary: Returns status and statistics of this service
+ tags:
+ - Health Check
/a1-policy/v2/policy-types/{policytype_id}:
get:
- tags:
- - A1 Policy Management
- summary: Returns a policy type definition
operationId: getPolicyType
parameters:
- - name: policytype_id
+ - explode: false
in: path
+ name: policytype_id
required: true
- style: simple
- explode: false
schema:
type: string
+ style: simple
responses:
- 200:
- description: Policy type
+ "200":
content:
'*/*':
schema:
$ref: '#/components/schemas/policytype_v2'
- 404:
- description: Policy type is not found
+ description: Policy type
+ "404":
content:
'*/*':
schema:
$ref: '#/components/schemas/error_information'
+ description: Policy type is not found
+ summary: Returns a policy type definition
+ tags:
+ - A1 Policy Management
/actuator/logfile:
get:
- tags:
- - Actuator
- summary: Actuator web endpoint 'logfile'
operationId: logfile
responses:
- 200:
- description: OK
+ "200":
content:
'*/*':
schema:
type: object
- /actuator/health:
- get:
+ description: OK
+ summary: Actuator web endpoint 'logfile'
tags:
- Actuator
- summary: Actuator web endpoint 'health'
+ /actuator/health:
+ get:
operationId: health
responses:
- 200:
- description: OK
+ "200":
content:
'*/*':
schema:
type: object
+ description: OK
+ summary: Actuator web endpoint 'health'
+ tags:
+ - Actuator
/a1-policy/v2/policies:
get:
- tags:
- - A1 Policy Management
- 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.
+ 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: getPolicyIds
parameters:
- - name: policytype_id
+ - description: Select policies of a given policy type identity.
+ explode: true
in: query
- description: Select policies of a given policy type identity.
+ name: policytype_id
required: false
- style: form
- explode: true
schema:
type: string
- - name: ric_id
- in: query
- description: Select policies of a given Near-RT RIC identity.
- required: false
style: form
+ - description: Select policies of a given Near-RT RIC identity.
explode: true
- schema:
- type: string
- - name: service_id
in: query
- description: Select policies owned by a given service.
+ name: ric_id
required: false
- style: form
- explode: true
schema:
type: string
- - name: type_name
+ style: form
+ - description: Select policies owned by a given service.
+ explode: true
in: query
- description: Select policies of types with the given type name (type identity
- has the format <typename_version>)
+ name: service_id
required: false
+ schema:
+ type: string
style: form
+ - description: Select policies of types with the given type name (type identity
+ has the format <typename_version>)
explode: true
+ in: query
+ name: type_name
+ required: false
schema:
type: string
+ style: form
responses:
- 200:
- description: Policy identities
+ "200":
content:
application/json:
schema:
$ref: '#/components/schemas/policy_id_list_v2'
- 404:
- description: Near-RT RIC or type not found
+ description: Policy identities
+ "404":
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
- put:
+ description: Near-RT RIC or type not found
+ summary: Query policy identities
tags:
- A1 Policy Management
- summary: Create or update a policy
+ put:
operationId: putPolicy
requestBody:
content:
@@ -734,35 +731,35 @@ paths:
$ref: '#/components/schemas/policy_info_v2'
required: true
responses:
- 200:
- description: Policy updated
+ "200":
content:
application/json:
schema:
$ref: '#/components/schemas/void'
- 201:
- description: Policy created
+ description: Policy updated
+ "201":
content:
application/json:
schema:
$ref: '#/components/schemas/void'
- 423:
- description: Near-RT RIC is not operational
+ description: Policy created
+ "423":
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
- 404:
- description: Near-RT RIC or policy type is not found
+ description: Near-RT RIC is not operational
+ "404":
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
+ description: Near-RT RIC or policy type is not found
+ summary: Create or update a policy
+ tags:
+ - A1 Policy Management
/r-app/near-rt-ric-status:
post:
- tags:
- - Callbacks
- summary: Callback for Near-RT RIC status
description: The URL to this call is registered at Service registration.
operationId: serviceCallback
requestBody:
@@ -772,300 +769,383 @@ paths:
$ref: '#/components/schemas/service_callback_info_v2'
required: true
responses:
- 200:
- description: OK
+ "200":
content:
application/json:
schema:
$ref: '#/components/schemas/void'
+ description: OK
+ summary: Callback for Near-RT RIC status
+ tags:
+ - Callbacks
/a1-policy/v2/services/{service_id}:
delete:
- tags:
- - Service Registry and Supervision
- summary: Unregister a service
operationId: deleteService
parameters:
- - name: service_id
+ - explode: false
in: path
+ name: service_id
required: true
- style: simple
- explode: false
schema:
type: string
+ style: simple
responses:
- 200:
- description: Not used
+ "200":
content:
'*/*':
schema:
$ref: '#/components/schemas/void'
- 204:
- description: Service unregistered
+ description: Not used
+ "204":
content:
'*/*':
schema:
type: object
- 404:
- description: Service not found
+ description: Service unregistered
+ "404":
content:
'*/*':
schema:
$ref: '#/components/schemas/error_information'
+ description: Service not found
+ summary: Unregister a service
+ tags:
+ - Service Registry and Supervision
/actuator/heapdump:
get:
- tags:
- - Actuator
- summary: Actuator web endpoint 'heapdump'
operationId: heapdump
responses:
- 200:
- description: OK
+ "200":
content:
'*/*':
schema:
type: object
+ description: OK
+ summary: Actuator web endpoint 'heapdump'
+ tags:
+ - Actuator
/a1-policy/v2/policies/{policy_id}/status:
get:
- tags:
- - A1 Policy Management
- summary: Returns a policy status
operationId: getPolicyStatus
parameters:
- - name: policy_id
+ - explode: false
in: path
+ name: policy_id
required: true
- style: simple
- explode: false
schema:
type: string
+ style: simple
responses:
- 200:
- description: Policy status
+ "200":
content:
application/json:
schema:
$ref: '#/components/schemas/policy_status_info_v2'
- 404:
- description: Policy is not found
+ description: Policy status
+ "404":
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
+ description: Policy is not found
+ summary: Returns a policy status
+ tags:
+ - A1 Policy Management
components:
schemas:
error_information:
- type: object
+ description: Problem as defined in https://tools.ietf.org/html/rfc7807
properties:
detail:
- type: string
description: ' A human-readable explanation specific to this occurrence
of the problem.'
example: Policy type not found
+ type: string
status:
- type: integer
description: 'The HTTP status code generated by the origin server for this
occurrence of the problem. '
- format: int32
example: 404
- description: Problem as defined in https://tools.ietf.org/html/rfc7807
- void:
+ format: int32
+ type: integer
type: object
+ void:
description: Void/empty
- status_info_v2:
type: object
+ status_info_v2:
+ example:
+ status: status
properties:
status:
- type: string
description: status text
- ric_info_v2:
+ type: string
type: object
+ ric_info_v2:
+ description: Information for a Near-RT RIC
+ example:
+ ric_id: ric_id
+ managed_element_ids:
+ - managed_element_ids
+ - managed_element_ids
+ state: UNAVAILABLE
+ policytype_ids:
+ - policytype_ids
+ - policytype_ids
properties:
ric_id:
- type: string
description: identity of the Near-RT RIC
+ type: string
managed_element_ids:
- type: array
description: O1 identities for managed entities
items:
- type: string
description: O1 identities for managed entities
+ type: string
+ type: array
state:
- type: string
description: Represents the states for a Near-RT RIC
enum:
- UNAVAILABLE
- AVAILABLE
- SYNCHRONIZING
- CONSISTENCY_CHECK
+ type: string
policytype_ids:
- type: array
description: supported policy types
items:
- type: string
description: supported policy types
- description: Information for a Near-RT RIC
- service_registration_info_v2:
- required:
- - service_id
+ type: string
+ type: array
type: object
+ service_registration_info_v2:
+ description: Information for one service
properties:
callback_url:
- type: string
description: callback for notifying of Near-RT RIC state changes
- service_id:
type: string
+ service_id:
description: identity of the service
+ type: string
keep_alive_interval_seconds:
- type: integer
- description: keep alive interval for the service. This is used to enable
- optional heartbeat supervision of the service. If set (> 0) the registered
- service should regularly invoke a 'keepalive' REST call. When a service
- fails to invoke this 'keepalive' call within the configured time, the
- service is considered unavailable. An unavailable service will be automatically
- deregistered and its policies will be deleted. Value 0 means timeout supervision
- is disabled.
+ description: "keep alive interval for the service. This is used to enable\
+ \ optional heartbeat supervision of the service. If set (> 0) the registered\
+ \ service should regularly invoke a 'keepalive' REST call. When a service\
+ \ fails to invoke this 'keepalive' call within the configured time, the\
+ \ service is considered unavailable. An unavailable service will be automatically\
+ \ deregistered and its policies will be deleted. Value 0 means timeout\
+ \ supervision is disabled."
format: int64
- description: Information for one service
- policy_info_list_v2:
+ type: integer
+ required:
+ - service_id
type: object
+ policy_info_list_v2:
+ description: List of policy information
+ example:
+ policies:
+ - ric_id: ric_id
+ policy_id: policy_id
+ transient: false
+ service_id: service_id
+ policy_data: "{}"
+ status_notification_uri: status_notification_uri
+ policytype_id: policytype_id
+ - ric_id: ric_id
+ policy_id: policy_id
+ transient: false
+ service_id: service_id
+ policy_data: "{}"
+ status_notification_uri: status_notification_uri
+ policytype_id: policytype_id
properties:
policies:
- type: array
description: List of policy information
items:
$ref: '#/components/schemas/policy_info_v2'
- description: List of policy information
- policy_status_info_v2:
+ type: array
type: object
+ policy_status_info_v2:
+ description: Status for one A1-P Policy
+ example:
+ last_modified: last_modified
+ status: "{}"
properties:
last_modified:
+ description: "timestamp, last modification time"
type: string
- description: timestamp, last modification time
status:
- type: object
description: the Policy status
- description: Status for one A1-P Policy
- service_status_v2:
+ type: object
type: object
+ service_status_v2:
+ description: List of service information
+ example:
+ callback_url: callback_url
+ service_id: service_id
+ keep_alive_interval_seconds: 0
+ time_since_last_activity_seconds: 6
properties:
callback_url:
- type: string
description: callback for notifying of RIC synchronization
- service_id:
type: string
+ service_id:
description: identity of the service
+ type: string
keep_alive_interval_seconds:
- type: integer
description: policy keep alive timeout
format: int64
- time_since_last_activity_seconds:
type: integer
+ time_since_last_activity_seconds:
description: time since last invocation by the service
format: int64
- description: List of service information
- ric_info_list_v2:
+ type: integer
type: object
+ ric_info_list_v2:
+ description: List of Near-RT RIC information
+ example:
+ rics:
+ - ric_id: ric_id
+ managed_element_ids:
+ - managed_element_ids
+ - managed_element_ids
+ state: UNAVAILABLE
+ policytype_ids:
+ - policytype_ids
+ - policytype_ids
+ - ric_id: ric_id
+ managed_element_ids:
+ - managed_element_ids
+ - managed_element_ids
+ state: UNAVAILABLE
+ policytype_ids:
+ - policytype_ids
+ - policytype_ids
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_v2:
+ type: array
type: object
+ policytype_v2:
+ description: Policy type
+ example:
+ policy_schema: "{}"
properties:
policy_schema:
- type: object
description: Policy type json schema. The schema is a json object following
http://json-schema.org/draft-07/schema
- description: Policy type
- policytype_id_list_v2:
+ type: object
type: object
+ policytype_id_list_v2:
+ description: Information about policy types
+ example:
+ policytype_ids:
+ - policytype_ids
+ - policytype_ids
properties:
policytype_ids:
- type: array
description: Policy type identities
items:
- type: string
description: Policy type identities
- description: Information about policy types
- policy_info_v2:
- required:
- - policy_data
- - policy_id
- - policytype_id
- - ric_id
+ type: string
+ type: array
type: object
+ policy_info_v2:
+ description: Information for one A1-P Policy
+ example:
+ ric_id: ric_id
+ policy_id: policy_id
+ transient: false
+ service_id: service_id
+ policy_data: "{}"
+ status_notification_uri: status_notification_uri
+ policytype_id: policytype_id
properties:
ric_id:
- type: string
description: identity of the target Near-RT RIC
- policy_id:
type: string
+ policy_id:
description: identity of the policy
+ type: string
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.
- example: false
default: false
+ description: "if true, the policy is deleted at RIC restart. If false, its\
+ \ value is maintained by this service until explicitly deleted. Default\
+ \ false."
+ example: false
+ type: boolean
service_id:
- type: string
description: the identity of the service owning the policy. This can be
used to group the policies (it is possible to get all policies associated
to a service). Note that the service does not need to be registerred.
+ type: string
policy_data:
- type: object
description: the configuration of the policy
+ type: object
status_notification_uri:
- type: string
description: Callback URI for policy status updates
- policytype_id:
type: string
+ policytype_id:
description: identity of the policy type
- description: Information for one A1-P Policy
- policy_id_list_v2:
+ type: string
+ required:
+ - policy_data
+ - policy_id
+ - policytype_id
+ - ric_id
type: object
+ policy_id_list_v2:
+ description: A list of policy identities
+ example:
+ policy_ids:
+ - policy_ids
+ - policy_ids
properties:
policy_ids:
- type: array
description: Policy identities
items:
- type: string
description: Policy identities
- description: A list of policy identities
- service_list_v2:
+ type: string
+ type: array
type: object
+ service_list_v2:
+ description: List of service information
+ example:
+ service_list:
+ - callback_url: callback_url
+ service_id: service_id
+ keep_alive_interval_seconds: 0
+ time_since_last_activity_seconds: 6
+ - callback_url: callback_url
+ service_id: service_id
+ keep_alive_interval_seconds: 0
+ time_since_last_activity_seconds: 6
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:
- required:
- - event_type
- - ric_id
+ type: array
type: object
+ service_callback_info_v2:
+ description: Information transferred as in Service callbacks (callback_url)
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
+ event_type:
+ description: "values:\nAVAILABLE: the Near-RT RIC has become available\
+ \ for A1 Policy management"
enum:
- AVAILABLE
- description: Information transferred as in Service callbacks (callback_url)
- Link:
+ type: string
+ required:
+ - event_type
+ - ric_id
type: object
+ Link:
properties:
templated:
type: boolean
href:
type: string
+ type: object