summaryrefslogtreecommitdiffstats
path: root/docs/api/guard-policy-api.json
diff options
context:
space:
mode:
authorChenfei Gao <cgao@research.att.com>2019-05-21 13:32:30 -0400
committerChenfei Gao <cgao@research.att.com>2019-05-21 13:32:40 -0400
commit55e1f559eb898e470bb7af9f83fb0ac23069bf34 (patch)
treeef3b2d819e567a66dd24401d8d17024f4663a13e /docs/api/guard-policy-api.json
parent5fc2fdb0eebfec733acbc26dc9ab933279ea2c83 (diff)
Add policy design api documentation
Adding swagger and global api table to api rst documentation Issue-ID: POLICY-1680 Change-Id: Iae966917b73a8762172e708fe207c4fc6e52615f Signed-off-by: Chenfei Gao <cgao@research.att.com>
Diffstat (limited to 'docs/api/guard-policy-api.json')
-rw-r--r--docs/api/guard-policy-api.json405
1 files changed, 405 insertions, 0 deletions
diff --git a/docs/api/guard-policy-api.json b/docs/api/guard-policy-api.json
new file mode 100644
index 00000000..18a42587
--- /dev/null
+++ b/docs/api/guard-policy-api.json
@@ -0,0 +1,405 @@
+{
+ "swagger" : "2.0",
+ "basePath" : "/",
+ "tags" : [ {
+ "name" : "Legacy Guard Policy"
+ } ],
+ "schemes" : [ "http", "https" ],
+ "paths" : {
+ "/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies/{policyId}" : {
+ "get" : {
+ "tags" : [ "Legacy Guard Policy" ],
+ "summary" : "Retrieve all versions of a particular guard policy",
+ "description" : "Returns a list of all versions of the specified guard policy",
+ "operationId" : "getAllVersionsOfGuardPolicy",
+ "produces" : [ "application/json" ],
+ "parameters" : [ {
+ "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"
+ } ],
+ "responses" : {
+ "200" : {
+ "description" : "successful operation; All versions of specified guard policy will be returned.",
+ "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" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "$ref" : "#/definitions/LegacyGuardPolicyOutput"
+ }
+ }
+ },
+ "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" : "Dublin"
+ }
+ }
+ },
+ "/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies/{policyId}/versions/{policyVersion}" : {
+ "get" : {
+ "tags" : [ "Legacy Guard Policy" ],
+ "summary" : "Retrieve one version of a particular guard policy",
+ "description" : "Returns a particular version of a specified guard policy",
+ "operationId" : "getSpecificVersionOfGuardPolicy",
+ "produces" : [ "application/json" ],
+ "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; Specified version of guard policy will be returned.",
+ "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" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "$ref" : "#/definitions/LegacyGuardPolicyOutput"
+ }
+ }
+ },
+ "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" : "Dublin"
+ }
+ },
+ "delete" : {
+ "tags" : [ "Legacy Guard Policy" ],
+ "summary" : "Delete a particular version of a guard policy",
+ "description" : "Delete a particular version of a guard policy. It must follow one rule. Rule: the version that has been deployed in PDP group(s) cannot be deleted",
+ "operationId" : "deleteSpecificVersionOfGuardPolicy",
+ "consumes" : [ "application/json" ],
+ "produces" : [ "application/json" ],
+ "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; Newly deleted guard policy will be returned.",
+ "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" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "$ref" : "#/definitions/LegacyGuardPolicyOutput"
+ }
+ }
+ },
+ "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" : "Dublin"
+ }
+ }
+ },
+ "/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies" : {
+ "post" : {
+ "tags" : [ "Legacy Guard Policy" ],
+ "summary" : "Create a new guard policy",
+ "description" : "Create a new guard policy. Client should provide entity body of the new guard policy",
+ "operationId" : "createGuardPolicy",
+ "consumes" : [ "application/json" ],
+ "produces" : [ "application/json" ],
+ "parameters" : [ {
+ "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 policy",
+ "required" : true,
+ "type" : "ToscaServiceTemplate",
+ "schema" : {
+ "$ref" : "#/definitions/LegacyGuardPolicyInput"
+ }
+ } ],
+ "responses" : {
+ "200" : {
+ "description" : "successful operation; Newly created guard policy will be returned.",
+ "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" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "$ref" : "#/definitions/LegacyGuardPolicyOutput"
+ }
+ }
+ },
+ "400" : {
+ "description" : "Invalid Body"
+ },
+ "401" : {
+ "description" : "Authentication Error"
+ },
+ "403" : {
+ "description" : "Authorization Error"
+ },
+ "500" : {
+ "description" : "Internal Server Error"
+ }
+ },
+ "security" : [ {
+ "basicAuth" : [ ]
+ } ],
+ "x-interface info" : {
+ "api-version" : "1.0.0",
+ "last-mod-release" : "Dublin"
+ }
+ }
+ }
+ },
+ "securityDefinitions" : {
+ "basicAuth" : {
+ "description" : "",
+ "type" : "basic"
+ }
+ },
+ "definitions" : {
+ "LegacyGuardPolicyContent" : {
+ "type" : "object",
+ "properties" : {
+ "actor" : {
+ "type" : "string"
+ },
+ "recipe" : {
+ "type" : "string"
+ },
+ "targets" : {
+ "type" : "string"
+ },
+ "clname" : {
+ "type" : "string"
+ },
+ "limit" : {
+ "type" : "string"
+ },
+ "timeWindow" : {
+ "type" : "string"
+ },
+ "timeUnits" : {
+ "type" : "string"
+ },
+ "min" : {
+ "type" : "string"
+ },
+ "max" : {
+ "type" : "string"
+ },
+ "guardActiveStart" : {
+ "type" : "string"
+ },
+ "guardActiveEnd" : {
+ "type" : "string"
+ },
+ "asPropertyMap" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "type" : "string"
+ }
+ }
+ }
+ },
+ "LegacyGuardPolicyOutput" : {
+ "type" : "object",
+ "properties" : {
+ "type" : {
+ "type" : "string"
+ },
+ "version" : {
+ "type" : "string"
+ },
+ "metadata" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "type" : "object"
+ }
+ },
+ "properties" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "$ref" : "#/definitions/LegacyGuardPolicyContent"
+ }
+ }
+ }
+ },
+ "LegacyGuardPolicyInput" : {
+ "type" : "object",
+ "properties" : {
+ "policy-id" : {
+ "type" : "string"
+ },
+ "policy-version" : {
+ "type" : "string"
+ },
+ "content" : {
+ "$ref" : "#/definitions/LegacyGuardPolicyContent"
+ }
+ }
+ }
+ }
+} \ No newline at end of file