1 # ==================================================================================
2 # Copyright (c) 2019-2020 Nokia
3 # Copyright (c) 2018-2020 AT&T Intellectual Property.
4 # Copyright (c) 2020-2023 Nordix Foundation, Modifications
6 # Licensed under the Apache License, Version 2.0 (the "License");
7 # you may not use this file except in compliance with the License.
8 # You may obtain a copy of the License at
10 # http://www.apache.org/licenses/LICENSE-2.0
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 # See the License for the specific language governing permissions and
16 # limitations under the License.
17 # ==================================================================================
30 Perform a healthcheck on a1
31 operationId: a1_controller_get_healthcheck
35 A1 is healthy. Anything other than a 200 should be considered a1 as failing
41 description: Get a list of all registered policy type ids
42 operationId: a1_controller_get_all_policy_types
45 description: list of all registered policy type ids
51 $ref: '#/components/schemas/policy_type_id'
56 description: Potentially transient backend database error. Client should
57 attempt to retry later.
59 /a1-p/policytypes/{policy_type_id}:
65 operationId: a1_controller_get_policy_type
67 - name: policy_type_id
70 represents a policy type identifier. Currently this is restricted to an integer range.
78 description: policy type successfully found
82 $ref: '#/components/schemas/policy_type_schema'
88 description: Potentially transient backend database error. Client should
89 attempt to retry later.
95 Create a new policy type . Replace is not currently allowed; to replace, for now do a DELETE and then a PUT again.
96 operationId: a1_controller_create_policy_type
98 - name: policy_type_id
101 represents a policy type identifier. Currently this is restricted to an integer range.
111 $ref: '#/components/schemas/policy_type_schema'
115 description: policy type successfully created
118 description: illegal ID, or object already existed
121 description: Potentially transient backend database error. Client should
122 attempt to retry later.
124 x-codegen-request-body-name: body
129 Delete this policy type. Can only be performed if there are no instances of this type
130 operationId: a1_controller_delete_policy_type
132 - name: policy_type_id
135 represents a policy type identifier. Currently this is restricted to an integer range.
144 policy type successfully deleted
148 Policy type cannot be deleted because there are instances All instances must be removed before a policy type can be deleted
152 policy type not found
155 description: Potentially transient backend database error. Client should
156 attempt to retry later.
158 /a1-p/policytypes/{policy_type_id}/policies:
162 description: get a list of all policy instance ids for this policy type id
163 operationId: a1_controller_get_all_instances_for_type
165 - name: policy_type_id
168 represents a policy type identifier. Currently this is restricted to an integer range.
176 description: list of all policy instance ids for this policy type id
182 $ref: '#/components/schemas/policy_instance_id'
184 - 3d2157af-6a8f-4a7c-810f-38c2f824bf12
185 - 06911bfc-c127-444a-8eb1-1bffad27cc3d
187 description: Potentially transient backend database error. Client should
188 attempt to retry later.
190 /a1-p/policytypes/{policy_type_id}/policies/{policy_instance_id}:
195 Retrieve the policy instance
196 operationId: a1_controller_get_policy_instance
198 - name: policy_type_id
201 represents a policy type identifier. Currently this is restricted to an integer range.
207 - name: policy_instance_id
210 represents a policy instance identifier. UUIDs are advisable but can be any string
214 - name: notificationDestination
217 URL send by non-RT RIC. This where non-RT RIC expects status updates on the policy creation
223 The policy instance. the schema of this object is defined by the create_schema field of the policy type
230 there is no policy instance with this policy_instance_id or there is no policy type with this policy_type_id
233 description: Potentially transient backend database error. Client should
234 attempt to retry later.
240 Create or replace a policy instance of type policy_type_id. The schema of the PUT body is defined by the create_schema field of the policy type.
241 operationId: a1_controller_create_or_replace_policy_instance
243 - name: policy_type_id
246 represents a policy type identifier. Currently this is restricted to an integer range.
252 - name: policy_instance_id
255 represents a policy instance identifier. UUIDs are advisable but can be any string
259 - name: notificationDestination
262 URL send by non-RT RIC. This where non-RT RIC expects status updates on the policy creation
271 the schema of this object is defined by the create_schema field of the policy type
276 Policy instance creation initiated
280 Bad PUT body for this policy instance
284 There is no policy type with this policy_type_id
287 description: Potentially transient backend database error. Client should
288 attempt to retry later.
290 x-codegen-request-body-name: body
295 Delete this policy instance
296 operationId: a1_controller_delete_policy_instance
298 - name: policy_type_id
301 represents a policy type identifier. Currently this is restricted to an integer range.
307 - name: policy_instance_id
310 represents a policy instance identifier. UUIDs are advisable but can be any string
314 - name: notificationDestination
317 URL send by non-RT RIC. This where non-RT RIC expects status updates on the policy creation
323 policy instance deletion initiated
327 there is no policy instance with this policy_instance_id or there is no policy type with this policy_type_id
330 description: Potentially transient backend database error. Client should
331 attempt to retry later.
333 /a1-p/policytypes/{policy_type_id}/policies/{policy_instance_id}/status:
338 Retrieve the policy instance status across all handlers of the policy If this endpoint returns successfully (200),
339 it is either ENFORCED or NOT_ENFORCED. ENFORCED is returned if at least one policy handler in the RIC is implementing
341 NOT_ENFORCED is returned otherwise If a policy instance is successfully deleted, this endpoint will return a 404 (not a 200).
342 operationId: a1_controller_get_policy_instance_status
344 - name: policy_type_id
347 represents a policy type identifier. Currently this is restricted to an integer range.
353 - name: policy_instance_id
356 represents a policy instance identifier. UUIDs are advisable but can be any string
363 successfully retrieved the status
377 - SCOPE_NOT_APPLICABLE
378 - STATEMENT_NOT_APPLICABLE
382 there is no policy instance with this policy_instance_id or there is no policy type with this policy_type_id
385 description: Potentially transient backend database error. Client should
386 attempt to retry later.
391 - A1 EI Data Delivery
393 Deliver data produced by data producer.
394 operationId: a1_controller_data_delivery
401 object to represent data object
406 successfully delivered data from data producer
410 no job id defined for this data delivery
412 x-codegen-request-body-name: body
425 description: name of the policy type
428 description: description of the policy type
431 description: the integer of the policy type
436 jsonschema (following http://json-schema.org/draft-07/schema) of the CREATE payload to be sent to handlers of this policy
442 represents a policy type identifier. Currently this is restricted to an integer range.
446 represents a policy instance identifier. UUIDs are advisable but can be any string
447 example: 3d2157af-6a8f-4a7c-810f-38c2f824bf12