{ "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}/versions/latest" : { "get" : { "tags" : [ "Legacy Guard Policy" ], "summary" : "Retrieve the latest version of a particular guard policy", "description" : "Returns the latest version of the specified guard policy", "operationId" : "getLatestVersionOfGuardPolicy", "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; Latest version 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" } } } } }