openapi: 3.0.1
info:
title: A1 Policy management service
description:
General
The O-RAN Non-RT RIC Policy Management Service provides
a REST API for management of A1 policices.
The main tasks of the service
are:
- A1 Policy creation, modification and deletion.
- Monitoring
and maintaining consistency of the SMO view of A1 policies and the Near-RT RICs
- Maintaining
a view of supported Near-RT RIC policy types
- Supervision of using services
(R-APPs). When a service is unavailble, its policies are removed.
APIs
provided by the service
A1 Policy Management
This is an API for
management of A1 Policies.
- A1 Policy retrieval, creation, modification
and deletion.
- Retrieval of supported A1 Policy types for a Near-RT RIC
- Retrieval
of status for existing A1 policies
Management of configuration
API
for updating and retrieval of the component configuration. Note that there other
ways to maintain the configuration.
Callbacks
These are endpoints
that are invoked by this service. The callbacks are registerred in this service
at service registration.
NearRT-RIC Repository
This is an API that
provides support for looking up a NearRT-RIC. Each A1 policy is targeted for one
Near-RT RIC.
Health Check
API used for supervision of the PMS component.
Service
Registry and Supervision
API used for registerring services that uses PMS.
Each A1 policy is owned by a service. PMS can supervise each registerred service
and will automatically remove policies for unavailable services.
license:
name: Copyright (C) 2020 Nordix Foundation. Licensed under the Apache License.
url: http://www.apache.org/licenses/LICENSE-2.0
version: 1.1.0
servers:
- url: /
tags:
- name: A1 Policy Management V1.0
description: (deprecated primitves)
- name: Management of configuration
- name: A1 Policy Management
- name: NearRT-RIC Repository
- name: Service Registry and Supervision
- name: Health Check
- name: Callbacks
paths:
/policy_types:
get:
tags:
- A1 Policy Management V1.0
summary: Query policy type identities
operationId: getPolicyTypes
parameters:
- name: ric
in: query
description: The name of the Near-RT RIC to get types for.
required: false
style: form
explode: true
schema:
type: string
responses:
200:
description: Policy type identities
content:
'*/*':
schema:
type: array
items:
type: string
404:
description: Near-RT RIC is not found
content:
'*/*':
schema:
$ref: '#/components/schemas/error_information'
/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.
If
several query parameters are defined, the policies matching all conditions
are returned.
operationId: getPolicyInstances
parameters:
- name: policytype_id
in: query
description: Select policies with a given type identity.
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
explode: true
schema:
type: string
- name: service_id
in: query
description: Select policies owned by a given service.
required: false
style: form
explode: true
schema:
type: string
- name: type_name
in: query
description: Select policies of a given type name (type identity has the format
)
required: false
style: form
explode: true
schema:
type: string
responses:
200:
description: Policies
content:
application/json:
schema:
$ref: '#/components/schemas/policy_info_list_v2'
404:
description: Near-RT RIC, policy type or service not found
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
/a1-policy/v2/status:
get:
tags:
- Health Check
summary: Returns status and statistics of this service
operationId: getStatus_1
responses:
200:
description: Service is living
content:
application/json:
schema:
$ref: '#/components/schemas/status_info_v2'
/services:
get:
tags:
- A1 Policy Management V1.0
summary: Returns service information
operationId: getServices
parameters:
- name: name
in: query
description: The name of the service
required: false
style: form
explode: true
schema:
type: string
responses:
200:
description: OK
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/service_status_v1'
404:
description: Service is not found
content:
'*/*':
schema:
type: string
delete:
tags:
- A1 Policy Management V1.0
summary: Unregister a service
operationId: deleteService
parameters:
- name: name
in: query
description: The name of the service
required: true
style: form
explode: true
schema:
type: string
responses:
204:
description: Service unregistered
content:
'*/*':
schema:
$ref: '#/components/schemas/void'
404:
description: Service not found
content:
'*/*':
schema:
type: string
/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 Mananged Element identity can
be specified.
The intention with Mananged Element identity is the ID used
in O1 for accessing the traffical element (such as the ID of CU).
operationId: getRic_1
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.
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
explode: true
schema:
type: string
responses:
200:
description: Near-RT RIC is found
content:
application/json:
schema:
$ref: '#/components/schemas/ric_info_v2'
404:
description: Near-RT RIC is not found
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
/a1-policy/v2/policy-types:
get:
tags:
- A1 Policy Management
summary: Query policy type identities
operationId: getPolicyTypes_1
parameters:
- name: ric_id
in: query
description: Select types for the given Near-RT RIC identity.
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 )
required: false
style: form
explode: true
schema:
type: string
- name: regexp
in: query
description: Select types with type identity that matches a regular expression.
required: false
style: form
explode: true
schema:
type: string
- name: compatible_with_version
in: query
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.
required: false
style: form
explode: true
schema:
type: string
responses:
200:
description: Policy type IDs
content:
application/json:
schema:
$ref: '#/components/schemas/policytype_id_list_v2'
404:
description: Near-RT RIC is not found
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
/a1-policy/v2/policies/{policy_id}:
get:
tags:
- A1 Policy Management
summary: Returns a policy
operationId: getPolicy_1
parameters:
- name: policy_id
in: path
required: true
style: simple
explode: false
schema:
type: string
responses:
200:
description: Policy found
content:
application/json:
schema:
$ref: '#/components/schemas/policy_info_v2'
404:
description: Policy is not found
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
delete:
tags:
- A1 Policy Management
summary: Delete a policy
operationId: deletePolicy_1
parameters:
- name: policy_id
in: path
required: true
style: simple
explode: false
schema:
type: string
responses:
200:
description: Not used
content:
'*/*':
schema:
$ref: '#/components/schemas/void'
423:
description: Near-RT RIC is not operational
content:
'*/*':
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'
/a1-policy/v2/configuration:
get:
tags:
- Management of configuration
summary: Returns the contents of the configuration file
description: Note that the file contents is not relevant if the Consul is used.
operationId: getConfiguration
responses:
200:
description: Configuration
content:
application/json:
schema:
type: object
404:
description: File is not found or readable
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
put:
tags:
- Management of configuration
summary: Replace the current configuration file with the given configuration
description: Note that the file is ignored if the Consul is used.
operationId: putConfiguration
requestBody:
content:
application/json:
schema:
type: object
required: true
responses:
200:
description: Configuration updated
content:
'*/*':
schema:
$ref: '#/components/schemas/void'
400:
description: Invalid configuration provided
content:
'*/*':
schema:
$ref: '#/components/schemas/error_information'
500:
description: Something went wrong when replacing the configuration. Try
again.
content:
'*/*':
schema:
$ref: '#/components/schemas/error_information'
/policy:
get:
tags:
- A1 Policy Management V1.0
summary: Returns a policy configuration
operationId: getPolicy
parameters:
- name: id
in: query
description: The identity of the policy instance.
required: true
style: form
explode: true
schema:
type: string
responses:
200:
description: Policy found
content:
'*/*':
schema:
type: object
404:
description: Policy is not found
content:
'*/*':
schema:
$ref: '#/components/schemas/error_information'
put:
tags:
- A1 Policy Management V1.0
summary: Put a policy
operationId: putPolicy
parameters:
- name: type
in: query
description: The name of the policy type.
required: false
style: form
explode: true
schema:
type: string
default: ""
- name: id
in: query
description: The identity of the policy instance.
required: true
style: form
explode: true
schema:
type: string
- name: ric
in: query
description: The name of the Near-RT RIC where the policy will be created.
required: true
style: form
explode: true
schema:
type: string
- name: service
in: query
description: The name of the service creating the policy.
required: true
style: form
explode: true
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.
required: false
style: form
explode: true
schema:
type: boolean
default: false
requestBody:
content:
application/json:
schema:
type: object
required: true
responses:
200:
description: Policy updated
content:
'*/*':
schema:
$ref: '#/components/schemas/void'
201:
description: Policy created
content:
'*/*':
schema:
$ref: '#/components/schemas/void'
423:
description: Near-RT RIC is not operational
content:
'*/*':
schema:
type: string
404:
description: Near-RT RIC or policy type is not found
content:
'*/*':
schema:
type: string
delete:
tags:
- A1 Policy Management V1.0
summary: Delete a policy
operationId: deletePolicy
parameters:
- name: id
in: query
description: The identity of the policy instance.
required: true
style: form
explode: true
schema:
type: string
responses:
200:
description: Not used
content:
'*/*':
schema:
$ref: '#/components/schemas/void'
423:
description: Near-RT RIC is not operational
content:
'*/*':
schema:
type: string
204:
description: Policy deleted
content:
'*/*':
schema:
$ref: '#/components/schemas/void'
404:
description: Policy is not found
content:
'*/*':
schema:
type: string
/policies:
get:
tags:
- A1 Policy Management V1.0
summary: Query policies
operationId: getPolicies
parameters:
- name: type
in: query
description: The name of the policy type to get policies for.
required: false
style: form
explode: true
schema:
type: string
- name: ric
in: query
description: The name of the Near-RT RIC to get policies for.
required: false
style: form
explode: true
schema:
type: string
- name: service
in: query
description: The name of the service to get policies for.
required: false
style: form
explode: true
schema:
type: string
responses:
200:
description: Policies
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/policy_info_v1'
404:
description: Near-RT RIC or type not found
content:
'*/*':
schema:
type: string
/a1-policy/v2/services/{service_id}/keepalive:
put:
tags:
- Service Registry and Supervision
summary: Heartbeat indicates that the service is running
description: A registerred service must call this in regular intervals to indicate
that it is in operation. Absence of this call will lead to that teh service
will be deregisterred and all its policies are removed.
operationId: keepAliveService_1
parameters:
- name: service_id
in: path
required: true
style: simple
explode: false
schema:
type: string
responses:
200:
description: Service supervision timer refreshed, OK
content:
'*/*':
schema:
type: object
404:
description: The service is not found, needs re-registration
content:
'*/*':
schema:
$ref: '#/components/schemas/error_information'
/rics:
get:
tags:
- A1 Policy Management V1.0
summary: Query Near-RT RIC information
operationId: getRics
parameters:
- name: policyType
in: query
description: The name of the policy type
required: false
style: form
explode: true
schema:
type: string
responses:
200:
description: OK
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/ric_info_v1'
404:
description: Policy type is not found
content:
'*/*':
schema:
type: string
/policy_schema:
get:
tags:
- A1 Policy Management V1.0
summary: Returns one policy type schema definition
operationId: getPolicySchema
parameters:
- name: id
in: query
description: The identity of the policy type to get the definition for.
required: true
style: form
explode: true
schema:
type: string
responses:
200:
description: Policy schema
content:
'*/*':
schema:
type: object
404:
description: The policy type is not found
content:
'*/*':
schema:
$ref: '#/components/schemas/error_information'
/policy_status:
get:
tags:
- A1 Policy Management V1.0
summary: Returns a policy status
operationId: getPolicyStatus
parameters:
- name: id
in: query
description: The identity of the policy.
required: true
style: form
explode: true
schema:
type: string
responses:
200:
description: Policy status
content:
'*/*':
schema:
type: object
404:
description: Policy is not found
content:
'*/*':
schema:
type: string
/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_1
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
required: false
style: form
explode: true
schema:
type: string
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ric_info_list_v2'
404:
description: Policy type is not found
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
/policy_schemas:
get:
tags:
- A1 Policy Management V1.0
summary: Returns policy type schema definitions
operationId: getPolicySchemas
parameters:
- name: ric
in: query
description: The name of the Near-RT RIC to get the definitions for.
required: false
style: form
explode: true
schema:
type: string
responses:
200:
description: Policy schemas
content:
'*/*':
schema:
type: array
items:
type: object
404:
description: Near-RT RIC is not found
content:
'*/*':
schema:
$ref: '#/components/schemas/error_information'
/policy_ids:
get:
tags:
- A1 Policy Management V1.0
summary: Query policies, only policy identities returned
operationId: getPolicyIds
parameters:
- name: type
in: query
description: The name of the policy type to get policies for.
required: false
style: form
explode: true
schema:
type: string
- name: ric
in: query
description: The name of the Near-RT RIC to get policies for.
required: false
style: form
explode: true
schema:
type: string
- name: service
in: query
description: The name of the service to get policies for.
required: false
style: form
explode: true
schema:
type: string
responses:
200:
description: Policy identitiess
content:
'*/*':
schema:
type: array
items:
type: string
404:
description: Near-RT RIC or type not found
content:
'*/*':
schema:
type: string
/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_1
parameters:
- name: service_id
in: query
description: The identity of the service
required: false
style: form
explode: true
schema:
type: string
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/service_list_v2'
404:
description: Service is not found
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
put:
tags:
- Service Registry and Supervision
summary: Register a service
description: Registering a service is needed to:- Get callbacks.
- Activate
supervision of the service. If a service is inactive, its policies will be
deleted.
operationId: putService_1
requestBody:
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'
/ric:
get:
tags:
- A1 Policy Management V1.0
summary: Returns the name of a RIC managing one Mananged Element
operationId: getRic
parameters:
- name: managedElementId
in: query
description: The identity of the Managed Element
required: true
style: form
explode: true
schema:
type: string
responses:
200:
description: Near-RT RIC is found
content:
'*/*':
schema:
type: string
404:
description: Near-RT RIC is not found
content:
'*/*':
schema:
type: string
/services/keepalive:
put:
tags:
- A1 Policy Management V1.0
summary: Heartbeat from a service
operationId: keepAliveService
parameters:
- name: name
in: query
description: The name of the service
required: true
style: form
explode: true
schema:
type: string
responses:
200:
description: Service supervision timer refreshed, OK
content:
'*/*':
schema:
type: string
404:
description: The service is not found, needs re-registration
content:
'*/*':
schema:
type: string
/status:
get:
tags:
- A1 Policy Management V1.0
summary: Returns status and statistics of this service
operationId: getStatus
responses:
200:
description: Service is living
content:
'*/*':
schema:
type: string
/a1-policy/v2/policy-types/{policytype_id}:
get:
tags:
- A1 Policy Management
summary: Returns a policy type definition
operationId: getPolicyType
parameters:
- name: policytype_id
in: path
required: true
style: simple
explode: false
schema:
type: string
responses:
200:
description: Policy type
content:
'*/*':
schema:
$ref: '#/components/schemas/policytype_v2'
404:
description: Policy type is not found
content:
'*/*':
schema:
$ref: '#/components/schemas/error_information'
/a1-policy/v2/policies:
get:
tags:
- A1 Policy Management
summary: Query policy identities
description: Returns a list of A1 policies matching given search criteria.
If
several query parameters are defined, the policies matching all conditions
are returned.
operationId: getPolicyIds_1
parameters:
- name: policytype_id
in: query
description: Select policies of a given policy type identity.
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
explode: true
schema:
type: string
- name: service_id
in: query
description: Select policies owned by a given service.
required: false
style: form
explode: true
schema:
type: string
- name: type_name
in: query
description: Select policies of types with the given type name (type identity
has the format )
required: false
style: form
explode: true
schema:
type: string
responses:
200:
description: Policy identities
content:
application/json:
schema:
$ref: '#/components/schemas/policy_id_list_v2'
404:
description: Near-RT RIC or type not found
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
put:
tags:
- A1 Policy Management
summary: Create or update a policy
operationId: putPolicy_1
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/policy_info_v2'
required: true
responses:
200:
description: Policy updated
content:
application/json:
schema:
$ref: '#/components/schemas/void'
201:
description: Policy created
content:
application/json:
schema:
$ref: '#/components/schemas/void'
423:
description: Near-RT RIC is not operational
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
404:
description: Near-RT RIC or policy type is not found
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
/r-app/near-rt-ric-status:
post:
tags:
- Callbacks
summary: Callback for Near-RT RIC status
description: The URL to this call is registerred at Service registration.
operationId: serviceCallback
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/service_callback_info_v2'
required: true
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/void'
/service:
put:
tags:
- A1 Policy Management V1.0
summary: Register a service
operationId: putService
requestBody:
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
/a1-policy/v2/services/{service_id}:
delete:
tags:
- Service Registry and Supervision
summary: Unregister a service
operationId: deleteService_1
parameters:
- name: service_id
in: path
required: true
style: simple
explode: false
schema:
type: string
responses:
200:
description: Not used
content:
'*/*':
schema:
$ref: '#/components/schemas/void'
204:
description: Service unregistered
content:
'*/*':
schema:
type: object
404:
description: Service not found
content:
'*/*':
schema:
$ref: '#/components/schemas/error_information'
/a1-policy/v2/policies/{policy_id}/status:
get:
tags:
- A1 Policy Management
summary: Returns a policy status
operationId: getPolicyStatus_1
parameters:
- name: policy_id
in: path
required: true
style: simple
explode: false
schema:
type: string
responses:
200:
description: Policy status
content:
application/json:
schema:
$ref: '#/components/schemas/policy_status_info_v2'
404:
description: Policy is not found
content:
application/json:
schema:
$ref: '#/components/schemas/error_information'
components:
schemas:
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: 404
description: Problem as defined in https://tools.ietf.org/html/rfc7807
void:
type: object
description: Void/empty
status_info_v2:
type: object
properties:
status:
type: string
description: status text
policy_info_v1:
type: object
properties:
service:
type: string
description: the name of the service owning the policy
json:
type: object
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
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
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
description: O1 identities for managed entities
state:
type: string
description: Represents the states for a Near-RT RIC
enum:
- UNAVAILABLE
- AVAILABLE
- SYNCHRONIZING
- CONSISTENCY_CHECK
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: 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
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
ric_info_v1:
type: object
properties:
managedElementIds:
type: array
description: O1 identities for managed entities
items:
type: string
description: O1 identities for managed entities
policyTypes:
type: array
description: supported policy types
items:
type: string
description: supported policy types
state:
type: string
description: state info
ricName:
type: string
description: identity of the Near-RT RIC
service_status_v1:
type: object
properties:
keepAliveIntervalSeconds:
type: integer
description: policy keep alive timeout
format: int64
timeSinceLastActivitySeconds:
type: integer
description: time since last invocation by the service
format: int64
callbackUrl:
type: string
description: callback for notifying of RIC synchronization
serviceName:
type: string
description: identity of the service
policy_status_info_v2:
type: object
properties:
last_modified:
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
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
description: List of service information
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_v2:
type: object
properties:
policy_schema:
type: object
description: Policy type json scema. The schema is a json object following
http://json-schema.org/draft-07/schema
description: Policy type
policytype_id_list_v2:
type: object
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
- 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 identity of the service owning the policy
policy_data:
type: object
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
policy_id_list_v2:
type: object
properties:
policy_ids:
type: array
description: Policy identities
items:
type: string
description: Policy identities
description: A list of policy identities
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:
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)