diff options
author | lapentafd <francesco.lapenta@est.tech> | 2024-08-09 11:35:29 +0100 |
---|---|---|
committer | lapentafd <francesco.lapenta@est.tech> | 2024-08-09 12:41:30 +0100 |
commit | ecd99896ee598c29a228c8acbf2e72f81310a42e (patch) | |
tree | 0f8e839db03f48ea1836361a5e7d9fba7332456a /docs | |
parent | 4a799420ad89fed0c7f09225de51d088ca57c9c3 (diff) |
Set serviceId in v2 policy_info to optional and blank by default - master
Issue-ID: CCSDK-4044
Change-Id: I607062cadf46d4f84b1285c24140105e1e7ad05e
Signed-off-by: lapentafd <francesco.lapenta@est.tech>
Diffstat (limited to 'docs')
-rwxr-xr-x | docs/consumedapis/consumedapis.rst | 4 | ||||
-rw-r--r-- | docs/humaninterfaces/humaninterfaces.rst | 2 | ||||
-rw-r--r-- | docs/offeredapis/openapitoolgen/offeredapis/pms-api/index.html | 1666 | ||||
-rw-r--r-- | docs/offeredapis/swagger/pms-api.json | 3655 | ||||
-rw-r--r-- | docs/offeredapis/swagger/pms-api.yaml | 352 |
5 files changed, 2519 insertions, 3160 deletions
diff --git a/docs/consumedapis/consumedapis.rst b/docs/consumedapis/consumedapis.rst index 4f9fea4e..274dceec 100755 --- a/docs/consumedapis/consumedapis.rst +++ b/docs/consumedapis/consumedapis.rst @@ -18,6 +18,6 @@ The *A1 Interface - Application Protocol Specification (A1-AP)* describes this i The **Montreal** ONAP A1 Policy functions implement the *A1 Policy* (*A1-P*) parts of A1-AP, supporting versions *v1.1*, *v2.0* and *v3.0*. -An opensource implementation of a `near-RT RIC <https://wiki.o-ran-sc.org/pages/viewpage.action?pageId=1179659>`_ is available from the `O-RAN Software Community <https://o-ran-sc.org>`_. It supports a pre-spec version of the A1-AP. The ONAP A1 Policy functions described here also supports this A1 version (*A1-OSC*). +An opensource implementation of a `near-RT RIC <https://lf-o-ran-sc.atlassian.net/wiki/spaces/RICP/overview>`_ is available from the `O-RAN Software Community <https://o-ran-sc.org>`_. It supports a pre-spec version of the A1-AP. The ONAP A1 Policy functions described here also supports this A1 version (*A1-OSC*). -An opensource implementation of an `A1 Simulator <https://wiki.o-ran-sc.org/pages/viewpage.action?pageId=3604819>`_ is also available from the `O-RAN Software Community <https://o-ran-sc.org>`_. It supports all versions of A1-AP. +An opensource implementation of an `A1 Simulator <https://lf-o-ran-sc.atlassian.net/wiki/spaces/RICNR/overview>`_ is also available from the `O-RAN Software Community <https://o-ran-sc.org>`_. It supports all versions of A1-AP. diff --git a/docs/humaninterfaces/humaninterfaces.rst b/docs/humaninterfaces/humaninterfaces.rst index a68962b8..fb8635e3 100644 --- a/docs/humaninterfaces/humaninterfaces.rst +++ b/docs/humaninterfaces/humaninterfaces.rst @@ -7,6 +7,6 @@ Human Interfaces ================ The NON-RT RIC Control Panel in O-RAN-SC can be used to interact with the Policy Management Service. -See `NON-RT RIC Control Panel repo <https://gerrit.o-ran-sc.org/r/admin/repos/portal/nonrtric-controlpanel>`_ from the `O-RAN-SC NONRTRIC Project <https://wiki.o-ran-sc.org/display/RICNR>`_. +See `NON-RT RIC Control Panel repo <https://gerrit.o-ran-sc.org/r/admin/repos/portal/nonrtric-controlpanel>`_ from the `O-RAN-SC NONRTRIC Project <https://lf-o-ran-sc.atlassian.net/wiki/spaces/RICNR/overview>`_. Any "REST Client" application may be used (Postman, ...) to interact with the Policy Management Service application via the :ref:`pms_api` diff --git a/docs/offeredapis/openapitoolgen/offeredapis/pms-api/index.html b/docs/offeredapis/openapitoolgen/offeredapis/pms-api/index.html index e0cbb20b..66934cda 100644 --- a/docs/offeredapis/openapitoolgen/offeredapis/pms-api/index.html +++ b/docs/offeredapis/openapitoolgen/offeredapis/pms-api/index.html @@ -846,307 +846,313 @@ ul.nav-tabs { <script> // Script section to load models into a JS Var var defs = {} - defs["authorization_result"] = { - "required" : [ "result" ], - "type" : "object", - "properties" : { - "result" : { - "type" : "boolean", - "description" : "If true, the access is granted" - } - }, - "description" : "Result of authorization", - "example" : { - "result" : true - } + defs["authorization_result"] = {
+ "required" : [ "result" ],
+ "type" : "object",
+ "properties" : {
+ "result" : {
+ "type" : "boolean",
+ "description" : "If true, the access is granted"
+ }
+ },
+ "description" : "Result of authorization",
+ "example" : {
+ "result" : true
+ }
}; - defs["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" + defs["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"
+ },
+ "title" : {
+ "type" : "string",
+ "description" : "A specific error name",
+ "example" : "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"
}; - defs["input"] = { - "required" : [ "access_type", "auth_token", "policy_type_id" ], - "type" : "object", - "properties" : { - "access_type" : { - "type" : "string", - "description" : "Access type", - "enum" : [ "READ", "WRITE", "DELETE" ] - }, - "auth_token" : { - "type" : "string", - "description" : "Authorization token" - }, - "policy_type_id" : { - "type" : "string", - "description" : "Policy type identifier" - } - }, - "description" : "input" + defs["input"] = {
+ "required" : [ "access_type", "auth_token", "policy_type_id" ],
+ "type" : "object",
+ "properties" : {
+ "access_type" : {
+ "type" : "string",
+ "description" : "Access type",
+ "enum" : [ "READ", "WRITE", "DELETE" ]
+ },
+ "auth_token" : {
+ "type" : "string",
+ "description" : "Authorization token"
+ },
+ "policy_type_id" : {
+ "type" : "string",
+ "description" : "Policy type identifier"
+ }
+ },
+ "description" : "input"
}; - defs["Link"] = { - "type" : "object", - "properties" : { - "templated" : { - "type" : "boolean" - }, - "href" : { - "type" : "string" - } - } + defs["Link"] = {
+ "type" : "object",
+ "properties" : {
+ "templated" : {
+ "type" : "boolean"
+ },
+ "href" : {
+ "type" : "string"
+ }
+ }
}; - defs["policy_authorization"] = { - "required" : [ "input" ], - "type" : "object", - "properties" : { - "input" : { - "$ref" : "#/components/schemas/input" - } - }, - "description" : "Authorization request for A1 policy requests" + defs["policy_authorization"] = {
+ "required" : [ "input" ],
+ "type" : "object",
+ "properties" : {
+ "input" : {
+ "$ref" : "#/components/schemas/input"
+ }
+ },
+ "description" : "Authorization request for A1 policy requests"
}; - defs["policy_id_list"] = { - "type" : "object", - "properties" : { - "policy_ids" : { - "type" : "array", - "description" : "Policy identities", - "items" : { - "type" : "string", - "description" : "Policy identities" - } - } - }, - "description" : "A list of policy identities", - "example" : { - "policy_ids" : [ "policy_ids", "policy_ids" ] - } + defs["policy_id_list"] = {
+ "type" : "object",
+ "properties" : {
+ "policy_ids" : {
+ "type" : "array",
+ "description" : "Policy identities",
+ "items" : {
+ "type" : "string",
+ "description" : "Policy identities"
+ }
+ }
+ },
+ "description" : "A list of policy identities",
+ "example" : {
+ "policy_ids" : [ "policy_ids", "policy_ids" ]
+ }
}; - defs["policy_info"] = { - "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.", - "nullable" : false, - "example" : false, - "default" : false - }, - "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 registered." - }, - "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" + defs["policy_info"] = {
+ "required" : [ "policy_data", "policy_id", "policytype_id", "ric_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.",
+ "nullable" : false,
+ "example" : false,
+ "default" : false
+ },
+ "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 registered.",
+ "default" : ""
+ },
+ "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"
}; - defs["policy_info_list"] = { - "type" : "object", - "properties" : { - "policies" : { - "type" : "array", - "description" : "List of policy information", - "items" : { - "$ref" : "#/components/schemas/policy_info" - } - } - }, - "description" : "List of policy information" + defs["policy_info_list"] = {
+ "type" : "object",
+ "properties" : {
+ "policies" : {
+ "type" : "array",
+ "description" : "List of policy information",
+ "items" : {
+ "$ref" : "#/components/schemas/policy_info"
+ }
+ }
+ },
+ "description" : "List of policy information"
}; - defs["policy_status_info"] = { - "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" + defs["policy_status_info"] = {
+ "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"
}; - defs["policy_type_definition"] = { - "type" : "object", - "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" : "Contains policy type schema definition" + defs["policy_type_definition"] = {
+ "type" : "object",
+ "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" : "Contains policy type schema definition"
}; - defs["policy_type_id_list"] = { - "type" : "object", - "properties" : { - "policytype_ids" : { - "type" : "array", - "description" : "Policy type identities", - "items" : { - "type" : "string", - "description" : "Policy type identities" - } - } - }, - "description" : "Information about policy types" + defs["policy_type_id_list"] = {
+ "type" : "object",
+ "properties" : {
+ "policytype_ids" : {
+ "type" : "array",
+ "description" : "Policy type identities",
+ "items" : {
+ "type" : "string",
+ "description" : "Policy type identities"
+ }
+ }
+ },
+ "description" : "Information about policy types"
}; - defs["ric_info"] = { - "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" + defs["ric_info"] = {
+ "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"
}; - defs["ric_info_list"] = { - "type" : "object", - "properties" : { - "rics" : { - "type" : "array", - "description" : "List of Near-RT RIC information", - "items" : { - "$ref" : "#/components/schemas/ric_info" - } - } - }, - "description" : "List of Near-RT RIC information" + defs["ric_info_list"] = {
+ "type" : "object",
+ "properties" : {
+ "rics" : {
+ "type" : "array",
+ "description" : "List of Near-RT RIC information",
+ "items" : {
+ "$ref" : "#/components/schemas/ric_info"
+ }
+ }
+ },
+ "description" : "List of Near-RT RIC information"
}; - defs["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:\nAVAILABLE: the Near-RT RIC has become available for A1 Policy management", - "enum" : [ "AVAILABLE" ] - } - }, - "description" : "Information transferred as in Service callbacks (callback_url)" + defs["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:\nAVAILABLE: the Near-RT RIC has become available for A1 Policy management",
+ "enum" : [ "AVAILABLE" ]
+ }
+ },
+ "description" : "Information transferred as in Service callbacks (callback_url)"
}; - defs["service_registration_info"] = { - "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 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" + defs["service_registration_info"] = {
+ "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 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"
}; - defs["service_status"] = { - "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" - } - } + defs["service_status"] = {
+ "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"
+ }
+ }
}; - defs["service_status_list"] = { - "type" : "object", - "properties" : { - "service_list" : { - "type" : "array", - "description" : "List of service information", - "items" : { - "$ref" : "#/components/schemas/service_status" - } - } - } + defs["service_status_list"] = {
+ "type" : "object",
+ "properties" : {
+ "service_list" : {
+ "type" : "array",
+ "description" : "List of service information",
+ "items" : {
+ "$ref" : "#/components/schemas/service_status"
+ }
+ }
+ }
}; - defs["status_info"] = { - "type" : "object", - "properties" : { - "status" : { - "type" : "string", - "description" : "status text" - } - } + defs["status_info"] = {
+ "type" : "object",
+ "properties" : {
+ "status" : {
+ "type" : "string",
+ "description" : "status text"
+ }
+ }
}; var errs = {}; @@ -1282,10 +1288,10 @@ ul.nav-tabs { <div id="header"> <div id="api-_"> <h2 id="welcome-to-apidoc">API and SDK Documentation</h2> - <div class="app-desc">Version: 1.2.0</div> + <div class="app-desc">Version: 1.3.0</div> <hr> <div id="app-description" class="app-desc"> - <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 or defined 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>Service 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>Authorization API</h3><p>API used for access control of A1 Policy access. If configured, an external authorization provider is requested to grant access to the A1 Policy type.</p><h3>Spring Boot Actuator</h3><p>Provides generic functions used to monitor and manage the Spring web application.</p> + <h2>General</h2><p>The O-RAN Non-RT RIC Policy Management Service provides a REST API for managemecnt 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 or defined 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>Service 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>Authorization API</h3><p>API used for access control of A1 Policy access. If configured, an external authorization provider is requested to grant access to the A1 Policy type.</p><h3>Spring Boot Actuator</h3><p>Provides generic functions used to monitor and manage the Spring web application.</p> </div> </div> @@ -1302,7 +1308,7 @@ ul.nav-tabs { <div class="pull-right"></div> <div class="clearfix"></div> <p></p> - <p class="marked"></p> + <p class="marked">Deleting the policy using the Policy's Policy ID.</p> <p></p> <br /> <pre class="prettyprint language-html prettyprinted" data-type="delete"><code><span class="pln">/a1-policy/v2/policies/{policy_id}</span></code></pre> @@ -1327,7 +1333,7 @@ ul.nav-tabs { <div class="tab-content"> <div class="tab-pane active" id="examples-A1PolicyManagement-deletePolicy-0-curl"> <pre class="prettyprint"><code class="language-bsh">curl -X DELETE \ - -H "Accept: */*" \ + -H "Accept: */*,application/problem+json" \ "http://localhost/a1-policy/v2/policies/{policy_id}" </code></pre> </div> @@ -1565,7 +1571,7 @@ pub fn main() { <h3 id="examples-A1PolicyManagement-deletePolicy-title-200"></h3> <p id="examples-A1PolicyManagement-deletePolicy-description-200" class="marked"></p> <script> - var responseA1PolicyManagement200_description = `Not used`; + var responseA1PolicyManagement200_description = `OK - Policy deleted`; var responseA1PolicyManagement200_description_break = responseA1PolicyManagement200_description.indexOf('\n'); if (responseA1PolicyManagement200_description_break == -1) { $("#examples-A1PolicyManagement-deletePolicy-title-200").text("Status: 200 - " + responseA1PolicyManagement200_description); @@ -1627,7 +1633,7 @@ pub fn main() { <h3 id="examples-A1PolicyManagement-deletePolicy-title-423"></h3> <p id="examples-A1PolicyManagement-deletePolicy-description-423" class="marked"></p> <script> - var responseA1PolicyManagement423_description = `Near-RT RIC is not operational`; + var responseA1PolicyManagement423_description = `Locked - HTTP Status code which can be used when the state is Locked`; var responseA1PolicyManagement423_description_break = responseA1PolicyManagement423_description.indexOf('\n'); if (responseA1PolicyManagement423_description_break == -1) { $("#examples-A1PolicyManagement-deletePolicy-title-423").text("Status: 423 - " + responseA1PolicyManagement423_description); @@ -1686,130 +1692,6 @@ pub fn main() { <input id='responses-A1PolicyManagement-deletePolicy-423-schema-data' type='hidden' value=''></input> </div> </div> - <h3 id="examples-A1PolicyManagement-deletePolicy-title-204"></h3> - <p id="examples-A1PolicyManagement-deletePolicy-description-204" class="marked"></p> - <script> - var responseA1PolicyManagement204_description = `Policy deleted`; - var responseA1PolicyManagement204_description_break = responseA1PolicyManagement204_description.indexOf('\n'); - if (responseA1PolicyManagement204_description_break == -1) { - $("#examples-A1PolicyManagement-deletePolicy-title-204").text("Status: 204 - " + responseA1PolicyManagement204_description); - } else { - $("#examples-A1PolicyManagement-deletePolicy-title-204").text("Status: 204 - " + responseA1PolicyManagement204_description.substring(0, responseA1PolicyManagement204_description_break)); - $("#examples-A1PolicyManagement-deletePolicy-description-204").html(responseA1PolicyManagement204_description.substring(responseA1PolicyManagement204_description_break)); - } - </script> - - - <ul id="responses-detail-A1PolicyManagement-deletePolicy-204" class="nav nav-tabs nav-tabs-examples" > - <li class="active"> - <a data-toggle="tab" href="#responses-A1PolicyManagement-deletePolicy-204-schema">Schema</a> - </li> - - - - - </ul> - - - <div class="tab-content" id="responses-A1PolicyManagement-deletePolicy-204-wrapper" style='margin-bottom: 10px;'> - <div class="tab-pane active" id="responses-A1PolicyManagement-deletePolicy-204-schema"> - <div id="responses-A1PolicyManagement-deletePolicy-schema-204" class="exampleStyle"> - <script> - $(document).ready(function() { - var schemaWrapper = ; - var schema = findNode('schema',schemaWrapper).schema; - if (!schema) { - schema = schemaWrapper.schema; - } - if (schema.$ref != null) { - schema = defsParser.$refs.get(schema.$ref); - Object.keys(schema.properties).forEach( (item) => { - if (schema.properties[item].$ref != null) { - schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); - } - }); - } else if (schema.items != null && schema.items.$ref != null) { - schema.items = defsParser.$refs.get(schema.items.$ref); - } else { - schemaWrapper.definitions = Object.assign({}, defs); - $RefParser.dereference(schemaWrapper).catch(function(err) { - console.log(err); - }); - } - - var view = new JSONSchemaView(schema, 3); - $('#responses-A1PolicyManagement-deletePolicy-204-schema-data').val(JSON.stringify(schema)); - var result = $('#responses-A1PolicyManagement-deletePolicy-schema-204'); - result.empty(); - result.append(view.render()); - }); - </script> - </div> - <input id='responses-A1PolicyManagement-deletePolicy-204-schema-data' type='hidden' value=''></input> - </div> - </div> - <h3 id="examples-A1PolicyManagement-deletePolicy-title-404"></h3> - <p id="examples-A1PolicyManagement-deletePolicy-description-404" class="marked"></p> - <script> - var responseA1PolicyManagement404_description = `Policy is not found`; - var responseA1PolicyManagement404_description_break = responseA1PolicyManagement404_description.indexOf('\n'); - if (responseA1PolicyManagement404_description_break == -1) { - $("#examples-A1PolicyManagement-deletePolicy-title-404").text("Status: 404 - " + responseA1PolicyManagement404_description); - } else { - $("#examples-A1PolicyManagement-deletePolicy-title-404").text("Status: 404 - " + responseA1PolicyManagement404_description.substring(0, responseA1PolicyManagement404_description_break)); - $("#examples-A1PolicyManagement-deletePolicy-description-404").html(responseA1PolicyManagement404_description.substring(responseA1PolicyManagement404_description_break)); - } - </script> - - - <ul id="responses-detail-A1PolicyManagement-deletePolicy-404" class="nav nav-tabs nav-tabs-examples" > - <li class="active"> - <a data-toggle="tab" href="#responses-A1PolicyManagement-deletePolicy-404-schema">Schema</a> - </li> - - - - - </ul> - - - <div class="tab-content" id="responses-A1PolicyManagement-deletePolicy-404-wrapper" style='margin-bottom: 10px;'> - <div class="tab-pane active" id="responses-A1PolicyManagement-deletePolicy-404-schema"> - <div id="responses-A1PolicyManagement-deletePolicy-schema-404" class="exampleStyle"> - <script> - $(document).ready(function() { - var schemaWrapper = ; - var schema = findNode('schema',schemaWrapper).schema; - if (!schema) { - schema = schemaWrapper.schema; - } - if (schema.$ref != null) { - schema = defsParser.$refs.get(schema.$ref); - Object.keys(schema.properties).forEach( (item) => { - if (schema.properties[item].$ref != null) { - schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); - } - }); - } else if (schema.items != null && schema.items.$ref != null) { - schema.items = defsParser.$refs.get(schema.items.$ref); - } else { - schemaWrapper.definitions = Object.assign({}, defs); - $RefParser.dereference(schemaWrapper).catch(function(err) { - console.log(err); - }); - } - - var view = new JSONSchemaView(schema, 3); - $('#responses-A1PolicyManagement-deletePolicy-404-schema-data').val(JSON.stringify(schema)); - var result = $('#responses-A1PolicyManagement-deletePolicy-schema-404'); - result.empty(); - result.append(view.render()); - }); - </script> - </div> - <input id='responses-A1PolicyManagement-deletePolicy-404-schema-data' type='hidden' value=''></input> - </div> - </div> </article> </div> <hr> @@ -1817,12 +1699,12 @@ pub fn main() { <article id="api-A1PolicyManagement-getPolicy-0" data-group="User" data-name="getPolicy" data-version="0"> <div class="pull-left"> <h1>getPolicy</h1> - <p>Returns a policy</p> + <p></p> </div> <div class="pull-right"></div> <div class="clearfix"></div> <p></p> - <p class="marked"></p> + <p class="marked">Returns a policy</p> <p></p> <br /> <pre class="prettyprint language-html prettyprinted" data-type="get"><code><span class="pln">/a1-policy/v2/policies/{policy_id}</span></code></pre> @@ -1847,7 +1729,7 @@ pub fn main() { <div class="tab-content"> <div class="tab-pane active" id="examples-A1PolicyManagement-getPolicy-0-curl"> <pre class="prettyprint"><code class="language-bsh">curl -X GET \ - -H "Accept: application/json" \ + -H "Accept: application/json,application/problem+json" \ "http://localhost/a1-policy/v2/policies/{policy_id}" </code></pre> </div> @@ -1908,7 +1790,6 @@ public class A1PolicyManagementApiExample { A1PolicyManagementApi *apiInstance = [[A1PolicyManagementApi alloc] init]; String *policyId = policyId_example; // (default to null) -// Returns a policy [apiInstance getPolicyWith:policyId completionHandler: ^(policy_info output, NSError* error) { if (output) { @@ -1961,7 +1842,6 @@ namespace Example var policyId = policyId_example; // String | (default to null) try { - // Returns a policy policy_info result = apiInstance.getPolicy(policyId); Debug.WriteLine(result); } catch (Exception e) { @@ -2020,7 +1900,6 @@ api_instance = openapi_client.A1PolicyManagementApi() policyId = policyId_example # String | (default to null) try: - # Returns a policy api_response = api_instance.get_policy(policyId) pprint(api_response) except ApiException as e: @@ -2085,7 +1964,7 @@ pub fn main() { <h3 id="examples-A1PolicyManagement-getPolicy-title-200"></h3> <p id="examples-A1PolicyManagement-getPolicy-description-200" class="marked"></p> <script> - var responseA1PolicyManagement200_description = `Policy found`; + var responseA1PolicyManagement200_description = `OK - Policy found`; var responseA1PolicyManagement200_description_break = responseA1PolicyManagement200_description.indexOf('\n'); if (responseA1PolicyManagement200_description_break == -1) { $("#examples-A1PolicyManagement-getPolicy-title-200").text("Status: 200 - " + responseA1PolicyManagement200_description); @@ -2147,7 +2026,7 @@ pub fn main() { <h3 id="examples-A1PolicyManagement-getPolicy-title-404"></h3> <p id="examples-A1PolicyManagement-getPolicy-description-404" class="marked"></p> <script> - var responseA1PolicyManagement404_description = `Policy is not found`; + var responseA1PolicyManagement404_description = `Not Found`; var responseA1PolicyManagement404_description_break = responseA1PolicyManagement404_description.indexOf('\n'); if (responseA1PolicyManagement404_description_break == -1) { $("#examples-A1PolicyManagement-getPolicy-title-404").text("Status: 404 - " + responseA1PolicyManagement404_description); @@ -2159,52 +2038,12 @@ pub fn main() { <ul id="responses-detail-A1PolicyManagement-getPolicy-404" class="nav nav-tabs nav-tabs-examples" > - <li class="active"> - <a data-toggle="tab" href="#responses-A1PolicyManagement-getPolicy-404-schema">Schema</a> - </li> - - </ul> <div class="tab-content" id="responses-A1PolicyManagement-getPolicy-404-wrapper" style='margin-bottom: 10px;'> - <div class="tab-pane active" id="responses-A1PolicyManagement-getPolicy-404-schema"> - <div id="responses-A1PolicyManagement-getPolicy-schema-404" class="exampleStyle"> - <script> - $(document).ready(function() { - var schemaWrapper = ; - var schema = findNode('schema',schemaWrapper).schema; - if (!schema) { - schema = schemaWrapper.schema; - } - if (schema.$ref != null) { - schema = defsParser.$refs.get(schema.$ref); - Object.keys(schema.properties).forEach( (item) => { - if (schema.properties[item].$ref != null) { - schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); - } - }); - } else if (schema.items != null && schema.items.$ref != null) { - schema.items = defsParser.$refs.get(schema.items.$ref); - } else { - schemaWrapper.definitions = Object.assign({}, defs); - $RefParser.dereference(schemaWrapper).catch(function(err) { - console.log(err); - }); - } - - var view = new JSONSchemaView(schema, 3); - $('#responses-A1PolicyManagement-getPolicy-404-schema-data').val(JSON.stringify(schema)); - var result = $('#responses-A1PolicyManagement-getPolicy-schema-404'); - result.empty(); - result.append(view.render()); - }); - </script> - </div> - <input id='responses-A1PolicyManagement-getPolicy-404-schema-data' type='hidden' value=''></input> - </div> </div> </article> </div> @@ -2243,7 +2082,7 @@ pub fn main() { <div class="tab-content"> <div class="tab-pane active" id="examples-A1PolicyManagement-getPolicyIds-0-curl"> <pre class="prettyprint"><code class="language-bsh">curl -X GET \ - -H "Accept: application/json" \ + -H "Accept: application/json,application/problem+json" \ "http://localhost/a1-policy/v2/policies?policytype_id=policytypeId_example&ric_id=ricId_example&service_id=serviceId_example&type_name=typeName_example" </code></pre> </div> @@ -2573,7 +2412,7 @@ Select policies of types with the given type name (type identity has the format <h3 id="examples-A1PolicyManagement-getPolicyIds-title-200"></h3> <p id="examples-A1PolicyManagement-getPolicyIds-description-200" class="marked"></p> <script> - var responseA1PolicyManagement200_description = `Policy identities`; + var responseA1PolicyManagement200_description = `OK - Policy identities`; var responseA1PolicyManagement200_description_break = responseA1PolicyManagement200_description.indexOf('\n'); if (responseA1PolicyManagement200_description_break == -1) { $("#examples-A1PolicyManagement-getPolicyIds-title-200").text("Status: 200 - " + responseA1PolicyManagement200_description); @@ -2635,7 +2474,7 @@ Select policies of types with the given type name (type identity has the format <h3 id="examples-A1PolicyManagement-getPolicyIds-title-404"></h3> <p id="examples-A1PolicyManagement-getPolicyIds-description-404" class="marked"></p> <script> - var responseA1PolicyManagement404_description = `Near-RT RIC or type not found`; + var responseA1PolicyManagement404_description = `Not Found`; var responseA1PolicyManagement404_description_break = responseA1PolicyManagement404_description.indexOf('\n'); if (responseA1PolicyManagement404_description_break == -1) { $("#examples-A1PolicyManagement-getPolicyIds-title-404").text("Status: 404 - " + responseA1PolicyManagement404_description); @@ -2647,52 +2486,12 @@ Select policies of types with the given type name (type identity has the format <ul id="responses-detail-A1PolicyManagement-getPolicyIds-404" class="nav nav-tabs nav-tabs-examples" > - <li class="active"> - <a data-toggle="tab" href="#responses-A1PolicyManagement-getPolicyIds-404-schema">Schema</a> - </li> - - </ul> <div class="tab-content" id="responses-A1PolicyManagement-getPolicyIds-404-wrapper" style='margin-bottom: 10px;'> - <div class="tab-pane active" id="responses-A1PolicyManagement-getPolicyIds-404-schema"> - <div id="responses-A1PolicyManagement-getPolicyIds-schema-404" class="exampleStyle"> - <script> - $(document).ready(function() { - var schemaWrapper = ; - var schema = findNode('schema',schemaWrapper).schema; - if (!schema) { - schema = schemaWrapper.schema; - } - if (schema.$ref != null) { - schema = defsParser.$refs.get(schema.$ref); - Object.keys(schema.properties).forEach( (item) => { - if (schema.properties[item].$ref != null) { - schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); - } - }); - } else if (schema.items != null && schema.items.$ref != null) { - schema.items = defsParser.$refs.get(schema.items.$ref); - } else { - schemaWrapper.definitions = Object.assign({}, defs); - $RefParser.dereference(schemaWrapper).catch(function(err) { - console.log(err); - }); - } - - var view = new JSONSchemaView(schema, 3); - $('#responses-A1PolicyManagement-getPolicyIds-404-schema-data').val(JSON.stringify(schema)); - var result = $('#responses-A1PolicyManagement-getPolicyIds-schema-404'); - result.empty(); - result.append(view.render()); - }); - </script> - </div> - <input id='responses-A1PolicyManagement-getPolicyIds-404-schema-data' type='hidden' value=''></input> - </div> </div> </article> </div> @@ -3061,7 +2860,7 @@ Select policies of a given type name (type identity has the format <typename_ <h3 id="examples-A1PolicyManagement-getPolicyInstances-title-200"></h3> <p id="examples-A1PolicyManagement-getPolicyInstances-description-200" class="marked"></p> <script> - var responseA1PolicyManagement200_description = `Policies`; + var responseA1PolicyManagement200_description = `OK - Returns A1 Policies which matches the criteria`; var responseA1PolicyManagement200_description_break = responseA1PolicyManagement200_description.indexOf('\n'); if (responseA1PolicyManagement200_description_break == -1) { $("#examples-A1PolicyManagement-getPolicyInstances-title-200").text("Status: 200 - " + responseA1PolicyManagement200_description); @@ -3123,7 +2922,7 @@ Select policies of a given type name (type identity has the format <typename_ <h3 id="examples-A1PolicyManagement-getPolicyInstances-title-404"></h3> <p id="examples-A1PolicyManagement-getPolicyInstances-description-404" class="marked"></p> <script> - var responseA1PolicyManagement404_description = `Near-RT RIC, policy type or service not found`; + var responseA1PolicyManagement404_description = `Not Found - Near-RT RIC, policy type or service not found`; var responseA1PolicyManagement404_description_break = responseA1PolicyManagement404_description.indexOf('\n'); if (responseA1PolicyManagement404_description_break == -1) { $("#examples-A1PolicyManagement-getPolicyInstances-title-404").text("Status: 404 - " + responseA1PolicyManagement404_description); @@ -3189,12 +2988,12 @@ Select policies of a given type name (type identity has the format <typename_ <article id="api-A1PolicyManagement-getPolicyStatus-0" data-group="User" data-name="getPolicyStatus" data-version="0"> <div class="pull-left"> <h1>getPolicyStatus</h1> - <p>Returns a policy status</p> + <p></p> </div> <div class="pull-right"></div> <div class="clearfix"></div> <p></p> - <p class="marked"></p> + <p class="marked">Returns a policy status</p> <p></p> <br /> <pre class="prettyprint language-html prettyprinted" data-type="get"><code><span class="pln">/a1-policy/v2/policies/{policy_id}/status</span></code></pre> @@ -3219,7 +3018,7 @@ Select policies of a given type name (type identity has the format <typename_ <div class="tab-content"> <div class="tab-pane active" id="examples-A1PolicyManagement-getPolicyStatus-0-curl"> <pre class="prettyprint"><code class="language-bsh">curl -X GET \ - -H "Accept: application/json" \ + -H "Accept: application/json,application/problem+json" \ "http://localhost/a1-policy/v2/policies/{policy_id}/status" </code></pre> </div> @@ -3280,7 +3079,6 @@ public class A1PolicyManagementApiExample { A1PolicyManagementApi *apiInstance = [[A1PolicyManagementApi alloc] init]; String *policyId = policyId_example; // (default to null) -// Returns a policy status [apiInstance getPolicyStatusWith:policyId completionHandler: ^(policy_status_info output, NSError* error) { if (output) { @@ -3333,7 +3131,6 @@ namespace Example var policyId = policyId_example; // String | (default to null) try { - // Returns a policy status policy_status_info result = apiInstance.getPolicyStatus(policyId); Debug.WriteLine(result); } catch (Exception e) { @@ -3392,7 +3189,6 @@ api_instance = openapi_client.A1PolicyManagementApi() policyId = policyId_example # String | (default to null) try: - # Returns a policy status api_response = api_instance.get_policy_status(policyId) pprint(api_response) except ApiException as e: @@ -3457,7 +3253,7 @@ pub fn main() { <h3 id="examples-A1PolicyManagement-getPolicyStatus-title-200"></h3> <p id="examples-A1PolicyManagement-getPolicyStatus-description-200" class="marked"></p> <script> - var responseA1PolicyManagement200_description = `Policy status`; + var responseA1PolicyManagement200_description = `OK - Policy status`; var responseA1PolicyManagement200_description_break = responseA1PolicyManagement200_description.indexOf('\n'); if (responseA1PolicyManagement200_description_break == -1) { $("#examples-A1PolicyManagement-getPolicyStatus-title-200").text("Status: 200 - " + responseA1PolicyManagement200_description); @@ -3519,7 +3315,7 @@ pub fn main() { <h3 id="examples-A1PolicyManagement-getPolicyStatus-title-404"></h3> <p id="examples-A1PolicyManagement-getPolicyStatus-description-404" class="marked"></p> <script> - var responseA1PolicyManagement404_description = `Policy is not found`; + var responseA1PolicyManagement404_description = `Not Found`; var responseA1PolicyManagement404_description_break = responseA1PolicyManagement404_description.indexOf('\n'); if (responseA1PolicyManagement404_description_break == -1) { $("#examples-A1PolicyManagement-getPolicyStatus-title-404").text("Status: 404 - " + responseA1PolicyManagement404_description); @@ -3531,52 +3327,12 @@ pub fn main() { <ul id="responses-detail-A1PolicyManagement-getPolicyStatus-404" class="nav nav-tabs nav-tabs-examples" > - <li class="active"> - <a data-toggle="tab" href="#responses-A1PolicyManagement-getPolicyStatus-404-schema">Schema</a> - </li> - - </ul> <div class="tab-content" id="responses-A1PolicyManagement-getPolicyStatus-404-wrapper" style='margin-bottom: 10px;'> - <div class="tab-pane active" id="responses-A1PolicyManagement-getPolicyStatus-404-schema"> - <div id="responses-A1PolicyManagement-getPolicyStatus-schema-404" class="exampleStyle"> - <script> - $(document).ready(function() { - var schemaWrapper = ; - var schema = findNode('schema',schemaWrapper).schema; - if (!schema) { - schema = schemaWrapper.schema; - } - if (schema.$ref != null) { - schema = defsParser.$refs.get(schema.$ref); - Object.keys(schema.properties).forEach( (item) => { - if (schema.properties[item].$ref != null) { - schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); - } - }); - } else if (schema.items != null && schema.items.$ref != null) { - schema.items = defsParser.$refs.get(schema.items.$ref); - } else { - schemaWrapper.definitions = Object.assign({}, defs); - $RefParser.dereference(schemaWrapper).catch(function(err) { - console.log(err); - }); - } - - var view = new JSONSchemaView(schema, 3); - $('#responses-A1PolicyManagement-getPolicyStatus-404-schema-data').val(JSON.stringify(schema)); - var result = $('#responses-A1PolicyManagement-getPolicyStatus-schema-404'); - result.empty(); - result.append(view.render()); - }); - </script> - </div> - <input id='responses-A1PolicyManagement-getPolicyStatus-404-schema-data' type='hidden' value=''></input> - </div> </div> </article> </div> @@ -3585,12 +3341,12 @@ pub fn main() { <article id="api-A1PolicyManagement-getPolicyTypeDefinition-0" data-group="User" data-name="getPolicyTypeDefinition" data-version="0"> <div class="pull-left"> <h1>getPolicyTypeDefinition</h1> - <p>Returns a policy type definition</p> + <p></p> </div> <div class="pull-right"></div> <div class="clearfix"></div> <p></p> - <p class="marked"></p> + <p class="marked">Returns a policy type definition</p> <p></p> <br /> <pre class="prettyprint language-html prettyprinted" data-type="get"><code><span class="pln">/a1-policy/v2/policy-types/{policytype_id}</span></code></pre> @@ -3615,7 +3371,7 @@ pub fn main() { <div class="tab-content"> <div class="tab-pane active" id="examples-A1PolicyManagement-getPolicyTypeDefinition-0-curl"> <pre class="prettyprint"><code class="language-bsh">curl -X GET \ - -H "Accept: application/json" \ + -H "Accept: application/json,application/problem+json" \ "http://localhost/a1-policy/v2/policy-types/{policytype_id}" </code></pre> </div> @@ -3676,7 +3432,6 @@ public class A1PolicyManagementApiExample { A1PolicyManagementApi *apiInstance = [[A1PolicyManagementApi alloc] init]; String *policytypeId = policytypeId_example; // (default to null) -// Returns a policy type definition [apiInstance getPolicyTypeDefinitionWith:policytypeId completionHandler: ^(policy_type_definition output, NSError* error) { if (output) { @@ -3729,7 +3484,6 @@ namespace Example var policytypeId = policytypeId_example; // String | (default to null) try { - // Returns a policy type definition policy_type_definition result = apiInstance.getPolicyTypeDefinition(policytypeId); Debug.WriteLine(result); } catch (Exception e) { @@ -3788,7 +3542,6 @@ api_instance = openapi_client.A1PolicyManagementApi() policytypeId = policytypeId_example # String | (default to null) try: - # Returns a policy type definition api_response = api_instance.get_policy_type_definition(policytypeId) pprint(api_response) except ApiException as e: @@ -3853,7 +3606,7 @@ pub fn main() { <h3 id="examples-A1PolicyManagement-getPolicyTypeDefinition-title-200"></h3> <p id="examples-A1PolicyManagement-getPolicyTypeDefinition-description-200" class="marked"></p> <script> - var responseA1PolicyManagement200_description = `schema of the given policy type`; + var responseA1PolicyManagement200_description = `OK - schema of the given policy type`; var responseA1PolicyManagement200_description_break = responseA1PolicyManagement200_description.indexOf('\n'); if (responseA1PolicyManagement200_description_break == -1) { $("#examples-A1PolicyManagement-getPolicyTypeDefinition-title-200").text("Status: 200 - " + responseA1PolicyManagement200_description); @@ -3915,7 +3668,7 @@ pub fn main() { <h3 id="examples-A1PolicyManagement-getPolicyTypeDefinition-title-404"></h3> <p id="examples-A1PolicyManagement-getPolicyTypeDefinition-description-404" class="marked"></p> <script> - var responseA1PolicyManagement404_description = `Policy type is not found`; + var responseA1PolicyManagement404_description = `Not Found`; var responseA1PolicyManagement404_description_break = responseA1PolicyManagement404_description.indexOf('\n'); if (responseA1PolicyManagement404_description_break == -1) { $("#examples-A1PolicyManagement-getPolicyTypeDefinition-title-404").text("Status: 404 - " + responseA1PolicyManagement404_description); @@ -3927,52 +3680,12 @@ pub fn main() { <ul id="responses-detail-A1PolicyManagement-getPolicyTypeDefinition-404" class="nav nav-tabs nav-tabs-examples" > - <li class="active"> - <a data-toggle="tab" href="#responses-A1PolicyManagement-getPolicyTypeDefinition-404-schema">Schema</a> - </li> - - </ul> <div class="tab-content" id="responses-A1PolicyManagement-getPolicyTypeDefinition-404-wrapper" style='margin-bottom: 10px;'> - <div class="tab-pane active" id="responses-A1PolicyManagement-getPolicyTypeDefinition-404-schema"> - <div id="responses-A1PolicyManagement-getPolicyTypeDefinition-schema-404" class="exampleStyle"> - <script> - $(document).ready(function() { - var schemaWrapper = ; - var schema = findNode('schema',schemaWrapper).schema; - if (!schema) { - schema = schemaWrapper.schema; - } - if (schema.$ref != null) { - schema = defsParser.$refs.get(schema.$ref); - Object.keys(schema.properties).forEach( (item) => { - if (schema.properties[item].$ref != null) { - schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); - } - }); - } else if (schema.items != null && schema.items.$ref != null) { - schema.items = defsParser.$refs.get(schema.items.$ref); - } else { - schemaWrapper.definitions = Object.assign({}, defs); - $RefParser.dereference(schemaWrapper).catch(function(err) { - console.log(err); - }); - } - - var view = new JSONSchemaView(schema, 3); - $('#responses-A1PolicyManagement-getPolicyTypeDefinition-404-schema-data').val(JSON.stringify(schema)); - var result = $('#responses-A1PolicyManagement-getPolicyTypeDefinition-schema-404'); - result.empty(); - result.append(view.render()); - }); - </script> - </div> - <input id='responses-A1PolicyManagement-getPolicyTypeDefinition-404-schema-data' type='hidden' value=''></input> - </div> </div> </article> </div> @@ -3981,12 +3694,12 @@ pub fn main() { <article id="api-A1PolicyManagement-getPolicyTypes-0" data-group="User" data-name="getPolicyTypes" data-version="0"> <div class="pull-left"> <h1>getPolicyTypes</h1> - <p>Query policy type identities</p> + <p></p> </div> <div class="pull-right"></div> <div class="clearfix"></div> <p></p> - <p class="marked"></p> + <p class="marked">Query policy type identities</p> <p></p> <br /> <pre class="prettyprint language-html prettyprinted" data-type="get"><code><span class="pln">/a1-policy/v2/policy-types</span></code></pre> @@ -4011,7 +3724,7 @@ pub fn main() { <div class="tab-content"> <div class="tab-pane active" id="examples-A1PolicyManagement-getPolicyTypes-0-curl"> <pre class="prettyprint"><code class="language-bsh">curl -X GET \ - -H "Accept: application/json" \ + -H "Accept: application/json,application/problem+json" \ "http://localhost/a1-policy/v2/policy-types?ric_id=ricId_example&type_name=typeName_example&compatible_with_version=compatibleWithVersion_example" </code></pre> </div> @@ -4078,7 +3791,6 @@ String *ricId = ricId_example; // Select types for the given Near-RT RIC identit String *typeName = typeName_example; // Select types with the given type name (type identity has the format <typename_version>) (optional) (default to null) String *compatibleWithVersion = compatibleWithVersion_example; // 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. (optional) (default to null) -// Query policy type identities [apiInstance getPolicyTypesWith:ricId typeName:typeName compatibleWithVersion:compatibleWithVersion @@ -4139,7 +3851,6 @@ namespace Example var compatibleWithVersion = compatibleWithVersion_example; // String | 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. (optional) (default to null) try { - // Query policy type identities policy_type_id_list result = apiInstance.getPolicyTypes(ricId, typeName, compatibleWithVersion); Debug.WriteLine(result); } catch (Exception e) { @@ -4204,7 +3915,6 @@ typeName = typeName_example # String | Select types with the given type name (ty compatibleWithVersion = compatibleWithVersion_example # String | 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. (optional) (default to null) try: - # Query policy type identities api_response = api_instance.get_policy_types(ricId=ricId, typeName=typeName, compatibleWithVersion=compatibleWithVersion) pprint(api_response) except ApiException as e: @@ -4311,7 +4021,7 @@ Select types that are compatible with the given version. This parameter is only <h3 id="examples-A1PolicyManagement-getPolicyTypes-title-200"></h3> <p id="examples-A1PolicyManagement-getPolicyTypes-description-200" class="marked"></p> <script> - var responseA1PolicyManagement200_description = `Policy type IDs`; + var responseA1PolicyManagement200_description = `OK - Policy Type IDs Found`; var responseA1PolicyManagement200_description_break = responseA1PolicyManagement200_description.indexOf('\n'); if (responseA1PolicyManagement200_description_break == -1) { $("#examples-A1PolicyManagement-getPolicyTypes-title-200").text("Status: 200 - " + responseA1PolicyManagement200_description); @@ -4373,7 +4083,7 @@ Select types that are compatible with the given version. This parameter is only <h3 id="examples-A1PolicyManagement-getPolicyTypes-title-404"></h3> <p id="examples-A1PolicyManagement-getPolicyTypes-description-404" class="marked"></p> <script> - var responseA1PolicyManagement404_description = `Near-RT RIC is not found`; + var responseA1PolicyManagement404_description = `Not Found`; var responseA1PolicyManagement404_description_break = responseA1PolicyManagement404_description.indexOf('\n'); if (responseA1PolicyManagement404_description_break == -1) { $("#examples-A1PolicyManagement-getPolicyTypes-title-404").text("Status: 404 - " + responseA1PolicyManagement404_description); @@ -4385,52 +4095,12 @@ Select types that are compatible with the given version. This parameter is only <ul id="responses-detail-A1PolicyManagement-getPolicyTypes-404" class="nav nav-tabs nav-tabs-examples" > - <li class="active"> - <a data-toggle="tab" href="#responses-A1PolicyManagement-getPolicyTypes-404-schema">Schema</a> - </li> - - </ul> <div class="tab-content" id="responses-A1PolicyManagement-getPolicyTypes-404-wrapper" style='margin-bottom: 10px;'> - <div class="tab-pane active" id="responses-A1PolicyManagement-getPolicyTypes-404-schema"> - <div id="responses-A1PolicyManagement-getPolicyTypes-schema-404" class="exampleStyle"> - <script> - $(document).ready(function() { - var schemaWrapper = ; - var schema = findNode('schema',schemaWrapper).schema; - if (!schema) { - schema = schemaWrapper.schema; - } - if (schema.$ref != null) { - schema = defsParser.$refs.get(schema.$ref); - Object.keys(schema.properties).forEach( (item) => { - if (schema.properties[item].$ref != null) { - schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); - } - }); - } else if (schema.items != null && schema.items.$ref != null) { - schema.items = defsParser.$refs.get(schema.items.$ref); - } else { - schemaWrapper.definitions = Object.assign({}, defs); - $RefParser.dereference(schemaWrapper).catch(function(err) { - console.log(err); - }); - } - - var view = new JSONSchemaView(schema, 3); - $('#responses-A1PolicyManagement-getPolicyTypes-404-schema-data').val(JSON.stringify(schema)); - var result = $('#responses-A1PolicyManagement-getPolicyTypes-schema-404'); - result.empty(); - result.append(view.render()); - }); - </script> - </div> - <input id='responses-A1PolicyManagement-getPolicyTypes-404-schema-data' type='hidden' value=''></input> - </div> </div> </article> </div> @@ -4439,12 +4109,12 @@ Select types that are compatible with the given version. This parameter is only <article id="api-A1PolicyManagement-putPolicy-0" data-group="User" data-name="putPolicy" data-version="0"> <div class="pull-left"> <h1>putPolicy</h1> - <p>Create or update a policy</p> + <p></p> </div> <div class="pull-right"></div> <div class="clearfix"></div> <p></p> - <p class="marked"></p> + <p class="marked">Create or update a policy</p> <p></p> <br /> <pre class="prettyprint language-html prettyprinted" data-type="put"><code><span class="pln">/a1-policy/v2/policies</span></code></pre> @@ -4469,7 +4139,7 @@ Select types that are compatible with the given version. This parameter is only <div class="tab-content"> <div class="tab-pane active" id="examples-A1PolicyManagement-putPolicy-0-curl"> <pre class="prettyprint"><code class="language-bsh">curl -X PUT \ - -H "Accept: application/json" \ + -H "Accept: application/json,application/problem+json" \ -H "Content-Type: application/json" \ "http://localhost/a1-policy/v2/policies" \ -d '' @@ -4532,7 +4202,6 @@ public class A1PolicyManagementApiExample { A1PolicyManagementApi *apiInstance = [[A1PolicyManagementApi alloc] init]; PolicyInfo *policyInfo = ; // -// Create or update a policy [apiInstance putPolicyWith:policyInfo completionHandler: ^(Object output, NSError* error) { if (output) { @@ -4585,7 +4254,6 @@ namespace Example var policyInfo = new PolicyInfo(); // PolicyInfo | try { - // Create or update a policy Object result = apiInstance.putPolicy(policyInfo); Debug.WriteLine(result); } catch (Exception e) { @@ -4644,7 +4312,6 @@ api_instance = openapi_client.A1PolicyManagementApi() policyInfo = # PolicyInfo | try: - # Create or update a policy api_response = api_instance.put_policy(policyInfo) pprint(api_response) except ApiException as e: @@ -4686,15 +4353,15 @@ pub fn main() { <p class="marked"></p> <script> $(document).ready(function() { - var schemaWrapper = { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/policy_info" - } - } - }, - "required" : true + var schemaWrapper = {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/policy_info"
+ }
+ }
+ },
+ "required" : true
}; var schema = findNode('schema',schemaWrapper).schema; @@ -4728,7 +4395,7 @@ $(document).ready(function() { <h3 id="examples-A1PolicyManagement-putPolicy-title-200"></h3> <p id="examples-A1PolicyManagement-putPolicy-description-200" class="marked"></p> <script> - var responseA1PolicyManagement200_description = `Policy updated`; + var responseA1PolicyManagement200_description = `OK - Policy updated`; var responseA1PolicyManagement200_description_break = responseA1PolicyManagement200_description.indexOf('\n'); if (responseA1PolicyManagement200_description_break == -1) { $("#examples-A1PolicyManagement-putPolicy-title-200").text("Status: 200 - " + responseA1PolicyManagement200_description); @@ -4790,7 +4457,7 @@ $(document).ready(function() { <h3 id="examples-A1PolicyManagement-putPolicy-title-201"></h3> <p id="examples-A1PolicyManagement-putPolicy-description-201" class="marked"></p> <script> - var responseA1PolicyManagement201_description = `Policy created`; + var responseA1PolicyManagement201_description = `Created - Policy created`; var responseA1PolicyManagement201_description_break = responseA1PolicyManagement201_description.indexOf('\n'); if (responseA1PolicyManagement201_description_break == -1) { $("#examples-A1PolicyManagement-putPolicy-title-201").text("Status: 201 - " + responseA1PolicyManagement201_description); @@ -4852,7 +4519,7 @@ $(document).ready(function() { <h3 id="examples-A1PolicyManagement-putPolicy-title-423"></h3> <p id="examples-A1PolicyManagement-putPolicy-description-423" class="marked"></p> <script> - var responseA1PolicyManagement423_description = `Near-RT RIC is not operational`; + var responseA1PolicyManagement423_description = `Locked - HTTP Status code which can be used when the state is Locked`; var responseA1PolicyManagement423_description_break = responseA1PolicyManagement423_description.indexOf('\n'); if (responseA1PolicyManagement423_description_break == -1) { $("#examples-A1PolicyManagement-putPolicy-title-423").text("Status: 423 - " + responseA1PolicyManagement423_description); @@ -4911,68 +4578,6 @@ $(document).ready(function() { <input id='responses-A1PolicyManagement-putPolicy-423-schema-data' type='hidden' value=''></input> </div> </div> - <h3 id="examples-A1PolicyManagement-putPolicy-title-404"></h3> - <p id="examples-A1PolicyManagement-putPolicy-description-404" class="marked"></p> - <script> - var responseA1PolicyManagement404_description = `Near-RT RIC or policy type is not found`; - var responseA1PolicyManagement404_description_break = responseA1PolicyManagement404_description.indexOf('\n'); - if (responseA1PolicyManagement404_description_break == -1) { - $("#examples-A1PolicyManagement-putPolicy-title-404").text("Status: 404 - " + responseA1PolicyManagement404_description); - } else { - $("#examples-A1PolicyManagement-putPolicy-title-404").text("Status: 404 - " + responseA1PolicyManagement404_description.substring(0, responseA1PolicyManagement404_description_break)); - $("#examples-A1PolicyManagement-putPolicy-description-404").html(responseA1PolicyManagement404_description.substring(responseA1PolicyManagement404_description_break)); - } - </script> - - - <ul id="responses-detail-A1PolicyManagement-putPolicy-404" class="nav nav-tabs nav-tabs-examples" > - <li class="active"> - <a data-toggle="tab" href="#responses-A1PolicyManagement-putPolicy-404-schema">Schema</a> - </li> - - - - - </ul> - - - <div class="tab-content" id="responses-A1PolicyManagement-putPolicy-404-wrapper" style='margin-bottom: 10px;'> - <div class="tab-pane active" id="responses-A1PolicyManagement-putPolicy-404-schema"> - <div id="responses-A1PolicyManagement-putPolicy-schema-404" class="exampleStyle"> - <script> - $(document).ready(function() { - var schemaWrapper = ; - var schema = findNode('schema',schemaWrapper).schema; - if (!schema) { - schema = schemaWrapper.schema; - } - if (schema.$ref != null) { - schema = defsParser.$refs.get(schema.$ref); - Object.keys(schema.properties).forEach( (item) => { - if (schema.properties[item].$ref != null) { - schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); - } - }); - } else if (schema.items != null && schema.items.$ref != null) { - schema.items = defsParser.$refs.get(schema.items.$ref); - } else { - schemaWrapper.definitions = Object.assign({}, defs); - $RefParser.dereference(schemaWrapper).catch(function(err) { - console.log(err); - }); - } - - var view = new JSONSchemaView(schema, 3); - $('#responses-A1PolicyManagement-putPolicy-404-schema-data').val(JSON.stringify(schema)); - var result = $('#responses-A1PolicyManagement-putPolicy-schema-404'); - result.empty(); - result.append(view.render()); - }); - </script> - </div> - <input id='responses-A1PolicyManagement-putPolicy-404-schema-data' type='hidden' value=''></input> - </div> - </div> </article> </div> <hr> @@ -7682,15 +7287,15 @@ pub fn main() { <p class="marked"></p> <script> $(document).ready(function() { - var schemaWrapper = { - "content" : { - "application/json" : { - "schema" : { - "type" : "string", - "enum" : [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "FATAL", "OFF" ] - } - } - } + var schemaWrapper = {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "string",
+ "enum" : [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "FATAL", "OFF" ]
+ }
+ }
+ }
}; var schema = findNode('schema',schemaWrapper).schema; @@ -9048,7 +8653,7 @@ pub fn main() { <div class="tab-content"> <div class="tab-pane active" id="examples-AuthorizationAPI-performAccessControl-0-curl"> <pre class="prettyprint"><code class="language-bsh">curl -X POST \ - -H "Accept: application/json" \ + -H "Accept: application/json,application/problem+json" \ -H "Content-Type: application/json" \ "http://localhost/example-authz-check" \ -d '' @@ -9265,15 +8870,15 @@ pub fn main() { <p class="marked"></p> <script> $(document).ready(function() { - var schemaWrapper = { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/policy_authorization" - } - } - }, - "required" : true + var schemaWrapper = {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/policy_authorization"
+ }
+ }
+ },
+ "required" : true
}; var schema = findNode('schema',schemaWrapper).schema; @@ -9366,6 +8971,68 @@ $(document).ready(function() { <input id='responses-AuthorizationAPI-performAccessControl-200-schema-data' type='hidden' value=''></input> </div> </div> + <h3 id="examples-AuthorizationAPI-performAccessControl-title-403"></h3> + <p id="examples-AuthorizationAPI-performAccessControl-description-403" class="marked"></p> + <script> + var responseAuthorizationAPI403_description = `Forbidden`; + var responseAuthorizationAPI403_description_break = responseAuthorizationAPI403_description.indexOf('\n'); + if (responseAuthorizationAPI403_description_break == -1) { + $("#examples-AuthorizationAPI-performAccessControl-title-403").text("Status: 403 - " + responseAuthorizationAPI403_description); + } else { + $("#examples-AuthorizationAPI-performAccessControl-title-403").text("Status: 403 - " + responseAuthorizationAPI403_description.substring(0, responseAuthorizationAPI403_description_break)); + $("#examples-AuthorizationAPI-performAccessControl-description-403").html(responseAuthorizationAPI403_description.substring(responseAuthorizationAPI403_description_break)); + } + </script> + + + <ul id="responses-detail-AuthorizationAPI-performAccessControl-403" class="nav nav-tabs nav-tabs-examples" > + <li class="active"> + <a data-toggle="tab" href="#responses-AuthorizationAPI-performAccessControl-403-schema">Schema</a> + </li> + + + + + </ul> + + + <div class="tab-content" id="responses-AuthorizationAPI-performAccessControl-403-wrapper" style='margin-bottom: 10px;'> + <div class="tab-pane active" id="responses-AuthorizationAPI-performAccessControl-403-schema"> + <div id="responses-AuthorizationAPI-performAccessControl-schema-403" class="exampleStyle"> + <script> + $(document).ready(function() { + var schemaWrapper = ; + var schema = findNode('schema',schemaWrapper).schema; + if (!schema) { + schema = schemaWrapper.schema; + } + if (schema.$ref != null) { + schema = defsParser.$refs.get(schema.$ref); + Object.keys(schema.properties).forEach( (item) => { + if (schema.properties[item].$ref != null) { + schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); + } + }); + } else if (schema.items != null && schema.items.$ref != null) { + schema.items = defsParser.$refs.get(schema.items.$ref); + } else { + schemaWrapper.definitions = Object.assign({}, defs); + $RefParser.dereference(schemaWrapper).catch(function(err) { + console.log(err); + }); + } + + var view = new JSONSchemaView(schema, 3); + $('#responses-AuthorizationAPI-performAccessControl-403-schema-data').val(JSON.stringify(schema)); + var result = $('#responses-AuthorizationAPI-performAccessControl-schema-403'); + result.empty(); + result.append(view.render()); + }); + </script> + </div> + <input id='responses-AuthorizationAPI-performAccessControl-403-schema-data' type='hidden' value=''></input> + </div> + </div> </article> </div> <hr> @@ -9376,12 +9043,12 @@ $(document).ready(function() { <article id="api-Configuration-getConfiguration-0" data-group="User" data-name="getConfiguration" data-version="0"> <div class="pull-left"> <h1>getConfiguration</h1> - <p>Returns the contents of the application configuration file</p> + <p></p> </div> <div class="pull-right"></div> <div class="clearfix"></div> <p></p> - <p class="marked"></p> + <p class="marked">Returns the contents of the application configuration file</p> <p></p> <br /> <pre class="prettyprint language-html prettyprinted" data-type="get"><code><span class="pln">/a1-policy/v2/configuration</span></code></pre> @@ -9406,7 +9073,7 @@ $(document).ready(function() { <div class="tab-content"> <div class="tab-pane active" id="examples-Configuration-getConfiguration-0-curl"> <pre class="prettyprint"><code class="language-bsh">curl -X GET \ - -H "Accept: application/json" \ + -H "Accept: application/json,application/problem+json" \ "http://localhost/a1-policy/v2/configuration" </code></pre> </div> @@ -9464,7 +9131,6 @@ public class ConfigurationApiExample { // Create an instance of the API class ConfigurationApi *apiInstance = [[ConfigurationApi alloc] init]; -// Returns the contents of the application configuration file [apiInstance getConfigurationWithCompletionHandler: ^('String' output, NSError* error) { if (output) { @@ -9514,7 +9180,6 @@ namespace Example var apiInstance = new ConfigurationApi(); try { - // Returns the contents of the application configuration file 'String' result = apiInstance.getConfiguration(); Debug.WriteLine(result); } catch (Exception e) { @@ -9570,7 +9235,6 @@ from pprint import pprint api_instance = openapi_client.ConfigurationApi() try: - # Returns the contents of the application configuration file api_response = api_instance.get_configuration() pprint(api_response) except ApiException as e: @@ -9607,7 +9271,7 @@ pub fn main() { <h3 id="examples-Configuration-getConfiguration-title-200"></h3> <p id="examples-Configuration-getConfiguration-description-200" class="marked"></p> <script> - var responseConfiguration200_description = `Configuration`; + var responseConfiguration200_description = `OK - Configuration`; var responseConfiguration200_description_break = responseConfiguration200_description.indexOf('\n'); if (responseConfiguration200_description_break == -1) { $("#examples-Configuration-getConfiguration-title-200").text("Status: 200 - " + responseConfiguration200_description); @@ -9669,7 +9333,7 @@ pub fn main() { <h3 id="examples-Configuration-getConfiguration-title-404"></h3> <p id="examples-Configuration-getConfiguration-description-404" class="marked"></p> <script> - var responseConfiguration404_description = `File is not found or readable`; + var responseConfiguration404_description = `Not Found`; var responseConfiguration404_description_break = responseConfiguration404_description.indexOf('\n'); if (responseConfiguration404_description_break == -1) { $("#examples-Configuration-getConfiguration-title-404").text("Status: 404 - " + responseConfiguration404_description); @@ -9681,52 +9345,12 @@ pub fn main() { <ul id="responses-detail-Configuration-getConfiguration-404" class="nav nav-tabs nav-tabs-examples" > - <li class="active"> - <a data-toggle="tab" href="#responses-Configuration-getConfiguration-404-schema">Schema</a> - </li> - - </ul> <div class="tab-content" id="responses-Configuration-getConfiguration-404-wrapper" style='margin-bottom: 10px;'> - <div class="tab-pane active" id="responses-Configuration-getConfiguration-404-schema"> - <div id="responses-Configuration-getConfiguration-schema-404" class="exampleStyle"> - <script> - $(document).ready(function() { - var schemaWrapper = ; - var schema = findNode('schema',schemaWrapper).schema; - if (!schema) { - schema = schemaWrapper.schema; - } - if (schema.$ref != null) { - schema = defsParser.$refs.get(schema.$ref); - Object.keys(schema.properties).forEach( (item) => { - if (schema.properties[item].$ref != null) { - schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); - } - }); - } else if (schema.items != null && schema.items.$ref != null) { - schema.items = defsParser.$refs.get(schema.items.$ref); - } else { - schemaWrapper.definitions = Object.assign({}, defs); - $RefParser.dereference(schemaWrapper).catch(function(err) { - console.log(err); - }); - } - - var view = new JSONSchemaView(schema, 3); - $('#responses-Configuration-getConfiguration-404-schema-data').val(JSON.stringify(schema)); - var result = $('#responses-Configuration-getConfiguration-schema-404'); - result.empty(); - result.append(view.render()); - }); - </script> - </div> - <input id='responses-Configuration-getConfiguration-404-schema-data' type='hidden' value=''></input> - </div> </div> </article> </div> @@ -9735,12 +9359,12 @@ pub fn main() { <article id="api-Configuration-putConfiguration-0" data-group="User" data-name="putConfiguration" data-version="0"> <div class="pull-left"> <h1>putConfiguration</h1> - <p>Replace the current configuration file with the given configuration</p> + <p></p> </div> <div class="pull-right"></div> <div class="clearfix"></div> <p></p> - <p class="marked"></p> + <p class="marked">Replace the current configuration with the given configuration</p> <p></p> <br /> <pre class="prettyprint language-html prettyprinted" data-type="put"><code><span class="pln">/a1-policy/v2/configuration</span></code></pre> @@ -9765,7 +9389,7 @@ pub fn main() { <div class="tab-content"> <div class="tab-pane active" id="examples-Configuration-putConfiguration-0-curl"> <pre class="prettyprint"><code class="language-bsh">curl -X PUT \ - -H "Accept: */*" \ + -H "Accept: */*,application/problem+json" \ -H "Content-Type: application/json" \ "http://localhost/a1-policy/v2/configuration" \ -d '' @@ -9828,7 +9452,6 @@ public class ConfigurationApiExample { ConfigurationApi *apiInstance = [[ConfigurationApi alloc] init]; Object *body = Object; // -// Replace the current configuration file with the given configuration [apiInstance putConfigurationWith:body completionHandler: ^(Object output, NSError* error) { if (output) { @@ -9881,7 +9504,6 @@ namespace Example var body = Object; // Object | try { - // Replace the current configuration file with the given configuration Object result = apiInstance.putConfiguration(body); Debug.WriteLine(result); } catch (Exception e) { @@ -9940,7 +9562,6 @@ api_instance = openapi_client.ConfigurationApi() body = Object # Object | try: - # Replace the current configuration file with the given configuration api_response = api_instance.put_configuration(body) pprint(api_response) except ApiException as e: @@ -9982,15 +9603,15 @@ pub fn main() { <p class="marked"></p> <script> $(document).ready(function() { - var schemaWrapper = { - "content" : { - "application/json" : { - "schema" : { - "type" : "object" - } - } - }, - "required" : true + var schemaWrapper = {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ },
+ "required" : true
}; var schema = findNode('schema',schemaWrapper).schema; @@ -10024,7 +9645,7 @@ $(document).ready(function() { <h3 id="examples-Configuration-putConfiguration-title-200"></h3> <p id="examples-Configuration-putConfiguration-description-200" class="marked"></p> <script> - var responseConfiguration200_description = `Configuration updated`; + var responseConfiguration200_description = `OK - Configuration updated`; var responseConfiguration200_description_break = responseConfiguration200_description.indexOf('\n'); if (responseConfiguration200_description_break == -1) { $("#examples-Configuration-putConfiguration-title-200").text("Status: 200 - " + responseConfiguration200_description); @@ -10086,7 +9707,7 @@ $(document).ready(function() { <h3 id="examples-Configuration-putConfiguration-title-400"></h3> <p id="examples-Configuration-putConfiguration-description-400" class="marked"></p> <script> - var responseConfiguration400_description = `Invalid configuration provided`; + var responseConfiguration400_description = `Bad Request`; var responseConfiguration400_description_break = responseConfiguration400_description.indexOf('\n'); if (responseConfiguration400_description_break == -1) { $("#examples-Configuration-putConfiguration-title-400").text("Status: 400 - " + responseConfiguration400_description); @@ -10145,68 +9766,6 @@ $(document).ready(function() { <input id='responses-Configuration-putConfiguration-400-schema-data' type='hidden' value=''></input> </div> </div> - <h3 id="examples-Configuration-putConfiguration-title-500"></h3> - <p id="examples-Configuration-putConfiguration-description-500" class="marked"></p> - <script> - var responseConfiguration500_description = `Something went wrong when replacing the configuration. Try again.`; - var responseConfiguration500_description_break = responseConfiguration500_description.indexOf('\n'); - if (responseConfiguration500_description_break == -1) { - $("#examples-Configuration-putConfiguration-title-500").text("Status: 500 - " + responseConfiguration500_description); - } else { - $("#examples-Configuration-putConfiguration-title-500").text("Status: 500 - " + responseConfiguration500_description.substring(0, responseConfiguration500_description_break)); - $("#examples-Configuration-putConfiguration-description-500").html(responseConfiguration500_description.substring(responseConfiguration500_description_break)); - } - </script> - - - <ul id="responses-detail-Configuration-putConfiguration-500" class="nav nav-tabs nav-tabs-examples" > - <li class="active"> - <a data-toggle="tab" href="#responses-Configuration-putConfiguration-500-schema">Schema</a> - </li> - - - - - </ul> - - - <div class="tab-content" id="responses-Configuration-putConfiguration-500-wrapper" style='margin-bottom: 10px;'> - <div class="tab-pane active" id="responses-Configuration-putConfiguration-500-schema"> - <div id="responses-Configuration-putConfiguration-schema-500" class="exampleStyle"> - <script> - $(document).ready(function() { - var schemaWrapper = ; - var schema = findNode('schema',schemaWrapper).schema; - if (!schema) { - schema = schemaWrapper.schema; - } - if (schema.$ref != null) { - schema = defsParser.$refs.get(schema.$ref); - Object.keys(schema.properties).forEach( (item) => { - if (schema.properties[item].$ref != null) { - schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); - } - }); - } else if (schema.items != null && schema.items.$ref != null) { - schema.items = defsParser.$refs.get(schema.items.$ref); - } else { - schemaWrapper.definitions = Object.assign({}, defs); - $RefParser.dereference(schemaWrapper).catch(function(err) { - console.log(err); - }); - } - - var view = new JSONSchemaView(schema, 3); - $('#responses-Configuration-putConfiguration-500-schema-data').val(JSON.stringify(schema)); - var result = $('#responses-Configuration-putConfiguration-schema-500'); - result.empty(); - result.append(view.render()); - }); - </script> - </div> - <input id='responses-Configuration-putConfiguration-500-schema-data' type='hidden' value=''></input> - </div> - </div> </article> </div> <hr> @@ -10217,12 +9776,12 @@ $(document).ready(function() { <article id="api-HealthCheck-getStatus-0" data-group="User" data-name="getStatus" data-version="0"> <div class="pull-left"> <h1>getStatus</h1> - <p>Returns status and statistics of this service</p> + <p></p> </div> <div class="pull-right"></div> <div class="clearfix"></div> <p></p> - <p class="marked"></p> + <p class="marked">Returns status and statistics of this service</p> <p></p> <br /> <pre class="prettyprint language-html prettyprinted" data-type="get"><code><span class="pln">/a1-policy/v2/status</span></code></pre> @@ -10305,7 +9864,6 @@ public class HealthCheckApiExample { // Create an instance of the API class HealthCheckApi *apiInstance = [[HealthCheckApi alloc] init]; -// Returns status and statistics of this service [apiInstance getStatusWithCompletionHandler: ^(status_info output, NSError* error) { if (output) { @@ -10355,7 +9913,6 @@ namespace Example var apiInstance = new HealthCheckApi(); try { - // Returns status and statistics of this service status_info result = apiInstance.getStatus(); Debug.WriteLine(result); } catch (Exception e) { @@ -10411,7 +9968,6 @@ from pprint import pprint api_instance = openapi_client.HealthCheckApi() try: - # Returns status and statistics of this service api_response = api_instance.get_status() pprint(api_response) except ApiException as e: @@ -10448,7 +10004,7 @@ pub fn main() { <h3 id="examples-HealthCheck-getStatus-title-200"></h3> <p id="examples-HealthCheck-getStatus-description-200" class="marked"></p> <script> - var responseHealthCheck200_description = `Service is living`; + var responseHealthCheck200_description = `OK- Service is living Ok`; var responseHealthCheck200_description_break = responseHealthCheck200_description.indexOf('\n'); if (responseHealthCheck200_description_break == -1) { $("#examples-HealthCheck-getStatus-title-200").text("Status: 200 - " + responseHealthCheck200_description); @@ -10514,12 +10070,12 @@ pub fn main() { <article id="api-HealthCheck-getStatusV1-0" data-group="User" data-name="getStatusV1" data-version="0"> <div class="pull-left"> <h1>getStatusV1</h1> - <p>Returns status and statistics of this service</p> + <p></p> </div> <div class="pull-right"></div> <div class="clearfix"></div> <p></p> - <p class="marked"></p> + <p class="marked">Returns status and statistics of this service</p> <p></p> <br /> <pre class="prettyprint language-html prettyprinted" data-type="get"><code><span class="pln">/status</span></code></pre> @@ -10602,7 +10158,6 @@ public class HealthCheckApiExample { // Create an instance of the API class HealthCheckApi *apiInstance = [[HealthCheckApi alloc] init]; -// Returns status and statistics of this service [apiInstance getStatusV1WithCompletionHandler: ^('String' output, NSError* error) { if (output) { @@ -10652,7 +10207,6 @@ namespace Example var apiInstance = new HealthCheckApi(); try { - // Returns status and statistics of this service 'String' result = apiInstance.getStatusV1(); Debug.WriteLine(result); } catch (Exception e) { @@ -10708,7 +10262,6 @@ from pprint import pprint api_instance = openapi_client.HealthCheckApi() try: - # Returns status and statistics of this service api_response = api_instance.get_status_v1() pprint(api_response) except ApiException as e: @@ -10745,7 +10298,7 @@ pub fn main() { <h3 id="examples-HealthCheck-getStatusV1-title-200"></h3> <p id="examples-HealthCheck-getStatusV1-description-200" class="marked"></p> <script> - var responseHealthCheck200_description = `Service is living`; + var responseHealthCheck200_description = `OK - Service is living`; var responseHealthCheck200_description_break = responseHealthCheck200_description.indexOf('\n'); if (responseHealthCheck200_description_break == -1) { $("#examples-HealthCheck-getStatusV1-title-200").text("Status: 200 - " + responseHealthCheck200_description); @@ -10814,7 +10367,7 @@ pub fn main() { <article id="api-NearRTRICRepository-getRic-0" data-group="User" data-name="getRic" data-version="0"> <div class="pull-left"> <h1>getRic</h1> - <p>Returns info for one Near-RT RIC</p> + <p>Returns info of Near-RT RIC queried by the ric-id and managed-element-id</p> </div> <div class="pull-right"></div> <div class="clearfix"></div> @@ -10844,7 +10397,7 @@ pub fn main() { <div class="tab-content"> <div class="tab-pane active" id="examples-NearRTRICRepository-getRic-0-curl"> <pre class="prettyprint"><code class="language-bsh">curl -X GET \ - -H "Accept: application/json" \ + -H "Accept: application/json,application/problem+json" \ "http://localhost/a1-policy/v2/rics/ric?managed_element_id=managedElementId_example&ric_id=ricId_example" </code></pre> </div> @@ -10908,7 +10461,7 @@ NearRTRICRepositoryApi *apiInstance = [[NearRTRICRepositoryApi alloc] init]; String *managedElementId = managedElementId_example; // The identity of a Managed Element. If given, the Near-RT RIC managing the ME is returned. (optional) (default to null) String *ricId = ricId_example; // The identity of a Near-RT RIC to get information for. (optional) (default to null) -// Returns info for one Near-RT RIC +// Returns info of Near-RT RIC queried by the ric-id and managed-element-id [apiInstance getRicWith:managedElementId ricId:ricId completionHandler: ^(ric_info output, NSError* error) { @@ -10966,7 +10519,7 @@ namespace Example var ricId = ricId_example; // String | The identity of a Near-RT RIC to get information for. (optional) (default to null) try { - // Returns info for one Near-RT RIC + // Returns info of Near-RT RIC queried by the ric-id and managed-element-id ric_info result = apiInstance.getRic(managedElementId, ricId); Debug.WriteLine(result); } catch (Exception e) { @@ -11028,7 +10581,7 @@ managedElementId = managedElementId_example # String | The identity of a Managed ricId = ricId_example # String | The identity of a Near-RT RIC to get information for. (optional) (default to null) try: - # Returns info for one Near-RT RIC + # Returns info of Near-RT RIC queried by the ric-id and managed-element-id api_response = api_instance.get_ric(managedElementId=managedElementId, ricId=ricId) pprint(api_response) except ApiException as e: @@ -11114,7 +10667,7 @@ The identity of a Near-RT RIC to get information for. <h3 id="examples-NearRTRICRepository-getRic-title-200"></h3> <p id="examples-NearRTRICRepository-getRic-description-200" class="marked"></p> <script> - var responseNearRTRICRepository200_description = `Near-RT RIC is found`; + var responseNearRTRICRepository200_description = `OK - Near-RT RIC is found`; var responseNearRTRICRepository200_description_break = responseNearRTRICRepository200_description.indexOf('\n'); if (responseNearRTRICRepository200_description_break == -1) { $("#examples-NearRTRICRepository-getRic-title-200").text("Status: 200 - " + responseNearRTRICRepository200_description); @@ -11176,7 +10729,7 @@ The identity of a Near-RT RIC to get information for. <h3 id="examples-NearRTRICRepository-getRic-title-404"></h3> <p id="examples-NearRTRICRepository-getRic-description-404" class="marked"></p> <script> - var responseNearRTRICRepository404_description = `Near-RT RIC is not found`; + var responseNearRTRICRepository404_description = `Not Found`; var responseNearRTRICRepository404_description_break = responseNearRTRICRepository404_description.indexOf('\n'); if (responseNearRTRICRepository404_description_break == -1) { $("#examples-NearRTRICRepository-getRic-title-404").text("Status: 404 - " + responseNearRTRICRepository404_description); @@ -11188,52 +10741,12 @@ The identity of a Near-RT RIC to get information for. <ul id="responses-detail-NearRTRICRepository-getRic-404" class="nav nav-tabs nav-tabs-examples" > - <li class="active"> - <a data-toggle="tab" href="#responses-NearRTRICRepository-getRic-404-schema">Schema</a> - </li> - - </ul> <div class="tab-content" id="responses-NearRTRICRepository-getRic-404-wrapper" style='margin-bottom: 10px;'> - <div class="tab-pane active" id="responses-NearRTRICRepository-getRic-404-schema"> - <div id="responses-NearRTRICRepository-getRic-schema-404" class="exampleStyle"> - <script> - $(document).ready(function() { - var schemaWrapper = ; - var schema = findNode('schema',schemaWrapper).schema; - if (!schema) { - schema = schemaWrapper.schema; - } - if (schema.$ref != null) { - schema = defsParser.$refs.get(schema.$ref); - Object.keys(schema.properties).forEach( (item) => { - if (schema.properties[item].$ref != null) { - schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); - } - }); - } else if (schema.items != null && schema.items.$ref != null) { - schema.items = defsParser.$refs.get(schema.items.$ref); - } else { - schemaWrapper.definitions = Object.assign({}, defs); - $RefParser.dereference(schemaWrapper).catch(function(err) { - console.log(err); - }); - } - - var view = new JSONSchemaView(schema, 3); - $('#responses-NearRTRICRepository-getRic-404-schema-data').val(JSON.stringify(schema)); - var result = $('#responses-NearRTRICRepository-getRic-schema-404'); - result.empty(); - result.append(view.render()); - }); - </script> - </div> - <input id='responses-NearRTRICRepository-getRic-404-schema-data' type='hidden' value=''></input> - </div> </div> </article> </div> @@ -11272,7 +10785,7 @@ The identity of a Near-RT RIC to get information for. <div class="tab-content"> <div class="tab-pane active" id="examples-NearRTRICRepository-getRics-0-curl"> <pre class="prettyprint"><code class="language-bsh">curl -X GET \ - -H "Accept: application/json" \ + -H "Accept: application/json,application/problem+json" \ "http://localhost/a1-policy/v2/rics?policytype_id=policytypeId_example" </code></pre> </div> @@ -11574,7 +11087,7 @@ The identity of a policy type. If given, all Near-RT RICs supporting the policy <h3 id="examples-NearRTRICRepository-getRics-title-404"></h3> <p id="examples-NearRTRICRepository-getRics-description-404" class="marked"></p> <script> - var responseNearRTRICRepository404_description = `Policy type is not found`; + var responseNearRTRICRepository404_description = `Not Found`; var responseNearRTRICRepository404_description_break = responseNearRTRICRepository404_description.indexOf('\n'); if (responseNearRTRICRepository404_description_break == -1) { $("#examples-NearRTRICRepository-getRics-title-404").text("Status: 404 - " + responseNearRTRICRepository404_description); @@ -11586,52 +11099,12 @@ The identity of a policy type. If given, all Near-RT RICs supporting the policy <ul id="responses-detail-NearRTRICRepository-getRics-404" class="nav nav-tabs nav-tabs-examples" > - <li class="active"> - <a data-toggle="tab" href="#responses-NearRTRICRepository-getRics-404-schema">Schema</a> - </li> - - </ul> <div class="tab-content" id="responses-NearRTRICRepository-getRics-404-wrapper" style='margin-bottom: 10px;'> - <div class="tab-pane active" id="responses-NearRTRICRepository-getRics-404-schema"> - <div id="responses-NearRTRICRepository-getRics-schema-404" class="exampleStyle"> - <script> - $(document).ready(function() { - var schemaWrapper = ; - var schema = findNode('schema',schemaWrapper).schema; - if (!schema) { - schema = schemaWrapper.schema; - } - if (schema.$ref != null) { - schema = defsParser.$refs.get(schema.$ref); - Object.keys(schema.properties).forEach( (item) => { - if (schema.properties[item].$ref != null) { - schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); - } - }); - } else if (schema.items != null && schema.items.$ref != null) { - schema.items = defsParser.$refs.get(schema.items.$ref); - } else { - schemaWrapper.definitions = Object.assign({}, defs); - $RefParser.dereference(schemaWrapper).catch(function(err) { - console.log(err); - }); - } - - var view = new JSONSchemaView(schema, 3); - $('#responses-NearRTRICRepository-getRics-404-schema-data').val(JSON.stringify(schema)); - var result = $('#responses-NearRTRICRepository-getRics-schema-404'); - result.empty(); - result.append(view.render()); - }); - </script> - </div> - <input id='responses-NearRTRICRepository-getRics-404-schema-data' type='hidden' value=''></input> - </div> </div> </article> </div> @@ -11643,12 +11116,12 @@ The identity of a policy type. If given, all Near-RT RICs supporting the policy <article id="api-ServiceRegistryAndSupervision-deleteService-0" data-group="User" data-name="deleteService" data-version="0"> <div class="pull-left"> <h1>deleteService</h1> - <p>Unregister a service</p> + <p></p> </div> <div class="pull-right"></div> <div class="clearfix"></div> <p></p> - <p class="marked"></p> + <p class="marked">Unregister a service</p> <p></p> <br /> <pre class="prettyprint language-html prettyprinted" data-type="delete"><code><span class="pln">/a1-policy/v2/services/{service_id}</span></code></pre> @@ -11673,7 +11146,7 @@ The identity of a policy type. If given, all Near-RT RICs supporting the policy <div class="tab-content"> <div class="tab-pane active" id="examples-ServiceRegistryAndSupervision-deleteService-0-curl"> <pre class="prettyprint"><code class="language-bsh">curl -X DELETE \ - -H "Accept: */*" \ + -H "Accept: */*,application/problem+json" \ "http://localhost/a1-policy/v2/services/{service_id}" </code></pre> </div> @@ -11734,7 +11207,6 @@ public class ServiceRegistryAndSupervisionApiExample { ServiceRegistryAndSupervisionApi *apiInstance = [[ServiceRegistryAndSupervisionApi alloc] init]; String *serviceId = serviceId_example; // (default to null) -// Unregister a service [apiInstance deleteServiceWith:serviceId completionHandler: ^(Object output, NSError* error) { if (output) { @@ -11787,7 +11259,6 @@ namespace Example var serviceId = serviceId_example; // String | (default to null) try { - // Unregister a service Object result = apiInstance.deleteService(serviceId); Debug.WriteLine(result); } catch (Exception e) { @@ -11846,7 +11317,6 @@ api_instance = openapi_client.ServiceRegistryAndSupervisionApi() serviceId = serviceId_example # String | (default to null) try: - # Unregister a service api_response = api_instance.delete_service(serviceId) pprint(api_response) except ApiException as e: @@ -11908,72 +11378,10 @@ pub fn main() { <h2>Responses</h2> - <h3 id="examples-ServiceRegistryAndSupervision-deleteService-title-200"></h3> - <p id="examples-ServiceRegistryAndSupervision-deleteService-description-200" class="marked"></p> - <script> - var responseServiceRegistryAndSupervision200_description = `Not used`; - var responseServiceRegistryAndSupervision200_description_break = responseServiceRegistryAndSupervision200_description.indexOf('\n'); - if (responseServiceRegistryAndSupervision200_description_break == -1) { - $("#examples-ServiceRegistryAndSupervision-deleteService-title-200").text("Status: 200 - " + responseServiceRegistryAndSupervision200_description); - } else { - $("#examples-ServiceRegistryAndSupervision-deleteService-title-200").text("Status: 200 - " + responseServiceRegistryAndSupervision200_description.substring(0, responseServiceRegistryAndSupervision200_description_break)); - $("#examples-ServiceRegistryAndSupervision-deleteService-description-200").html(responseServiceRegistryAndSupervision200_description.substring(responseServiceRegistryAndSupervision200_description_break)); - } - </script> - - - <ul id="responses-detail-ServiceRegistryAndSupervision-deleteService-200" class="nav nav-tabs nav-tabs-examples" > - <li class="active"> - <a data-toggle="tab" href="#responses-ServiceRegistryAndSupervision-deleteService-200-schema">Schema</a> - </li> - - - - - </ul> - - - <div class="tab-content" id="responses-ServiceRegistryAndSupervision-deleteService-200-wrapper" style='margin-bottom: 10px;'> - <div class="tab-pane active" id="responses-ServiceRegistryAndSupervision-deleteService-200-schema"> - <div id="responses-ServiceRegistryAndSupervision-deleteService-schema-200" class="exampleStyle"> - <script> - $(document).ready(function() { - var schemaWrapper = ; - var schema = findNode('schema',schemaWrapper).schema; - if (!schema) { - schema = schemaWrapper.schema; - } - if (schema.$ref != null) { - schema = defsParser.$refs.get(schema.$ref); - Object.keys(schema.properties).forEach( (item) => { - if (schema.properties[item].$ref != null) { - schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); - } - }); - } else if (schema.items != null && schema.items.$ref != null) { - schema.items = defsParser.$refs.get(schema.items.$ref); - } else { - schemaWrapper.definitions = Object.assign({}, defs); - $RefParser.dereference(schemaWrapper).catch(function(err) { - console.log(err); - }); - } - - var view = new JSONSchemaView(schema, 3); - $('#responses-ServiceRegistryAndSupervision-deleteService-200-schema-data').val(JSON.stringify(schema)); - var result = $('#responses-ServiceRegistryAndSupervision-deleteService-schema-200'); - result.empty(); - result.append(view.render()); - }); - </script> - </div> - <input id='responses-ServiceRegistryAndSupervision-deleteService-200-schema-data' type='hidden' value=''></input> - </div> - </div> <h3 id="examples-ServiceRegistryAndSupervision-deleteService-title-204"></h3> <p id="examples-ServiceRegistryAndSupervision-deleteService-description-204" class="marked"></p> <script> - var responseServiceRegistryAndSupervision204_description = `Service unregistered`; + var responseServiceRegistryAndSupervision204_description = `No Content - Service unregistered`; var responseServiceRegistryAndSupervision204_description_break = responseServiceRegistryAndSupervision204_description.indexOf('\n'); if (responseServiceRegistryAndSupervision204_description_break == -1) { $("#examples-ServiceRegistryAndSupervision-deleteService-title-204").text("Status: 204 - " + responseServiceRegistryAndSupervision204_description); @@ -12035,7 +11443,7 @@ pub fn main() { <h3 id="examples-ServiceRegistryAndSupervision-deleteService-title-404"></h3> <p id="examples-ServiceRegistryAndSupervision-deleteService-description-404" class="marked"></p> <script> - var responseServiceRegistryAndSupervision404_description = `Service not found`; + var responseServiceRegistryAndSupervision404_description = `Not Found`; var responseServiceRegistryAndSupervision404_description_break = responseServiceRegistryAndSupervision404_description.indexOf('\n'); if (responseServiceRegistryAndSupervision404_description_break == -1) { $("#examples-ServiceRegistryAndSupervision-deleteService-title-404").text("Status: 404 - " + responseServiceRegistryAndSupervision404_description); @@ -12047,52 +11455,12 @@ pub fn main() { <ul id="responses-detail-ServiceRegistryAndSupervision-deleteService-404" class="nav nav-tabs nav-tabs-examples" > - <li class="active"> - <a data-toggle="tab" href="#responses-ServiceRegistryAndSupervision-deleteService-404-schema">Schema</a> - </li> - - </ul> <div class="tab-content" id="responses-ServiceRegistryAndSupervision-deleteService-404-wrapper" style='margin-bottom: 10px;'> - <div class="tab-pane active" id="responses-ServiceRegistryAndSupervision-deleteService-404-schema"> - <div id="responses-ServiceRegistryAndSupervision-deleteService-schema-404" class="exampleStyle"> - <script> - $(document).ready(function() { - var schemaWrapper = ; - var schema = findNode('schema',schemaWrapper).schema; - if (!schema) { - schema = schemaWrapper.schema; - } - if (schema.$ref != null) { - schema = defsParser.$refs.get(schema.$ref); - Object.keys(schema.properties).forEach( (item) => { - if (schema.properties[item].$ref != null) { - schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); - } - }); - } else if (schema.items != null && schema.items.$ref != null) { - schema.items = defsParser.$refs.get(schema.items.$ref); - } else { - schemaWrapper.definitions = Object.assign({}, defs); - $RefParser.dereference(schemaWrapper).catch(function(err) { - console.log(err); - }); - } - - var view = new JSONSchemaView(schema, 3); - $('#responses-ServiceRegistryAndSupervision-deleteService-404-schema-data').val(JSON.stringify(schema)); - var result = $('#responses-ServiceRegistryAndSupervision-deleteService-schema-404'); - result.empty(); - result.append(view.render()); - }); - </script> - </div> - <input id='responses-ServiceRegistryAndSupervision-deleteService-404-schema-data' type='hidden' value=''></input> - </div> </div> </article> </div> @@ -12131,7 +11499,7 @@ pub fn main() { <div class="tab-content"> <div class="tab-pane active" id="examples-ServiceRegistryAndSupervision-getServices-0-curl"> <pre class="prettyprint"><code class="language-bsh">curl -X GET \ - -H "Accept: application/json" \ + -H "Accept: application/json,application/problem+json" \ "http://localhost/a1-policy/v2/services?service_id=serviceId_example" </code></pre> </div> @@ -12433,7 +11801,7 @@ The identity of the service <h3 id="examples-ServiceRegistryAndSupervision-getServices-title-404"></h3> <p id="examples-ServiceRegistryAndSupervision-getServices-description-404" class="marked"></p> <script> - var responseServiceRegistryAndSupervision404_description = `Service is not found`; + var responseServiceRegistryAndSupervision404_description = `Not Found`; var responseServiceRegistryAndSupervision404_description_break = responseServiceRegistryAndSupervision404_description.indexOf('\n'); if (responseServiceRegistryAndSupervision404_description_break == -1) { $("#examples-ServiceRegistryAndSupervision-getServices-title-404").text("Status: 404 - " + responseServiceRegistryAndSupervision404_description); @@ -12445,52 +11813,12 @@ The identity of the service <ul id="responses-detail-ServiceRegistryAndSupervision-getServices-404" class="nav nav-tabs nav-tabs-examples" > - <li class="active"> - <a data-toggle="tab" href="#responses-ServiceRegistryAndSupervision-getServices-404-schema">Schema</a> - </li> - - </ul> <div class="tab-content" id="responses-ServiceRegistryAndSupervision-getServices-404-wrapper" style='margin-bottom: 10px;'> - <div class="tab-pane active" id="responses-ServiceRegistryAndSupervision-getServices-404-schema"> - <div id="responses-ServiceRegistryAndSupervision-getServices-schema-404" class="exampleStyle"> - <script> - $(document).ready(function() { - var schemaWrapper = ; - var schema = findNode('schema',schemaWrapper).schema; - if (!schema) { - schema = schemaWrapper.schema; - } - if (schema.$ref != null) { - schema = defsParser.$refs.get(schema.$ref); - Object.keys(schema.properties).forEach( (item) => { - if (schema.properties[item].$ref != null) { - schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); - } - }); - } else if (schema.items != null && schema.items.$ref != null) { - schema.items = defsParser.$refs.get(schema.items.$ref); - } else { - schemaWrapper.definitions = Object.assign({}, defs); - $RefParser.dereference(schemaWrapper).catch(function(err) { - console.log(err); - }); - } - - var view = new JSONSchemaView(schema, 3); - $('#responses-ServiceRegistryAndSupervision-getServices-404-schema-data').val(JSON.stringify(schema)); - var result = $('#responses-ServiceRegistryAndSupervision-getServices-schema-404'); - result.empty(); - result.append(view.render()); - }); - </script> - </div> - <input id='responses-ServiceRegistryAndSupervision-getServices-404-schema-data' type='hidden' value=''></input> - </div> </div> </article> </div> @@ -12529,7 +11857,7 @@ The identity of the service <div class="tab-content"> <div class="tab-pane active" id="examples-ServiceRegistryAndSupervision-keepAliveService-0-curl"> <pre class="prettyprint"><code class="language-bsh">curl -X PUT \ - -H "Accept: */*" \ + -H "Accept: */*,application/problem+json" \ "http://localhost/a1-policy/v2/services/{service_id}/keepalive" </code></pre> </div> @@ -12767,7 +12095,7 @@ pub fn main() { <h3 id="examples-ServiceRegistryAndSupervision-keepAliveService-title-200"></h3> <p id="examples-ServiceRegistryAndSupervision-keepAliveService-description-200" class="marked"></p> <script> - var responseServiceRegistryAndSupervision200_description = `Service supervision timer refreshed, OK`; + var responseServiceRegistryAndSupervision200_description = `OK - Service supervision timer refreshed, OK`; var responseServiceRegistryAndSupervision200_description_break = responseServiceRegistryAndSupervision200_description.indexOf('\n'); if (responseServiceRegistryAndSupervision200_description_break == -1) { $("#examples-ServiceRegistryAndSupervision-keepAliveService-title-200").text("Status: 200 - " + responseServiceRegistryAndSupervision200_description); @@ -12829,7 +12157,7 @@ pub fn main() { <h3 id="examples-ServiceRegistryAndSupervision-keepAliveService-title-404"></h3> <p id="examples-ServiceRegistryAndSupervision-keepAliveService-description-404" class="marked"></p> <script> - var responseServiceRegistryAndSupervision404_description = `The service is not found, needs re-registration`; + var responseServiceRegistryAndSupervision404_description = `Not Found`; var responseServiceRegistryAndSupervision404_description_break = responseServiceRegistryAndSupervision404_description.indexOf('\n'); if (responseServiceRegistryAndSupervision404_description_break == -1) { $("#examples-ServiceRegistryAndSupervision-keepAliveService-title-404").text("Status: 404 - " + responseServiceRegistryAndSupervision404_description); @@ -12841,52 +12169,12 @@ pub fn main() { <ul id="responses-detail-ServiceRegistryAndSupervision-keepAliveService-404" class="nav nav-tabs nav-tabs-examples" > - <li class="active"> - <a data-toggle="tab" href="#responses-ServiceRegistryAndSupervision-keepAliveService-404-schema">Schema</a> - </li> - - </ul> <div class="tab-content" id="responses-ServiceRegistryAndSupervision-keepAliveService-404-wrapper" style='margin-bottom: 10px;'> - <div class="tab-pane active" id="responses-ServiceRegistryAndSupervision-keepAliveService-404-schema"> - <div id="responses-ServiceRegistryAndSupervision-keepAliveService-schema-404" class="exampleStyle"> - <script> - $(document).ready(function() { - var schemaWrapper = ; - var schema = findNode('schema',schemaWrapper).schema; - if (!schema) { - schema = schemaWrapper.schema; - } - if (schema.$ref != null) { - schema = defsParser.$refs.get(schema.$ref); - Object.keys(schema.properties).forEach( (item) => { - if (schema.properties[item].$ref != null) { - schema.properties[item] = defsParser.$refs.get(schema.properties[item].$ref); - } - }); - } else if (schema.items != null && schema.items.$ref != null) { - schema.items = defsParser.$refs.get(schema.items.$ref); - } else { - schemaWrapper.definitions = Object.assign({}, defs); - $RefParser.dereference(schemaWrapper).catch(function(err) { - console.log(err); - }); - } - - var view = new JSONSchemaView(schema, 3); - $('#responses-ServiceRegistryAndSupervision-keepAliveService-404-schema-data').val(JSON.stringify(schema)); - var result = $('#responses-ServiceRegistryAndSupervision-keepAliveService-schema-404'); - result.empty(); - result.append(view.render()); - }); - </script> - </div> - <input id='responses-ServiceRegistryAndSupervision-keepAliveService-404-schema-data' type='hidden' value=''></input> - </div> </div> </article> </div> @@ -12925,7 +12213,7 @@ pub fn main() { <div class="tab-content"> <div class="tab-pane active" id="examples-ServiceRegistryAndSupervision-putService-0-curl"> <pre class="prettyprint"><code class="language-bsh">curl -X PUT \ - -H "Accept: */*" \ + -H "Accept: */*,application/problem+json" \ -H "Content-Type: application/json" \ "http://localhost/a1-policy/v2/services" \ -d '' @@ -13142,15 +12430,15 @@ pub fn main() { <p class="marked"></p> <script> $(document).ready(function() { - var schemaWrapper = { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/service_registration_info" - } - } - }, - "required" : true + var schemaWrapper = {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/service_registration_info"
+ }
+ }
+ },
+ "required" : true
}; var schema = findNode('schema',schemaWrapper).schema; @@ -13184,7 +12472,7 @@ $(document).ready(function() { <h3 id="examples-ServiceRegistryAndSupervision-putService-title-200"></h3> <p id="examples-ServiceRegistryAndSupervision-putService-description-200" class="marked"></p> <script> - var responseServiceRegistryAndSupervision200_description = `Service updated`; + var responseServiceRegistryAndSupervision200_description = `OK - Service updated`; var responseServiceRegistryAndSupervision200_description_break = responseServiceRegistryAndSupervision200_description.indexOf('\n'); if (responseServiceRegistryAndSupervision200_description_break == -1) { $("#examples-ServiceRegistryAndSupervision-putService-title-200").text("Status: 200 - " + responseServiceRegistryAndSupervision200_description); @@ -13246,7 +12534,7 @@ $(document).ready(function() { <h3 id="examples-ServiceRegistryAndSupervision-putService-title-201"></h3> <p id="examples-ServiceRegistryAndSupervision-putService-description-201" class="marked"></p> <script> - var responseServiceRegistryAndSupervision201_description = `Service created`; + var responseServiceRegistryAndSupervision201_description = `Created - Service created`; var responseServiceRegistryAndSupervision201_description_break = responseServiceRegistryAndSupervision201_description.indexOf('\n'); if (responseServiceRegistryAndSupervision201_description_break == -1) { $("#examples-ServiceRegistryAndSupervision-putService-title-201").text("Status: 201 - " + responseServiceRegistryAndSupervision201_description); @@ -13308,7 +12596,7 @@ $(document).ready(function() { <h3 id="examples-ServiceRegistryAndSupervision-putService-title-400"></h3> <p id="examples-ServiceRegistryAndSupervision-putService-description-400" class="marked"></p> <script> - var responseServiceRegistryAndSupervision400_description = `The ServiceRegistrationInfo is not accepted`; + var responseServiceRegistryAndSupervision400_description = `Bad Request`; var responseServiceRegistryAndSupervision400_description_break = responseServiceRegistryAndSupervision400_description.indexOf('\n'); if (responseServiceRegistryAndSupervision400_description_break == -1) { $("#examples-ServiceRegistryAndSupervision-putService-title-400").text("Status: 400 - " + responseServiceRegistryAndSupervision400_description); @@ -13375,10 +12663,10 @@ $(document).ready(function() { <div id="footer"> <div id="api-_footer"> <p>Suggestions, contact, support and error reporting; - <div class="app-desc">Information URL: <a href="https://wiki.onap.org/display/DW/O-RAN+A1+Policies+in+ONAP">https://wiki.onap.org/display/DW/O-RAN+A1+Policies+in+ONAP</a></div> - <div class="app-desc">Contact Info: <a href="team@openapitools.org">team@openapitools.org</a></div> + <div class="app-desc">Information URL: <a href="https://www.onap.org/">https://www.onap.org/</a></div> + <div class="app-desc">Contact Info: <a href="discuss-list@onap.com">discuss-list@onap.com</a></div> </p> - <div class="license-info">Copyright (C) 2020-2023 Nordix Foundation. Licensed under the Apache License, and Copyright (C) 2024 OpenInfra Foundation Europe. All rights reserved.</div> + <div class="license-info">Copyright (C) 2020-2023 Nordix Foundation. Licensed under the Apache License.</div> <div class="license-url">http://www.apache.org/licenses/LICENSE-2.0</div> </div> </div> diff --git a/docs/offeredapis/swagger/pms-api.json b/docs/offeredapis/swagger/pms-api.json index d6d212f0..5dd8b493 100644 --- a/docs/offeredapis/swagger/pms-api.json +++ b/docs/offeredapis/swagger/pms-api.json @@ -1,1791 +1,1866 @@ -{ - "openapi" : "3.0.3", - "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 or defined 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>Service 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>Authorization API</h3><p>API used for access control of A1 Policy access. If configured, an external authorization provider is requested to grant access to the A1 Policy type.</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, and Copyright (C) 2024 OpenInfra Foundation Europe. All rights reserved.", - "url" : "http://www.apache.org/licenses/LICENSE-2.0" - }, - "version" : "1.2.0" - }, - "servers" : [ { - "url" : "/" - } ], - "tags" : [ { - "name" : "Authorization API", - "description" : "API used for authorization of information A1 policy access (this is provided by an authorization producer such as OPA). <br> Note that this API is called by PMS, it is not provided." - }, { - "name" : "Actuator", - "description" : "Monitor and interact", - "externalDocs" : { - "description" : "Spring Boot Actuator Web API Documentation", - "url" : "https://docs.spring.io/spring-boot/docs/current/actuator-api/html/" - } - } ], - "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.", - "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 <typename_version>)", - "required" : false, - "style" : "form", - "explode" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "description" : "Policies", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/policy_info_list" - }, - "examples" : { - "policy_info_list" : { - "$ref" : "#/components/examples/policy_info_list" - } - } - } - } - }, - "404" : { - "description" : "Near-RT RIC, policy type or service not found", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/error_information" - } - } - } - } - } - } - }, - "/example-authz-check" : { - "post" : { - "tags" : [ "Authorization API" ], - "summary" : "Request for access authorization.", - "description" : "The authorization function decides if access is granted.", - "operationId" : "performAccessControl", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/policy_authorization" - } - } - }, - "required" : true - }, - "responses" : { - "200" : { - "description" : "OK", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/authorization_result" - } - } - } - } - } - } - }, - "/actuator/threaddump" : { - "get" : { - "tags" : [ "Actuator" ], - "summary" : "Actuator web endpoint 'threaddump'", - "operationId" : "threaddump", - "responses" : { - "200" : { - "description" : "OK", - "content" : { - "text/plain;charset=UTF-8" : { - "schema" : { - "type" : "object" - } - }, - "application/vnd.spring-boot.actuator.v3+json" : { - "schema" : { - "type" : "object" - } - }, - "application/json" : { - "schema" : { - "type" : "object" - } - }, - "application/vnd.spring-boot.actuator.v2+json" : { - "schema" : { - "type" : "object" - } - } - } - } - } - } - }, - "/a1-policy/v2/status" : { - "get" : { - "tags" : [ "Health Check" ], - "summary" : "Returns status and statistics of this service", - "operationId" : "getStatus", - "responses" : { - "200" : { - "description" : "Service is living", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/status_info" - }, - "examples" : { - "status_info" : { - "$ref" : "#/components/examples/status_info" - } - } - } - } - } - } - } - }, - "/actuator/loggers" : { - "get" : { - "tags" : [ "Actuator" ], - "summary" : "Actuator web endpoint 'loggers'", - "operationId" : "loggers", - "responses" : { - "200" : { - "description" : "OK", - "content" : { - "application/vnd.spring-boot.actuator.v3+json" : { - "schema" : { - "type" : "object" - } - }, - "application/json" : { - "schema" : { - "type" : "object" - } - }, - "application/vnd.spring-boot.actuator.v2+json" : { - "schema" : { - "type" : "object" - } - } - } - } - } - } - }, - "/actuator/health/**" : { - "get" : { - "tags" : [ "Actuator" ], - "summary" : "Actuator web endpoint 'health-path'", - "operationId" : "health-path", - "responses" : { - "200" : { - "description" : "OK", - "content" : { - "application/vnd.spring-boot.actuator.v3+json" : { - "schema" : { - "type" : "object" - } - }, - "application/json" : { - "schema" : { - "type" : "object" - } - }, - "application/vnd.spring-boot.actuator.v2+json" : { - "schema" : { - "type" : "object" - } - } - } - } - } - } - }, - "/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", - "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" - }, - "examples" : { - "ric_info" : { - "$ref" : "#/components/examples/ric_info" - } - } - } - } - }, - "404" : { - "description" : "Near-RT RIC is not found", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/error_information" - } - } - } - } - } - } - }, - "/actuator/shutdown" : { - "post" : { - "tags" : [ "Actuator" ], - "summary" : "Actuator web endpoint 'shutdown'", - "operationId" : "shutdown", - "responses" : { - "200" : { - "description" : "OK", - "content" : { - "application/vnd.spring-boot.actuator.v3+json" : { - "schema" : { - "type" : "object" - } - }, - "application/json" : { - "schema" : { - "type" : "object" - } - }, - "application/vnd.spring-boot.actuator.v2+json" : { - "schema" : { - "type" : "object" - } - } - } - } - } - } - }, - "/a1-policy/v2/policy-types" : { - "get" : { - "tags" : [ "A1 Policy Management" ], - "summary" : "Query policy type identities", - "operationId" : "getPolicyTypes", - "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 <typename_version>)", - "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. Matching types will be returned sorted in ascending order.", - "required" : false, - "style" : "form", - "explode" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "description" : "Policy type IDs", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/policy_type_id_list" - }, - "examples" : { - "policy_type_id_list" : { - "$ref" : "#/components/examples/policy_type_id_list" - } - } - } - } - }, - "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", - "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" - }, - "examples" : { - "policy_info" : { - "$ref" : "#/components/examples/policy_info" - } - } - } - } - }, - "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", - "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" - } - } - } - } - } - } - }, - "/actuator/metrics/{requiredMetricName}" : { - "get" : { - "tags" : [ "Actuator" ], - "summary" : "Actuator web endpoint 'metrics-requiredMetricName'", - "operationId" : "metrics-requiredMetricName", - "parameters" : [ { - "name" : "requiredMetricName", - "in" : "path", - "required" : true, - "style" : "simple", - "explode" : false, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "description" : "OK", - "content" : { - "application/vnd.spring-boot.actuator.v3+json" : { - "schema" : { - "type" : "object" - } - }, - "application/json" : { - "schema" : { - "type" : "object" - } - }, - "application/vnd.spring-boot.actuator.v2+json" : { - "schema" : { - "type" : "object" - } - } - } - } - } - } - }, - "/a1-policy/v2/configuration" : { - "get" : { - "tags" : [ "configuration" ], - "summary" : "Returns the contents of the application configuration file", - "operationId" : "getConfiguration", - "responses" : { - "200" : { - "description" : "Configuration", - "content" : { - "application/json" : { - "schema" : { - "type" : "string" - } - } - } - }, - "404" : { - "description" : "File is not found or readable", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/error_information" - } - } - } - } - } - }, - "put" : { - "tags" : [ "configuration" ], - "summary" : "Replace the current configuration file with the given configuration", - "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" - } - } - } - } - } - } - }, - "/actuator" : { - "get" : { - "tags" : [ "Actuator" ], - "summary" : "Actuator root web endpoint", - "operationId" : "links", - "responses" : { - "200" : { - "description" : "OK", - "content" : { - "application/vnd.spring-boot.actuator.v3+json" : { - "schema" : { - "type" : "object", - "additionalProperties" : { - "type" : "object", - "additionalProperties" : { - "$ref" : "#/components/schemas/Link" - } - } - } - }, - "application/json" : { - "schema" : { - "type" : "object", - "additionalProperties" : { - "type" : "object", - "additionalProperties" : { - "$ref" : "#/components/schemas/Link" - } - } - } - }, - "application/vnd.spring-boot.actuator.v2+json" : { - "schema" : { - "type" : "object", - "additionalProperties" : { - "type" : "object", - "additionalProperties" : { - "$ref" : "#/components/schemas/Link" - } - } - } - } - } - } - } - } - }, - "/actuator/loggers/{name}" : { - "get" : { - "tags" : [ "Actuator" ], - "summary" : "Actuator web endpoint 'loggers-name'", - "operationId" : "loggers-name", - "parameters" : [ { - "name" : "name", - "in" : "path", - "required" : true, - "style" : "simple", - "explode" : false, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "description" : "OK", - "content" : { - "application/vnd.spring-boot.actuator.v3+json" : { - "schema" : { - "type" : "object" - } - }, - "application/json" : { - "schema" : { - "type" : "object" - } - }, - "application/vnd.spring-boot.actuator.v2+json" : { - "schema" : { - "type" : "object" - } - } - } - } - } - }, - "post" : { - "tags" : [ "Actuator" ], - "summary" : "Actuator web endpoint 'loggers-name'", - "operationId" : "loggers-name_2", - "parameters" : [ { - "name" : "name", - "in" : "path", - "required" : true, - "style" : "simple", - "explode" : false, - "schema" : { - "type" : "string" - } - } ], - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "type" : "string", - "enum" : [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "FATAL", "OFF" ] - } - } - } - }, - "responses" : { - "200" : { - "description" : "OK", - "content" : { - "*/*" : { - "schema" : { - "type" : "object" - } - } - } - } - } - } - }, - "/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 and all its A1 policies wil be removed. (This timeout can be set or disabled when each service is initially registered)", - "operationId" : "keepAliveService", - "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" - } - } - } - } - } - } - }, - "/actuator/metrics" : { - "get" : { - "tags" : [ "Actuator" ], - "summary" : "Actuator web endpoint 'metrics'", - "operationId" : "metrics", - "responses" : { - "200" : { - "description" : "OK", - "content" : { - "application/vnd.spring-boot.actuator.v3+json" : { - "schema" : { - "type" : "object" - } - }, - "application/json" : { - "schema" : { - "type" : "object" - } - }, - "application/vnd.spring-boot.actuator.v2+json" : { - "schema" : { - "type" : "object" - } - } - } - } - } - } - }, - "/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", - "in" : "query", - "description" : "The identity of a policy type. If given, all Near-RT RICs supporting 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" - }, - "examples" : { - "ric_info_list" : { - "$ref" : "#/components/examples/ric_info_list" - } - } - } - } - }, - "404" : { - "description" : "Policy type is not found", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/error_information" - } - } - } - } - } - } - }, - "/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", - "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_status_list" - }, - "examples" : { - "service_status_list" : { - "$ref" : "#/components/examples/service_status_list" - } - } - } - } - }, - "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:<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" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/service_registration_info" - } - } - }, - "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" - } - } - } - } - }, - "callbacks" : { - "RICStatus" : { - "{$request.body#/callback_url}" : { - "post" : { - "tags" : [ "Service callbacks" ], - "summary" : "Callback for Near-RT RIC status", - "description" : "The URL to this call is registered 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" - } - } - } - } - } - } - } - } - } - } - }, - "/actuator/info" : { - "get" : { - "tags" : [ "Actuator" ], - "summary" : "Actuator web endpoint 'info'", - "operationId" : "info", - "responses" : { - "200" : { - "description" : "OK", - "content" : { - "application/vnd.spring-boot.actuator.v3+json" : { - "schema" : { - "type" : "object" - } - }, - "application/json" : { - "schema" : { - "type" : "object" - } - }, - "application/vnd.spring-boot.actuator.v2+json" : { - "schema" : { - "type" : "object" - } - } - } - } - } - } - }, - "/status" : { - "get" : { - "tags" : [ "Health Check" ], - "summary" : "Returns status and statistics of this service", - "operationId" : "getStatusV1", - "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" : "getPolicyTypeDefinition", - "parameters" : [ { - "name" : "policytype_id", - "in" : "path", - "required" : true, - "style" : "simple", - "explode" : false, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "description" : "schema of the given policy type", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/policy_type_definition" - }, - "examples" : { - "policy_type_definition" : { - "$ref" : "#/components/examples/policy_type_definition" - } - } - } - } - }, - "404" : { - "description" : "Policy type is not found", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/error_information" - } - } - } - } - } - } - }, - "/actuator/logfile" : { - "get" : { - "tags" : [ "Actuator" ], - "summary" : "Actuator web endpoint 'logfile'", - "operationId" : "logfile", - "responses" : { - "200" : { - "description" : "OK", - "content" : { - "text/plain;charset=UTF-8" : { - "schema" : { - "type" : "object" - } - } - } - } - } - } - }, - "/actuator/health" : { - "get" : { - "tags" : [ "Actuator" ], - "summary" : "Actuator web endpoint 'health'", - "operationId" : "health", - "responses" : { - "200" : { - "description" : "OK", - "content" : { - "application/vnd.spring-boot.actuator.v3+json" : { - "schema" : { - "type" : "object" - } - }, - "application/json" : { - "schema" : { - "type" : "object" - } - }, - "application/vnd.spring-boot.actuator.v2+json" : { - "schema" : { - "type" : "object" - } - } - } - } - } - } - }, - "/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.", - "operationId" : "getPolicyIds", - "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 <typename_version>)", - "required" : false, - "style" : "form", - "explode" : true, - "schema" : { - "type" : "string" - } - } ], - "responses" : { - "200" : { - "description" : "Policy identities", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/policy_id_list" - }, - "examples" : { - "policy_id_list" : { - "$ref" : "#/components/examples/policy_id_list" - } - } - } - } - }, - "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", - "requestBody" : { - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/policy_info" - } - } - }, - "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" - } - } - } - } - } - } - }, - "/a1-policy/v2/services/{service_id}" : { - "delete" : { - "tags" : [ "Service Registry and Supervision" ], - "summary" : "Unregister a service", - "operationId" : "deleteService", - "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" - } - } - } - } - } - } - }, - "/actuator/heapdump" : { - "get" : { - "tags" : [ "Actuator" ], - "summary" : "Actuator web endpoint 'heapdump'", - "operationId" : "heapdump", - "responses" : { - "200" : { - "description" : "OK", - "content" : { - "application/octet-stream" : { - "schema" : { - "type" : "object" - } - } - } - } - } - } - }, - "/a1-policy/v2/policies/{policy_id}/status" : { - "get" : { - "tags" : [ "A1 Policy Management" ], - "summary" : "Returns a policy status", - "operationId" : "getPolicyStatus", - "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" - }, - "examples" : { - "policy_status_info" : { - "$ref" : "#/components/examples/policy_status_info" - } - } - } - } - }, - "404" : { - "description" : "Policy is not found", - "content" : { - "application/json" : { - "schema" : { - "$ref" : "#/components/schemas/error_information" - } - } - } - } - } - } - } - }, - "components" : { - "schemas" : { - "policy_type_definition" : { - "type" : "object", - "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" : "Contains policy type schema definition" - }, - "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" : { - "type" : "object", - "properties" : { - "status" : { - "type" : "string", - "description" : "status text" - } - } - }, - "authorization_result" : { - "required" : [ "result" ], - "type" : "object", - "properties" : { - "result" : { - "type" : "boolean", - "description" : "If true, the access is granted" - } - }, - "description" : "Result of authorization", - "example" : { - "result" : true - } - }, - "ric_info" : { - "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" : { - "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 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" : { - "type" : "object", - "properties" : { - "policies" : { - "type" : "array", - "description" : "List of policy information", - "items" : { - "$ref" : "#/components/schemas/policy_info" - } - } - }, - "description" : "List of policy information" - }, - "policy_status_info" : { - "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" : { - "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" - } - } - }, - "ric_info_list" : { - "type" : "object", - "properties" : { - "rics" : { - "type" : "array", - "description" : "List of Near-RT RIC information", - "items" : { - "$ref" : "#/components/schemas/ric_info" - } - } - }, - "description" : "List of Near-RT RIC information" - }, - "input" : { - "required" : [ "access_type", "auth_token", "policy_type_id" ], - "type" : "object", - "properties" : { - "access_type" : { - "type" : "string", - "description" : "Access type", - "enum" : [ "READ", "WRITE", "DELETE" ] - }, - "auth_token" : { - "type" : "string", - "description" : "Authorization token" - }, - "policy_type_id" : { - "type" : "string", - "description" : "Policy type identifier" - } - }, - "description" : "input" - }, - "policy_authorization" : { - "required" : [ "input" ], - "type" : "object", - "properties" : { - "input" : { - "$ref" : "#/components/schemas/input" - } - }, - "description" : "Authorization request for A1 policy requests" - }, - "policy_type_id_list" : { - "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" : { - "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.", - "nullable" : false, - "example" : false, - "default" : false - }, - "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 registered." - }, - "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" : { - "type" : "object", - "properties" : { - "policy_ids" : { - "type" : "array", - "description" : "Policy identities", - "items" : { - "type" : "string", - "description" : "Policy identities" - } - } - }, - "description" : "A list of policy identities", - "example" : { - "policy_ids" : [ "policy_ids", "policy_ids" ] - } - }, - "service_status_list" : { - "type" : "object", - "properties" : { - "service_list" : { - "type" : "array", - "description" : "List of service information", - "items" : { - "$ref" : "#/components/schemas/service_status" - } - } - } - }, - "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:\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" : "object", - "properties" : { - "templated" : { - "type" : "boolean" - }, - "href" : { - "type" : "string" - } - } - } - }, - "examples" : { - "service_status" : { - "description" : "List of service information", - "value" : { - "callback_url" : "callback_url", - "service_id" : "service_id", - "keep_alive_interval_seconds" : 0, - "time_since_last_activity_seconds" : 6 - } - }, - "service_status_list" : { - "description" : "List of service information", - "value" : { - "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 - } ] - } - }, - "policy_type_definition" : { - "description" : "Schema of the given Policy type", - "value" : { - "policy_schema" : "{}" - } - }, - "policy_type_id_list" : { - "description" : "Array of policy type id's", - "value" : { - "policy_type_id_list" : [ "policytype_id", "policytype_id" ] - } - }, - "policy_info" : { - "description" : "Policy information of one A1-P policy", - "value" : { - "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" - } - }, - "policy_info_list" : { - "description" : "List of policy information", - "value" : { - "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" - } ] - } - }, - "policy_id_list" : { - "description" : "A list of policy identities", - "value" : { - "policy_ids" : [ "policy_ids", "policy_ids" ] - } - }, - "policy_status_info" : { - "description" : "Status for one A1-P Policy", - "value" : { - "last_modified" : "last_modified", - "status" : "{}" - } - }, - "status_info" : { - "value" : { - "status" : "status" - } - }, - "ric_info" : { - "value" : { - "ric_id" : "ric_id", - "managed_element_ids" : [ "managed_element_ids", "managed_element_ids" ], - "state" : "UNAVAILABLE", - "policytype_ids" : [ "policytype_ids", "policytype_ids" ] - } - }, - "ric_info_list" : { - "value" : { - "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" ] - } ] - } - } - } - } +{
+ "openapi" : "3.0.3",
+ "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 managemecnt 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 or defined 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>Service 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>Authorization API</h3><p>API used for access control of A1 Policy access. If configured, an external authorization provider is requested to grant access to the A1 Policy type.</p><h3>Spring Boot Actuator</h3><p>Provides generic functions used to monitor and manage the Spring web application.</p>",
+ "contact" : {
+ "url" : "https://www.onap.org/",
+ "email" : "discuss-list@onap.com"
+ },
+ "license" : {
+ "name" : "Copyright (C) 2020-2023 Nordix Foundation. Licensed under the Apache License.",
+ "url" : "http://www.apache.org/licenses/LICENSE-2.0"
+ },
+ "version" : "1.3.0",
+ "x-api-id" : "a31c510b-20e6-4a08-af16-368c44d7fba8",
+ "x-audience" : "external-public"
+ },
+ "servers" : [ {
+ "url" : "/"
+ } ],
+ "tags" : [ {
+ "name" : "A1 Policy Management",
+ "description" : "API used to create polices, Policy Instances and get them as individual using an ID or get all policies/Instances."
+ }, {
+ "name" : "NearRT-RIC Repository",
+ "description" : "API used to get the NearRT-RIC for the managed element."
+ }, {
+ "name" : "Service Registry and Supervision",
+ "description" : "API used to keep the service Alive with in the timeout period"
+ }, {
+ "name" : "Health Check",
+ "description" : "API used to get the health status and statistics of this service"
+ }, {
+ "name" : "Service callbacks"
+ }, {
+ "name" : "Authorization API",
+ "description" : "API used for authorization of information A1 policy access (this is provided by an authorization producer such as OPA). <br> Note that this API is called by PMS, it is not provided."
+ }, {
+ "name" : "Configuration",
+ "description" : "API used to create or fetch the application configuration."
+ }, {
+ "name" : "Actuator",
+ "description" : "Monitor and interact",
+ "externalDocs" : {
+ "description" : "Spring Boot Actuator Web API Documentation",
+ "url" : "https://docs.spring.io/spring-boot/docs/current/actuator-api/html/"
+ }
+ } ],
+ "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.",
+ "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 <typename_version>)",
+ "required" : false,
+ "style" : "form",
+ "explode" : true,
+ "schema" : {
+ "type" : "string"
+ }
+ } ],
+ "responses" : {
+ "200" : {
+ "description" : "OK - Returns A1 Policies which matches the criteria",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/policy_info_list"
+ },
+ "examples" : {
+ "policy_info_list" : {
+ "$ref" : "#/components/examples/policy_info_list"
+ }
+ }
+ }
+ }
+ },
+ "404" : {
+ "description" : "Not Found - Near-RT RIC, policy type or service not found",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/error_information"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/example-authz-check" : {
+ "post" : {
+ "tags" : [ "Authorization API" ],
+ "summary" : "Request for access authorization.",
+ "description" : "The authorization function decides if access is granted.",
+ "operationId" : "performAccessControl",
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/policy_authorization"
+ }
+ }
+ },
+ "required" : true
+ },
+ "responses" : {
+ "200" : {
+ "description" : "OK",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/authorization_result"
+ }
+ }
+ }
+ },
+ "403" : {
+ "description" : "Forbidden",
+ "content" : {
+ "application/problem+json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/error_information"
+ },
+ "example" : {
+ "status" : 403,
+ "title" : "Forbidden",
+ "detail" : "Your role does not allow to perform this action. Contact System Administrator to change your access rights."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/actuator/threaddump" : {
+ "get" : {
+ "tags" : [ "Actuator" ],
+ "summary" : "Actuator web endpoint 'threaddump'",
+ "operationId" : "threaddump",
+ "responses" : {
+ "200" : {
+ "description" : "OK",
+ "content" : {
+ "text/plain;charset=UTF-8" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/vnd.spring-boot.actuator.v3+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/vnd.spring-boot.actuator.v2+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ }
+ }
+ },
+ "x-internal" : true
+ }
+ },
+ "/a1-policy/v2/status" : {
+ "get" : {
+ "tags" : [ "Health Check" ],
+ "description" : "Returns status and statistics of this service",
+ "operationId" : "getStatus",
+ "responses" : {
+ "200" : {
+ "description" : "OK- Service is living Ok",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/status_info"
+ },
+ "examples" : {
+ "status_info" : {
+ "$ref" : "#/components/examples/status_info"
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/actuator/loggers" : {
+ "get" : {
+ "tags" : [ "Actuator" ],
+ "summary" : "Actuator web endpoint 'loggers'",
+ "operationId" : "loggers",
+ "responses" : {
+ "200" : {
+ "description" : "OK",
+ "content" : {
+ "application/vnd.spring-boot.actuator.v3+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/vnd.spring-boot.actuator.v2+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ }
+ }
+ },
+ "x-internal" : true
+ }
+ },
+ "/actuator/health/**" : {
+ "get" : {
+ "tags" : [ "Actuator" ],
+ "summary" : "Actuator web endpoint 'health-path'",
+ "operationId" : "health-path",
+ "responses" : {
+ "200" : {
+ "description" : "OK",
+ "content" : {
+ "application/vnd.spring-boot.actuator.v3+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/vnd.spring-boot.actuator.v2+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ }
+ }
+ },
+ "x-internal" : true
+ }
+ },
+ "/a1-policy/v2/rics/ric" : {
+ "get" : {
+ "tags" : [ "NearRT-RIC Repository" ],
+ "summary" : "Returns info of Near-RT RIC queried by the ric-id and managed-element-id",
+ "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",
+ "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" : "OK - Near-RT RIC is found",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/ric_info"
+ },
+ "examples" : {
+ "ric_info" : {
+ "$ref" : "#/components/examples/ric_info"
+ }
+ }
+ }
+ }
+ },
+ "404" : {
+ "description" : "Not Found",
+ "content" : {
+ "application/problem+json" : {
+ "example" : [ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "/actuator/shutdown" : {
+ "post" : {
+ "tags" : [ "Actuator" ],
+ "summary" : "Actuator web endpoint 'shutdown'",
+ "operationId" : "shutdown",
+ "responses" : {
+ "200" : {
+ "description" : "OK",
+ "content" : {
+ "application/vnd.spring-boot.actuator.v3+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/vnd.spring-boot.actuator.v2+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ }
+ }
+ },
+ "x-internal" : true
+ }
+ },
+ "/a1-policy/v2/policy-types" : {
+ "get" : {
+ "tags" : [ "A1 Policy Management" ],
+ "description" : "Query policy type identities",
+ "operationId" : "getPolicyTypes",
+ "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 <typename_version>)",
+ "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. Matching types will be returned sorted in ascending order.",
+ "required" : false,
+ "style" : "form",
+ "explode" : true,
+ "schema" : {
+ "type" : "string"
+ }
+ } ],
+ "responses" : {
+ "200" : {
+ "description" : "OK - Policy Type IDs Found",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/policy_type_id_list"
+ },
+ "examples" : {
+ "policy_type_id_list" : {
+ "$ref" : "#/components/examples/policy_type_id_list"
+ }
+ }
+ }
+ }
+ },
+ "404" : {
+ "description" : "Not Found",
+ "content" : {
+ "application/problem+json" : {
+ "example" : [ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "/a1-policy/v2/policies/{policy_id}" : {
+ "get" : {
+ "tags" : [ "A1 Policy Management" ],
+ "description" : "Returns a policy",
+ "operationId" : "getPolicy",
+ "parameters" : [ {
+ "name" : "policy_id",
+ "in" : "path",
+ "required" : true,
+ "style" : "simple",
+ "explode" : false,
+ "schema" : {
+ "type" : "string"
+ }
+ } ],
+ "responses" : {
+ "200" : {
+ "description" : "OK - Policy found",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/policy_info"
+ },
+ "examples" : {
+ "policy_info" : {
+ "$ref" : "#/components/examples/policy_info"
+ }
+ }
+ }
+ }
+ },
+ "404" : {
+ "description" : "Not Found",
+ "content" : {
+ "application/problem+json" : {
+ "example" : [ ]
+ }
+ }
+ }
+ }
+ },
+ "delete" : {
+ "tags" : [ "A1 Policy Management" ],
+ "summary" : "Delete a policy",
+ "description" : "Deleting the policy using the Policy's Policy ID.",
+ "operationId" : "deletePolicy",
+ "parameters" : [ {
+ "name" : "policy_id",
+ "in" : "path",
+ "required" : true,
+ "style" : "simple",
+ "explode" : false,
+ "schema" : {
+ "type" : "string"
+ }
+ } ],
+ "responses" : {
+ "200" : {
+ "description" : "OK - Policy deleted",
+ "content" : {
+ "*/*" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/void"
+ }
+ }
+ }
+ },
+ "423" : {
+ "description" : "Locked - HTTP Status code which can be used when the state is Locked",
+ "content" : {
+ "application/problem+json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/error_information"
+ },
+ "example" : {
+ "status" : 423,
+ "title" : "Locked",
+ "detail" : "Requested resource is in a locked state."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/actuator/metrics/{requiredMetricName}" : {
+ "get" : {
+ "tags" : [ "Actuator" ],
+ "summary" : "Actuator web endpoint 'metrics-requiredMetricName'",
+ "operationId" : "metrics-requiredMetricName",
+ "parameters" : [ {
+ "name" : "requiredMetricName",
+ "in" : "path",
+ "required" : true,
+ "style" : "simple",
+ "explode" : false,
+ "schema" : {
+ "type" : "string"
+ }
+ } ],
+ "responses" : {
+ "200" : {
+ "description" : "OK",
+ "content" : {
+ "application/vnd.spring-boot.actuator.v3+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/vnd.spring-boot.actuator.v2+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ }
+ }
+ },
+ "x-internal" : true
+ }
+ },
+ "/a1-policy/v2/configuration" : {
+ "get" : {
+ "tags" : [ "Configuration" ],
+ "description" : "Returns the contents of the application configuration file",
+ "operationId" : "getConfiguration",
+ "responses" : {
+ "200" : {
+ "description" : "OK - Configuration",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "string"
+ }
+ }
+ }
+ },
+ "404" : {
+ "description" : "Not Found",
+ "content" : {
+ "application/problem+json" : {
+ "example" : [ ]
+ }
+ }
+ }
+ },
+ "x-internal" : true
+ },
+ "put" : {
+ "tags" : [ "Configuration" ],
+ "description" : "Replace the current configuration with the given configuration",
+ "operationId" : "putConfiguration",
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ },
+ "required" : true
+ },
+ "responses" : {
+ "200" : {
+ "description" : "OK - Configuration updated",
+ "content" : {
+ "*/*" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/void"
+ }
+ }
+ }
+ },
+ "400" : {
+ "description" : "Bad Request",
+ "content" : {
+ "application/problem+json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/error_information"
+ },
+ "example" : {
+ "status" : 400,
+ "title" : "Bad Request",
+ "detail" : "The provided request is not valid."
+ }
+ }
+ }
+ }
+ },
+ "x-internal" : true
+ }
+ },
+ "/actuator" : {
+ "get" : {
+ "tags" : [ "Actuator" ],
+ "summary" : "Actuator root web endpoint",
+ "operationId" : "links",
+ "responses" : {
+ "200" : {
+ "description" : "OK",
+ "content" : {
+ "application/vnd.spring-boot.actuator.v3+json" : {
+ "schema" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "$ref" : "#/components/schemas/Link"
+ }
+ }
+ }
+ },
+ "application/json" : {
+ "schema" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "$ref" : "#/components/schemas/Link"
+ }
+ }
+ }
+ },
+ "application/vnd.spring-boot.actuator.v2+json" : {
+ "schema" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "$ref" : "#/components/schemas/Link"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "x-internal" : true
+ }
+ },
+ "/actuator/loggers/{name}" : {
+ "get" : {
+ "tags" : [ "Actuator" ],
+ "summary" : "Actuator web endpoint 'loggers-name'",
+ "operationId" : "loggers-name",
+ "parameters" : [ {
+ "name" : "name",
+ "in" : "path",
+ "required" : true,
+ "style" : "simple",
+ "explode" : false,
+ "schema" : {
+ "type" : "string"
+ }
+ } ],
+ "responses" : {
+ "200" : {
+ "description" : "OK",
+ "content" : {
+ "application/vnd.spring-boot.actuator.v3+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/vnd.spring-boot.actuator.v2+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ }
+ }
+ },
+ "x-internal" : true
+ },
+ "post" : {
+ "tags" : [ "Actuator" ],
+ "summary" : "Actuator web endpoint 'loggers-name'",
+ "operationId" : "loggers-name_2",
+ "parameters" : [ {
+ "name" : "name",
+ "in" : "path",
+ "required" : true,
+ "style" : "simple",
+ "explode" : false,
+ "schema" : {
+ "type" : "string"
+ }
+ } ],
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "type" : "string",
+ "enum" : [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "FATAL", "OFF" ]
+ }
+ }
+ }
+ },
+ "responses" : {
+ "200" : {
+ "description" : "OK",
+ "content" : {
+ "*/*" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ }
+ }
+ },
+ "x-internal" : true
+ }
+ },
+ "/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 and all its A1 policies wil be removed. (This timeout can be set or disabled when each service is initially registered)",
+ "operationId" : "keepAliveService",
+ "parameters" : [ {
+ "name" : "service_id",
+ "in" : "path",
+ "required" : true,
+ "style" : "simple",
+ "explode" : false,
+ "schema" : {
+ "type" : "string"
+ }
+ } ],
+ "responses" : {
+ "200" : {
+ "description" : "OK - Service supervision timer refreshed, OK",
+ "content" : {
+ "*/*" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ }
+ },
+ "404" : {
+ "description" : "Not Found",
+ "content" : {
+ "application/problem+json" : {
+ "example" : [ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "/actuator/metrics" : {
+ "get" : {
+ "tags" : [ "Actuator" ],
+ "summary" : "Actuator web endpoint 'metrics'",
+ "operationId" : "metrics",
+ "responses" : {
+ "200" : {
+ "description" : "OK",
+ "content" : {
+ "application/vnd.spring-boot.actuator.v3+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/vnd.spring-boot.actuator.v2+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ }
+ }
+ },
+ "x-internal" : true
+ }
+ },
+ "/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",
+ "in" : "query",
+ "description" : "The identity of a policy type. If given, all Near-RT RICs supporting 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"
+ },
+ "examples" : {
+ "ric_info_list" : {
+ "$ref" : "#/components/examples/ric_info_list"
+ }
+ }
+ }
+ }
+ },
+ "404" : {
+ "description" : "Not Found",
+ "content" : {
+ "application/problem+json" : {
+ "example" : [ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "/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",
+ "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_status_list"
+ },
+ "examples" : {
+ "service_status_list" : {
+ "$ref" : "#/components/examples/service_status_list"
+ }
+ }
+ }
+ }
+ },
+ "404" : {
+ "description" : "Not Found",
+ "content" : {
+ "application/problem+json" : {
+ "example" : [ ]
+ }
+ }
+ }
+ }
+ },
+ "put" : {
+ "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.",
+ "operationId" : "putService",
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/service_registration_info"
+ }
+ }
+ },
+ "required" : true
+ },
+ "responses" : {
+ "200" : {
+ "description" : "OK - Service updated",
+ "content" : {
+ "*/*" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ }
+ },
+ "201" : {
+ "description" : "Created - Service created",
+ "content" : {
+ "*/*" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ }
+ },
+ "400" : {
+ "description" : "Bad Request",
+ "content" : {
+ "application/problem+json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/error_information"
+ },
+ "example" : {
+ "status" : 400,
+ "title" : "Bad Request",
+ "detail" : "The provided request is not valid."
+ }
+ }
+ }
+ }
+ },
+ "callbacks" : {
+ "RICStatus" : {
+ "{$request.body#/callback_url}" : {
+ "post" : {
+ "tags" : [ "Service callbacks" ],
+ "summary" : "Callback for Near-RT RIC status",
+ "description" : "The URL to this call is registered 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"
+ }
+ }
+ }
+ },
+ "404" : {
+ "description" : "Not Found",
+ "content" : {
+ "application/problem+json" : {
+ "example" : [ ]
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/actuator/info" : {
+ "get" : {
+ "tags" : [ "Actuator" ],
+ "summary" : "Actuator web endpoint 'info'",
+ "operationId" : "info",
+ "responses" : {
+ "200" : {
+ "description" : "OK",
+ "content" : {
+ "application/vnd.spring-boot.actuator.v3+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/vnd.spring-boot.actuator.v2+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ }
+ }
+ },
+ "x-internal" : true
+ }
+ },
+ "/status" : {
+ "get" : {
+ "tags" : [ "Health Check" ],
+ "description" : "Returns status and statistics of this service",
+ "operationId" : "getStatusV1",
+ "responses" : {
+ "200" : {
+ "description" : "OK - Service is living",
+ "content" : {
+ "*/*" : {
+ "schema" : {
+ "type" : "string"
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/a1-policy/v2/policy-types/{policytype_id}" : {
+ "get" : {
+ "tags" : [ "A1 Policy Management" ],
+ "description" : "Returns a policy type definition",
+ "operationId" : "getPolicyTypeDefinition",
+ "parameters" : [ {
+ "name" : "policytype_id",
+ "in" : "path",
+ "required" : true,
+ "style" : "simple",
+ "explode" : false,
+ "schema" : {
+ "type" : "string"
+ }
+ } ],
+ "responses" : {
+ "200" : {
+ "description" : "OK - schema of the given policy type",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/policy_type_definition"
+ },
+ "examples" : {
+ "policy_type_definition" : {
+ "$ref" : "#/components/examples/policy_type_definition"
+ }
+ }
+ }
+ }
+ },
+ "404" : {
+ "description" : "Not Found",
+ "content" : {
+ "application/problem+json" : {
+ "example" : [ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "/actuator/logfile" : {
+ "get" : {
+ "tags" : [ "Actuator" ],
+ "summary" : "Actuator web endpoint 'logfile'",
+ "operationId" : "logfile",
+ "responses" : {
+ "200" : {
+ "description" : "OK",
+ "content" : {
+ "text/plain;charset=UTF-8" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ }
+ }
+ },
+ "x-internal" : true
+ }
+ },
+ "/actuator/health" : {
+ "get" : {
+ "tags" : [ "Actuator" ],
+ "summary" : "Actuator web endpoint 'health'",
+ "operationId" : "health",
+ "responses" : {
+ "200" : {
+ "description" : "OK",
+ "content" : {
+ "application/vnd.spring-boot.actuator.v3+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ },
+ "application/vnd.spring-boot.actuator.v2+json" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ }
+ }
+ },
+ "x-internal" : true
+ }
+ },
+ "/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.",
+ "operationId" : "getPolicyIds",
+ "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 <typename_version>)",
+ "required" : false,
+ "style" : "form",
+ "explode" : true,
+ "schema" : {
+ "type" : "string"
+ }
+ } ],
+ "responses" : {
+ "200" : {
+ "description" : "OK - Policy identities",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/policy_id_list"
+ },
+ "examples" : {
+ "policy_id_list" : {
+ "$ref" : "#/components/examples/policy_id_list"
+ }
+ }
+ }
+ }
+ },
+ "404" : {
+ "description" : "Not Found",
+ "content" : {
+ "application/problem+json" : {
+ "example" : [ ]
+ }
+ }
+ }
+ }
+ },
+ "put" : {
+ "tags" : [ "A1 Policy Management" ],
+ "description" : "Create or update a policy",
+ "operationId" : "putPolicy",
+ "requestBody" : {
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/policy_info"
+ }
+ }
+ },
+ "required" : true
+ },
+ "responses" : {
+ "200" : {
+ "description" : "OK - Policy updated",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/void"
+ }
+ }
+ }
+ },
+ "201" : {
+ "description" : "Created - Policy created",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/void"
+ }
+ }
+ }
+ },
+ "423" : {
+ "description" : "Locked - HTTP Status code which can be used when the state is Locked",
+ "content" : {
+ "application/problem+json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/error_information"
+ },
+ "example" : {
+ "status" : 423,
+ "title" : "Locked",
+ "detail" : "Requested resource is in a locked state."
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "/a1-policy/v2/services/{service_id}" : {
+ "delete" : {
+ "tags" : [ "Service Registry and Supervision" ],
+ "description" : "Unregister a service",
+ "operationId" : "deleteService",
+ "parameters" : [ {
+ "name" : "service_id",
+ "in" : "path",
+ "required" : true,
+ "style" : "simple",
+ "explode" : false,
+ "schema" : {
+ "type" : "string"
+ }
+ } ],
+ "responses" : {
+ "204" : {
+ "description" : "No Content - Service unregistered",
+ "content" : {
+ "*/*" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ }
+ },
+ "404" : {
+ "description" : "Not Found",
+ "content" : {
+ "application/problem+json" : {
+ "example" : [ ]
+ }
+ }
+ }
+ }
+ }
+ },
+ "/actuator/heapdump" : {
+ "get" : {
+ "tags" : [ "Actuator" ],
+ "summary" : "Actuator web endpoint 'heapdump'",
+ "operationId" : "heapdump",
+ "responses" : {
+ "200" : {
+ "description" : "OK",
+ "content" : {
+ "application/octet-stream" : {
+ "schema" : {
+ "type" : "object"
+ }
+ }
+ }
+ }
+ },
+ "x-internal" : true
+ }
+ },
+ "/a1-policy/v2/policies/{policy_id}/status" : {
+ "get" : {
+ "tags" : [ "A1 Policy Management" ],
+ "description" : "Returns a policy status",
+ "operationId" : "getPolicyStatus",
+ "parameters" : [ {
+ "name" : "policy_id",
+ "in" : "path",
+ "required" : true,
+ "style" : "simple",
+ "explode" : false,
+ "schema" : {
+ "type" : "string"
+ }
+ } ],
+ "responses" : {
+ "200" : {
+ "description" : "OK - Policy status",
+ "content" : {
+ "application/json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/policy_status_info"
+ },
+ "examples" : {
+ "policy_status_info" : {
+ "$ref" : "#/components/examples/policy_status_info"
+ }
+ }
+ }
+ }
+ },
+ "404" : {
+ "description" : "Not Found",
+ "content" : {
+ "application/problem+json" : {
+ "example" : [ ]
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "components" : {
+ "schemas" : {
+ "policy_type_definition" : {
+ "type" : "object",
+ "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" : "Contains policy type schema definition"
+ },
+ "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"
+ },
+ "title" : {
+ "type" : "string",
+ "description" : "A specific error name",
+ "example" : "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" : {
+ "type" : "object",
+ "properties" : {
+ "status" : {
+ "type" : "string",
+ "description" : "status text"
+ }
+ }
+ },
+ "authorization_result" : {
+ "required" : [ "result" ],
+ "type" : "object",
+ "properties" : {
+ "result" : {
+ "type" : "boolean",
+ "description" : "If true, the access is granted"
+ }
+ },
+ "description" : "Result of authorization",
+ "example" : {
+ "result" : true
+ }
+ },
+ "ric_info" : {
+ "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" : {
+ "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 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" : {
+ "type" : "object",
+ "properties" : {
+ "policies" : {
+ "type" : "array",
+ "description" : "List of policy information",
+ "items" : {
+ "$ref" : "#/components/schemas/policy_info"
+ }
+ }
+ },
+ "description" : "List of policy information"
+ },
+ "policy_status_info" : {
+ "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" : {
+ "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"
+ }
+ }
+ },
+ "ric_info_list" : {
+ "type" : "object",
+ "properties" : {
+ "rics" : {
+ "type" : "array",
+ "description" : "List of Near-RT RIC information",
+ "items" : {
+ "$ref" : "#/components/schemas/ric_info"
+ }
+ }
+ },
+ "description" : "List of Near-RT RIC information"
+ },
+ "input" : {
+ "required" : [ "access_type", "auth_token", "policy_type_id" ],
+ "type" : "object",
+ "properties" : {
+ "access_type" : {
+ "type" : "string",
+ "description" : "Access type",
+ "enum" : [ "READ", "WRITE", "DELETE" ]
+ },
+ "auth_token" : {
+ "type" : "string",
+ "description" : "Authorization token"
+ },
+ "policy_type_id" : {
+ "type" : "string",
+ "description" : "Policy type identifier"
+ }
+ },
+ "description" : "input"
+ },
+ "policy_authorization" : {
+ "required" : [ "input" ],
+ "type" : "object",
+ "properties" : {
+ "input" : {
+ "$ref" : "#/components/schemas/input"
+ }
+ },
+ "description" : "Authorization request for A1 policy requests"
+ },
+ "policy_type_id_list" : {
+ "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" : {
+ "required" : [ "policy_data", "policy_id", "policytype_id", "ric_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.",
+ "nullable" : false,
+ "example" : false,
+ "default" : false
+ },
+ "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 registered.",
+ "default" : ""
+ },
+ "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" : {
+ "type" : "object",
+ "properties" : {
+ "policy_ids" : {
+ "type" : "array",
+ "description" : "Policy identities",
+ "items" : {
+ "type" : "string",
+ "description" : "Policy identities"
+ }
+ }
+ },
+ "description" : "A list of policy identities",
+ "example" : {
+ "policy_ids" : [ "policy_ids", "policy_ids" ]
+ }
+ },
+ "service_status_list" : {
+ "type" : "object",
+ "properties" : {
+ "service_list" : {
+ "type" : "array",
+ "description" : "List of service information",
+ "items" : {
+ "$ref" : "#/components/schemas/service_status"
+ }
+ }
+ }
+ },
+ "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:\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" : "object",
+ "properties" : {
+ "templated" : {
+ "type" : "boolean"
+ },
+ "href" : {
+ "type" : "string"
+ }
+ }
+ }
+ },
+ "responses" : {
+ "Locked" : {
+ "description" : "Locked - HTTP Status code which can be used when the state is Locked",
+ "content" : {
+ "application/problem+json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/error_information"
+ },
+ "example" : {
+ "status" : 423,
+ "title" : "Locked",
+ "detail" : "Requested resource is in a locked state."
+ }
+ }
+ }
+ },
+ "BadRequest" : {
+ "description" : "Bad Request",
+ "content" : {
+ "application/problem+json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/error_information"
+ },
+ "example" : {
+ "status" : 400,
+ "title" : "Bad Request",
+ "detail" : "The provided request is not valid."
+ }
+ }
+ }
+ },
+ "Forbidden" : {
+ "description" : "Forbidden",
+ "content" : {
+ "application/problem+json" : {
+ "schema" : {
+ "$ref" : "#/components/schemas/error_information"
+ },
+ "example" : {
+ "status" : 403,
+ "title" : "Forbidden",
+ "detail" : "Your role does not allow to perform this action. Contact System Administrator to change your access rights."
+ }
+ }
+ }
+ },
+ "NotFound" : {
+ "description" : "Not Found",
+ "content" : {
+ "application/problem+json" : {
+ "example" : [ ]
+ }
+ }
+ }
+ },
+ "examples" : {
+ "service_status" : {
+ "description" : "List of service information",
+ "value" : {
+ "callback_url" : "callback_url",
+ "service_id" : "service_id",
+ "keep_alive_interval_seconds" : 0,
+ "time_since_last_activity_seconds" : 6
+ }
+ },
+ "service_status_list" : {
+ "description" : "List of service information",
+ "value" : {
+ "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
+ } ]
+ }
+ },
+ "policy_type_definition" : {
+ "description" : "Schema of the given Policy type",
+ "value" : {
+ "policy_schema" : "{}"
+ }
+ },
+ "policy_type_id_list" : {
+ "description" : "Array of policy type id's",
+ "value" : {
+ "policy_type_id_list" : [ "policytype_id", "policytype_id" ]
+ }
+ },
+ "policy_info" : {
+ "description" : "Policy information of one A1-P policy",
+ "value" : {
+ "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"
+ }
+ },
+ "policy_info_list" : {
+ "description" : "List of policy information",
+ "value" : {
+ "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"
+ } ]
+ }
+ },
+ "policy_id_list" : {
+ "description" : "A list of policy identities",
+ "value" : {
+ "policy_ids" : [ "some_policy_id", "some_policy_id" ]
+ }
+ },
+ "policy_status_info" : {
+ "description" : "Status for one A1-P Policy",
+ "value" : {
+ "last_modified" : "last_modified",
+ "status" : {
+ "value" : {
+ "status" : "status"
+ }
+ }
+ }
+ },
+ "status_info" : {
+ "value" : {
+ "status" : "status"
+ }
+ },
+ "ric_info" : {
+ "value" : {
+ "ric_id" : "ric_id",
+ "managed_element_ids" : [ "some_managed_element_id", "some_managed_element_id" ],
+ "state" : "UNAVAILABLE",
+ "policytype_ids" : [ "some_policytype_id", "some_policytype_id" ]
+ }
+ },
+ "ric_info_list" : {
+ "value" : {
+ "rics" : [ {
+ "ric_id" : "ric_id",
+ "managed_element_ids" : [ "some_managed_element_id", "some_managed_element_id" ],
+ "state" : "UNAVAILABLE",
+ "policytype_ids" : [ "policytype_id", "policytype_id" ]
+ }, {
+ "ric_id" : "ric_id",
+ "managed_element_ids" : [ "managed_element_ids", "managed_element_ids" ],
+ "state" : "UNAVAILABLE",
+ "policytype_ids" : [ "policytype_ids", "policytype_ids" ]
+ } ]
+ }
+ }
+ }
+ }
}
\ No newline at end of file diff --git a/docs/offeredapis/swagger/pms-api.yaml b/docs/offeredapis/swagger/pms-api.yaml index 0895f50d..1c25e051 100644 --- a/docs/offeredapis/swagger/pms-api.yaml +++ b/docs/offeredapis/swagger/pms-api.yaml @@ -1,6 +1,6 @@ # ============LICENSE_START======================================================= # Copyright (C) 2020-2023 Nordix Foundation -# Copyright (C) 2024 OpenInfra Foundation Europe. All rights reserved. +# Copyright (C) 2023-2024 OpenInfra Foundation Europe. All rights reserved. # Modifications Copyright (C) 2021 Pantheon.tech # Modifications Copyright (C) 2021 Bell Canada # ================================================================================ @@ -21,8 +21,10 @@ openapi: 3.0.3 info: + x-api-id: a31c510b-20e6-4a08-af16-368c44d7fba8 + x-audience: external-public 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\ + \ provides a REST API for managemecnt 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\ @@ -48,23 +50,37 @@ info: \ 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, and - Copyright (C) 2024 OpenInfra Foundation Europe. All rights reserved. + 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.2.0 + version: 1.3.0 + contact: + url: https://www.onap.org/ + email: discuss-list@onap.com servers: - url: / tags: - - description: "API used for authorization of information A1 policy access (this is + - name: A1 Policy Management + description: "API used to create polices, Policy Instances and get them as individual + using an ID or get all policies/Instances." + - name: NearRT-RIC Repository + description: "API used to get the NearRT-RIC for the managed element." + - name: Service Registry and Supervision + description: "API used to keep the service Alive with in the timeout period" + - name: Health Check + description: "API used to get the health status and statistics of this service" + - name: Service callbacks + - name: Authorization API + description: "API used for authorization of information A1 policy access (this is provided by an authorization producer such as OPA). <br> Note that this API is called by PMS, it is not provided." - name: Authorization API - - description: Monitor and interact + - name: Configuration + description: "API used to create or fetch the application configuration." + - name: Actuator + 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 paths: /a1-policy/v2/policy-instances: get: @@ -115,13 +131,13 @@ paths: $ref: '#/components/examples/policy_info_list' schema: $ref: '#/components/schemas/policy_info_list' - description: Policies + description: OK - Returns A1 Policies which matches the criteria "404": content: application/json: schema: $ref: '#/components/schemas/error_information' - description: "Near-RT RIC, policy type or service not found" + description: "Not Found - Near-RT RIC, policy type or service not found" summary: Query for A1 policy instances tags: - A1 Policy Management @@ -142,11 +158,14 @@ paths: schema: $ref: '#/components/schemas/authorization_result' description: OK + "403": + $ref: '#/components/responses/Forbidden' summary: Request for access authorization. tags: - Authorization API /actuator/threaddump: get: + x-internal: true operationId: threaddump responses: "200": @@ -179,12 +198,13 @@ paths: examples: status_info: $ref: '#/components/examples/status_info' - description: Service is living - summary: Returns status and statistics of this service + description: OK- Service is living Ok + description: Returns status and statistics of this service tags: - Health Check /actuator/loggers: get: + x-internal: true operationId: loggers responses: "200": @@ -204,6 +224,7 @@ paths: - Actuator /actuator/health/**: get: + x-internal: true operationId: health-path responses: "200": @@ -254,18 +275,16 @@ paths: examples: ric_info: $ref: '#/components/examples/ric_info' - description: Near-RT RIC is found + description: OK - 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 + $ref: '#/components/responses/NotFound' + description: NotFound - Requested NearRT-RIC Not Found + summary: Returns info of Near-RT RIC queried by the ric-id and managed-element-id tags: - NearRT-RIC Repository /actuator/shutdown: post: + x-internal: true operationId: shutdown responses: "200": @@ -324,18 +343,16 @@ paths: $ref: '#/components/examples/policy_type_id_list' schema: $ref: '#/components/schemas/policy_type_id_list' - description: Policy type IDs + description: OK - Policy Type IDs Found "404": - content: - application/json: - schema: - $ref: '#/components/schemas/error_information' - description: Near-RT RIC is not found - summary: Query policy type identities + $ref: '#/components/responses/NotFound' + description: 'Not Found - Requested Policy Type IDs Not Found' + description: Query policy type identities tags: - A1 Policy Management /a1-policy/v2/policies/{policy_id}: delete: + description: Deleting the policy using the Policy's Policy ID. operationId: deletePolicy parameters: - explode: false @@ -351,25 +368,10 @@ paths: '*/*': schema: $ref: '#/components/schemas/void' - description: Not used + description: OK - Policy deleted "423": - content: - '*/*': - schema: - $ref: '#/components/schemas/error_information' - 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 + $ref: '#/components/responses/Locked' + description: 'The requested policy using policy_id is Locked' summary: Delete a policy tags: - A1 Policy Management @@ -392,18 +394,16 @@ paths: examples: policy_info: $ref: '#/components/examples/policy_info' - description: Policy found + description: OK - Policy found "404": - content: - application/json: - schema: - $ref: '#/components/schemas/error_information' - description: Policy is not found - summary: Returns a policy + $ref: '#/components/responses/NotFound' + description: 'Not Found - Requested Policy using policy_id is not found' + description: Returns a policy tags: - A1 Policy Management /actuator/metrics/{requiredMetricName}: get: + x-internal: true operationId: metrics-requiredMetricName parameters: - explode: false @@ -431,6 +431,7 @@ paths: - Actuator /a1-policy/v2/configuration: get: + x-internal: true operationId: getConfiguration responses: "200": @@ -438,17 +439,15 @@ paths: application/json: schema: type: string - description: Configuration + description: OK - Configuration "404": - content: - application/json: - schema: - $ref: '#/components/schemas/error_information' - description: File is not found or readable - summary: Returns the contents of the application configuration file + $ref: '#/components/responses/NotFound' + description: Not Found - Configuration is not found or readable + description: Returns the contents of the application configuration file tags: - - configuration + - Configuration put: + x-internal: true operationId: putConfiguration requestBody: content: @@ -462,25 +461,15 @@ paths: '*/*': schema: $ref: '#/components/schemas/void' - description: Configuration updated + description: OK - Configuration updated "400": - content: - '*/*': - schema: - $ref: '#/components/schemas/error_information' - 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 + $ref: '#/components/responses/BadRequest' + description: Replace the current configuration with the given configuration tags: - - configuration + - Configuration /actuator: get: + x-internal: true operationId: links responses: "200": @@ -512,6 +501,7 @@ paths: - Actuator /actuator/loggers/{name}: get: + x-internal: true operationId: loggers-name parameters: - explode: false @@ -538,6 +528,7 @@ paths: tags: - Actuator post: + x-internal: true operationId: loggers-name_2 parameters: - explode: false @@ -592,18 +583,15 @@ paths: '*/*': schema: type: object - description: "Service supervision timer refreshed, OK" + description: "OK - Service supervision timer refreshed, OK" "404": - content: - '*/*': - schema: - $ref: '#/components/schemas/error_information' - description: "The service is not found, needs re-registration" + $ref: '#/components/responses/NotFound' summary: Heartbeat indicates that the service is running tags: - Service Registry and Supervision /actuator/metrics: get: + x-internal: true operationId: metrics responses: "200": @@ -647,11 +635,7 @@ paths: $ref: '#/components/examples/ric_info_list' description: OK "404": - content: - application/json: - schema: - $ref: '#/components/schemas/error_information' - description: Policy type is not found + $ref: '#/components/responses/NotFound' summary: Query Near-RT RIC information tags: - NearRT-RIC Repository @@ -680,11 +664,7 @@ paths: $ref: '#/components/examples/service_status_list' description: OK "404": - content: - application/json: - schema: - $ref: '#/components/schemas/error_information' - description: Service is not found + $ref: '#/components/responses/NotFound' summary: Returns service information tags: - Service Registry and Supervision @@ -707,46 +687,45 @@ paths: '*/*': schema: type: object - description: Service updated + description: OK - Service updated "201": content: '*/*': schema: type: object - description: Service created + description: Created - Service created "400": - content: - '*/*': - schema: - $ref: '#/components/schemas/error_information' - description: The ServiceRegistrationInfo is not accepted + $ref: '#/components/responses/BadRequest' summary: Register a service tags: - Service Registry and Supervision callbacks: RICStatus: "{$request.body#/callback_url}": - post: - description: The URL to this call is registered at Service registration. - operationId: serviceCallback - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/service_callback_info_v2' - required: true - responses: - "200": + post: + description: The URL to this call is registered at Service registration. + operationId: serviceCallback + requestBody: content: application/json: schema: - $ref: '#/components/schemas/void' - description: OK - summary: Callback for Near-RT RIC status - tags: - - Service callbacks + $ref: '#/components/schemas/service_callback_info_v2' + required: true + responses: + "200": + content: + application/json: + schema: + $ref: '#/components/schemas/void' + description: OK + "404": + $ref: '#/components/responses/NotFound' + summary: Callback for Near-RT RIC status + tags: + - Service callbacks /actuator/info: get: + x-internal: true operationId: info responses: "200": @@ -773,8 +752,8 @@ paths: '*/*': schema: type: string - description: Service is living - summary: Returns status and statistics of this service + description: OK - Service is living + description: Returns status and statistics of this service tags: - Health Check /a1-policy/v2/policy-types/{policytype_id}: @@ -797,18 +776,15 @@ paths: examples: policy_type_definition: $ref: '#/components/examples/policy_type_definition' - description: schema of the given policy type + description: OK - schema of the given policy type "404": - content: - application/json: - schema: - $ref: '#/components/schemas/error_information' - description: Policy type is not found - summary: Returns a policy type definition + $ref: '#/components/responses/NotFound' + description: Returns a policy type definition tags: - A1 Policy Management /actuator/logfile: get: + x-internal: true operationId: logfile responses: "200": @@ -822,6 +798,7 @@ paths: - Actuator /actuator/health: get: + x-internal: true operationId: health responses: "200": @@ -888,13 +865,9 @@ paths: $ref: '#/components/examples/policy_id_list' schema: $ref: '#/components/schemas/policy_id_list' - description: Policy identities + description: OK - Policy identities "404": - content: - application/json: - schema: - $ref: '#/components/schemas/error_information' - description: Near-RT RIC or type not found + $ref: '#/components/responses/NotFound' summary: Query policy identities tags: - A1 Policy Management @@ -912,26 +885,16 @@ paths: application/json: schema: $ref: '#/components/schemas/void' - description: Policy updated + description: OK - Policy updated "201": content: application/json: schema: $ref: '#/components/schemas/void' - description: Policy created + description: Created - Policy created "423": - content: - application/json: - schema: - $ref: '#/components/schemas/error_information' - 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 + $ref: '#/components/responses/Locked' + description: Create or update a policy tags: - A1 Policy Management /a1-policy/v2/services/{service_id}: @@ -946,29 +909,20 @@ paths: type: string style: simple responses: - "200": - content: - '*/*': - schema: - $ref: '#/components/schemas/void' - description: Not used "204": content: '*/*': schema: type: object - description: Service unregistered + description: No Content - Service unregistered "404": - content: - '*/*': - schema: - $ref: '#/components/schemas/error_information' - description: Service not found - summary: Unregister a service + $ref: '#/components/responses/NotFound' + description: Unregister a service tags: - Service Registry and Supervision /actuator/heapdump: get: + x-internal: true operationId: heapdump responses: "200": @@ -995,22 +949,56 @@ paths: "200": content: application/json: + schema: + $ref: '#/components/schemas/policy_status_info' examples: policy_status_info: $ref: '#/components/examples/policy_status_info' - schema: - $ref: '#/components/schemas/policy_status_info' - description: Policy status + description: OK - Policy status "404": - content: - application/json: - schema: - $ref: '#/components/schemas/error_information' - description: Policy is not found - summary: Returns a policy status + $ref: '#/components/responses/NotFound' + description: Returns a policy status tags: - A1 Policy Management components: + responses: + Locked: + description: "Locked - HTTP Status code which can be used when the state is Locked" + content: + application/problem+json: + schema: + $ref: '#/components/schemas/error_information' + example: + status: 423 + title: Locked + detail: Requested resource is in a locked state. + BadRequest: + description: Bad Request + content: + application/problem+json: + schema: + $ref: '#/components/schemas/error_information' + example: + status: 400 + title: Bad Request + detail: The provided request is not valid. + Forbidden: + description: Forbidden + content: + application/problem+json: + schema: + $ref: '#/components/schemas/error_information' + example: + status: 403 + title: Forbidden + detail: Your role does not allow to perform this action. Contact System Administrator to change your access rights. + NotFound: + description: Not Found + content: + application/problem+json: + example: + [ ] + examples: service_status: description: List of service information @@ -1019,6 +1007,7 @@ components: service_id: service_id keep_alive_interval_seconds: 0 time_since_last_activity_seconds: 6 + service_status_list: description: List of service information value: @@ -1073,13 +1062,15 @@ components: description: A list of policy identities value: policy_ids: - - policy_ids - - policy_ids + - some_policy_id + - some_policy_id policy_status_info: description: Status for one A1-P Policy value: last_modified: last_modified - status: "{}" + status: + value: + status: status status_info: value: status: status @@ -1087,23 +1078,23 @@ components: value: ric_id: ric_id managed_element_ids: - - managed_element_ids - - managed_element_ids + - some_managed_element_id + - some_managed_element_id state: UNAVAILABLE policytype_ids: - - policytype_ids - - policytype_ids + - some_policytype_id + - some_policytype_id ric_info_list: value: rics: - ric_id: ric_id managed_element_ids: - - managed_element_ids - - managed_element_ids + - some_managed_element_id + - some_managed_element_id state: UNAVAILABLE policytype_ids: - - policytype_ids - - policytype_ids + - policytype_id + - policytype_id - ric_id: ric_id managed_element_ids: - managed_element_ids @@ -1112,6 +1103,7 @@ components: policytype_ids: - policytype_ids - policytype_ids + schemas: policy_type_definition: description: Contains policy type schema definition @@ -1129,6 +1121,10 @@ components: of the problem.' example: Policy type not found type: string + title: + description: 'A specific error name' + type: string + example: Not Found status: description: 'The HTTP status code generated by the origin server for this occurrence of the problem. ' @@ -1311,6 +1307,7 @@ components: 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 registered. type: string + default: "" policy_data: description: the configuration of the policy type: object @@ -1323,7 +1320,6 @@ components: required: - ric_id - policy_id - - service_id - policy_data - policytype_id type: object @@ -1371,4 +1367,4 @@ components: type: boolean href: type: string - type: object + type: object
\ No newline at end of file |