X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=a1%2Fopenapi.yaml;fp=a1%2Fopenapi.yaml;h=aa02cc698e3ffcb5055197d56827a213b58e7765;hb=5ad8f03e1fc7683bb59da31f59edc2f6c0b2372b;hp=0000000000000000000000000000000000000000;hpb=d36a35ba53b3d805cb73eda3d72af946ed977f16;p=ric-plt%2Fa1.git diff --git a/a1/openapi.yaml b/a1/openapi.yaml new file mode 100644 index 0000000..aa02cc6 --- /dev/null +++ b/a1/openapi.yaml @@ -0,0 +1,77 @@ +openapi: 3.0.0 +info: + version: 0.8.0 + title: RIC A1 +paths: + '/ric/policies/{policyname}': + parameters: + - name: policyname + in: path + description: the name of the policy to retrieve or replace + required: true + schema: + type: string + put: + description: > + Replace the current operation of policyname with the new parameters (replaces the current policy with the new one specified here). + + + Until there are standard policy definitions that are defined OUTSIDE of the scope of xapps, this API will be *very underspecified*. + This is a known gap, do not despair. + The PUT body is specified, *currently* in the xapp manifest that implements this policy; the caller should refer to the message_receives_payload_schema field to make this request. + The return content is also specified as above (in the xapp manifest) in the message_sends_payload_schema field. + + + Eventually, we need concrete policy defintions that are decoupled from xapp, and then this API description will become more fully specified. + tags: + - A1 Mediator + operationId: a1.controller.put_handler + requestBody: + content: + application/json: + schema: + type: object + + + responses: + '200': + description: > + The downstream component responsible for implementing this policy replied with a good response. Check the manifest for response details. + '400': + description: > + Bad PUT body for this policyname + '404': + description: > + there is no policy with this name + '502': + description: > + The xapp that implements this policy replied, but the reply was a "failure", OR there was no status indicating success or failure. + This returns an object containing the reason, and the return payload. + content: + application/json: + schema: + type: object + properties: + reason: + type: string + enum: [ + "NO STATUS", + "BAD STATUS", + "NOT JSON" + ] + return_payload: + type: object + + '504': + description: > + the downstream component responsible for handling this policy did not respond (in time) + + get: + description: Get the current state/value of policyname + tags: + - A1 Mediator + operationId: a1.controller.get_handler + responses: + '501': + description: > + "future GET support has been pondered, but this is not currently implemented"U