X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=docs%2Fapi%2Fswagger%2Fpolicy-api.json;h=95c73973015cd8c29ba47da1af9e5cba3c2ab966;hb=a6c09a2f247323d92a64cdf5793442da9a13e05c;hp=0037fd5d9c8e82fb96a801ea959adf9539b8fda9;hpb=af35b6a245e1587a3f149746c043fc4520daecaa;p=policy%2Fparent.git diff --git a/docs/api/swagger/policy-api.json b/docs/api/swagger/policy-api.json index 0037fd5d..95c73973 100644 --- a/docs/api/swagger/policy-api.json +++ b/docs/api/swagger/policy-api.json @@ -12,7 +12,7 @@ "summary" : "Retrieve all versions of a policy created for a particular policy type version", "description" : "Returns a list of all versions of specified policy created for the specified policy type version", "operationId" : "getAllPolicies", - "produces" : [ "application/json" ], + "produces" : [ "application/json", "application/yaml" ], "parameters" : [ { "name" : "policyTypeId", "in" : "path", @@ -85,8 +85,8 @@ "summary" : "Create a new policy for a policy type version", "description" : "Create a new policy for a policy type. Client should provide TOSCA body of the new policy", "operationId" : "createPolicy", - "consumes" : [ "application/json" ], - "produces" : [ "application/json" ], + "consumes" : [ "application/json", "application/yaml" ], + "produces" : [ "application/json", "application/yaml" ], "parameters" : [ { "name" : "policyTypeId", "in" : "path", @@ -154,6 +154,9 @@ "404" : { "description" : "Resource Not Found" }, + "406" : { + "description" : "Not Acceptable Version" + }, "500" : { "description" : "Internal Server Error" } @@ -173,7 +176,7 @@ "summary" : "Retrieve all version details of a policy created for a particular policy type version", "description" : "Returns a list of all version details of the specified policy", "operationId" : "getAllVersionsOfPolicy", - "produces" : [ "application/json" ], + "produces" : [ "application/json", "application/yaml" ], "parameters" : [ { "name" : "policyTypeId", "in" : "path", @@ -254,7 +257,7 @@ "summary" : "Retrieve one version of a policy created for a particular policy type version", "description" : "Returns a particular version of specified policy created for the specified policy type version", "operationId" : "getSpecificVersionOfPolicy", - "produces" : [ "application/json" ], + "produces" : [ "application/json", "application/yaml" ], "parameters" : [ { "name" : "policyTypeId", "in" : "path", @@ -339,7 +342,7 @@ "summary" : "Delete a particular version of a policy", "description" : "Delete a particular version of a policy. It must follow one rule. Rule: the version that has been deployed in PDP group(s) cannot be deleted", "operationId" : "deleteSpecificVersionOfPolicy", - "produces" : [ "application/json" ], + "produces" : [ "application/json", "application/yaml" ], "parameters" : [ { "name" : "policyTypeId", "in" : "path", @@ -429,7 +432,7 @@ "summary" : "Retrieve the latest version of a particular policy", "description" : "Returns the latest version of specified policy", "operationId" : "getLatestVersionOfPolicy", - "produces" : [ "application/json" ], + "produces" : [ "application/json", "application/yaml" ], "parameters" : [ { "name" : "policyTypeId", "in" : "path", @@ -504,42 +507,313 @@ } } }, - "/policy/api/v1/policytypes/{policyTypeId}/versions/{policyTypeVersion}/policies/{policyId}/versions/deployed" : { - "get" : { + "/policy/api/v1/policies/{policyId}/versions/{policyVersion}": { + "get": { + "tags": [ + "Policy" + ], + "summary": "Retrieve specific version of a specified policy", + "description": "Returns a particular version of specified policy", + "operationId": "getSpecificPolicy", + "consumes": [ + "application/json", + "application/yaml" + ], + "produces": [ + "application/json", + "application/yaml" + ], + "parameters": [ + { + "name": "policyId", + "in": "path", + "description": "Name of policy", + "required": true, + "type": "string" + }, + { + "name": "policyVersion", + "in": "path", + "description": "Version of policy", + "required": true, + "type": "string" + }, + { + "name": "X-ONAP-RequestID", + "in": "header", + "description": "RequestID for http transaction", + "required": false, + "type": "string", + "format": "uuid" + }, + { + "name": "mode", + "in": "query", + "description": "Fetch mode for policies, BARE for bare policies (default), REFERENCED for fully referenced policies", + "required": false, + "type": "string", + "default": "bare", + "enum": [ + "BARE", + "REFERENCED" + ] + } + ], + "responses": { + "200": { + "description": "successful operation", + "headers": { + "X-MinorVersion": { + "type": "string", + "description": "Used to request or communicate a MINOR version back from the client to the server, and from the server back to the client" + }, + "X-PatchVersion": { + "type": "string", + "description": "Used only to communicate a PATCH version in a response for troubleshooting purposes only, and will not be provided by the client on request" + }, + "X-LatestVersion": { + "type": "string", + "description": "Used only to communicate an API's latest version" + }, + "X-ONAP-RequestID": { + "type": "string", + "format": "uuid", + "description": "Used to track REST transactions for logging purpose" + } + }, + "schema": { + "$ref": "#/definitions/ToscaServiceTemplate" + } + }, + "401": { + "description": "Authentication Error" + }, + "403": { + "description": "Authorization Error" + }, + "404": { + "description": "Resource Not Found" + }, + "500": { + "description": "Internal Server Error" + } + }, + "security": [ + { + "basicAuth": [] + } + ], + "x-interface info": { + "api-version": "1.0.0", + "last-mod-release": "Guilin" + } + }, + "delete": { + "tags": [ + "Policy" + ], + "summary": "Delete a particular version of a policy", + "description": "Rule: the version that has been deployed in PDP group(s) cannot be deleted", + "operationId": "deleteSpecificPolicy", + "consumes": [ + "application/json", + "application/yaml" + ], + "produces": [ + "application/json", + "application/yaml" + ], + "parameters": [ + { + "name": "policyId", + "in": "path", + "description": "ID of policy", + "required": true, + "type": "string" + }, + { + "name": "policyVersion", + "in": "path", + "description": "Version of policy", + "required": true, + "type": "string" + }, + { + "name": "X-ONAP-RequestID", + "in": "header", + "description": "RequestID for http transaction", + "required": false, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "successful operation", + "headers": { + "X-MinorVersion": { + "type": "string", + "description": "Used to request or communicate a MINOR version back from the client to the server, and from the server back to the client" + }, + "X-PatchVersion": { + "type": "string", + "description": "Used only to communicate a PATCH version in a response for troubleshooting purposes only, and will not be provided by the client on request" + }, + "X-LatestVersion": { + "type": "string", + "description": "Used only to communicate an API's latest version" + }, + "X-ONAP-RequestID": { + "type": "string", + "format": "uuid", + "description": "Used to track REST transactions for logging purpose" + } + }, + "schema": { + "$ref": "#/definitions/ToscaServiceTemplate" + } + }, + "401": { + "description": "Authentication Error" + }, + "403": { + "description": "Authorization Error" + }, + "404": { + "description": "Resource Not Found" + }, + "409": { + "description": "Delete Conflict, Rule Violation" + }, + "500": { + "description": "Internal Server Error" + } + }, + "security": [ + { + "basicAuth": [] + } + ], + "x-interface info": { + "api-version": "1.0.0", + "last-mod-release": "Guilin" + } + } + }, + "/policy/api/v1/policies" : { + "get": { + "tags": [ + "Policy" + ], + "summary": "Retrieve all versions of available policies", + "description": "Returns all version of available policies", + "operationId": "getPolicies", + "consumes": [ + "application/json", + "application/yaml" + ], + "produces": [ + "application/json", + "application/yaml" + ], + "parameters": [ + { + "name": "X-ONAP-RequestID", + "in": "header", + "description": "RequestID for http transaction", + "required": false, + "type": "string", + "format": "uuid" + }, + { + "name": "mode", + "in": "query", + "description": "Fetch mode for policies, BARE for bare policies (default), REFERENCED for fully referenced policies", + "required": false, + "type": "string", + "default": "bare", + "enum": [ + "BARE", + "REFERENCED" + ] + } + ], + "responses": { + "200": { + "description": "successful operation", + "headers": { + "X-MinorVersion": { + "type": "string", + "description": "Used to request or communicate a MINOR version back from the client to the server, and from the server back to the client" + }, + "X-PatchVersion": { + "type": "string", + "description": "Used only to communicate a PATCH version in a response for troubleshooting purposes only, and will not be provided by the client on request" + }, + "X-LatestVersion": { + "type": "string", + "description": "Used only to communicate an API's latest version" + }, + "X-ONAP-RequestID": { + "type": "string", + "format": "uuid", + "description": "Used to track REST transactions for logging purpose" + } + }, + "schema": { + "$ref": "#/definitions/ToscaServiceTemplate" + } + }, + "401": { + "description": "Authentication Error" + }, + "403": { + "description": "Authorization Error" + }, + "404": { + "description": "Resource Not Found" + }, + "500": { + "description": "Internal Server Error" + } + }, + "security": [ + { + "basicAuth": [] + } + ], + "x-interface info": { + "api-version": "1.0.0", + "last-mod-release": "Guilin" + } + }, + "post" : { "tags" : [ "Policy" ], - "summary" : "Retrieve deployed versions of a particular policy in pdp groups", - "description" : "Returns deployed versions of specified policy in pdp groups", - "operationId" : "getDeployedVersionsOfPolicy", - "produces" : [ "application/json" ], + "summary" : "Create one or more new policies", + "description" : "Create one or more new policies. Client should provide TOSCA body of the new policies", + "operationId" : "createPolicies", + "consumes" : [ "application/json", "application/yaml" ], + "produces" : [ "application/json", "application/yaml" ], "parameters" : [ { - "name" : "policyTypeId", - "in" : "path", - "description" : "ID of policy type", - "required" : true, - "type" : "string" - }, { - "name" : "policyTypeVersion", - "in" : "path", - "description" : "Version of policy type", - "required" : true, - "type" : "string" - }, { - "name" : "policyId", - "in" : "path", - "description" : "ID of policy", - "required" : true, - "type" : "string" - }, { "name" : "X-ONAP-RequestID", "in" : "header", "description" : "RequestID for http transaction", "required" : false, "type" : "string", "format" : "uuid" + }, { + "in" : "body", + "name" : "body", + "description" : "Entity body of policies", + "required" : true, + "type" : "ToscaServiceTemplate", + "schema" : { + "$ref" : "#/definitions/ToscaServiceTemplate" + } } ], "responses" : { "200" : { - "description" : "successful operation; Deployed versions of specified policy matching specified policy type will be returned.", + "description" : "successful operation; Newly created policies will be returned.", "headers" : { "X-MinorVersion" : { "type" : "string", @@ -560,12 +834,12 @@ } }, "schema" : { - "type" : "array", - "items" : { - "$ref" : "#/definitions/ToscaPolicy" - } + "$ref" : "#/definitions/ToscaServiceTemplate" } }, + "400" : { + "description" : "Invalid Body" + }, "401" : { "description" : "Authentication Error" }, @@ -575,6 +849,9 @@ "404" : { "description" : "Resource Not Found" }, + "406" : { + "description" : "Not Acceptable Version" + }, "500" : { "description" : "Internal Server Error" } @@ -584,11 +861,11 @@ } ], "x-interface info" : { "api-version" : "1.0.0", - "last-mod-release" : "Dublin" + "last-mod-release" : "Frankfurt" } } } - }, + }, "securityDefinitions" : { "basicAuth" : { "description" : "",