{ "apiVersion": "1.0.0", "swagger": "2.0", "basePath": "/", "info": { "x-audience": "external-partner", "contact": { "name": "Ericsson Software Technology", "email": "nonrtric@est.tech" }, "description": "The O-RAN A1 Adapter provides an internal REST CONF API for management of A1 policices, useful for test and verification. Note! For production, the https://docs.onap.org/projects/onap-ccsdk-oran/en/latest/offeredapis/pms-api.html should be used!", "title": "A1 Adapter", "version": "1.1.0" }, "paths": { "/restconf/operations/A1-ADAPTER-API:putA1Policy": {"post": { "summary": "Create or update a policy", "description": "Note! For production, the https://docs.onap.org/projects/onap-ccsdk-oran/en/latest/offeredapis/pms-api.html PUT /policy method should be used!", "nickname": "putA1Policy", "produces": "application/json", "responses": { "200": { "schema": {"$ref": "#/models/(putA1Policy)output"}, "description": "Policy created/updated", "examples": { "application/json": { "A1-ADAPTER-API:body": {}, "A1-ADAPTER-API:http-status": 200 } } } }, "parameters": [ { "schema": {"$ref": "#/models/(putA1Policy)input"}, "in": "body", "name": null, "description": null, "required": false } ] } }, "/operations/A1-ADAPTER-API:getA1Policy": {"post": { "summary": "Get policy configuration/s", "description": "Note! For production, the https://docs.onap.org/projects/onap-ccsdk-oran/en/latest/offeredapis/pms-api.html GET /policy method should be used!", "nickname": "getA1Policy", "produces": "application/json", "responses": { "200": { "schema": {"$ref": "#/models/(getA1Policy)output"}, "description": "Policy found", "examples": { "application/json": { "A1-ADAPTER-API:body": { "id": "Policy 1", "json": { "scope": { "ueId": "UE1 ", "cellId": "Cell 1" }, "qosObjectives": { "gfbr": 319.5, "mfbr": 782.75, "priorityLevel": 268.5, "pdb": 44.0 }, "qoeObjectives": { "qoeScore": 329.0, "initialBuffering": 27.75, "reBuffFreq": 539.0, "stallRatio": 343.0 }, "resources": [] }, "ownerServiceName": "Service 1", "ric": "ric1", "type": "STD_PolicyModelUnconstrained_0.2.0", "lastModified": "Wed, 01 Apr 2020 07:45:45 GMT" }, "A1-ADAPTER-API:http-status": 200 } } } }, "parameters": [ { "schema": {"$ref": "#/models/(getA1Policy)input"}, "in": "body", "name": null, "description": null, "required": false } ] } }, "/restconf/operations/A1-ADAPTER-API:getA1PolicyStatus": {"post": { "summary": "Get a policy status", "description": "Note! For production, the https://docs.onap.org/projects/onap-ccsdk-oran/en/latest/offeredapis/pms-api.html GET /policy-status method should be used!", "nickname": "getA1PolicyStatus", "produces": "application/json", "responses": { "200": { "schema": {"$ref": "#/models/(getA1PolicyStatus)output"}, "description": "Policy status", "examples": { "application/json": { "A1-ADAPTER-API:body": { "enforceStatus": "UNDEFINED" }, "A1-ADAPTER-API:http-status": 200 } } } }, "parameters": [ { "schema": {"$ref": "#/models/(getA1PolicyStatus)input"}, "in": "body", "name": null, "description": null, "required": false } ] } }, "/restconf/operations/A1-ADAPTER-API:getA1PolicyType": {"post": { "summary": "Get a policy type schema definition", "description": "Note! For production, the https://docs.onap.org/projects/onap-ccsdk-oran/en/latest/offeredapis/pms-api.html GET /policy-types method should be used!", "nickname": "getA1PolicyType", "produces": "application/json", "responses": { "200": { "schema": {"$ref": "#/models/(getA1PolicyType)output"}, "description": "Policy schema", "examples": { "application/json": { "A1-ADAPTER-API:body": { "$schema": "http://json-schema.org/draft-07/schema#", "title": "Example_QoETarget_1.0.0", "description": "Example QoE Target policy type", "type": "object", "properties": { "scope": { "type": "object", "properties": { "ueId": { "type": "string" }, "sliceId": { "type": "string" }, "qosId": { "type": "string" }, "cellId": { "type": "string" } }, "additionalProperties": false, "required": [ "ueId", "sliceId" ] }, "statement": { "type": "object", "properties": { "qoeScore": { "type": "number" }, "initialBuffering": { "type": "number" }, "reBuffFreq": { "type": "number" }, "stallRatio": { "type": "number" } }, "minProperties": 1, "additionalProperties": false } } }, "A1-ADAPTER-API:http-status": 200 } } } }, "parameters": [ { "schema": {"$ref": "#/models/(getA1PolicyType)input"}, "in": "body", "name": null, "description": null, "required": false } ] } }, "/restconf/operations/A1-ADAPTER-API:deleteA1Policy": {"post": { "summary": "Delete a policy", "description": "Note! For production, the https://docs.onap.org/projects/onap-ccsdk-oran/en/latest/offeredapis/pms-api.html DELETE /policy method should be used!", "nickname": "deleteA1Policy", "produces": "application/json", "responses": { "200": { "schema": {"$ref": "#/models/(deleteA1Policy)output"}, "description": "Policy deleted", "examples": { "application/json": { "A1-ADAPTER-API:body": {}, "A1-ADAPTER-API:http-status": 200 } } } }, "parameters": [ { "schema": {"$ref": "#/models/(deleteA1Policy)input"}, "in": "body", "name": null, "description": null, "required": false } ] } } }, "models": { "(putA1Policy)input": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "A1-ADAPTER-API:near-rt-ric-url": { "required": false, "type": "Some near-rt-ric-url", "example": "http://nearRtRic-sim1:8085/a1-p/policytypes/11/policies/5000" }, "A1-ADAPTER-API:body": { "required": false, "type": "Some body", "example": { "blocking_rate":20, "enforce":true, "trigger_threshold":10, "window_length":10 } } }, "id": "(putA1Policy)input" }, "(putA1Policy)output": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "A1-ADAPTER-API:body": { "required": false, "type": "Some body" }, "A1-ADAPTER-API:http-status": { "required": false, "type": "-2147483648" } }, "id": "(putA1Policy)output" }, "(getA1Policy)input": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "A1-ADAPTER-API:near-rt-ric-url": { "required": false, "type": "Some near-rt-ric-url", "example": "http://localhost:8081/policy?id=Policy 1" } }, "id": "(getA1Policy)input" }, "(getA1Policy)output": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "A1-ADAPTER-API:body": { "required": false, "type": "object" }, "A1-ADAPTER-API:http-status": { "required": false, "type": "-2147483648" } }, "id": "(getA1Policy)output" }, "(getA1PolicyStatus)input": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "A1-ADAPTER-API:near-rt-ric-url": { "required": false, "type": "Some near-rt-ric-url", "example": "http://ricsim_g2_1:8085/A1-P/v1/policies/5000/status" } }, "id": "(getA1PolicyStatus)input" }, "(getA1PolicyStatus)output": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "A1-ADAPTER-API:body": { "required": false, "type": "Some body" }, "A1-ADAPTER-API:http-status": { "required": false, "type": "-2147483648" } }, "id": "(getA1PolicyStatus)output" }, "(getA1PolicyType)input": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "A1-ADAPTER-API:near-rt-ric-url": { "required": false, "type": "Some near-rt-ric-url", "example": "http://nearRtRic-sim1:8085/a1-p/policytypes/11" } }, "id": "(getA1PolicyType)input" }, "(getA1PolicyType)output": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "A1-ADAPTER-API:body": { "required": false, "type": "Some body" }, "A1-ADAPTER-API:http-status": { "required": false, "type": "-2147483648" } }, "id": "(getA1PolicyType)output" }, "(deleteA1Policy)input": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "A1-ADAPTER-API:near-rt-ric-url": { "required": false, "type": "Some near-rt-ric-url", "example": "http://localhost:8282/restconf/operations/A1-ADAPTER-API:deleteA1Policy" } }, "id": "(deleteA1Policy)input" }, "(deleteA1Policy)output": { "$schema": "http://json-schema.org/draft-04/schema", "type": "object", "properties": { "A1-ADAPTER-API:body": { "required": false, "type": "Some body" }, "A1-ADAPTER-API:http-status": { "required": false, "type": "-2147483648" } }, "id": "(deleteA1Policy)output" } } }