{
	"swagger": "2.0",
	"info": {
		"version": "1.0.0",
		"title": "VitalQIP REST Interface",
		"description": "Sample call for RESTful APIs"
	},
	"tags": [
		{
			"name": "Authentication"
		},
		{
			"name": "V4 Network"
		},
		{
			"name": "V6 Subnet"
		},
		{
			"name": "V6 Address"
		},
		{
			"name": "V4 Subnet"
		},
		{
			"name": "V4 Address"
		},
		{
			"name": "RR"
		},
		{
			"name": "Selected V4 Address"
		},
		{
			"name": "Selected V6 Address"
		},
		{
			"name": "Zone"
		},
		{
			"name": "Notification Block Change"
		},
		{
			"name": "V6 Block"
		},
		{
			"name": "V6 Range"
		},
		{
			"name": "SAML Identity Provider"
		},
		{
			"name": "Utilities"
		}
	],
	"basePath": "/api",
	"consumes": [
		"application/json",
		"application/xml"
	],
	"produces": [
		"application/json",
		"application/xml"
	],
	"paths": {
		"/v1/{orgName}/v4network/{networkInfo}{extension}": {
			"get": {
				"description": "Get V4 network by name or address",
				"summary": "Get V4 network",
				"operationId": "getV4Network",
				"tags": [
					"V4 Network"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "networkInfo",
						"description": "Network info (address or name of V4 network)",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/V4NetworkRec"
						}
					},
					"400": {
						"description": "&lt;address&gt; is not an IPv4 network address. Network address should have format x.x.x.0 (x is a number between 1 and 255)\n"
					},
					"404": {
						"description": "Network not found: [address=&lt;address&gt;]\n"
					}
				}
			}
		},
		"/v1/{orgName}/v4network/{networkInfo}": {
			"delete": {
				"description": "Delete V4 network by name or address",
				"summary": "Delete V4 network",
				"operationId": "deleteV4Network",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Network"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "networkInfo",
						"description": "Network info (address or name of V4 network)",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"404": {
						"description": "Network does not exist."
					}
				}
			}
		},
		"/v1/{orgName}/v4network": {
			"post": {
				"description": "Create a new V4 network",
				"summary": "Add new V4 network",
				"operationId": "addV4Network",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Network"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V4NetworkRec"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created",
						"schema": {
							"$ref": "#/definitions/Created"
						}
					},
					"400": {
						"description": "Bad request",
						"schema": {
							"$ref": "#/definitions/Bad"
						}
					},
					"404": {
						"description": "Not Found",
						"schema": {
							"$ref": "#/definitions/NotFound"
						}
					},
					"409": {
						"description": "Conflict",
						"schema": {
							"$ref": "#/definitions/Conflict"
						}
					}
				}
			},
			"put": {
				"description": "Modify V4 network name, warning type, warning percent...",
				"summary": "Update V4 network",
				"operationId": "modifyV4Network",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Network"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V4NetworkRec"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/OK"
						}
					},
					"400": {
						"description": "&lt;address&gt; is not an IPV4 Network Address\n\nMissing Network IP Address\n\nGiven Network &lt;address&gt; contains invalid Threshold Value: &lt;warningPercent&gt; or WarningType: &lt;warningType&gt;\n\nInvalid Attribute(s): &lt;name&gt;\n\nUDA &lt;name&gt;'s Value &lt;value&gt; is not an valid Boolean Value\n\nAddress ranges must not be duplicated",
						"schema": {
							"$ref": "#/definitions/Bad"
						}
					},
					"404": {
						"description": "Network not found: [address=&lt;address&gt]",
						"schema": {
							"$ref": "#/definitions/NotFound"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v4network{extension}": {
			"get": {
				"description": "Search V4 Network by name or address.<br>\n*Notes:* If the number of returned V4 Networks is less than or equal to the page size, the page index parameter is not honored.",
				"summary": "Search V4 network",
				"operationId": "searchV4Network",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Network"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "address",
						"description": "V4 network address",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "name",
						"description": "V4 network name",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "page size of response",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "page index of response",
						"required": false,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/V4NetworkRec"
							}
						}
					},
					"400": {
						"description": "&lt;address&gt; is not an IPv4 network address. Network address should have format x.x.x.0 (x is a number between 1 and 255)\n"
					},
					"404": {
						"description": "Network not found: [address=&lt;address&gt;]\n"
					}
				}
			}
		},
		"/v1/{orgName}/v6subnet/{address}/{prefixLength}{extension}": {
			"get": {
				"description": "Get V6 subnet get by address and prefix length.",
				"summary": "Get V6 Subnet by address",
				"operationId": "getV6SubnetByAddress",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "address",
						"description": "Address of V6 subnet",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "prefixLength",
						"description": "prefix length of v6 subnet",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/V6SubnetRec"
						}
					},
					"404": {
						"description": "Subnet not found"
					}
				}
			}
		},
		"/v1/{orgName}/v6subnet/{address}/{prefixLength}": {
			"delete": {
				"description": "Delete V6 Subnet by address and prefix length.",
				"summary": "Delete V6 Subnet",
				"operationId": "deleteV6SubnetByAddress",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "address",
						"description": "Address of V6 subnet",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "prefixLength",
						"description": "prefix length of v6 subnet",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/OK"
						}
					},
					"404": {
						"description": "Subnet not found"
					}
				}
			}
		},
		"/v1/{orgName}/v6subnet/{address}/{prefixLength}/v6addresses{extension}": {
			"get": {
				"description": "Get list v6 address in v6 subnet by address and prefixlength.",
				"summary": "Get list V6 Address of a V6 Subnet",
				"operationId": "getV6AddressInV6SubnetByAddress",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "address",
						"description": "Address of V6 subnet",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "prefixLength",
						"description": "prefix length of v6 subnet",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/V6AddressRec"
							}
						}
					},
					"404": {
						"description": "Not found"
					}
				}
			}
		},
		"/v1/{orgName}/v6subnet/{address}/{prefixLength}/ranges{extension}": {
			"get": {
				"description": "Get list range in v6 subnet by address and prefixlength.",
				"summary": "Get list range of a V6 Subnet",
				"operationId": "getListRangeInV6SubnetByAddress",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "address",
						"description": "Address of V6 subnet",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "prefixLength",
						"description": "prefix length of v6 subnet",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/V6AddressRec"
							}
						}
					},
					"404": {
						"description": "Not found"
					}
				}
			}
		},
		"/v1/{orgName}/v6subnet/{subnetName}{extension}": {
			"get": {
				"description": "Get V6 subnet by name",
				"summary": "Get V6 Subnet by name",
				"operationId": "getV6SubnetByName",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "subnetName",
						"description": "Name of V6 subnet",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/V6SubnetRec"
						}
					},
					"404": {
						"description": "Subnet not found"
					}
				}
			}
		},
		"/v1/{orgName}/v6subnet/{subnetName}": {
			"delete": {
				"description": "Delete V6 Subnet by name",
				"summary": "Delete V6 Subnet by name",
				"operationId": "deleteV6SubnetByName",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "subnetName",
						"description": "V6 Subnet's name",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/OK"
						}
					},
					"404": {
						"description": "Subnet not found"
					}
				}
			}
		},
		"/v1/{orgName}/v6subnet": {
			"post": {
				"description": "Creates a new V6 Subnet. Subnet Name and Address pairs are returned after adding subnets successfully.<br>\n*Note:* Should not test this API on Swagger. Please use another REST Client (cURL, Postman).",
				"summary": "Add new V6 Subnet",
				"operationId": "addV6Subnet",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "The format of request body when creating a V6Subnet is different to the format of response when searching a V6Subnet. Please do not use it.",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V6CreateSubnetRec"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created",
						"schema": {
							"$ref": "#/definitions/v6SubnetCreated"
						}
					},
					"400": {
						"description": "Bad request\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Boolean Value.\n\nRequired input UDA Enabled QIP Type: &lt;udaName&gt; is invalid.\n\nInvalid Attribute(s): &lt;udaValue&gt;.\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Integer Value.\n\nUDA &lt;udaName&gt;'s value &lt;udaValue&gt; is an invalid IP address.\n\nUDA &lt;uda&gt; is required.\n\nUDA &lt;uda&gt;'s value is required.\n\nUDA &lt;uda&gt; in group &lt;group&gt; is required.\n\nUDA &lt;uda&gt;'s value in group &lt;group&gt; is required.\n\nNo value specified for: [value]\n\nInvalid Create Subnet Type: [{0}].\n\nInvalid Allocation Algorithm.  Algorithm [{0}] is not supported.\n\nValue can be either true or false.",
						"schema": {
							"$ref": "#/definitions/Bad"
						}
					},
					"404": {
						"description": "Pool not found: [name=&lt;name&gt;, parent=&lt;name&gt;]<br>\nBlock not found\n",
						"schema": {
							"$ref": "#/definitions/NotFound"
						}
					},
					"409": {
						"description": "Subnet already Exists in the Parent Pool.",
						"schema": {
							"$ref": "#/definitions/Conflict"
						}
					}
				}
			},
			"put": {
				"description": "Modify a V6 Subnet",
				"summary": "Update V6 Subnet",
				"operationId": "updateV6Subnet",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V6SubnetRec"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/OK"
						}
					},
					"400": {
						"description": "Bad request\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Boolean Value.\n\nRequired input UDA Enabled QIP Type: &lt;udaName&gt; is invalid.\n\nInvalid Attribute(s): &lt;udaValue&gt;.\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Integer Value.\n\nUDA &lt;udaName&gt;'s value &lt;udaValue&gt; is an invalid IP address.\n\nNo value specified for: [udaGroupName]\n\nNo value specified for: [udaName]\n\nNo value specified for: [udaValue]\n\nBlock invalid.\n\nNo value specified for: [value]\n\nNot a valid state.\n\nInvalid Allocation Algorithm.  Algorithm [value] is not supported.\n\nInvalid Address Selection Algorithm.",
						"schema": {
							"$ref": "#/definitions/Bad"
						}
					},
					"404": {
						"description": "Pool not found: [name=&lt;name&gt;, parent=&lt;name&gt;]<br>\nBlock not found\n",
						"schema": {
							"$ref": "#/definitions/NotFound"
						}
					},
					"409": {
						"description": "Subnet already Exists in the Parent Pool.",
						"schema": {
							"$ref": "#/definitions/Conflict"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v6subnet{extension}": {
			"get": {
				"description": "Search V6 Subnet by name or address.<br>\n*Notes:* If the number of returned V6 Subnets is less than or equal to the page size, the page index parameter is not honored.",
				"summary": "Search V6 Subnet",
				"operationId": "searchV6Subnet",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "query",
						"name": "address",
						"description": "V6 Subnet address",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "name",
						"description": "V6 Subnet name",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "page size of response",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "page index of response",
						"required": false,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/V6SubnetRec"
							}
						}
					},
					"404": {
						"description": "Subnet not found\n"
					}
				}
			}
		},
		"/v1/{orgName}/v6address": {
			"post": {
				"description": "Creates V6 Address",
				"summary": "Add new V6 Address",
				"operationId": "addV6Address",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Address"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V6AddressRec"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created",
						"schema": {
							"$ref": "#/definitions/Created"
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [field]\n DUID [<DUID>] already exists \n\nInvalid IP Address Type.  IP Address Type [{0}] is not supported.\n",
						"schema": {
							"$ref": "#/definitions/Bad"
						}
					},
					"404": {
						"description": "Range not found.",
						"schema": {
							"$ref": "#/definitions/NotFound"
						}
					},
					"409": {
						"description": "IPv6 address with the given IAID and DUID combination already exists within the parent subnet subnetAddress.",
						"schema": {
							"$ref": "#/definitions/Conflict"
						}
					}
				}
			},
			"put": {
				"description": "Modify V6 Address",
				"summary": "Update V6 Address",
				"operationId": "updateV6Address",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Address"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V6AddressRec"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/Created"
						}
					},
					"400": {
						"description": "Invalid IP Address Type.  IP Address Type [{0}] is not supported.",
						"schema": {
							"$ref": "#/definitions/Bad"
						}
					},
					"404": {
						"description": "Address not found.<br>\nUDA group not found: [name=&lt;groupName&gt;].<br>\nUser Defined Attribute not found: [name=&lt;udaName&gt;].\n",
						"schema": {
							"$ref": "#/definitions/NotFound"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v6address/{addressInfo}/": {
			"delete": {
				"description": "Delete V6 Address by name or address. The trailing slash is required.",
				"summary": "Delete V6 Address",
				"operationId": "deleteV6Address",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Address"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "addressInfo",
						"description": "V6 address or name",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/OK"
						}
					},
					"404": {
						"description": "Address not found."
					}
				}
			}
		},
		"/v1/{orgName}/v6address/{addressInfo}{extension}": {
			"get": {
				"description": "Get V6 address by address or by name",
				"summary": "Get V6 Address",
				"operationId": "getV6Address",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Address"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "addressInfo",
						"description": "Address OR object name and domain name of V6 Address",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/V6AddressRec"
						}
					},
					"404": {
						"description": "Address not found.\n"
					}
				}
			}
		},
		"/v1/{orgName}/v4subnet": {
			"post": {
				"description": "Creates V4 Subnet",
				"summary": "Add new V4 Subnet",
				"operationId": "addV4Subnet",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V4SubnetRec"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created",
						"schema": {
							"$ref": "#/definitions/Created"
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [field]\n\nUDA &lt;uda&gt; is required.\n\nUDA &lt;uda&gt;'s value is required.\n\nUDA &lt;uda&gt; in group &lt;group&gt; is required.\n\nUDA &lt;uda&gt;'s value in group &lt;group&gt; is required.",
						"schema": {
							"$ref": "#/definitions/Bad"
						}
					},
					"404": {
						"description": "Subnet Organization not found: [field]"
					},
					"409": {
						"description": "Subnet address already exists",
						"schema": {
							"$ref": "#/definitions/Conflict"
						}
					}
				}
			},
			"put": {
				"description": "Modify V4 Subnet",
				"summary": "Update V4 Subnet",
				"operationId": "updateV4Subnet",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "isUpdate",
						"in": "query",
						"description": "update",
						"required": true,
						"type": "boolean"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V4SubnetRec"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/Created"
						}
					},
					"400": {
						"description": "Or \"&lt;routeAddress&gt;\" is not an IPv4 address<br>\nOr Invalid Attribute(s): &lt;attributeName&gt;<br>\nOr The threshold is invalid. Valid warning type is in 0 - 3. Valid warning percent is in 0 - 99.<br>\nOr Invalid input specified for [checkUsage] parameter. Required [true | false], Received [false1].\n",
						"schema": {
							"$ref": "#/definitions/Bad"
						}
					},
					"404": {
						"description": "Or Subnet having address \"&lt;address&gt;\" does not exist.<br>\nOr Domain &lt;domainName&gt; not found.<br>\nOr The time server object &lt;timeServer&gt; does not exist.<br>\nOr DHCP Server &lt;dhcpServer&gt; does not exist.<br>\nOr DHCP Option Template not found: [dhcpOptionTemplate]<br>\nOr DHCP Policy Template not found: [dhcpPolicyTemplate]<br>\nOr DNS Server not found: [&lt;dnsServerName&gt;]<br>\nOr Subnet Organization not found: [field]"
					},
					"409": {
						"description": "Subnet address already exists",
						"schema": {
							"$ref": "#/definitions/Conflict"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v4subnet{extension}": {
			"get": {
				"description": "Search V4 subnet by name, address or UDA value.",
				"summary": "Search V4 Subnet",
				"operationId": "searchV4Subnet",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "address",
						"description": "V4 Subnet address",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "name",
						"description": "V4 Subnet name",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "udaName",
						"description": "udaName",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "udaValue",
						"description": "udaValue",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "Page index. Default value is 1.<br><br> Minimum value is 1",
						"required": false,
						"type": "integer",
						"minimum": 1
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "Page size of response. Default value is 25.",
						"required": false,
						"type": "integer",
						"minimum": 0,
						"maximum": 10000
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/V4SubnetRec"
							}
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [UdaName or UdaValue]\n"
					}
				}
			}
		},
		"/v1/{orgName}/v4subnet/split": {
			"post": {
				"description": "Split V4 subnet.",
				"summary": "Split V4 Subnet",
				"operationId": "splitV4Subnet",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/SplitV4AlterSubnetRec"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Invalid subnet address.",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Subnet having address &lt;subnetAddress&gt; does not exist.",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v4subnet/join": {
			"post": {
				"description": "Join V4 subnet.",
				"summary": "Join V4 Subnet",
				"operationId": "JoinV4Subnet",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/JoinV4AlterSubnetRec"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Required Field(s) Missing: &lt;Field&gt;.",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Subnet having address &lt;subnetAddress&gt; does not exist.",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v4subnet/{subnetAddress}{extension}": {
			"get": {
				"description": "Get V4 subnet by subnet address.<br>Get objects usage information of a subnet using ?usage parameter",
				"summary": "Get V4 Subnet and Subnet Statistics Information",
				"operationId": "getV4Subnet",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "subnetAddress",
						"description": "Subnet address",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "query",
						"name": "usage",
						"description": "Add this parameter to show subnet statistics information",
						"required": false,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/V4SubnetRec"
						}
					},
					"404": {
						"description": "Subnet not found"
					}
				}
			}
		},
		"/v1/{orgName}/v4subnet/{subnetInfo}/": {
			"delete": {
				"description": "Delete V4 Subnet by name or by address. The trailing slash is required.",
				"summary": "Delete V4 Subnet",
				"operationId": "deleteV4SubnetByName",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "subnetInfo",
						"description": "V4 Subnet's name or address",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "multipleDelete",
						"description": "Multiple delete",
						"required": false,
						"type": "boolean"
					},
					{
						"in": "query",
						"name": "deleteReserveObjects",
						"description": "delete reserve objects",
						"required": false,
						"type": "boolean"
					},
					{
						"in": "query",
						"name": "application",
						"description": "application name",
						"required": false,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Subnet having address &lt;subnetAddress&gt; does not exist.",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v4subnet/{subnetAddress}/v4addresses{extension}": {
			"get": {
				"description": "Get list V4 address of a V4 Subnet by subnet address",
				"summary": "Get list V4 Address of a V4 Subnet",
				"operationId": "getListAddressV4Subnet",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Subnet"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "subnetAddress",
						"description": "Subnet address",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "status",
						"description": "Object Status, Default: Used",
						"required": false,
						"type": "string",
						"default": "Used",
						"enum": [
							"Used",
							"Unused"
						]
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "page size of response",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "page index of response",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/V4AddrRec"
							}
						}
					},
					"404": {
						"description": "Subnet not found"
					}
				}
			}
		},
		"/v1/{orgName}/v4address/generateobjectname": {
			"post": {
				"description": "Generate hostname automatically",
				"summary": "Generate hostname automatically",
				"operationId": "generateObjectName",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Address"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "objectClass",
						"description": "Object class",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"201": {
						"description": "Object Name"
					},
					"404": {
						"description": "Object class &lt;objectClass&gt; does not exists.\n"
					}
				}
			}
		},
		"/v1/{orgName}/v4address": {
			"post": {
				"description": "Creates V4 Address",
				"summary": "Add new V4 Address",
				"operationId": "addV4Address",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Address"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V4AddrRec"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [field]\n",
						"schema": {
							"type": "string"
						}
					},
					"409": {
						"description": "Given IP Address &lt;address&gt; already exists in subnet &lt;subnet&gt;.",
						"schema": {
							"type": "string"
						}
					}
				}
			},
			"put": {
				"description": "Modify V4 Address",
				"summary": "Update V4 Address",
				"operationId": "updateV4Address",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Address"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V4AddrRec"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created",
						"schema": {
							"$ref": "#/definitions/Created"
						}
					},
					"400": {
						"description": "Address not found<br>\nUDA group not found: [name=G33].\n",
						"schema": {
							"$ref": "#/definitions/Bad"
						}
					},
					"404": {
						"description": "User Defined Attribute not found: [name=1231].\n"
					},
					"409": {
						"description": "Given IP Address 1.1.1.20 already exists in subnet 1.1.1.0.",
						"schema": {
							"$ref": "#/definitions/Conflict"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v4addresses": {
			"put": {
				"description": "Modify V4 Addresses",
				"summary": "Update V4 Addresses",
				"operationId": "updateV4Addresses",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Address"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V4AddressesRec"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created",
						"schema": {
							"$ref": "#/definitions/Created"
						}
					},
					"400": {
						"description": "Address not found<br>\nUDA group not found: [name=G33].\n",
						"schema": {
							"$ref": "#/definitions/Bad"
						}
					},
					"404": {
						"description": "User Defined Attribute not found: [name=1231].\n"
					},
					"409": {
						"description": "Given IP Address 1.1.1.20 already exists in subnet 1.1.1.0.",
						"schema": {
							"$ref": "#/definitions/Conflict"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v4address/{addressInfo}/": {
			"delete": {
				"description": "Delete V4 Address by name or address. The trailing slash is required.",
				"summary": "Delete V4 Address",
				"operationId": "deleteV4Address",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Address"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "addressInfo",
						"description": "V4 address or name",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/OK"
						}
					},
					"404": {
						"description": "Could not find IPv4 Address &lt;address&gt;.<br>\nOr No object is found\n"
					}
				}
			}
		},
		"/v1/{orgName}/v4address/{addressInfo}{extension}": {
			"get": {
				"description": "Get V4 address by name or by address",
				"summary": "Get V4 Address",
				"operationId": "getV4Address",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Address"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "addressInfo",
						"description": "Address or object name of V4 Address",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/V4AddrRec"
						}
					},
					"404": {
						"description": "Object name &lt;name&gt; is not found.<br>\nAddress &lt;address&gt; is not found.\n"
					}
				}
			}
		},
		"/v1/{orgName}/v4address{extension}": {
			"get": {
				"description": "Search V4 address UDA value.",
				"summary": "Search V4 Address",
				"operationId": "searchV4Address",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V4 Address"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "address",
						"description": "V4 Address",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "name",
						"description": "V4 Address name",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "udaName",
						"description": "udaName",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "udaValue",
						"description": "udaValue",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "page size of response",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "page index of response",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/V4AddrRec"
							}
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [UdaName or UdaValue]\n"
					}
				}
			}
		},
		"/v1/{orgName}/rr/{rrId}": {
			"delete": {
				"description": "Delete a RR by rrId",
				"summary": "Delete RR",
				"operationId": "deleteARrByRrId",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"RR"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "rrId",
						"description": "rrId of resource record - Required\n<i>Note: Do not support for Route53 resource record</i>",
						"required": true,
						"type": "integer"
					}
				],
				"responses": {
					"204": {
						"description": "No content"
					},
					"403": {
						"description": "Permission Denied. You do not have appropriate privileges to perform this action."
					},
					"404": {
						"description": "Resource record [rrId=value] does not exist."
					},
					"406": {
						"description": "Not Acceptable."
					}
				}
			}
		},
		"/v1/{orgName}/rr/{infraType}/{rrInfo}/": {
			"delete": {
				"description": "Delete All RRs by infraType and by name or address. The trailing slash is required.",
				"summary": "Delete RR",
				"operationId": "deleteRRbyInfraTypebyNameOrAddress",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"RR"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "infraType",
						"description": "infratype: OBJECT|V6ADDRESS|ZONE|V4REVERSEZONE|V6REVERSEZONE|NODE",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "rrInfo",
						"description": "name or address",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"204": {
						"description": "No content"
					},
					"404": {
						"description": "Network does not exist."
					},
					"406": {
						"description": "Not Acceptable."
					}
				}
			}
		},
		"/v1/{orgName}/rr{extension}": {
			"get": {
				"description": "Search RR by name or address.",
				"summary": "Search RR by name or address",
				"operationId": "getRRByName",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"RR"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "query",
						"name": "name",
						"description": "Infrastrucutre FQDN - Required if Search RR by name",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "address",
						"description": "Address of infrastructure - Required if Search RR by address",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "udaName",
						"description": "Required if Search by UDA",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "udaValue",
						"description": "Required if Search by UDA",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "page index",
						"required": false,
						"type": "number"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "page size ( maximum value: 10000)",
						"required": false,
						"type": "number"
					},
					{
						"in": "query",
						"name": "type",
						"description": "infrastructure type: OBJECT|V6ADDRESS|ZONE|V4REVERSEZONE|V6REVERSEZONE|NODE|ROUTE53ZONE|ALL",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "getDefaultRRs",
						"description": "Get Default Resource Records or not",
						"required": false,
						"type": "boolean",
						"default": true
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/RRRec"
							}
						}
					},
					"404": {
						"description": "Not resource record found."
					},
					"406": {
						"description": "Not acceptable"
					}
				}
			}
		},
		"/v1/{orgName}/rr": {
			"post": {
				"description": "Creates a new RR",
				"summary": "Add new RR",
				"operationId": "addRR",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"RR"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/RRRec"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created",
						"schema": {
							"$ref": "#/definitions/Created"
						}
					},
					"400": {
						"description": "Bad request",
						"schema": {
							"$ref": "#/definitions/Bad"
						}
					},
					"404": {
						"description": "Pool not found: [name=&lt;name&gt;, parent=&lt;name&gt;]<br>\nBlock not found\n",
						"schema": {
							"$ref": "#/definitions/NotFound"
						}
					},
					"409": {
						"description": "Subnet with this name already Exists in the Parent Pool.",
						"schema": {
							"$ref": "#/definitions/Conflict"
						}
					}
				}
			},
			"put": {
				"description": "Update a RR",
				"summary": "Update RR",
				"operationId": "updateRR",
				"tags": [
					"RR"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "orgName",
						"in": "path",
						"description": "Organization Name<br> \nExample: VitalQIP Organization\n",
						"required": true,
						"type": "string"
					},
					{
						"name": "rrsource",
						"in": "query",
						"required": true,
						"type": "string",
						"format": "string",
						"default": "QIP",
						"enum": [
							"Route53",
							"QIP"
						]
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body when modify RR",
						"required": true,
						"schema": {
							"$ref": "#/definitions/UpdateRRRec"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Bad request",
						"schema": {
							"type": "string"
						}
					},
					"403": {
						"description": "Permission Denied. You do not have appropriate privileges to perform this action."
					},
					"404": {
						"description": "Not Found",
						"schema": {
							"type": "string"
						}
					},
					"409": {
						"description": "Conflict",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/selectedv4address/{address}/": {
			"delete": {
				"description": "Delete selected V4 address by address",
				"summary": "Delete Selected V4 Address",
				"operationId": "DeleteSelectedV4address",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Selected V4 Address"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "address",
						"description": "subnet address",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"500": {
						"description": "Internal Server Error - IP address [address] does not have an object associated with it"
					}
				}
			}
		},
		"/v1/{orgName}/selectedv4address/{v4SubnetAddress}{extension}": {
			"put": {
				"description": "Get allows to select an IPv4 from a specific IPv4 subnet or Get next Ipv4 address (getting a next address from a subnet can take an optional set of start/end address pairs)",
				"summary": "Get next selected V4 address",
				"operationId": "selectedV4addressWithRange",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Selected V4 Address"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body - Required if get a next address in range",
						"required": false,
						"schema": {
							"$ref": "#/definitions/AddrRangeList"
						}
					},
					{
						"in": "path",
						"name": "v4SubnetAddress",
						"description": "subnet address",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/NextV4AddrRec"
						}
					},
					"400": {
						"description": "Bad request"
					},
					"500": {
						"description": "Internal Server Error - Allocation pool AddrRange [startAddress=&lt;address&gt;, endAddress=&lt;address&gt;] already exists/overlaps existed pool AddrRange [startAddress=&lt;address&gt;, endAddress=&lt;address&gt;]"
					}
				}
			}
		},
		"/v1/{orgName}/selectedv6address/{address}": {
			"delete": {
				"description": "Delete selected V6 address by address",
				"summary": "Delete Selected V6 Address",
				"operationId": "DeleteSelectedV6address",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Selected V6 Address"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "address",
						"description": "range address",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"404": {
						"description": "Not found - Address address was not found in database."
					},
					"406": {
						"description": "Not Acceptable - The object [address] is not a selected object."
					}
				}
			}
		},
		"/v1/{orgName}/selectedv6address/{address}{extension}": {
			"put": {
				"description": "Get allows you to get the detailed information for one IPv6 address. Get next Ipv6address (getting a next address from a subnet can take an optional set of start/end address pairs)",
				"summary": "Get next selected V6 address",
				"operationId": "selectedV6addressWithRange",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Selected V6 Address"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body - Required if Get a next address in range.",
						"required": false,
						"schema": {
							"$ref": "#/definitions/AddrRangeList"
						}
					},
					{
						"in": "path",
						"name": "address",
						"description": "address",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/V6GetIpAddressRec"
						}
					},
					"400": {
						"description": "Bad request - Permission denied.  You do not have appropriate privileges to perform this action."
					},
					"404": {
						"description": "Not Found - Subnet Not Found"
					},
					"500": {
						"description": "Internal Server Error The start address &lt;address&gt; must be less than the end address &lt;address&gt;.<br>\nInternal Server Error The start address or the end address is invalid  AddrRange [startAddress=&lt;address&gt;, endAddress=&lt;address&gt;]<br>\nInternal Server Error - Allocation pool AddrRange [startAddress=&lt;address&gt;, endAddress=&lt;address&gt;] already exists/overlaps existed pool AddrRange [startAddress=&lt;address&gt;, endAddress=&lt;address&gt;].\n"
					}
				}
			}
		},
		"/login": {
			"post": {
				"description": "Get REST login token. Expiration time is returned in the response header and cannot exceed maximum expiration time which is configured in qip.properties file.",
				"summary": "Get token",
				"operationId": "getToken",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Authentication"
				],
				"parameters": [
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/QIPUser"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"headers": {
							"Authentication": {
								"description": "Token",
								"type": "string"
							},
							"Date": {
								"description": "Date Time",
								"type": "string"
							},
							"Expire Time": {
								"description": "Expire Time",
								"type": "string"
							}
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [username | password]\n",
						"schema": {
							"type": "string"
						}
					},
					"401": {
						"description": "Authentication failed",
						"schema": {
							"$ref": "#/definitions/error"
						}
					},
					"500": {
						"description": "Server error"
					}
				}
			}
		},
		"/v1/{orgName}/v6range{extension}": {
			"get": {
				"description": "Search an IPv6 Range by name or address.<br>\n*Notes:* If the number of returned IPv6 Ranges is less than or equal to the page size, the page index parameter is not honored.",
				"summary": "Search an IPv6 range",
				"operationId": "searchV6Range",
				"tags": [
					"V6 Range"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "name",
						"description": "Range name.",
						"type": "string"
					},
					{
						"in": "query",
						"name": "address",
						"description": "IPv6 address of range.",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "subnet",
						"description": "IPv6 address of the subnet.",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "page index",
						"required": false,
						"type": "integer"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "page size",
						"required": false,
						"type": "integer"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/V6RangeRec"
							}
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [name | startAddress | name and subnet]\n",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Range not found\n",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v6range": {
			"post": {
				"description": "Create an IPv6 range.",
				"operationId": "addV6Range",
				"summary": "Create V6 range",
				"tags": [
					"V6 Range"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "The request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V6RangeRec"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Not a valid IP Address.\n            \nField value is not correct : &lt;name&gt;.\n\nField value is not correct : &lt;startAddress&gt;.\n\nField value is not correct : &lt;newStartAddress&gt;.\n\nField(s) &lt;subnetPrefixLength&gt; cannot be zero.\n\nField value is not correct : &lt;rangePrefixLength&gt;.\n\nField value is not correct : &lt;rangeType&gt;.\n\nField value is not correct : &lt;addressSelection&gt;.\n\nField value is not correct : &lt;standPrimDHCPServer&gt;.\n\nField value is not correct : &lt;optTemplate&gt;.\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Boolean Value.\n\nRequired input UDA Enabled QIP Type: &lt;udaName&gt; is invalid.\n\nInvalid Attribute(s): &lt;udaValue&gt;.\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Integer Value.\n\nUDA &lt;udaName&gt;'s value &lt;udaValue&gt; is an invalid IP address.\n\nUDA &lt;uda&gt; is required.\n\nUDA &lt;uda&gt;'s value is required.\n\nUDA &lt;uda&gt; in group &lt;group&gt; is required.\n\nUDA &lt;uda&gt;'s value in group &lt;group&gt; is required.\n",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "User Defined Attribute not found: &lt;udaName&gt;.\n\nUDA group not found: &lt;udaGroupName&gt;\n",
						"schema": {
							"type": "string"
						}
					},
					"409": {
						"description": "\nRange address &lt;subnetPrefixLength&gt; is not valid for this subnet &lt;standPrimDHCPServer&gt;.\n",
						"schema": {
							"type": "string"
						}
					},
					"500": {
						"description": "Invalid permissions for the requested operation.\n",
						"schema": {
							"type": "string"
						}
					}
				}
			},
			"delete": {
				"description": "Delete an IPv6 range from an IPv6 subnet by name or address.\n",
				"summary": "Delete an IPv6 range.",
				"operationId": "deleteV6Range",
				"tags": [
					"V6 Range"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "name",
						"description": "Range name.",
						"type": "string"
					},
					{
						"in": "query",
						"name": "address",
						"description": "IPv6 address of range.",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "subnet",
						"description": "IPv6 address of the subnet.",
						"required": false,
						"type": "string"
					}
				],
				"responses": {
					"204": {
						"description": "No Content",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Required Field(s) Missing: &lt;name&gt;\n",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Range not found.\n\nRange not unique. Use range address to perform operation.\n",
						"schema": {
							"type": "string"
						}
					}
				}
			},
			"put": {
				"description": "Modify an IPv6 range.",
				"operationId": "modifyV6Range",
				"summary": "Modify V6 range",
				"tags": [
					"V6 Range"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "The request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V6RangeRec"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Not a valid IP Address.\n            \nField value is not correct : &lt;name&gt;.\n\nField value is not correct : &lt;startAddress&gt;.\n\nField value is not correct : &lt;newStartAddress&gt;.\n\nField(s) &lt;subnetPrefixLength&gt; cannot be zero.\n\nField value is not correct : &lt;rangePrefixLength&gt;.\n\nField value is not correct : &lt;rangeType&gt;.\n\nField value is not correct : &lt;addressSelection&gt;.\n\nField value is not correct : &lt;standPrimDHCPServer&gt;.\n\nField value is not correct : &lt;optTemplate&gt;.\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Boolean Value.\n\nRequired input UDA Enabled QIP Type: &lt;udaName&gt; is invalid.\n\nInvalid Attribute(s): &lt;udaValue&gt;.\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Integer Value.\n\nUDA &lt;udaName&gt;'s value &lt;udaValue&gt; is an invalid IP address.\n\nUDA &lt;uda&gt; is required.\n\nUDA &lt;uda&gt;'s value is required.\n\nUDA &lt;uda&gt; in group &lt;group&gt; is required.\n\nUDA &lt;uda&gt;'s value in group &lt;group&gt; is required.\n",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "User Defined Attribute not found: &lt;udaName&gt;.\n\nUDA group not found: &lt;udaGroupName&gt;\n",
						"schema": {
							"type": "string"
						}
					},
					"409": {
						"description": "\nRange address &lt;subnetPrefixLength&gt; is not valid for this subnet &lt;standPrimDHCPServer&gt;.\n",
						"schema": {
							"type": "string"
						}
					},
					"500": {
						"description": "Invalid permissions for the requested operation.\n",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/zone": {
			"post": {
				"description": "Create a new DNS zone\n",
				"operationId": "addZone",
				"summary": "Create zone",
				"tags": [
					"Zone"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "The zone request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/DNSZoneRec"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "\nRequired Field(s) Missing: &lt;name&gt;.\n\nDomain &lt;name&gt; contains invalid characters\n\nInvalid zone contact address: &lt;contact&gt;\n\nRequired Field(s) Missing: &lt;email&gt;.\n\nInvalid zone contact address: &lt;email&gt;.\n\nUDA &lt;uda&gt; is not associated with the given infrastructure.\n\nUDA Group &lt;udagroup&gt; is not associated with the given infrastructure.\n\nUDA &lt;uda&gt; is required.\n\nUDA &lt;uda&gt;'s value is required.\n\nUDA &lt;uda&gt; in group &lt;group&gt; is required.\n\nUDA &lt;uda&gt;'s value in group &lt;group&gt; is required.\n\nRequired Field(s) Missing: [Zone name]\n\nRequired Field(s) Missing: [Email]\n\nRequired Field(s) Missing: [expireTime]\n\nRequired Field(s) Missing: [negativeCacheTtl]\n\nRequired Field(s) Missing: [defaultTtl]\n\nRequired Field(s) Missing: [refreshTime]\n\nRequired Field(s) Missing: [retryTime]\n",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "DNS Server not found: [&lt;dnsServers&gt;]\n",
						"schema": {
							"type": "string"
						}
					},
					"409": {
						"description": "Cannot save the zone &lt;zone&gt;: It already exists in database.\n",
						"schema": {
							"type": "string"
						}
					},
					"500": {
						"description": "Invalid permissions for the requested operation.\n\nPermission Denied. You do not have appropriate privileges to perform this action for normal administrator.\n",
						"schema": {
							"type": "string"
						}
					}
				}
			},
			"put": {
				"description": "Modify a zone.\n *Note:* User only can modify the email and SOA Information of a Route 53 Hosted Zone by the REST-API.",
				"operationId": "modifyZone",
				"summary": "Modify zone",
				"tags": [
					"Zone"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "zoneType",
						"description": "Type of the zone which you are modifying.\nRoute 53 is the type of Route 53 Hosted Zone\nQIP Managed is the type of the rest of zone in the QIP",
						"default": "QIP Managed",
						"required": true,
						"type": "string",
						"enum": [
							"QIP Managed",
							"Route 53"
						]
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "The zone request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/list"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/ResultCountDetail"
						}
					},
					"400": {
						"description": "The first DNS Server must be added as an primary server.\n\nDNS Server not found: &lt;dnsServer&gt;.\n\nRequired Field(s) Missing: &lt;name&gt;.\n\nRequired Field(s) Missing: &lt;email&gt;.\n\nInvalid zone contact address: &lt;email&gt;.\n\n\nUDA &lt;uda&gt; is required.\n\n\nUDA &lt;uda&gt;'s value is required.\n\n\nUDA &lt;uda&gt; in group &lt;group&gt; is required.\n\n\nUDA &lt;uda&gt;'s value in group &lt;group&gt; is required.\n"
					},
					"404": {
						"description": "DNS Zone [&lt;dnsServer&gt;] not found.\n"
					},
					"409": {
						"description": "Not a valid IPv6 Address.\n\nRange address &lt;networkAddress&gt; is not valid for this subnet &lt;subnet&gt;.\n\nRange address &lt;networkAddress&gt; already exists/overlaps for this subnet &lt;subnet&gt;.\n\nCannot save the zone &lt;zone&gt;: It already exists in database.\n"
					},
					"500": {
						"description": "Invalid permissions for the requested operation.\n\nPermission Denied. You do not have appropriate privileges to perform this action for normal administrator.\n"
					}
				}
			}
		},
		"/v1/{orgName}/zone{extension}": {
			"get": {
				"description": "Search zones by name. It just return basic information of Dns zone such as name, email, defaultTtl, exprireTime, nagativeCacheTtl, refreshTime and retryTime",
				"summary": "Search Zone",
				"operationId": "searchZone",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Zone"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml\n\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "query",
						"name": "name",
						"description": "Name of the zone for which you are searching.\nYou can use an asterisk (*) as a wildcard character to \nreturn a range of results. If you use the asterisk as \nthe first or only character, you must put this value in \neither single or double quotes.\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "zoneType",
						"description": "Type of the zone which you are searching.",
						"default": "All",
						"required": false,
						"type": "string",
						"enum": [
							"All",
							"QIP Managed",
							"QIP Non-Managed",
							"Route 53"
						]
					},
					{
						"in": "query",
						"name": "udaName",
						"description": "Required if Search by UDA.",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "udaValue",
						"description": "Required if Search by UDA.",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "page index",
						"required": false,
						"type": "integer"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "Page size. Default value is 25.",
						"required": false,
						"type": "integer"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/DNSZoneRec"
							}
						}
					},
					"400": {
						"description": "No value specified for: &lt;udaName&gt;.\nNo value specified for: &lt;udaValue&gt;."
					}
				}
			}
		},
		"/v1/{orgName}/zone/{zoneName}{extension}": {
			"get": {
				"description": "Get full profile of a Dns zone by name",
				"summary": "Get Zone",
				"operationId": "getZone",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Zone"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml\n\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "path",
						"name": "zoneName",
						"description": "Zone name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "zoneType",
						"description": "Type of the zone which you are getting.\nRoute 53 is the type of Route 53 Hosted Zone\nQIP Managed is the type of the rest of zone in the QIP",
						"default": "QIP Managed",
						"required": true,
						"type": "string",
						"enum": [
							"QIP Managed",
							"Route 53"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/DNSZoneRec"
						}
					},
					"404": {
						"description": "Zone [zoneName] Not Found\nRoute 53 Hosted Zone [zoneName] not found."
					}
				}
			}
		},
		"/v1/{orgName}/zone/{name}/": {
			"delete": {
				"description": "Delete a global zone by name. The trailing slash is required.\n",
				"summary": "Delete a zone.",
				"operationId": "deleteZone",
				"tags": [
					"Zone"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "name",
						"description": "Name of the zone being deleted.\n",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"204": {
						"description": "No Content",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "DNS Zone not found: &lt;dnsServer&gt;.\n",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v6block": {
			"post": {
				"description": "Add V6 Block to V6 Pool.<br>\n*Note:* Should not test this API on Swagger. Please use another REST Client (cURL, Postman).",
				"operationId": "addV6BlockToPool",
				"summary": "Add V6 Block to V6 Pool",
				"tags": [
					"V6 Block"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V6BlockRec"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [name]\n\nRequired Field(s) Missing: [address]\n\nRequired Field(s) Missing: [algorithmType]\n\nRequired Field(s) Missing: [prefixLength]\n\nRequired Field(s) Missing: [minPrefix]\n\nRequired Field(s) Missing: [maxPrefix]\n\nRequired Field(s) Missing: [defaultPrefix]\n\nRequired Field(s) Missing: [poolName]\n\nRequired Field(s) Missing: [createType]\n\nField value is not correct : [name=prefixLength]\n\nField value is not correct : [name=minPrefix]\n\nField value is not correct : [name=maxPrefix]\n\nField value is not correct : [name=defaultPrefix]\n\nField value is not correct : [name=createType]\n\nField value is not correct : [name=algorithmType]\n\nField value is not correct : [name=address]\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Boolean Value.\n\nRequired input UDA Enabled QIP Type: &lt;udaName&gt; is invalid.\n\nInvalid Attribute(s): &lt;udaValue&gt;.\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Integer Value.\n\nUDA &lt;udaName&gt;'s value &lt;udaValue&gt; is an invalid IP address.\n\nUDA &lt;uda&gt; is required.\n\nUDA &lt;uda&gt;'s value is required.\n\nUDA &lt;uda&gt; in group &lt;group&gt; is required.\n\nUDA &lt;uda&gt;'s value in group &lt;group&gt; is required.\n\nField value is not correct : [name=minPrefix|defaultPrefix|maxPrefix]\n\nField value is not correct : [name=minPrefix|maxPrefix]\n\nInvalid Allocation Algorithm.  Algorithm [value] is not supported.\n",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Pool not found: [name= &lt;poolName&gt;, parent= &lt;parentPoolName&gt;]\n\nUser Defined Attribute not found: [name= &lt;udaName&gt;].\n\nUDA group not found: [name= &lt;udaGroupName&gt;].\n",
						"schema": {
							"type": "string"
						}
					},
					"409": {
						"description": "Given Seed Block &lt;blockAddress&gt; already exists or has an overlap with\nSeed Block &lt;blockAddress&gt; in &lt;poolName&gt;\n",
						"schema": {
							"type": "string"
						}
					},
					"500": {
						"description": "Invalid permissions for the requested operation.\n\nUDA &lt;udaName&gt; is not associated with the given infrastructure.\n",
						"schema": {
							"type": "string"
						}
					}
				}
			},
			"put": {
				"description": "Modify V6 Block",
				"operationId": "modifyV6Block",
				"summary": "Modify V6 Block",
				"tags": [
					"V6 Block"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V6BlockRec"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Field value is not correct : [name=prefixLength]\n\nField value is not correct : [name=minPrefix]\n\nField value is not correct : [name=maxPrefix]\n\nField value is not correct : [name=defaultPrefix]\n\nField value is not correct : [name=createType]\n\nField value is not correct : [name=algorithmType]\n\nField value is not correct : [name=address]\n\nField value is not correct : [name=createType]\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Boolean Value.\n\nRequired input UDA Enabled QIP Type: &lt;udaName&gt; is invalid.\n\nInvalid Attribute(s): &lt;udaValue&gt;.\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Integer Value.\n\nUDA &lt;udaName&gt;'s value &lt;udaValue&gt; is an invalid IP address.\n\nUDA &lt;uda&gt; is required.\n\nUDA &lt;uda&gt;'s value is required.\n\nUDA &lt;uda&gt; in group &lt;group&gt; is required.\n\nUDA &lt;uda&gt;'s value in group &lt;group&gt; is required.\n\nCannot identify the ambiguous blocks. Found blocks &lt;blockAddress&gt; at: <br>Pool path &lt;poolPath&gt; with UUID &lt;UUID&gt;\n",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Pool not found: [name= &lt;pool&gt;, parent= &lt;parent&gt;]\n\nUser Defined Attribute not found: [name= &lt;udaName&gt;].\n\nUDA group not found: [name= &lt;udaGroupName&gt;].\n",
						"schema": {
							"type": "string"
						}
					},
					"409": {
						"description": "Given Seed Block &lt;blockAddress&gt; already exists or has an overlap with Seed Block &lt;blockAddress&gt; in &lt;poolName&gt;\n",
						"schema": {
							"type": "string"
						}
					},
					"500": {
						"description": "Invalid permissions for the requested operation\n\nUDA &lt;udaName&gt; is not associated with the given infrastructure.\n",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v6block{extension}": {
			"get": {
				"description": "Search V6 Block by name or address. Wildcards are supported.<br>\n*Notes:* If the number of returned V6 Blocks is less than or equal to the page size, the page index parameter is not honored.",
				"summary": "Search V6 Block",
				"operationId": "searchV6Block",
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Block"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml\n\napplication/json\n",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "name",
						"description": "Name of the block.",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "address",
						"description": "Address of the block (prefix/prefixlength).",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "poolName",
						"description": "Name of the parent pool.",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "page size of response",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "page index of response",
						"required": false,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/V6BlockRec"
							}
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [name]\n\nRequired Field(s) Missing: [address]\n\nRequired Field(s) Missing: [poolName]\n",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Block not found\n",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v6block/{uuid}{extension}": {
			"get": {
				"description": "Get V6 Block by UUID",
				"summary": "Get V6 Block by UUID",
				"operationId": "getV6BlockByUUID",
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Block"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml\n\napplication/json\n",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "uuid",
						"description": "UUID of the block.",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/V6BlockRec"
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [uuid]\n",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Block not found\n",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v6block/{blockInfo}": {
			"delete": {
				"description": "Delete V6 Block by UUID or Name or Name and Pool Path.",
				"summary": "Delete V6 Block by UUID or Name or Name and Pool Path.",
				"operationId": "deleteV6BlockByBlockInfo",
				"tags": [
					"V6 Block"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml\n\napplication/json\n",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "blockInfo",
						"description": "blockInfo is UUID or blockName.",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "poolPath",
						"description": "Name of parent pool or Hierarchical path to the parent pool if parent pool name is not unique enough.",
						"required": false,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [name]\n\nRequired Field(s) Missing: [address]\n",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Block not found\n",
						"schema": {
							"type": "string"
						}
					},
					"500": {
						"description": "Invalid permissions for the requested operation\n\nBlock name not unique. Use Block address to perform operation.\n",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v6block/{blockAddress}/{prefixLength}": {
			"delete": {
				"description": "Delete V6 Block by Address.",
				"summary": "Delete V6 Block by Address.",
				"operationId": "deleteV6BlockByAddress",
				"tags": [
					"V6 Block"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml\n\napplication/json\n",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "blockAddress",
						"description": "Address of the block.",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "prefixLength",
						"description": "Prefixlength of address.",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Cannot identify the ambiguous blocks. Found blocks &lt;blockAddress&gt; at: <br>Pool path &lt;poolPath&gt; with UUID &lt;UUID&gt;",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Block not found\n",
						"schema": {
							"type": "string"
						}
					},
					"500": {
						"description": "Invalid permissions for the requested operation.\n",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v6block/assignment": {
			"put": {
				"description": "Assign V6 Block",
				"operationId": "assignV6Block",
				"summary": "Assign V6 Block",
				"tags": [
					"V6 Block"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V6BlockAssign"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [targetPool]\n\nRequired Field(s) Missing: [sourcePool]\n\nRequired Field(s) Missing: [sourceBlock]\n\nRequired Field(s) Missing: [prefixLength]\n\nRequired Field(s) Missing: [assignmentType]\n\nRequired Field(s) Missing: [newBlockName]\n\nRequired Field(s) Missing: [assignAlgorithm]\n\nField value is not correct : [name=minPrefix]\n\nField value is not correct : [name=maxPrefix]\n\nField value is not correct : [name=defaultPrefix]\n\nField value is not correct : [name=createType]\n\nDefault prefix length missing or invalid range.\n\nDefault algorithm missing.\n\nStart address missing.\n\nPrefix length missing or invalid range.\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Boolean Value.\n\nRequired input UDA Enabled QIP Type: &lt;udaName&gt; is invalid.\n\nInvalid Attribute(s): &lt;udaValue&gt;.\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Integer Value.\n\nUDA &lt;udaName&gt;'s value &lt;udaValue&gt; is an invalid IP address.\n\nUDA &lt;uda&gt; is required.\n\nUDA &lt;uda&gt;'s value is required.\n\nUDA &lt;uda&gt; in group &lt;group&gt; is required.\n\nUDA &lt;uda&gt;'s value in group &lt;group&gt; is required.\n\nSourceBlock [sourceBlock] not unique. Use sourceAddress to perform operation.\n",
						"schema": {
							"type": "string"
						}
					},
					"403": {
						"description": "Invalid permissions for the requested operation.",
						"schema": {
							"$ref": "#/definitions/errorPermission"
						}
					},
					"404": {
						"description": "Pool not found: [name= &lt;poolName&gt;, parent= &lt;parentPoolName&gt;]\n\nSource block does not exists.\n",
						"schema": {
							"type": "string"
						}
					},
					"409": {
						"description": "Given Seed Block &lt;blockAddress&gt; already exists or has an overlap with Seed Block &lt;blockAddress&gt; in &lt;poolName&gt;\n",
						"schema": {
							"type": "string"
						}
					},
					"500": {
						"description": "Pool Name cannot be modified\n\nSource block does not belong to source pool.\n\nPool cannot assign block to ancestors.\n",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v6pool{extension}": {
			"get": {
				"description": "Search V6 pool by name.",
				"summary": "Search V6 pool",
				"operationId": "searchV6Pool",
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Pool"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml\n\napplication/json\n",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "name",
						"description": "Name of pool. Support * character.",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "poolPath",
						"description": "Name of parent pool or Hierarchical path to the parent pool if parent pool name is not unique enough.",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "page size of response",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "page index of response",
						"required": false,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/V6PoolRec"
							}
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [name]\n",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Pool not found: [name= &lt;pool&gt;, parent= &lt;parent&gt;]\n",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v6pool/{uuid}{extension}": {
			"get": {
				"description": "Get V6 Pool by UUID",
				"summary": "Get V6 Pool by UUID",
				"operationId": "getV6PoolByUUID",
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"V6 Pool"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml\n\napplication/json\n",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "uuid",
						"description": "UUID of the pool",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/V6PoolRec"
						}
					},
					"404": {
						"description": "Pool not found: [UUID= &lt;uuid&gt;]\n",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v6pool": {
			"post": {
				"description": "Create V6 Pool. It will return the UUID.<br>\n*Note:* Should not test this API on Swagger. Please use another REST Client (cURL, Postman).",
				"operationId": "addV6Pool",
				"summary": "Create V6 Pool",
				"tags": [
					"V6 Pool"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "You don't need set value for parentName if you want to create a Seed Pool.",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V6PoolRec"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [name]\n\nRequired Field(s) Missing: [contact]\n\nRequired Field(s) Missing: [assignBlockType]\n\nRequired Field(s) Missing: [notificationType]\n\nRequired Field(s) Missing: [algorithmType]\n\nRequired Field(s) Missing: [minPrefix]\n\nRequired Field(s) Missing: [maxPrefix]\n\nRequired Field(s) Missing: [defaultPrefix]\n\nRequired Field(s) Missing: [blockReqType]\n\nField value is not correct : [name=assignBlockType]\n\nField value is not correct : [name=notificationType]\n\nField value is not correct : [name=algorithmType]\n\nField value is not correct : [name=minPrefix]\n\nField value is not correct : [name=maxPrefix]\n\nField value is not correct : [name=defaultPrefix]\n\nField value is not correct : [name=blockReqType]\n\nInvalid Email Addresses &lt;contact&gt; specified for the given Pool &lt;name&gt;\n\nInvalid Block Request Type.  Block Request Type &lt;blockReqType&gt; is not supported.\n\nInvalid Assign Request Type.  Assign Request Type &lt;assignBlockType&gt; is not supported.\n\nInvalid Notification Type.  Notification &lt;notificationType&gt; is not supported.\n\nInvalid Allocation Algorithm.  Algorithm &lt;algorithmType&gt; is not supported.\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Boolean Value.\n\nRequired input UDA Enabled QIP Type: &lt;udaName&gt; is invalid.\n\nInvalid Attribute(s): &lt;udaValue&gt;.\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Integer Value.\n\nUDA &lt;udaName&gt;'s value &lt;udaValue&gt; is an invalid IP address.\n\nUDA &lt;udaName&gt; is not associated with the given infrastructure.\n\nUDA Group &lt;udaGroupName&gt; is not associated with the given infrastructure.\n\nUDA &lt;uda&gt; is required.\n\nUDA &lt;uda&gt;'s value is required.\n\nUDA &lt;uda&gt; in group &lt;group&gt; is required.\n\nUDA &lt;uda&gt;'s value in group &lt;group&gt; is required.\n",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Parent Pool does not exists.\n\nUser Defined Attribute not found: [name= &lt;udaName&gt;].\n\nUDA group not found: [name= &lt;udaGroupName&gt;].\n",
						"schema": {
							"type": "string"
						}
					},
					"409": {
						"description": "Pool name not unique: [name= &lt;poolName&gt;]\n\nThere is more than one address pool named &lt;poolName&gt;. Parent pool\nname is required.\n",
						"schema": {
							"type": "string"
						}
					},
					"500": {
						"description": "Invalid permissions for the requested operation.\n",
						"schema": {
							"type": "string"
						}
					}
				}
			},
			"put": {
				"description": "Modify V6 Pool",
				"operationId": "modifyV6Pool",
				"summary": "Modify V6 Pool",
				"tags": [
					"V6 Pool"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Add parentName to modify child pool<br> Remove parentName to modify seed pool.",
						"required": true,
						"schema": {
							"$ref": "#/definitions/V6PoolRec"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Required Fields) Missing: [name]\n\nField value is not correct : [name=assignBlockType]\n\nField value is not correct : [name=notificationType]\n\nField value is not correct : [name=algorithmType]\n\nField value is not correct : [name=minPrefix]\n\nField value is not correct : [name=maxPrefix]\n\nField value is not correct : [name=defaultPrefix]\n\nField value is not correct : [name=blockReqType]\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Boolean Value.\n\nRequired input UDA Enabled QIP Type: &lt;udaName&gt; is invalid.\n\nInvalid Attribute(s): &lt;udaValue&gt;.\n\nUDA &lt;udaName&gt;'s Value &lt;udaValue&gt; is not an valid Integer Value.\n\nUDA &lt;udaName&gt;'s value &lt;udaValue&gt; is an invalid IP address.\n\nUDA &lt;uda&gt; is required.\n\nUDA &lt;uda&gt;'s value is required.\n\nUDA &lt;uda&gt; in group &lt;group&gt; is required.\n\nUDA &lt;uda&gt;'s value in group &lt;group&gt; is required.\n",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Pool not found: [name= &lt;poolName&gt;, parent= &lt;parentPoolName&gt;]\n\nUser Defined Attribute not found: [name= &lt;udaName&gt;].\n\nUDA group not found: [name= &lt;udaGroupName&gt;].\n",
						"schema": {
							"type": "string"
						}
					},
					"409": {
						"description": "Pool name not unique: [name= &lt;poolName&gt;] \n\nThere is more than one address pool named &lt;poolName&gt;. Parent pool\nname is required.\n",
						"schema": {
							"type": "string"
						}
					},
					"500": {
						"description": "Invalid permissions for the requested operation.\n\nUDA &lt;udaName&gt; is not associated with the given infrastructure.\n",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/v6pool/{poolInfo}": {
			"delete": {
				"description": "Delete V6 Pool. You can delete V6 Pool by pool name (FQDN) or UUID",
				"summary": "Delete V6 Pool",
				"operationId": "deleteV6Pool",
				"tags": [
					"V6 Pool"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "poolInfo",
						"description": "poolInfo can be poolName or UUID",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "poolPath",
						"description": "Name of parent pool or Hierarchical path to the parent pool if parent pool name is not unique enough.\n If poolInfo is uuid, we don't need this parameter",
						"required": false,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [pool]\n",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Pool not found: [poolInfo = &lt;poolInfo&gt;, parent= &lt;parent&gt;]\n",
						"schema": {
							"type": "string"
						}
					},
					"409": {
						"description": "There is more than one address pool named &lt;pool&gt;.  Parent pool name is required.\n\nUnable to delete V6 Pool - &lt;pool&gt; containing child pools or blocks\n\nPool cannot be deleted",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/dns/generation{extension}": {
			"post": {
				"description": "Use this procedure to generate DNS server configuration files. This call will return a token that can used to check the status of the operation.",
				"operationId": "pushdns",
				"summary": "Generate DNS Server Configuration",
				"tags": [
					"DNS Server"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "DNSGenerationRequest.",
						"required": true,
						"schema": {
							"$ref": "#/definitions/DNSGenerationRequest"
						}
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/TokenInfo"
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [serverName]\n\nCannot schedule a job in the past.\n\nInvalid input: [name].\n\nIllegal option value.\n\nNo Zones are selected."
					},
					"500": {
						"description": "Invalid permissions for the requested operation.\n\nThe service is not available."
					}
				}
			}
		},
		"/v1/{orgName}/dns/{fqdn}{extension}": {
			"get": {
				"description": "Get DNS Server by fully qualified domain name (FQDN).",
				"operationId": "getDNSServer",
				"summary": "Get DNS Server by FQDN",
				"tags": [
					"DNS Server"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "fqdn",
						"description": "Fully qualified domain name of server",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/DNSServerGetMethod"
						}
					},
					"404": {
						"description": "Server &lt;fqdn&gt; not found"
					},
					"500": {
						"description": "Permission Denied. You do not have appropriate privileges to perform this action."
					}
				}
			}
		},
		"/v1/{orgName}/dns{extension}": {
			"get": {
				"description": "Search DNS Server by Name or Address. Wildcards are supported.<br>\n*Notes:* If the number of returned DNS Servers is less than or equal to the page size, the page index parameter is not honored.",
				"operationId": "searchDNSServer",
				"summary": "Search DNS Server by Name or Address",
				"tags": [
					"DNS Server"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "name",
						"description": "Server Name. Support the wildcard search with following forms: &#10033; or &#10033;abc or abc&#10033; or a&#10033;c<br>\n<br>\nThe default value is &#10033;",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "address",
						"description": "IPV4 Address. Support the wildcard search with following forms: &#10033; or &#10033;.1 or 1.&#10033; or 1.&#10033;.1<br>\n<br>\nThe default value is &#10033;.",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "Page size of response. The default value is 25",
						"required": false,
						"type": "integer"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "Page index of response. The default value is 1",
						"required": false,
						"type": "integer"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/DNSServerRec"
						}
					},
					"400": {
						"description": "Paginated list indexes start at 1 and Paginated list sizes start at 1 and Unlimited with pageSize=0"
					},
					"404": {
						"description": "DNS Server not found: [name=&lt;name&gt;, address=&lt;address&gt;]"
					},
					"406": {
						"description": "Paginated list indexes start at 1"
					}
				}
			}
		},
		"/v1/{orgName}/dns": {
			"post": {
				"description": "Create DNS Server",
				"operationId": "createDNS",
				"summary": "Create a DNS Server",
				"tags": [
					"DNS Server"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "orgName",
						"in": "path",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Contain server information and parameters, UDA, UDA groups. Provide at least server information and required parameters: Default Directory, Email address for local and reverse zones, RNDC Key",
						"required": true,
						"schema": {
							"$ref": "#/definitions/DNSServerGetMethod"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created"
					},
					"400": {
						"description": "Required Field(s) Missing: [Default Directory]\n\nRequired Field(s) Missing: [Email address for local and reverse zones]\n\nRequired Field(s) Missing: [RNDC Key]\n\nRequired Field(s) Missing: [serverName]\n\nRequired Field(s) Missing: [domainName]\n\nRequired Field(s) Missing: [serverType]\n\nUDA &lt;name&gt; is not associated with the given infrastructure.\n\nInvalid input: &lt;value&gt;"
					},
					"500": {
						"description": "DNS server &lt;name&gt; already exists.\n"
					}
				}
			}
		},
		"/v1/{orgName}/dns/{serverFQDN}/": {
			"delete": {
				"description": "Delete a DNS server by FQDN",
				"operationId": "deleteDNSServer",
				"summary": "Delete DNS Server",
				"tags": [
					"DNS Server"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "serverFQDN",
						"description": "FQDN of DNS server",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"204": {
						"description": "No content"
					},
					"400": {
						"description": "Invalid input: &lt;FQDN&gt;."
					},
					"404": {
						"description": "Server &lt;FQDN&gt; not found."
					},
					"500": {
						"description": "Cannot delete server &lt;serverName&gt;: &lt;message&gt;"
					}
				}
			},
			"put": {
				"description": "Modify a DNS Server. This call will update server based on information in the request body.",
				"operationId": "modifyDNS",
				"summary": "Modify a DNS Server",
				"tags": [
					"DNS Server"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue\n\nBasic username:password\n\nBlank if using client certificate authentication",
						"required": false,
						"type": "string"
					},
					{
						"name": "orgName",
						"in": "path",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "serverFQDN",
						"in": "path",
						"description": "The fully qualified domain name of the DNS server",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Contain server information and parameters, UDA, UDA groups. Provide any information that need to be updated.",
						"required": true,
						"schema": {
							"$ref": "#/definitions/DNSServerGetMethod"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Invalid input: [&lt;paramName&gt;,]"
					},
					"404": {
						"description": "Server &lt;name&gt; not found.</br>Address &lt;address&gt; was not found in database."
					},
					"500": {
						"description": "DNS server &lt;name&gt; already exists.</br>Cannot save server &lt;name&gt;:&lt;description&gt;."
					}
				}
			}
		},
		"/v1/{orgName}/dns/serverZone{extension}": {
			"get": {
				"description": "Get DNS Server Zones that associated with DNS Server.<br>\n*Notes:* If the number of returned DNS Server Zones are less than or equal to the page size, the page index parameter is not honored.",
				"operationId": "getDNSServerZone",
				"summary": "Get DNS Server Zones",
				"tags": [
					"DNS Server"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "fqdn",
						"description": "Fully qualified domain name of server",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "zoneName",
						"description": "Zone Name. Support the wildcard search with following forms: &#10033; or &#10033;abc or abc&#10033; or a&#10033;c<br>\n<br>\nThe default value is &#10033;",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "Page size of response. The default value is 25",
						"required": false,
						"type": "integer"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "Page index of response. The default value is 1",
						"required": false,
						"type": "integer"
					},
					{
						"in": "query",
						"name": "sort",
						"description": "Sort direction of zone name response. The default value is ASC",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/DNSServerZone"
						}
					},
					"404": {
						"description": "DNS Server Zone not found: [fqdn=&lt;fqdn&gt;, zoneName=&lt;zoneName&gt;]"
					},
					"406": {
						"description": "Paginated list indexes start at 1"
					}
				}
			}
		},
		"/v1/{orgName}/dns/{fqdn}/zones": {
			"put": {
				"description": "Use to manage/remove zone(s) from the DNS Server.",
				"operationId": "managezone",
				"summary": "Manage/remove zones from the DNS Server.",
				"tags": [
					"DNS Server"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "fqdn",
						"description": "Fully Qualified Domain Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "1. To associate zones to DNS Server, provide at least these information: name, role. Primary server is needed if role is secondary.\n\n2. To disassociate zones from DNS Server, provide list of zone names. Primary server is needed if you want to select a specific zone-primary pair to remove.\n\n3. To associate/disassociate Route 53 Hosted Zones with DNS Server, add zoneType with value Route 53. Default value is QIP Managed.\n.",
						"required": true,
						"schema": {
							"$ref": "#/definitions/DNSZoneInfo"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Invalid input: &lt;FQDN&gt;.\n\nThe role is Secondary which require a Primary server.\nDNS Server [&lt;FQDN&gt;] is not serve Route 53 Hosted Zones.\nDNS Server [&lt;FQDN&gt;] is not serve Route 53 Hosted Zones.\nOnly can associate Route 53 Hosted Zone [&lt;domain&gt;] as a primary-zone to DNS Server.\nThere are some Route 53 Hosted Zones with the same name [&lt;domain&gt;]. Please use route53Id for this case!\nDNS Server [&lt;FQDN&gt;] already has the Route 53 hosted zone [&lt;domain&gt;] in its managed zone list."
					},
					"403": {
						"description": "Permission Denied. You do not have appropriate privileges to perform this action."
					},
					"404": {
						"description": "Server &lt;FQDN&gt; not found.\n\nZone &lt;domain&gt; Not Found."
					},
					"409": {
						"description": "Duplicated. \n\n&lt;FQDN&gt; already is a primary/secondary server for &lt;domain&gt; ."
					}
				}
			}
		},
		"/v1/{orgName}/dnsservertemplate/{name}{extension}": {
			"get": {
				"description": "Get full profile of a DNS Server Template by name",
				"summary": "Get DNS Server Template",
				"operationId": "getDnsServerTemplate",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"DNS Server Template"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "name",
						"in": "path",
						"description": "Name of dns server template.",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/DNSServerTemplate"
						}
					},
					"400": {
						"description": "Bad request"
					},
					"404": {
						"description": "DNS Server Template [name] does not exist"
					}
				}
			}
		},
		"/v1/{orgName}/dnsservertemplate/{name}/": {
			"delete": {
				"description": "Delete DNS Server Template by name",
				"summary": "Delete DNS Server Template",
				"operationId": "deleteDnsServerTemplate",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"DNS Server Template"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "name",
						"in": "path",
						"description": "Name of dns server template.",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"204": {
						"description": "No Content"
					},
					"404": {
						"description": "DNS Server Template [templateName] does not exist."
					}
				}
			}
		},
		"/v1/{orgName}/dnsservertemplate": {
			"post": {
				"description": "Create DNS Server Template.",
				"summary": "Create DNS Server Template",
				"operationId": "create",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"DNS Server Template"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "DNSServerTemplate.",
						"required": true,
						"schema": {
							"$ref": "#/definitions/DNSServerTemplate"
						}
					}
				],
				"responses": {
					"201": {
						"description": "OK"
					},
					"400": {
						"description": "Bad request.\nRequired Field(s) Missing: [FieldName]\n[FieldName] is invalid.\nCannot save server template.Missing mandatory parm: [paramName]: Missing required parameter.\nInvalid text Parameter Email address for local and reverse zones Value: [value]"
					},
					"409": {
						"description": "Template [templateName] already exists"
					}
				}
			},
			"put": {
				"description": "Modify DNS Server Template",
				"summary": "Modify DNS Server Template",
				"operationId": "modifyDnsServerTemplate",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"DNS Server Template"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "name",
						"in": "query",
						"description": "Name of dns server template.",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "DNSServerTemplate.",
						"required": true,
						"schema": {
							"$ref": "#/definitions/DNSServerTemplate"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Bad request.\nRequired Field(s) Missing: [FieldName]\n[FieldName] is invalid."
					},
					"404": {
						"description": "DNS Server Template [templateName] does not exist."
					},
					"409": {
						"description": "DNS Server Template [templateName] already exists."
					}
				}
			}
		},
		"/v1/{orgName}/dnsservertemplate{extension}": {
			"get": {
				"description": "Search DNS Server Template by name or zone or type",
				"summary": "Search DNS Server Template",
				"operationId": "searchDnsServerTemplate",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"DNS Server Template"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"name": "extension",
						"in": "path",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "name",
						"in": "query",
						"description": "Name of dns server template.",
						"type": "string"
					},
					{
						"name": "type",
						"in": "query",
						"description": "Type of dns server template.\nOne of following values:\n\n'ALU DNS 6.0',</br>'ALU DNS 6.1',</br>'ALU DNS 6.2',</br>'BIND-9.X',</br>'MICROSOFT DNS',</br>'DNS 6.3'",
						"type": "string"
					},
					{
						"name": "zone",
						"in": "query",
						"description": "which is managed by dns server template.",
						"type": "string"
					},
					{
						"name": "pageSize",
						"in": "query",
						"description": "Page size of response.\nDefault: 25",
						"type": "integer"
					},
					{
						"name": "pageIndex",
						"in": "query",
						"description": "Page index of response.\nDefault: 1",
						"type": "integer"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/templateObject"
							}
						}
					},
					"400": {
						"description": "Bad request"
					}
				}
			}
		},
		"/v1/{orgName}/dhcp/generation{extension}": {
			"post": {
				"description": "Use this procedure to generate DHCP server configuration files. This call will return a token that can used to check the status of the operation.",
				"summary": "Generate DHCP Server Configuration",
				"operationId": "generateDHCP",
				"tags": [
					"DHCP Server"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "body",
						"name": "requestBody",
						"description": "DHCPGenerationRequest",
						"required": true,
						"schema": {
							"$ref": "#/definitions/DHCPGenerationRequest"
						}
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/TokenInfo"
						}
					},
					"400": {
						"description": "Invalid run mode specified to scheduler: &lt;runMode&gt;. \n\nInvalid input &lt;name&gt;.\n\nPush preview server cannot run in foreground. \n\n&lt;scheduledTime&gt; is invalid date format.\n\nCannot schedule a job in the past. \n\nInvalid email address [&lt;email&gt;] provided."
					},
					"404": {
						"description": "DHCP Server &lt;serverName&gt; does not exist.\n"
					},
					"500": {
						"description": "Invalid permissions for the requested operation.\n\nThe service is not available, please contact your administrator for more information."
					}
				}
			}
		},
		"/v1/{orgName}/dhcp/scope": {
			"post": {
				"description": "Use this procedure to create a DHCP scope",
				"summary": "Create a DHCP scope by selecting a set of addresses and assigning it an Object Profile",
				"operationId": "createScope",
				"tags": [
					"DHCP Server"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "body",
						"name": "requestBody",
						"description": "DHCPScope Request",
						"required": true,
						"schema": {
							"$ref": "#/definitions/DHCPScopeReq"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created"
					},
					"400": {
						"description": "Required Field(s) Missing: [Subnet Address]\n\nRequired Field(s) Missing: [DHCP Type]\n\nRequired Field(s) Missing: [Start Address]\n\nRequired Field(s) Missing: [End Address]\n\nRequired Field(s) Missing: [domainName]\n\nRequired Field(s) Missing: [Domain Name]\n\nRequired Field(s) Missing: [DHCP Server]\n\nRequired Field(s) Missing: [DHCP Template]\n\n"
					}
				}
			},
			"put": {
				"description": "Use this procedure to modify a DHCP scope",
				"summary": "Modify a DHCP scope",
				"operationId": "modifyScope",
				"tags": [
					"DHCP Server"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "startAddress",
						"description": "Start Address of an DHCP Scope",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "endAddress",
						"description": "End Address of an DHCP Scope",
						"required": true,
						"type": "string"
					},
					{
						"in": "body",
						"name": "requestBody",
						"description": "Modifying DHCP Scope Request",
						"required": true,
						"schema": {
							"$ref": "#/definitions/ModifyScopeReq"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Invalid input: [&lt;paramName&gt;,]</br>Field value is not correct : [name=&lt;paramName&gt;]"
					},
					"404": {
						"description": "Server &lt;name&gt; not found.</br>Address &lt;address&gt; was not found in database.</br>Cannot find any DHCP scope from &lt;startAddress&gt; to &lt;endAddress&gt;.</br>DHCP Option Template not found: &lt;dhcpOptionTemplate&gt;"
					},
					"500": {
						"description": "DHCP Fingerprint with name &lt;fingerprintName&gt; does not exist.</br>The subnet does not have a dhcp server</br>The subnet does not have a dhcp option template"
					}
				}
			}
		},
		"/v1/{orgName}/dhcp": {
			"post": {
				"description": "Create DHCP Server",
				"operationId": "createDHCP",
				"summary": "Create a DHCP Server",
				"tags": [
					"DHCP Server"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "orgName",
						"in": "path",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Contain server information and parameters, UDA, UDA groups. Provide at least server information and required parameters: Default Directory, DHCP Template",
						"required": true,
						"schema": {
							"$ref": "#/definitions/DHCPServer"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created"
					},
					"400": {
						"description": "Required Field(s) Missing: [Default Directory]\n\nRequired Field(s) Missing: [serverName]\n\nRequired Field(s) Missing: [domainName]\n\nRequired Field(s) Missing: [serverType]\n\nUDA &lt;name&gt; is not associated with the given infrastructure.\n\nInvalid input: &lt;value&gt;"
					},
					"403": {
						"description": "Permission Denied. You do not have appropriate privileges to perform this action."
					},
					"409": {
						"description": "DHCP server &lt;name&gt; already exists.\n"
					}
				}
			}
		},
		"/v1/{orgName}/dhcp/{serverFQDN}/": {
			"delete": {
				"description": "Delete a DHCP server by FQDN",
				"operationId": "deleteDHCPServer",
				"summary": "Delete DHCP Server",
				"tags": [
					"DHCP Server"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "serverFQDN",
						"description": "FQDN of DHCP server",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"204": {
						"description": "No content",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Invalid input: &lt;FQDN&gt;."
					},
					"404": {
						"description": "Server &lt;FQDN&gt; not found."
					},
					"500": {
						"description": "Cannot delete server &lt;serverName&gt;: &lt;message&gt;"
					}
				}
			},
			"put": {
				"description": "Modify a DHCP Server. This call will update server based on information in the request body.",
				"operationId": "modifyDHCP",
				"summary": "Modify a DHCP Server",
				"tags": [
					"DHCP Server"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue\n\nBasic username:password\n\nBlank if using client certificate authentication",
						"required": false,
						"type": "string"
					},
					{
						"name": "orgName",
						"in": "path",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "serverFQDN",
						"in": "path",
						"description": "The fully qualified domain name of the DHCP server",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Contain server information and parameters, UDA, UDA groups. Provide any information that need to be updated.",
						"required": true,
						"schema": {
							"$ref": "#/definitions/DHCPServer"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Invalid input: [&lt;paramName&gt;]"
					},
					"404": {
						"description": "Server &lt;name&gt; not found."
					},
					"403": {
						"description": "Permission Denied. You do not have appropriate privileges to perform this action."
					},
					"409": {
						"description": "DHCP server &lt;name&gt; already exists.\n"
					}
				}
			}
		},
		"/v1/{orgName}/dhcp{extension}": {
			"get": {
				"description": "Search DHCP Server by Name or Address. Wildcards are supported.<br>\n*Notes:* If the number of returned DHCP Servers is less than or equal to the page size, the page index parameter is not honored.",
				"operationId": "searchDHCPServer",
				"summary": "Search DHCP Server by Name or Address",
				"tags": [
					"DHCP Server"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "name",
						"description": "Server Name. Support the wildcard search with following forms: &#10033; or &#10033;abc or abc&#10033; or a&#10033;c<br>\n<br>\nThe default value is &#10033;",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "address",
						"description": "IPV4 Address. Support the wildcard search with following forms: &#10033; or &#10033;.1 or 1.&#10033; or 1.&#10033;.1<br>\n<br>\nThe default value is &#10033;.",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "Page size of response. The default value is 25",
						"required": false,
						"type": "integer"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "Page index of response. The default value is 1",
						"required": false,
						"type": "integer"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/DHCPServerRec"
						}
					},
					"400": {
						"description": "Paginated list indexes start at 1 and Paginated list sizes start at 1 and Unlimited with pageSize=0"
					},
					"404": {
						"description": "DHCP Server not found: [name=&lt;name&gt;, address=&lt;address&gt;]"
					},
					"406": {
						"description": "Paginated list indexes start at 1"
					}
				}
			}
		},
		"/v1/{orgName}/dhcp/{fqdn}{extension}": {
			"get": {
				"description": "Get DHCP Server by fully qualified domain name (FQDN).",
				"operationId": "getDHCPServer",
				"summary": "Get DHCP Server by FQDN",
				"tags": [
					"DHCP Server"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "fqdn",
						"description": "Fully qualified domain name of server",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/DHCPServer"
						}
					},
					"404": {
						"description": "Server &lt;fqdn&gt; not found"
					},
					"403": {
						"description": "Permission Denied. You do not have appropriate privileges to perform this action."
					}
				}
			}
		},
		"/v1/{orgName}/block/explicit": {
			"post": {
				"description": "Explicit block and send arin notify ",
				"summary": "Explicit block and send arin notify",
				"operationId": "explicitBlock",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Notification Block Change"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/ExplicitBlockRequest"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created",
						"schema": {
							"$ref": "#/definitions/Created"
						}
					},
					"400": {
						"description": "Bad request",
						"schema": {
							"$ref": "#/definitions/Bad"
						}
					},
					"403": {
						"description": "Invalid permissions for the requested operation."
					},
					"404": {
						"description": "Not Found",
						"schema": {
							"$ref": "#/definitions/NotFound"
						}
					},
					"409": {
						"description": "Conflict",
						"schema": {
							"$ref": "#/definitions/Conflict"
						}
					}
				}
			}
		},
		"/v1/{orgName}/block/allocate": {
			"post": {
				"description": "Allocate block and send arin notify ",
				"summary": "Allocate block and send arin notify",
				"operationId": "allocateBlock",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Notification Block Change"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/AllocateBlockRequest"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created",
						"schema": {
							"$ref": "#/definitions/Created"
						}
					},
					"400": {
						"description": "Bad request",
						"schema": {
							"$ref": "#/definitions/Bad"
						}
					},
					"403": {
						"description": "Invalid permissions for the requested operation."
					},
					"404": {
						"description": "Not Found",
						"schema": {
							"$ref": "#/definitions/NotFound"
						}
					},
					"409": {
						"description": "Conflict",
						"schema": {
							"$ref": "#/definitions/Conflict"
						}
					}
				}
			}
		},
		"/v1/{orgName}/block/recover": {
			"post": {
				"description": "Recover block and send arin notify ",
				"summary": "Recover block and send arin notify",
				"operationId": "recoverBlock",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Notification Block Change"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/RecoverBlockRequest"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created",
						"schema": {
							"$ref": "#/definitions/Created"
						}
					},
					"400": {
						"description": "Bad request",
						"schema": {
							"$ref": "#/definitions/Bad"
						}
					},
					"403": {
						"description": "Invalid permissions for the requested operation."
					},
					"404": {
						"description": "Not Found",
						"schema": {
							"$ref": "#/definitions/NotFound"
						}
					},
					"409": {
						"description": "Conflict",
						"schema": {
							"$ref": "#/definitions/Conflict"
						}
					}
				}
			}
		},
		"/v1/{orgName}/block/quick": {
			"post": {
				"description": "Quick block and send arin notify ",
				"summary": "Quick block and send arin notify",
				"operationId": "quickBlock",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Notification Block Change"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/QuickBlockAllocRequest"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created",
						"schema": {
							"$ref": "#/definitions/Created"
						}
					},
					"400": {
						"description": "Bad request",
						"schema": {
							"$ref": "#/definitions/Bad"
						}
					},
					"403": {
						"description": "Invalid permissions for the requested operation."
					},
					"404": {
						"description": "Not Found",
						"schema": {
							"$ref": "#/definitions/NotFound"
						}
					},
					"409": {
						"description": "Conflict",
						"schema": {
							"$ref": "#/definitions/Conflict"
						}
					}
				}
			}
		},
		"/v1/{orgName}/jobstatus{extension}": {
			"get": {
				"description": "Check the status of a DNS or DHCP generation using a token from the DNS or DHCP Generation response.",
				"operationId": "checkStatus",
				"summary": "Check status of a job",
				"tags": [
					"Job Status"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "token",
						"description": "Token of the job you want to retrieve.",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/JobInfo"
						}
					},
					"404": {
						"description": "Could not find job: [&lt;token&gt;]\n",
						"schema": {
							"type": "string"
						}
					},
					"500": {
						"description": "Internal Error.  Please contact System Administrator. Last unit does not have enough valid bits",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/download/{token}": {
			"get": {
				"description": "Use this URL to download DNS and DHCP server configuration files.\n\nWhen using <b>cURL</b> with this API specify \"-o fileName.extension\" to download file contents.\n\nInternet Explorer browser users: to download the report please right click the <b>“Download file”</b> link and select <b>“Save as”</b> then input the desired file name with the correct extension.",
				"operationId": "download",
				"summary": "Download push configuration files",
				"tags": [
					"Configuration File Download"
				],
				"consumes": [
					"multipart/form-data",
					"application/x-www-form-urlencoded"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "token",
						"description": "Token of the server generation job.",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "files",
						"description": "Name of individual file(s)s to be downloaded. Multiple files names must be separated by a comma (,). All available files are downloaded if this field is not specified. This field is not required.",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "type",
						"description": "File compression type. Either \"zip\" or \"gzip\". This field is not required.",
						"required": false,
						"type": "string",
						"enum": [
							"zip",
							"gzip"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Invalid value: [&lt;token&gt;]",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Could not find job: [&lt;token&gt;]\n\nFile doesn't exist",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/global/v1/utils/x509/decode": {
			"post": {
				"description": "Decode base64-encoded certificate",
				"operationId": "decodeX509Certificate",
				"summary": "Decode encoded certificate",
				"tags": [
					"Utilities"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "certificate",
						"in": "body",
						"description": "Encoded certificate",
						"required": true,
						"schema": {
							"type": "string",
							"example": "MIIDRzCCAi+gAwIBAgIEBrAUNDANBgkqhkiG9w0BAQsFADBMQswCQYDVQQGEwJWTjENMAsGA1..."
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/X509Certificate"
						}
					},
					"400": {
						"description": "Invalid certificate."
					}
				}
			}
		},
		"/global/v1/utils/x509/generate": {
			"post": {
				"description": "Generate certificate key pair (self-signed)",
				"operationId": "generateKeyPair",
				"summary": "Generate certificate key pair (self-signed)",
				"tags": [
					"Utilities"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Certificate information request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/CertificateInformation"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/KeyPairCertificate"
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [field]\n\nInvalid expiration date."
					}
				}
			}
		},
		"/global/v1/samlidp": {
			"post": {
				"description": "Create a new SAML Identity Provider\n",
				"operationId": "addSamlIdp",
				"summary": "Create SAML Identity Provider",
				"tags": [
					"SAML Identity Provider"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "The SAML Identity Provider request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/SamlIdpRec"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created"
					},
					"400": {
						"description": "Required Field(s) Missing: [field]\n\nField value is not correct [name]. SAML Identity Provider name can contain letter (a-z, A-Z), number (0-9), space ( ) and at least one number or letter.\n\nField value is not correct [singleSignonUrl]. This value must be a valid URL\n\nField value is not correct [singleLogoutUrl]. This value must be a valid URL\n\nField value is not correct [singleSignonMethod]. Only allow \"POST\" or \"Redirect\" (case-sensitive)\n\nField value is not correct [singleLogoutMethod]. Only allow \"POST\" or \"Redirect\" (case-sensitive)\n\nField value is not correct [signingCertificate]. This value must be an unexpired base-64 encoded X.509 certificate.\n\nField value is not correct [encryptionCertificate]. This value must be an unexpired base-64 encoded X.509 certificate.\n"
					},
					"403": {
						"description": "Invalid permissions for the requested operation"
					},
					"409": {
						"description": "Cannot save the SAML Identity Provider [name]: This SAML Identity Provider already exists.\n"
					}
				}
			},
			"put": {
				"description": "Modify a SAML Identity Provider\n",
				"operationId": "modifySamlIdentityProvider",
				"summary": "Modify SAML Identity Provider",
				"tags": [
					"SAML Identity Provider"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "The SAML Identity Provider request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/SamlIdpRec"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Required Field(s) Missing: [field]\n\nField value is not correct [name]. SAML Identity Provider name can contain letter (a-z, A-Z), number (0-9), space ( ) and at least one number or letter.\n\nField value is not correct [singleSignonUrl]. This value must be a valid URL\n\nField value is not correct [singleLogoutUrl]. This value must be a valid URL\n\nField value is not correct [singleSignonMethod]. Only allow \"POST\" or \"Redirect\" (case-sensitive)\n\nField value is not correct [singleLogoutMethod]. Only allow \"POST\" or \"Redirect\" (case-sensitive)\n\nField value is not correct [signingCertificate]. This value must be an unexpired base-64 encoded X.509 certificate.\n\nField value is not correct [encryptionCertificate]. This value must be an unexpired base-64 encoded X.509 certificate.\n"
					},
					"403": {
						"description": "Invalid permissions for the requested operation"
					},
					"404": {
						"description": "SAML Identity Provider not found: [name]"
					},
					"409": {
						"description": "Cannot save the SAML Identity Provider [name]: This SAML Identity Provider already exists.\n"
					}
				}
			}
		},
		"/global/v1/samlidp/{samlIdpName}{extension}": {
			"get": {
				"description": "Get SAML Identity Provider by name",
				"operationId": "getByName",
				"summary": "Get SAML Identity Provider by name",
				"tags": [
					"SAML Identity Provider"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json or null if you want to reponse with JSON format\n\n.xml to reponse with XML format\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"name": "samlIdpName",
						"in": "path",
						"description": "Name of the SAML Identity Provider that you want to get",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/SamlIdpRec"
						}
					},
					"403": {
						"description": "Invalid permissions for the requested operation."
					},
					"404": {
						"description": "SAML Identity Provider not found: [name]"
					}
				}
			}
		},
		"/global/v1/samlidp{extension}": {
			"get": {
				"description": "Search SAML Identity Providers by name\n",
				"operationId": "searchSamlIdpByName",
				"summary": "Search SAML Identity Providers by name",
				"tags": [
					"SAML Identity Provider"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json if you want to reponse with JSON format<br> \n.xml to reponse with XML format\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "query",
						"name": "samlIdpName",
						"description": "Name of SAML Identity Provider for which you are searching.\nYou can use an asterisk (*) as a wildcard character to \nreturn a range of results. If you use the asterisk as \nthe first or only character, you must put this value in \neither single or double quotes.\n",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "Page index. Default value is 1.",
						"required": false,
						"type": "integer"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "Page size. Default value is 25.",
						"required": false,
						"type": "integer"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/SamlIdpInfo"
							}
						}
					},
					"400": {
						"description": "Required String parameter 'samlIdpName' is not present."
					},
					"403": {
						"description": "Bad request - Permission denied.  You do not have appropriate privileges to perform this action."
					},
					"404": {
						"description": "Record Not Found.\n"
					}
				}
			}
		},
		"/global/v1/samlidp/{samlIdpName}": {
			"delete": {
				"description": "Delete a SAML Identity Provider by name.\n",
				"summary": "Delete SAML Identity Provider",
				"operationId": "delete",
				"tags": [
					"SAML Identity Provider"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "samlIdpName",
						"description": "Name of the SAML Identity Provider being deleted.\n",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"204": {
						"description": "No Content"
					},
					"404": {
						"description": "SAML Identity Provider not found: [name]\n"
					}
				}
			}
		},
		"/global/v1/samlconfiguration": {
			"put": {
				"description": "Update VitalQIP's SAML Configuration. To leave a field value unchanged in the configuration, exclude it from the request body.",
				"operationId": "updateSamlConfiguration",
				"summary": "Update SAML Configuration",
				"tags": [
					"SAML Configuration"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "The SAML Configuration request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/SamlConfigurationRec"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Required Field(s) Missing: [field]\n\nField value is not correct [privateEncryptionKey]. Invalid base64 encoded string.\n\nField value is not correct [privateEncryptionKey]. Invalid key spec.\n\nField [encryptionCertificate] must be an unexpired base-64 encoded X.509 certificate\n\nField value is not correct [hashAlgorithm]. Only the case-sensitive values of \"SHA1\" and \"SHA256\" are allowed."
					},
					"403": {
						"description": "Invalid permissions for the requested operation"
					}
				}
			}
		},
		"/global/v1/samlconfiguration{extension}": {
			"get": {
				"description": "Get SAML Configuration",
				"operationId": "getSamlConfiguration",
				"summary": "Get SAML Configuration",
				"tags": [
					"SAML Configuration"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/SamlConfigurationRec"
						}
					},
					"403": {
						"description": "Invalid permissions for the requested operation."
					},
					"404": {
						"description": "Saml configuration not found."
					}
				}
			}
		},
		"/global/v1/samlconfiguration/running{extension}": {
			"get": {
				"description": "Get running version of the SAML Configuration",
				"operationId": "getRunningSamlConfiguration",
				"summary": "Get running configuration",
				"tags": [
					"SAML Configuration"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/SamlRunningConfigurationRec"
						}
					},
					"404": {
						"description": "Saml configuration not found."
					}
				}
			}
		},
		"/v1/{orgName}/qip-search{extension}": {
			"get": {
				"description": "Search through various name or address fields in the database and returns the address, name and object type of records matching the search criteria.",
				"operationId": "qipSearch",
				"summary": "qip-search",
				"tags": [
					"qip-search"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "name",
						"description": "Specifies the name which you are searching for. Support the wildcard search with following forms: &#10033; or &#10033;abc or abc&#10033; or a&#10033;c;",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "address",
						"description": "Specifies the IP address which you are searching for. IPv4 / IPv6 address or IPv6 address/prefix length can be use.",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "searchType",
						"description": "Specifies the search type that you want to search for. One of following values:\n\n'All',</br>'Subnetorg',</br>'Domain',</br>'Network',</br>'Object',</br>'Router Group',</br>'Mac Address' (For searching  MAC Address in Object and D-DHCP Object),</br>'Resource Record',</br>'v6address',</br>'v6block',</br>'v6subnet',</br>'v6range',</br>'v6pool'.\n\nThe default value is \"All\".",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "subSearchType",
						"description": "The search type within the search_type value (above).\nThis option is only relevant when your searchType is\n\"ResourceRecord\". One of following values:\n\n'All',</br>'Object',</br>'Domain',</br>'ReverseZone'.\n\nThe default value is \"All\".",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "subRange",
						"description": "Specifies the \"Resource Record\" type.One of following values:\n\n'All',</br>'CNAME',</br>'A',</br>'HINFO',</br> 'MX',</br>'NS',</br>'PTR',</br> 'TXT',</br>'WKS',</br>'AAAA',</br> 'AFSDB',</br>'MB',</br>'MG',</br> 'MINFO',</br> 'MR',</br>'ISDN',</br>'SRV',</br> 'X25'. \n\nThe default value is \"All\".",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "target",
						"description": "Specifies the search target. This\nparameter is only relevant if your search_type is\n\"ResourceRecord\". One of following values:\n\n'both',</br>'owner',</br>'data'.\n\nThe default value is \"both\".",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/QipSearchResponse"
						}
					},
					"400": {
						"description": "Please enter a query parameter for searching."
					},
					"404": {
						"description": "Cannot find {0} where {1} = {2}"
					}
				}
			}
		},
		"/v1/{orgName}/managed-tsigkey{extension}": {
			"get": {
				"tags": [
					"Managed TSIG Key"
				],
				"summary": "Get managed TSIG keys used to secure VitalQIP TSIG DNS updates",
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml<br>\napplication/json\n",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "Status 200",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/ManagedTsigKeyEntity"
							}
						}
					}
				}
			}
		},
		"/v1/{orgName}/managed-tsigkey": {
			"post": {
				"summary": "Initiate a manual managed TSIG key rollover",
				"tags": [
					"Managed TSIG Key"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "body",
						"in": "body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/ManagedTsigKeyRolloverRequest"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Required Field(s) Missing: [keyAlgorithm]\n\nRequired Field(s) Missing: [keyLength]"
					}
				}
			}
		},
		"/v1/{orgName}/admin/{loginName}{extension}": {
			"get": {
				"summary": "Get an administrator account.",
				"description": "Get an administrator account.",
				"operationId": "getAdmin",
				"tags": [
					"Admin"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "loginName",
						"description": "Login Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/Admin"
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [loginName]"
					},
					"404": {
						"description": "Administrator &lt;loginName&gt; was not found.\n"
					}
				}
			}
		},
		"/v1/{orgName}/admin{extension}": {
			"get": {
				"summary": "Search administrator.",
				"description": "Search administrator by login name, admin type or admin status. It just return basic information of admin such as loginName, adminType, authenticationType and assignedOrganizations if it's Normal Administrator.",
				"operationId": "searchAdmin",
				"tags": [
					"Admin"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "query",
						"name": "loginName",
						"description": "Login name of the administrator for which you are searching.\nYou can use an asterisk (*) as a wildcard character to \nreturn a range of results.",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "adminType",
						"description": "Administrator type",
						"default": "All",
						"required": false,
						"type": "string",
						"enum": [
							"All",
							"Normal",
							"Master"
						]
					},
					{
						"in": "query",
						"name": "adminStatus",
						"description": "Administrator status",
						"default": "All",
						"required": false,
						"type": "string",
						"enum": [
							"All",
							"Enabled",
							"Disabled"
						]
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "Page index. Default value is 1.",
						"required": false,
						"type": "integer"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "Page size. Default value is 25.",
						"required": false,
						"type": "integer"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/SearchAdmin"
						}
					},
					"400": {
						"description": "Paginated list indexes start at 1 and Paginated list sizes start at 1 and Unlimited with pageSize=0"
					},
					"406": {
						"description": "Paginated list indexes start at 1\n"
					}
				}
			}
		},
		"/v1/{orgName}/admin": {
			"post": {
				"summary": "Create an administrator account.",
				"description": "Create an administrator account.",
				"operationId": "createAdmin",
				"tags": [
					"Admin"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/AdminRestModel"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created"
					},
					"400": {
						"description": "Required Field(s) Missing: [fieldName]\n\nInvalid value of field(s): [fieldName]"
					},
					"403": {
						"description": "Invalid permissions for the requested operation.\n\nNormal Administrator cannot create, modify or delete master Administrator.\n\nNormal - Normal Administrator only has write access permission on organization [orgName].\n\nOrganization Administrator [loginName] has Read Privileges to Organization [orgName] and cannot assign Write Privileges to Organization [orgName]"
					},
					"404": {
						"description": "Organization &lt;orgName&gt; was not found.\n\nThe contact was not found.\n\nThe location was not found."
					},
					"500": {
						"description": "Administrator &lt;loginName&gt; already exists.\n\nError when assigning organization with name [orgName] for administrator [loginName]."
					}
				}
			},
			"put": {
				"summary": "Modify an administrator account.",
				"description": "Modify an administrator account. <br>\n*Note:* Administrator loginName must exist; it cannot be modified via REST. Password can only be modified using admin/changePassword REST API. The adminType cannot be modified via REST API.",
				"operationId": "modifyAdmin",
				"tags": [
					"Admin"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "loginName",
						"description": "Login Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/modifyAdminRestModel"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Required Field(s) Missing: [fieldName]\n\nInvalid value of field(s): [fieldName]"
					},
					"403": {
						"description": "Invalid permissions for the requested operation.\n\nNormal Administrator cannot create, modify or delete master Administrator.\n\nNormal Administrator &lt;loginName&gt; did not create Administrator &lt;loginName&gt; and will not have modify/delete/clone permissions.\n\nNormal - Normal Administrator only has write access permission on organization [orgName]."
					},
					"404": {
						"description": "Administrator &lt;loginName&gt; was not found.\n\nOrganization &lt;orgName&gt; was not found.\n\nThe contact was not found.\n\nThe location was not found."
					},
					"500": {
						"description": "Error when assigning organization with name [orgName] for administrator [loginName]."
					}
				}
			},
			"delete": {
				"summary": "Delete an administrator account.",
				"description": "Delete an administrator account.",
				"operationId": "deleteAdmin",
				"tags": [
					"Admin"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "loginName",
						"description": "Login Name",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "string"
						}
					},
					"403": {
						"description": "Invalid permissions for the requested operation.",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "Administrator &lt;loginName&gt; was not found.\n\n",
						"schema": {
							"type": "string"
						}
					},
					"500": {
						"description": "Normal Administrator &lt;loginName&gt; did not create Administrator &lt;loginName&gt; and will not have modify/delete/clone permissions.\n\nNormal Administrator [loginName] cannot create, modify or delete Master Administrator [loginName].",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/admin/changePassword": {
			"put": {
				"summary": "Change password for an administrator account.",
				"description": "Change password for an administrator account.",
				"operationId": "changePassword",
				"tags": [
					"Admin"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "loginName",
						"description": "Login Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "newPassword",
						"description": "New password",
						"required": true,
						"type": "string",
						"format": "password"
					},
					{
						"in": "query",
						"name": "confirmNewPassword",
						"description": "Confirm new password",
						"required": true,
						"type": "string",
						"format": "password"
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"404": {
						"description": "Administrator &lt;loginName&gt; was not found.\n\n"
					},
					"500": {
						"description": "Normal Administrator &lt;loginName&gt; cannot create, modify or delete Master Administrator &lt;loginName&gt;.\n\nNormal Administrator &lt;loginName&gt; did not create Administrator &lt;loginName&gt; and will not have modify/delete/clone permissions.\n\nThe new password does not match the confirm password.\n\nThe authentication type of admin [loginName] is not password type."
					}
				}
			}
		},
		"/v1/{orgName}/admin/managedList{extension}": {
			"get": {
				"summary": "Get the managed list of an administrator by login name and organization.",
				"description": "Get the managed list of an administrator by login name and organization.",
				"operationId": "getManagedList",
				"tags": [
					"Admin"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "loginName",
						"description": "Login name of the administrator.",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "assignedOrgName",
						"description": "The name of organization which you want to assign manage list on this organization.",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/managedListGet"
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [loginName].\n\nRequired Field(s) Missing: [assignedOrgName]."
					},
					"403": {
						"description": "Invalid permissions for the requested operation."
					},
					"404": {
						"description": "Administrator &lt;loginName&gt; was not found.\n\nOrganization [assignedOrgName] was not found."
					},
					"500": {
						"description": "Admin [loginName] is not a normal admin.\n\nOrganization [assignedOrgName] not assigned for Administrator [loginName] or this Administrator is a Normal - Organization Admin on the Organization."
					}
				}
			}
		},
		"/v1/{orgName}/admin/managedList": {
			"post": {
				"summary": "Assign a manage list for an administrator.",
				"description": "Assign a manage list for an administrator.",
				"operationId": "assignManageList",
				"tags": [
					"Admin"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "loginName",
						"description": "Login name of the administrator.",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "assignedOrgName",
						"description": "The organization name which you want to assign manage list on this organization.",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/managedListGet"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Required Field(s) Missing: [loginName].\n\nRequired Field(s) Missing: [assignedOrgName]."
					},
					"403": {
						"description": "Invalid permissions for the requested operation."
					},
					"404": {
						"description": "Administrator &lt;loginName&gt; was not found.\n\nOrganization [assignedOrgName] was not found.\n\n"
					},
					"422": {
						"description": "Invalid, item type [itemType].\n\nInvalid value of accessPermission when assigning item [itemName]."
					},
					"500": {
						"description": "Admin [loginName] is not a normal admin.\n\nInvalid item type [itemType].\n\nAn item name of item type [itemType] is missing.\n\nThe accessPermission of item [itemName] is missing.\n\nOrganization [assignedOrgName] not assigned for Administrator [loginName] or this Administrator is a Normal - Organization on Organization.\n\nItem with type [itemType] and identifier [itemName] is in the wrong organization: [assignedOrgName].\n\nNormal Administrator [loginName] did not create Administrator [loginName] and will not have modify/delete/clone permissions."
					}
				}
			}
		},
		"/v1/{orgName}/admin/report": {
			"get": {
				"description": "Use this URL to download Administrators report file.\n\nWhen using <b>cURL</b> with this API specify \"-o fileName.extension\" to download file contents.\n\nInternet Explorer browser users: to download the report please right click the <b>â€œDownload fileâ€�</b> link and select <b>â€œSave asâ€�</b> then input the desired file name with the correct extension.\n\nExample: <b>qipman-AdministratorsReport-20190328_103238_523_0700.html</b> or <b>qipman-AdministratorsReport-20190328_103238_523_0700.pdf</b>",
				"operationId": "report",
				"summary": "Download Administrators report file",
				"tags": [
					"Admin"
				],
				"consumes": [
					"multipart/form-data",
					"application/x-www-form-urlencoded"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "adminNames",
						"description": "Administrator Names (Empty this field to report for all administrators). To add multiple administrators, enter a comma separated list",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "adminStatus",
						"description": "Administrator Status",
						"required": true,
						"type": "string",
						"enum": [
							"All",
							"Enabled",
							"Disabled"
						]
					},
					{
						"in": "query",
						"name": "reportFormat",
						"description": "Report Format",
						"required": true,
						"type": "string",
						"enum": [
							"html",
							"pdf"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"403": {
						"description": "Invalid permissions for the requested operation."
					}
				}
			}
		},
		"/v1/{orgName}/admin/activityreport": {
			"get": {
				"description": "Use this URL to download Administrators activity report file.\n\nWhen using <b>cURL</b> with this API specify \"-o fileName.extension\" to download file contents.\n\nInternet Explorer browser users: to download the report please right click the <b>\"Download file\"</b> link and select <b>\"Save as\"</b> then input the desired file name with the correct extension.\n\nExample: <b>qipman-AdministratorsActivityReport-20190328_103238_523_0700.html</b> or <b>qipman-AdministratorsActivityReport-20190328_103238_523_0700.pdf</b>",
				"operationId": "activityreport",
				"summary": "Download Administrators Activity report file in ALL organization",
				"tags": [
					"Admin"
				],
				"consumes": [
					"multipart/form-data",
					"application/x-www-form-urlencoded"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name.",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "administrator",
						"description": "Login Name ",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "fromDate",
						"description": "From date.\nFormat: mm/dd/yyyy hh:mm",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "toDate",
						"description": "To date.\nFormat: mm/dd/yyyy hh:mm",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "sortOrder",
						"description": "Sort order.",
						"type": "string",
						"enum": [
							"Ascending",
							"Descending"
						],
						"default": "Ascending"
					},
					{
						"in": "query",
						"name": "reportFormat",
						"description": "Report Format",
						"required": true,
						"type": "string",
						"enum": [
							"html",
							"pdf"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Bad request.\nFrom Date [fromDate] should be less than To Date [toDate].\nInvalid format of date fields [fromDate or toDate]"
					},
					"403": {
						"description": "Invalid permissions for the requested operation."
					}
				}
			}
		},
		"/v1/{orgName}/admin/role": {
			"post": {
				"summary": "Create an administrator role.",
				"description": "Create an administrator role.",
				"operationId": "createAdminRole",
				"tags": [
					"Admin"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/AdminRoleRestModel"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created"
					},
					"400": {
						"description": "Required Field(s) Missing: [fieldName]"
					},
					"403": {
						"description": "Permission Denied. You do not have appropriate privileges to perform this action."
					},
					"409": {
						"description": "Administrator role [adminRoleName] already exists."
					}
				}
			}
		},
		"/v1/{orgName}/admin/role{extension}": {
			"get": {
				"summary": "Search administrator role.",
				"description": "Search administrator role by administrator role name.",
				"operationId": "searchAdminRole",
				"tags": [
					"Admin"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "query",
						"name": "adminRoleName",
						"description": "Searching key of administrator role name.\nYou can use an asterisk (*) as a wildcard character to \nreturn a range of results.",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "Page index. Default value is 1.",
						"required": false,
						"type": "integer"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "Page size. Default value is 25.",
						"required": false,
						"type": "integer"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/SearchDlist"
						}
					},
					"406": {
						"description": "Paginated list indexes start at 1"
					}
				}
			}
		},
		"/v1/{orgName}/admin/role/{adminRoleName}": {
			"put": {
				"summary": "Modify an administrator role.",
				"description": "Modify an administrator role.",
				"operationId": "modifyAdminRole",
				"tags": [
					"Admin"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "adminRoleName",
						"description": "Administrator Role Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/modifyAdminRoleRestModel"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"403": {
						"description": "Permission Denied. You do not have appropriate privileges to perform this action."
					},
					"404": {
						"description": "Administrator role [adminRoleName] was not found."
					}
				}
			},
			"delete": {
				"summary": "Delete an administrator role.",
				"description": "Delete an administrator role.",
				"operationId": "deleteAdminRole",
				"tags": [
					"Admin"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "adminRoleName",
						"description": "Administrator Role Name",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"204": {
						"description": "No Content. (The administrator role was deleted)"
					},
					"403": {
						"description": "Permission Denied. You do not have appropriate privileges to perform this action."
					},
					"404": {
						"description": "Administrator role [adminRoleName] was not found."
					}
				}
			}
		},
		"/v1/{orgName}/admin/role/{adminRoleName}/assignedAdmin{extension}": {
			"get": {
				"summary": "Get assigned administrator name list by administrator role.",
				"description": "Get assigned administrator name list by administrator role.",
				"operationId": "searchAdminRoleAssignedAdmin",
				"tags": [
					"Admin"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "path",
						"name": "adminRoleName",
						"description": "Administrator Role Name.",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "Page index. Default value is 1.",
						"required": false,
						"type": "integer"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "Page size. Default value is 25.",
						"required": false,
						"type": "integer"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/AssignedAdminDlist"
						}
					},
					"404": {
						"description": "Administrator role [adminRoleName] was not found."
					},
					"406": {
						"description": "Paginated list indexes start at 1"
					}
				}
			}
		},
		"/v1/{orgName}/admin/role/{adminRoleName}/managedList{extension}": {
			"get": {
				"summary": "Get the managed list of an administrator role by role name.",
				"description": "Get the managed list of an administrator role by role name.",
				"operationId": "getAdminRoleManagedList",
				"tags": [
					"Admin"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "path",
						"name": "adminRoleName",
						"description": "Administrator Role Name.",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/ManagedListDlist"
						}
					},
					"404": {
						"description": "Administrator role [adminRoleName] was not found."
					}
				}
			}
		},
		"/v1/{orgName}/admin/role/{adminRoleName}/managedList": {
			"post": {
				"summary": "Assign a managed list for an administrator role.",
				"description": "Assign a managed list for an administrator role.",
				"operationId": "assignAdminRoleManagedList",
				"tags": [
					"Admin"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "adminRoleName",
						"description": "Administrator Role Name.",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/ManagedListDlist"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"403": {
						"description": "Permission Denied. You do not have appropriate privileges to perform this action."
					},
					"404": {
						"description": "Administrator role [adminRoleName] was not found."
					},
					"422": {
						"description": "Invalid, item type [itemType].\n\nInvalid value of accessPermission when assigning item [itemName]."
					}
				}
			}
		},
		"/v1/{orgName}/movev4object": {
			"put": {
				"summary": "Move an object by IP address.",
				"description": "Move an object by IP address.",
				"operationId": "movev4object",
				"tags": [
					"V4 Address"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/list"
						}
					}
				],
				"responses": {
					"200": {
						"description": "Response entity list",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/ResponseEntity"
							}
						}
					},
					"400": {
						"description": "The input is invalid."
					}
				}
			}
		},
		"/v1/{orgName}/address/getipv4address{extension}": {
			"get": {
				"summary": "Select an IPv4 Address from a specific IPv4 Subnet.",
				"description": "Select an IPv4 Address from a specific IPv4 Subnet. This IPv4 Address is marked as Selected",
				"operationId": "getipv4address",
				"tags": [
					"V4 Address"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml\n\napplication/json\n",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "subnetAddress",
						"description": "IPv4 Subnet Address",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "startExcludedAddress",
						"description": "Start address of excluded range. If user only provides excludedAddressCount, \nthe default value of startExcludedAddress is the first IP in the subnet.",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "excludedAddressCount",
						"description": "Number of addresses excluded. The default value is 1",
						"required": false,
						"type": "integer"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "object",
							"properties": {
								"ipAddrStr": {
									"type": "string",
									"description": "ipv4 address is selected from a specific IPv4 Subnet"
								}
							},
							"example": {
								"objectAddr": "192.168.32.15"
							}
						}
					},
					"400": {
						"description": "&lt;subnetAddress&gt; is not an IPv4 address\n\n The value of excludedAddressCount starts at 1."
					},
					"403": {
						"description": "Permission Denied. You do not have appropriate privileges to perform this action."
					},
					"404": {
						"description": "Subnet having address &lt;subnetAddress&gt; does not exist."
					},
					"405": {
						"description": "Excluded range [startExcludedAddress=&lt;startExcludedAddress&gt;, endExcludedAddress=&lt;endExcludedAddress&gt;] is out of subnet &lt;subnetAddress&gt;"
					}
				}
			}
		},
		"/v1/{orgName}/v4address/generateauditreport": {
			"get": {
				"description": "Use this URL to download v4 Object audit report file.\n\nWhen using <b>cURL</b> with this API specify \"-o fileName.extension\" to download file contents.\n\nInternet Explorer browser users: to download the report please right click the <b>\"Download file\"</b> link and select <b>\"Save as\"</b> then input the desired file name with the correct extension.\n\nExample: <b>qipman-V4ObjectAuditReport-20190328_103238_523_0700.html</b> or <b>qipman-V4ObjectAuditReport-20190328_103238_523_0700.pdf</b>",
				"summary": "Download audit report file",
				"tags": [
					"V4 Address"
				],
				"consumes": [
					"multipart/form-data",
					"application/x-www-form-urlencoded"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml\n\napplication/json\n",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "startDate",
						"description": "Start date\nFormat: mm/dd/yyyy hh:mm",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "endDate",
						"description": "End date\nFormat: mm/dd/yyyy hh:mm",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "name",
						"description": "v4 address name",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "address",
						"description": "v4 address",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "udaName",
						"description": "UDA name",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "udaValue",
						"description": "UDA value",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "reportFormat",
						"description": "Report Format",
						"required": true,
						"type": "string",
						"enum": [
							"html",
							"pdf"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "startDate's format is invalid.\nendDate's format is invalid.\nFrom Date [fromDate] should be less than To Date [toDate]."
					},
					"403": {
						"description": "Invalid permissions for the requested operation."
					}
				}
			}
		},
		"/v1/{orgName}/v4network/getfreesubnetlist{extension}": {
			"get": {
				"summary": "Get all available existing or new subnets in the IPv4 Network",
				"description": "Get all available existing or new subnets in the specified IPv4 Network Address with a specified subnet mask",
				"operationId": "getfreesubnetlist",
				"tags": [
					"V4 Network"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "header",
						"name": "Content-Type",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "query",
						"name": "networkAddress",
						"description": "IPv4 Network Address",
						"required": true,
						"type": "string",
						"format": "ipv4"
					},
					{
						"in": "query",
						"name": "subnetMask",
						"description": "Subnet Mask",
						"required": true,
						"type": "string",
						"format": "ipv4"
					},
					{
						"in": "query",
						"name": "type",
						"description": "Specifies whether to retrieve the available existing or new subnets.",
						"required": false,
						"default": "Existing",
						"type": "string",
						"enum": [
							"New",
							"Existing"
						]
					},
					{
						"in": "query",
						"name": "startAddress",
						"description": "Start subnet address",
						"required": false,
						"type": "string",
						"format": "ipv4"
					},
					{
						"in": "query",
						"name": "numberOfSubnet",
						"description": "Number of subnet in the result list",
						"required": false,
						"type": "integer"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/FreeSubnet"
						}
					},
					"400": {
						"description": "&lt;networkAddress&gt; is not an IPv4 network address. Network address should have format x.x.x.0 (x is a number between 1 and 255)\n\nSubnet mask is not valid.\n\nInvalid value of field(s): [&lt;type&gt;].\n\nRequired Field(s) Missing: [&lt;networkAddress&gt;]\n\nThe start subnet address [&lt;startAddress&gt;] is invalid in the network [&lt;networkAddress&gt;]."
					},
					"403": {
						"description": "Invalid permissions for the requested operation"
					},
					"404": {
						"description": "Network [&lt;networkAddress&gt;] not found."
					},
					"500": {
						"description": "No free Subnet Available on &lt;networkAddress&gt; with mask &lt;subnetMask&gt;\n\nYou are getting more than 16834 subnets. Please add numberOfSubnet to limit the result!"
					}
				}
			}
		},
		"/v1/{orgName}/dhcpoptiontemplate": {
			"post": {
				"summary": "Create a DHCP Option Template",
				"description": "Create a DHCP Option Template",
				"operationId": "CreateDHCPTemplate",
				"tags": [
					"DHCPOptionTemplate"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/dhcpoptiontemplate"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created"
					},
					"400": {
						"description": "Required Field(s) Missing: [fieldName]"
					},
					"403": {
						"description": "Cannot save DHCP Option Template [templateName]: Permission Denied "
					},
					"409": {
						"description": "DHCP Option Template [templateName] already exists"
					}
				}
			},
			"put": {
				"summary": "Modify a DHCP Option Template.",
				"description": "Modify a DHCP Option Template.",
				"operationId": "modifyDHCPOptonTemplate",
				"tags": [
					"DHCPOptionTemplate"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "templateName",
						"in": "query",
						"description": "DHCP Option Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request Body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/modifyDHCPOptionTemplatelist"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"404": {
						"description": "DHCP Option Template &lt;templateName&gt; was not found."
					},
					"403": {
						"description": "Cannot modify DHCP Option Template [templateName]: Permission Denied "
					}
				}
			},
			"delete": {
				"description": "Delete a DHCP Option Template by name",
				"summary": "Delete a DHCP Option Template",
				"operationId": "deleteDhcpOptionTemplate",
				"tags": [
					"DHCPOptionTemplate"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "templateName",
						"description": "DHCP Option Template Name",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"204": {
						"description": "NO CONTENT"
					},
					"403": {
						"description": "Invalid permissions for the requested operation."
					},
					"404": {
						"description": "DHCP Option Template &lt;templateName&gt; was not found."
					}
				}
			}
		},
		"/v1/{orgName}/dhcpoptiontemplate/{infraType}{extension}": {
			"get": {
				"summary": "Get DHCP Options Template by Subnet/Object/DHCP Option Template",
				"description": "Get DHCP Options Template by Subnet/Object/DHCP Template",
				"operationId": "getDHCPOptionTemplate",
				"tags": [
					"DHCPOptionTemplate"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "query",
						"name": "address",
						"description": "Required for Subnet/Object types",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "templateName",
						"description": "Required for Template type",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "infraType",
						"description": "infrastructure type: Object|Subnet|Template",
						"required": true,
						"type": "string",
						"enum": [
							"OBJECT",
							"SUBNET",
							"TEMPLATE"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/DhcpOptTemplate"
						}
					},
					"406": {
						"description": "Paginated list indexes start at 1"
					},
					"404": {
						"description": "Subnet/Object not found.\n"
					}
				}
			}
		},
		"/v1/{orgName}/v6address/movev6object": {
			"put": {
				"summary": "Move one or more object(s) by IPv6 address.",
				"description": "Move one or more object(s) by IPv6 address.",
				"operationId": "movev6object",
				"tags": [
					"V6 Address"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/MoveV6List"
						}
					}
				],
				"responses": {
					"200": {
						"description": "Response entity list",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/ResponseEntityMoveV6"
							}
						}
					},
					"400": {
						"description": "The input is invalid."
					},
					"403": {
						"description": "Invalid permissions for the requested operation."
					}
				}
			}
		},
		"/v1/{orgName}/dhcpoptiontemplate/searchoptiontmplbyoptnum{extension}": {
			"get": {
				"summary": "Search DHCP Option Template by Option Number",
				"description": "Search DHCP Option Template by Option Number. It just return the list of DHCP Option Template name",
				"operationId": "searchDhcpOptionTemplateOptNum",
				"tags": [
					"DHCPOptionTemplate"
				],
				"consumes": [
					"appplication/json",
					"application/xml"
				],
				"produces": [
					"appplication/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "oken tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "query",
						"name": "optionNumber",
						"description": "The Option Number of DHCP Option Template<br><br> Maximum value is 514<br><br> Minimum value is 1",
						"required": true,
						"type": "integer",
						"minimum": 1,
						"maximum": 514
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "Page index. Default value is 1.<br><br> Minimum value is 1",
						"required": false,
						"type": "integer",
						"minimum": 1
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "Page size of response. Default value is 25.",
						"required": false,
						"type": "integer",
						"minimum": 0,
						"maximum": 10000
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/searchoptiontemplatebyoptnum"
						}
					},
					"406": {
						"description": "Paginated list indexes start at 1"
					}
				}
			}
		},
		"/v1/{orgName}/dhcpoptiontemplate/searchoptiontmplbyname{extension}": {
			"get": {
				"summary": "Search DHCP Option Template by name",
				"description": "Search Dhcp Option Template by name. It return the list of infrastructure elements.",
				"operationId": "searchDhcpOptionTemplateName",
				"tags": [
					"DHCPOptionTemplate"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "query",
						"name": "templateName",
						"description": "The name of DHCP Option Template",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "startIndex",
						"description": "Default value is 1.<br><br> Minimum value is 1",
						"required": false,
						"type": "integer",
						"minimum": 1
					},
					{
						"in": "query",
						"name": "numberElement",
						"description": "Default value is 25.",
						"required": false,
						"type": "integer",
						"minimum": 0,
						"maximum": 10000
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/searchoptiontemplatebyname"
						}
					},
					"404": {
						"description": "DHCP Option Template not found.\n"
					},
					"406": {
						"description": "Paginated list indexes start at 1"
					}
				}
			}
		},
		"/v1/{orgName}/zone/forwardedzone": {
			"post": {
				"description": "Create a new forwarded zone\n",
				"operationId": "addForwardedZone",
				"summary": "Create forwarded zone",
				"tags": [
					"Zone"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "The forwarded zone request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/ForwardedZone"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created.\n\nCreated a forwarded zone <name> successfully. Fail to associate DNS Servers to forwarded zone. You do not have appropriate privileges to perform this action for Server."
					},
					"400": {
						"description": "\nRequired Field(s) Missing: &lt;name&gt;.\n\nInvalid IP address &lt;ipAddress&gt;\n\nPort [&lt;port&gt;] Invalid. It must be in [0-65536].\n\nUDA &lt;uda&gt; is not associated with the given infrastructure.\n\nUDA Group &lt;udagroup&gt; is not associated with the given infrastructure.\n\nUDA &lt;uda&gt; is required.\n\nUDA &lt;uda&gt;'s value is required.\n\nUDA &lt;uda&gt; in group &lt;group&gt; is required.\n\nUDA &lt;uda&gt;'s value in group &lt;group&gt; is required.\n"
					},
					"403": {
						"description": "Invalid permissions for the requested operation.\n Cannot add forwarded server &lt;dnsServer&gt; to &lt;forwardedZoneName&gt;: Permission Denied. You do not have appropriate privileges to perform this action for Server. \n"
					},
					"404": {
						"description": "DNS Server not found: [&lt;dnsServers&gt;]\n"
					},
					"409": {
						"description": "Cannot save the zone &lt;zone&gt;: It already exists in database.\n"
					}
				}
			}
		},
		"/v1/{orgName}/zone/forwardedzone/{forwardedZoneName}/": {
			"put": {
				"description": "Modify a forwarded zone.\n",
				"operationId": "modifyForwardedZone",
				"summary": "Modify a forwarded zone",
				"tags": [
					"Zone"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "forwardedZoneName",
						"description": "Forwarded zone name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "The zone request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/modifyForwardedZone"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK.\n\nUpdated a forwarded zone <name> successfully. Fail to associate DNS Servers to forwarded zone. You do not have appropriate privileges to perform this action for Server."
					},
					"400": {
						"description": "Invalid IP address &lt;IpAddress&gt;\n\nPort [&lt;port&gt;] Invalid. It must be in [0-65536].\n\n\nUDA &lt;uda&gt; is required.\n\n\nUDA &lt;uda&gt;'s value is required.\n\n\nUDA &lt;uda&gt; in group &lt;group&gt; is required.\n\n\nUDA &lt;uda&gt;'s value in group &lt;group&gt; is required.\n"
					},
					"403": {
						"description": "Invalid permissions for the requested operation.\n Cannot remove forwarded server &lt;dnsServer&gt; from &lt;forwardedZoneName&gt;: Permission Denied. You do not have appropriate privileges to perform this action for Server.\nCannot add forwarded server &lt;dnsServer&gt; to &lt;forwardedZoneName&gt;: Permission Denied. You do not have appropriate privileges to perform this action for Server. \n"
					},
					"404": {
						"description": "DNS Server not found: [&lt;dnsServer&gt;].\n\nFowarded zone not found: [&lt;forwardedZoneName&gt;].\n"
					}
				}
			},
			"delete": {
				"description": "Delete a forwarded zone by name.\n",
				"summary": "Delete a forwarded zone.",
				"operationId": "deleteForwardedZone",
				"tags": [
					"Zone"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "forwardedZoneName",
						"description": "Forwarded zone name",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"204": {
						"description": "No Content"
					},
					"403": {
						"description": "Invalid permissions for the requested operation.\n"
					},
					"404": {
						"description": "Forwarded Zone not found: [&lt;forwardedZoneName&gt;].\n"
					},
					"500": {
						"description": "Cannot delete the forwarded zone [&lt;forwardedZoneName&gt;].It contains a server.\n"
					}
				}
			}
		},
		"/v1/{orgName}/zone/forwardedzone/{forwardedZoneName}{extension}": {
			"get": {
				"description": "Get profile of a forwarded zone by name",
				"summary": "Get Forwarded Zone",
				"operationId": "getForwardedZone",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Zone"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "path",
						"name": "forwardedZoneName",
						"description": "Forwarded zone name",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/ForwardedZone"
						}
					},
					"403": {
						"description": "Invalid permissions for the requested operation.\n"
					},
					"404": {
						"description": "Forwarded Zone Not Found\n"
					}
				}
			}
		},
		"/v1/{orgName}/dhcppolicytemplate/{policyTemplateName}{extension}": {
			"get": {
				"summary": "Get DHCP Policy Template by Name",
				"description": "Get DHCP Policy Template by Name.",
				"operationId": "getDhcpPolicyTemplate",
				"tags": [
					"DHCP Policy Template"
				],
				"consumes": [
					"appplication/json",
					"application/xml"
				],
				"produces": [
					"appplication/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "path",
						"name": "policyTemplateName",
						"description": "DHCP Policy Template Name",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/DhcpPolicyTemplateRest"
						}
					},
					"404": {
						"description": "DHCP Policy Template &lt;templateName&gt; is not found."
					}
				}
			}
		},
		"/v1/{orgName}/dhcppolicytemplate": {
			"post": {
				"summary": "Create a DHCP Policy Template ",
				"description": "Create a DHCP Policy Template",
				"operationId": "createDhcpPolicyTemplate",
				"tags": [
					"DHCP Policy Template"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/DhcpPolicyTemplateRest"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created"
					},
					"400": {
						"description": "Required Field(s) Missing: [fieldName]"
					},
					"403": {
						"description": "Cannot create DHCP Policy Template [templateName]: Permission Denied "
					},
					"409": {
						"description": "DHCP Template [templateName] already exists"
					}
				}
			},
			"put": {
				"summary": "Modify a DHCP Policy Template.",
				"description": "Modify a DHCP Policy Template.",
				"operationId": "modifyDHCPolicyTemplate",
				"tags": [
					"DHCP Policy Template"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "templateName",
						"in": "query",
						"description": "DHCP Policy Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request Body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/modifyDhcpPolicyTemplateRest"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"404": {
						"description": "DHCP Policy Template &lt;templateName&gt; is not found."
					},
					"403": {
						"description": "Cannot modify DHCP Policy Template [templateName]: Permission Denied "
					}
				}
			},
			"delete": {
				"description": "Delete a DHCP Policy Template by name",
				"summary": "Delete a DHCP Policy Template",
				"operationId": "deleteDHCPPolicyTemplate",
				"tags": [
					"DHCP Policy Template"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "templateName",
						"description": "DHCP Policy Template Name",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"204": {
						"description": "No Content"
					},
					"403": {
						"description": "Cannot delete DHCP Template &lt;templateName&gt; : Permission Denied"
					},
					"404": {
						"description": "DHCP Policy Template &lt;templateName&gt; is not found."
					}
				}
			}
		},
		"/v1/{orgName}/node": {
			"post": {
				"description": "Create a new Node",
				"summary": "Create Node",
				"operationId": "",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Node"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/NodeRec"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created"
					},
					"400": {
						"description": "Required Field(s) Missing: [fieldName]"
					},
					"403": {
						"description": "Invalid permissions."
					},
					"409": {
						"description": "Node [uniqueID=value] already exist."
					}
				}
			},
			"put": {
				"description": "Modify Node",
				"operationId": "",
				"summary": "Modify Node",
				"tags": [
					"Node"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "uniqueID",
						"description": "UniqueID",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "The node request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/NodeRec"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Required Field(s) Missing: &lt;name&gt;.\n\nRequired Field(s) Missing: &lt;nodeType&gt;."
					},
					"403": {
						"description": "Invalid permissions."
					},
					"404": {
						"description": "Node not found.\n"
					}
				}
			}
		},
		"/v1/{orgName}/node{extension}": {
			"get": {
				"description": "Search node",
				"summary": "Search node",
				"operationId": "",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Node"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml\n\napplication/json\n",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "query",
						"name": "nodeName",
						"description": "Node Name",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "uniqueID",
						"description": "Unique ID of the node",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "duid",
						"description": "DUID of the node",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "addressName",
						"description": "IP address name",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "address",
						"description": "IP address",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "addressType",
						"description": "Specifies whether the search returns IPv4 object or IPv6 nodes.\nIf you do not specify either of these options, all nodes are returned regardless of whether they are IPv4 or IPv6 nodes.\nUse when we search node using addressname or address",
						"required": false,
						"type": "string",
						"enum": [
							"V4",
							"V6"
						]
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "page index",
						"required": false,
						"type": "integer"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "Page size. Default value is 25.",
						"required": false,
						"type": "integer"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/NodeRec"
							}
						}
					},
					"400": {
						"description": "Required Field(s) Missing: &lt;nodeName&gt;.\n"
					}
				}
			}
		},
		"/v1/{orgName}/node/{options}{extension}": {
			"get": {
				"description": "Get full profile of a Node by uniqueID or address or DUID",
				"summary": "Get Node",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Node"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml\n\napplication/json\n",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "path",
						"name": "options",
						"description": "Specific options.\nGet node by: uniqueID | address | DUID\nDefault: uniqueID",
						"required": true,
						"type": "string",
						"enum": [
							"uniqueID",
							"address",
							"DUID"
						]
					},
					{
						"in": "query",
						"name": "nodeInfo",
						"description": "uniqueID or address or DUID of the node",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "addressType",
						"description": "Use V6 if address is IPv6 address or V4 if address is IPv4 address.\nUse when options is address",
						"required": false,
						"type": "string",
						"enum": [
							"V6",
							"V4"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/NodeModel"
						}
					},
					"400": {
						"description": "Invalid IP address."
					},
					"404": {
						"description": "Node [nodeField] does not exist."
					}
				}
			}
		},
		"/v1/{orgName}/node/{uniqueID}": {
			"delete": {
				"description": "Delete Node",
				"operationId": "",
				"summary": "Delete Node",
				"tags": [
					"Node"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "uniqueID",
						"description": "Unique ID of node being deleted ",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"204": {
						"description": "No Content"
					},
					"400": {
						"description": "Operation Failed: [Delete: Node Has IP Address Association]"
					},
					"403": {
						"description": "Invalid permissions."
					},
					"404": {
						"description": "Node not found: &lt;node&gt;.\n"
					}
				}
			}
		},
		"/v1/{orgName}/node/linknodetoipaddresses": {
			"post": {
				"description": "Link Node to IP addresses",
				"summary": "Link Node to IP addresses",
				"operationId": "",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Node"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml\n\napplication/json\n",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/LinkNodeToIPAddress"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "string"
						}
					},
					"400": {
						"description": "Invalid IP address.",
						"schema": {
							"type": "string"
						}
					},
					"404": {
						"description": "IP address &lt;IpAddress&gt; does not exist.",
						"schema": {
							"type": "string"
						}
					}
				}
			}
		},
		"/v1/{orgName}/node/unlinkipv4addressesfromnodes": {
			"post": {
				"description": "unLink IPv4 addresses from Node",
				"summary": "unLink IPv4 addresses from Node",
				"operationId": "",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Node"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"description": "application/xml\n\napplication/json\n",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/UnLinkIPv4AddressesFromNodes"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Invalid IP address."
					},
					"404": {
						"description": "IP address &lt;IpAddress&gt; does not exist."
					}
				}
			}
		},
		"/v1/{orgName}/subnetorganization": {
			"post": {
				"description": "Create a new subnet organization\n",
				"operationId": "addSubnetOrganization",
				"summary": "Create a subnet organization",
				"tags": [
					"Subnet Organization"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "The subnet organization request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/SubnetOrgRec"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created."
					},
					"400": {
						"description": "Required Field(s) Missing: &lt;name&gt;.\n\n Invalid Threshold value!\n\nInvalid value of field(s): [&lt;fieldName&gt;]\n\nInvalid IP address &lt;subnetAddress&gt;\n\nUDA &lt;uda&gt; is not associated with the given infrastructure.\n\nUDA Group &lt;udagroup&gt; is not associated with the given infrastructure.\n\nUDA &lt;uda&gt; is required.\n\nUDA &lt;uda&gt;'s value is required.\n\nUDA &lt;uda&gt; in group &lt;group&gt; is required.\n\nUDA &lt;uda&gt;'s value in group &lt;group&gt; is required.\n"
					},
					"403": {
						"description": "Invalid permissions for the requested operation.\n"
					},
					"404": {
						"description": "Object class &lt;objectClass&gt; does not exists. \n\nIPv4 Subnet with address &lt;address&gt; does not exist.\n\nServer &lt;server&gt;  not found.\n\nDHCP Option template not found: [&lt;dhcpTemplate&gt;]\n"
					},
					"409": {
						"description": "The subnet organization &lt;subnetOrgName&gt; already exists.\n"
					}
				}
			}
		},
		"/v1/{orgName}/subnetorganization/{subnetOrgName}{extension}": {
			"get": {
				"description": "Get profile of a subnet organization by name",
				"summary": "Get Subnet Organization",
				"operationId": "getSubnetOrg",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Subnet Organization"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "path",
						"name": "subnetOrgName",
						"description": "Subnet organization name",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/SubnetOrgRec"
						}
					},
					"404": {
						"description": "Subnet Organization not found: [&lt;subnetOrgName&gt;].\n"
					}
				}
			}
		},
		"/v1/{orgName}/subnetorganization{extension}": {
			"get": {
				"description": "Search subnet organization by name, DHCP server, DHCP Option Template, site name or UDA value.",
				"summary": "Search subnet organization",
				"operationId": "pageSearch",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"Subnet Organization"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "subnetOrgName",
						"description": "Subnet organization name",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "dhcpServerName",
						"description": "DHCP server name",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "dhcpOptionTemplateName",
						"description": "DHCP option template name",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "siteName",
						"description": "Site name",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "udaName",
						"description": "Uda name",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "udaValue",
						"description": "Uda value",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "Page index. Default value is 1.",
						"required": false,
						"type": "integer"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "Page size. Default value is 25.",
						"required": false,
						"type": "integer"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/SubnetOrgRec"
							}
						}
					},
					"400": {
						"description": "Required Field(s) Missing: [UdaName or UdaValue]\n"
					}
				}
			}
		},
		"/v1/{orgName}/subnetorganization/{subnetOrgName}": {
			"put": {
				"description": "Modify a subnet organization.\n",
				"operationId": "modifySubnetOrg",
				"summary": "Modify a subnet organization",
				"tags": [
					"Subnet Organization"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "subnetOrgName",
						"description": "Subnet organization name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "The subnet organization request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/SubnetOrgRec"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK."
					},
					"400": {
						"description": "Invalid Threshold value!\n\nInvalid value of field(s): [&lt;fieldName&gt;]\n\nInvalid IP address &lt;subnetAddress&gt;\n\nUDA &lt;uda&gt; is not associated with the given infrastructure.\n\nUDA Group &lt;udagroup&gt; is not associated with the given infrastructure.\n\nUDA &lt;uda&gt; is required.\n\nUDA &lt;uda&gt;'s value is required.\n\nUDA &lt;uda&gt; in group &lt;group&gt; is required.\n\nUDA &lt;uda&gt;'s value in group &lt;group&gt; is required.\n"
					},
					"403": {
						"description": "Invalid permissions for the requested operation.\n"
					},
					"404": {
						"description": "Object class &lt;objectClass&gt; does not exists. \n\nIPv4 Subnet with address &lt;address&gt; does not exist.\n\nServer &lt;server&gt;  not found.\n\nDHCP Option template not found: [&lt;dhcpTemplate&gt;]\n\nSubnet Organization not found: [&lt;subnetOrgName&gt;].\n"
					}
				}
			},
			"delete": {
				"description": "Delete a subnet organization.\n",
				"summary": "Delete a subnet organization",
				"operationId": "deleteSubnetOrg",
				"tags": [
					"Subnet Organization"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "subnetOrgName",
						"description": "Subnet organization name",
						"required": true,
						"type": "string"
					}
				],
				"responses": {
					"204": {
						"description": "No Content"
					},
					"403": {
						"description": "Invalid permissions for the requested operation.\n"
					},
					"404": {
						"description": "Subnet Organization not found: [&lt;subnetOrgName&gt;].\n"
					},
					"500": {
						"description": "Cannot remove the Subnet.  An object DHCP server is linked to the subnet organization DHCP server.\n\nCannot remove the Subnet.  An object DHCP option template is linked to the subnet organization DHCP option template."
					}
				}
			}
		},
		"/v1/{orgName}/macpool": {
			"post": {
				"description": "Add a MAC to a DHCP Server or V4 Subnet MAC Pool",
				"summary": "Add a MAC to a DHCP Server or V4 Subnet MAC Pool",
				"operationId": "CreateDHCPAndV4SubnetMacPool",
				"tags": [
					"MacPool"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "infraValue",
						"description": "DHCP Server FQDN or the V4 Subnet Address",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "infraType",
						"description": "infrastructure type: DHCP | V4SUBNET",
						"required": true,
						"type": "string",
						"enum": [
							"DHCP Server",
							"V4SUBNET"
						]
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/macPool"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created"
					},
					"400": {
						"description": "Required Field(s) Missing: [fieldName] \n\n Invalid hardware type. \n\n Invalid MAC address: [MAC Address]"
					},
					"403": {
						"description": "Invalid permissions for the requested operation. \n\n Permission denied.  You do not have appropriate privileges to perform this action."
					},
					"404": {
						"description": "DHCP Server/V4 Subnet does not exist."
					},
					"409": {
						"description": "MAC Address already exists\n"
					}
				}
			},
			"put": {
				"description": "Modify MAC to a DHCP Server or V4 Subnet MAC Pool",
				"summary": "Modify MAC to a DHCP Server or V4 Subnet MAC Pool",
				"operationId": "ModifyDHCPAndV4SubnetMacPool",
				"tags": [
					"MacPool"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "infraValue",
						"description": "DHCP Server FQDN or the V4 Subnet Address",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "infraType",
						"description": "infrastructure type: DHCP | V4SUBNET",
						"required": true,
						"type": "string",
						"enum": [
							"DHCP Server",
							"V4SUBNET"
						]
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/MacPoolList"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK"
					},
					"400": {
						"description": "Required Field(s) Missing: [fieldName]"
					},
					"403": {
						"description": "Invalid permissions for the requested operation.\n\nPermission denied.  You do not have appropriate privileges to perform this action. "
					},
					"404": {
						"description": "DHCP Server/V4 Subnet does not exist."
					}
				}
			},
			"delete": {
				"description": "Delete MAC for a DHCP Server or V4 Subnet MAC Pool",
				"summary": "Delete MAC for a DHCP Server or V4 Subnet MAC Pool",
				"operationId": "DeleteDHCPAndV4SubnetMacPool",
				"tags": [
					"MacPool"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "infraValue",
						"description": "DHCP Server FQDN or the V4 Subnet Address",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "infraType",
						"description": "infrastructure type: DHCP | V4SUBNET",
						"required": true,
						"type": "string",
						"enum": [
							"DHCP Server",
							"V4SUBNET"
						]
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/dellist"
						}
					}
				],
				"responses": {
					"200": {
						"description": "List Mac Pool"
					},
					"403": {
						"description": "Invalid permissions for the requested operation.\n\nPermission denied.  You do not have appropriate privileges to perform this action."
					},
					"404": {
						"description": "DHCP Server/V4 Subnet does not exist.\n The Mac Pool [macAddress] does not found.\n"
					}
				}
			}
		},
		"/v1/{orgName}/macpool/{infraType}{extension}": {
			"get": {
				"description": "Get list MAC for a DHCP Server or V4 Subnet MAC Pool",
				"summary": "Get list MAC for a DHCP Server or V4 Subnet MAC Pool",
				"operationId": "GetDHCPAndV4SubnetMacPool",
				"tags": [
					"MacPool"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					},
					{
						"in": "query",
						"name": "infraValue",
						"description": "DHCP Server FQDN or the V4 Subnet Address",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "infraType",
						"description": "infrastructure type: DHCP | V4SUBNET",
						"required": true,
						"type": "string",
						"enum": [
							"DHCP Server",
							"V4SUBNET"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/MacPoolList"
						}
					},
					"403": {
						"description": "Invalid permissions for the requested operation.\n\nPermission denied.  You do not have appropriate privileges to perform this action."
					},
					"404": {
						"description": "DHCP Server/V4 subnet does not exist..\n"
					}
				}
			}
		},
		"/v1/{orgName}/acltemplate": {
			"post": {
				"description": "Create ACL Template\n",
				"operationId": "addACLTemplate",
				"summary": "Create ACL Template",
				"tags": [
					"ACL Template"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "The ACL Template request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/ACLTemplateRec"
						}
					}
				],
				"responses": {
					"201": {
						"description": "Created."
					},
					"400": {
						"description": "Required Field(s) Missing: &lt;name&gt;.\n\nUnable to save ACL Template - Invalid name\n\nInvalid ACL Template being referenced\n\nACL template KEY too long\n\nInvalid characters specified in template element\n\nNo Key name specified\n\nKey name &lt;value&gt; cannot be longer than 253 characters\n\nKey &lt;value&gt; contains invalid characters\n\nKey &lt;value&gt; contains empty label\n\nKey &lt;value&gt; cannot start with a dot\n\nKey label &lt;value&gt; is longer than 63 characters\n\n&lt;value&gt; is not a valid IPV4 address.\n\n&lt;value&gt; is not a valid IPV4 network.\n\n&lt;value&gt; is not a valid IPV6 address.\n\n\n\n&lt;value&gt; is not a valid IPV6 network.\n\nACL template freetext too long or too short.\n\nInvalid ACL Template OTHER value specified\n\nInvalid ACL Template Element type: &lt;type&gt;"
					},
					"403": {
						"description": "Invalid permissions for the requested operation.\n"
					},
					"409": {
						"description": "The ACL Template &lt;name&gt; already exists.\n"
					}
				}
			}
		},
		"/v1/{orgName}/acltemplate/{aclTemplateName}{extension}": {
			"get": {
				"description": "Get ACL Template by name",
				"summary": "Get ACL Template",
				"operationId": "getACLTemplate",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"ACL Template"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "aclTemplateName",
						"description": "ACL Template Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/ACLTemplateRec"
						}
					},
					"404": {
						"description": "ACL not found: [name=&lt;aclTemplateName&gt;]"
					}
				}
			}
		},
		"/v1/{orgName}/acltemplate/{aclTemplateName}": {
			"put": {
				"description": "Modify ACL Template.\n",
				"operationId": "modifyAclTemplate",
				"summary": "Modify ACL Template",
				"tags": [
					"ACL Template"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "aclTemplateName",
						"description": "ACL Template Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "The ACL Template request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/ACLTemplateModifyRec"
						}
					}
				],
				"responses": {
					"200": {
						"description": "OK."
					},
					"400": {
						"description": "Invalid ACL referenced: &lt;name&gt;\n\nACL template KEY too long\n\nInvalid characters specified in template element\n\nNo Key name specified\n\nKey name &lt;value&gt; cannot be longer than 253 characters\n\nKey &lt;value&gt; contains invalid characters\n\nKey &lt;value&gt; contains empty label\n\nKey &lt;value&gt; cannot start with a dot\n\nKey label &lt;value&gt; is longer than 63 characters\n\n&lt;value&gt; is not a valid IPV4 address.\n\n&lt;value&gt; is not a valid IPV4 network.\n\n&lt;value&gt; is not a valid IPV6 address.\n\n\n\n&lt;value&gt; is not a valid IPV6 network.\n\nACL template freetext too long or too short.\n\nInvalid ACL Template OTHER value specified\n\nInvalid ACL Template Element type: &lt;type&gt;"
					},
					"403": {
						"description": "Invalid permissions for the requested operation.\n"
					},
					"404": {
						"description": "ACL not found: [name=&lt;name&gt;]"
					},
					"409": {
						"description": "The ACL Template &lt;name&gt; already exists.\n"
					}
				}
			},
			"delete": {
				"description": "Delete ACL Template.\n",
				"summary": "Delete ACL Template",
				"operationId": "deleteAclTemplate",
				"tags": [
					"ACL Template"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"format": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "aclTemplateName",
						"description": "ACL Template Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "force",
						"description": "Delete this ACL template even if it is referenced by something else.\n\nDefault is false.",
						"required": true,
						"type": "boolean",
						"enum": [
							"false",
							"true"
						]
					}
				],
				"responses": {
					"204": {
						"description": "No Content"
					},
					"403": {
						"description": "Invalid permissions for the requested operation.\n"
					},
					"404": {
						"description": "ACL not found: [name=&lt;name&gt;]"
					}
				}
			}
		},
		"/v1/{orgName}/acltemplate{extension}": {
			"get": {
				"description": "Search ACL Template by name and template element",
				"summary": "Search ACL template",
				"operationId": "searchACLTemplate",
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"tags": [
					"ACL Template"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic username:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string",
						"format": "string"
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "aclTemplateName",
						"description": "ACL Template Name. Support the wildcard search with following forms: âœ± or âœ±abc or abcâœ± or aâœ±c;",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "templateElementType",
						"description": "ACL Template Type",
						"default": "All",
						"required": false,
						"type": "string",
						"enum": [
							"ACL Template",
							"Key",
							"IPv4 Address",
							"IPv4 Network",
							"IPv6 Address",
							"IPv6 Network",
							"Text",
							"Other",
							"All"
						]
					},
					{
						"in": "query",
						"name": "templateElementValue",
						"description": "Template Element Value. Support the wildcard search with following forms: âœ± or âœ±abc or abcâœ± or aâœ±c;",
						"required": false,
						"type": "string"
					},
					{
						"in": "query",
						"name": "pageIndex",
						"description": "Page index. Default value is 1.",
						"required": false,
						"type": "integer"
					},
					{
						"in": "query",
						"name": "pageSize",
						"description": "Page size. Default value is 25.",
						"required": false,
						"type": "integer"
					},
					{
						"in": "path",
						"name": "extension",
						"description": ".json for a response in JSON format.<br> \n.xml for a response in XML format.\n",
						"required": true,
						"type": "string",
						"enum": [
							".json",
							".xml"
						]
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/ACLTemplateRec"
							}
						}
					}
				}
			}
		},
		"/v1/{orgName}/zone/signzone": {
			"post": {
				"summary": "Sign a Zone",
				"description": "Sign a zone by name.",
				"operationId": "signzone",
				"tags": [
					"Zone"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"name": "requestBody",
						"in": "body",
						"description": "Request body",
						"required": true,
						"schema": {
							"$ref": "#/definitions/SignZone"
						}
					}
				],
				"responses": {
					"200": {
						"description": "DNSSEC enabled successfully."
					},
					"400": {
						"description": "Internal parent zone &lt;zoneName&gt; is not signed. Please sign the parent zones first.\n\nThe zone [&lt;zoneName&gt;] is associating with DNS Servers that do not support DNSSEC.\n\nCannot sign zone [&lt;zoneName&gt;]. Unsigning zone may be failed when pushing new configurations\nto all associated servers. Please manually do DNS Generation to complete unsigning zone."
					},
					"403": {
						"description": "Permission Denied. You do not have appropriate privileges to perform this action."
					},
					"404": {
						"description": "Zone: [&lt;zoneName&gt;] not found."
					},
					"409": {
						"description": "The zone [&lt;zoneName&gt;] is signing.\n\nZone &lt;zoneName&gt; has already been signed"
					}
				}
			}
		},
		"/v1/{orgName}/zone/unsignzone/{zoneName}/": {
			"post": {
				"summary": "Unsign a Zone",
				"description": "Unsign a zone by name.",
				"operationId": "unsignzone",
				"tags": [
					"Zone"
				],
				"consumes": [
					"application/json",
					"application/xml"
				],
				"produces": [
					"application/json",
					"application/xml"
				],
				"parameters": [
					{
						"name": "Authentication",
						"in": "header",
						"description": "Token tokenValue<br>or<br>\nBasic loginName:password<br>or<br>\nLeave blank if using Client Certificate Authentication\n",
						"required": false,
						"type": "string"
					},
					{
						"name": "Content-Type",
						"in": "header",
						"required": true,
						"type": "string",
						"enum": [
							"application/json",
							"application/xml"
						]
					},
					{
						"in": "path",
						"name": "orgName",
						"description": "Organization Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "path",
						"name": "zoneName",
						"description": "Zone Name",
						"required": true,
						"type": "string"
					},
					{
						"in": "query",
						"name": "emergency",
						"description": "Emergency Unsign Zone Warning: Performing an emergency unsign operation,\nnot waiting for propagation times and cache expiration, may break DNSSEC\nvalidation and resolution. Continuing will remove all DNSKEY records from this zone.\nIf the parent zone is managed by VitalQIP, DS records will also be removed from the parent zone.\nIn addition, the emergency unsign operation may take several minutes to complete.",
						"required": false,
						"type": "string",
						"enum": [
							"true",
							"false"
						]
					}
				],
				"responses": {
					"200": {
						"description": "DNSSEC disabled successfully."
					},
					"400": {
						"description": "The zone [&lt;zoneName&gt;] is in progress to be disabled DNSSEC by other users.\n\nCannot convert the zone [&lt;zoneName&gt;] to unsigned zone. Its child zone is signed, please convert the child zone first."
					},
					"403": {
						"description": "Permission Denied. You do not have appropriate privileges to perform this action."
					},
					"404": {
						"description": "Zone: [&lt;zoneName&gt;] not found."
					},
					"409": {
						"description": "Zone [&lt;zoneName&gt;] has already been unsigned"
					}
				}
			}
		}
	},
	"definitions": {
		"Created": {
			"type": "object"
		},
		"OK": {
			"type": "object"
		},
		"Bad": {
			"type": "object",
			"description": "Bad request"
		},
		"NotFound": {
			"type": "object",
			"description": "Not found"
		},
		"Conflict": {
			"type": "object",
			"description": "Conflict"
		},
		"QIPUser": {
			"description": "QIPUser model",
			"type": "object",
			"required": [
				"username",
				"password"
			],
			"properties": {
				"username": {
					"type": "string",
					"description": "QIP user name"
				},
				"password": {
					"type": "string",
					"description": "QIP user password"
				},
				"expires": {
					"type": "integer",
					"description": "The token expiration time, in seconds. \nDefault to expireTime (default 86400 seconds) if not set. Expiration time cannot exceed value of maxExpireTime (default 7776000 seconds) property. \nBoth expireTime and maxExpireTime are configured in qip.properties file."
				}
			}
		},
		"NextV4AddrRec": {
			"description": "NextV4AddrRec model",
			"type": "object",
			"properties": {
				"objectAddr": {
					"type": "string"
				}
			}
		},
		"V6GetIpAddressRec": {
			"description": "V6GetIpAddressRec model",
			"type": "object",
			"properties": {
				"ipV6AddrStr": {
					"type": "string"
				}
			}
		},
		"RRDeleteInfo": {
			"description": "RR model",
			"allOf": [
				{
					"$ref": "#/definitions/RRRec"
				},
				{
					"type": "object",
					"required": [
						"singleDelete"
					],
					"properties": {
						"singleDelete": {
							"type": "boolean"
						}
					},
					"example": {
						"singleDelete": true
					}
				}
			]
		},
		"RRRec": {
			"description": "RR model",
			"required": [
				"owner",
				"rrType",
				"infraType"
			],
			"properties": {
				"owner": {
					"type": "string",
					"description": "Owner name for the resource record."
				},
				"classType": {
					"type": "string",
					"description": "Class type of records pertains to a type of network or software."
				},
				"rrType": {
					"type": "string",
					"description": "Type of resource record."
				},
				"data1": {
					"type": "string",
					"description": "The data associated with the specific resource record type."
				},
				"publishing": {
					"type": "string",
					"description": "Publishing type."
				},
				"ttl": {
					"type": "string",
					"description": "The length of time (in seconds) the name server will hold this information. If no TTL is defined, the value is inherited from the zone."
				},
				"infraType": {
					"type": "string",
					"description": "Type of infrastructure: OBJECT|V6ADDRESS|ZONE|V4REVERSEZONE|V6REVERSEZONE"
				},
				"infraFQDN": {
					"type": "string",
					"description": "Infrastrucutre FQDN."
				},
				"data2": {
					"type": "string",
					"description": "The data associated with the specific resource record type."
				},
				"data3": {
					"type": "string",
					"description": "The data associated with the specific resource record type."
				},
				"data4": {
					"type": "string",
					"description": "The data associated with the specific resource record type."
				},
				"infraAddr": {
					"type": "string",
					"description": "Address of infrastructure."
				},
				"isCreatingReverseZoneRR": {
					"type": "boolean",
					"description": "When creating or updating PTR resource record in Object/Node level, if this property is set to true, the PTR resource record will be created in Reverse zone. Otherwise, resource record will be created in Object as normally. Default value of this property is false. This property will be hidden when users get resource record."
				},
				"isDefaultRR": {
					"type": "boolean",
					"description": "This is read only field, true if the resource record is default resource record, otherwise false."
				},
				"optionalAttributeList": {
					"$ref": "#/definitions/UdaList"
				}
			},
			"example": {
				"owner": "Owner1",
				"classType": "IN",
				"rrType": "PTR",
				"data1": "data1",
				"publishing": "ALWAYS",
				"ttl": 3200,
				"infraType": "OBJECT",
				"infraFQDN": "infraFQDN",
				"data2": "data2",
				"data3": "data3",
				"data4": "data4",
				"infraAddr": "192.168.88.1",
				"isCreatingReverseZoneRR": true,
				"isDefaultRR": false,
				"optionalAttributeList": {
					"udas": [
						{
							"name": "at1",
							"value": "true"
						},
						{
							"name": "test",
							"value": "VitalQIP"
						}
					],
					"groups": [
						{
							"name": "gr1",
							"udas": [
								{
									"name": "at1",
									"value": "false"
								}
							]
						},
						{
							"name": "gr2",
							"udas": [
								{
									"name": "testUDA",
									"value": "false"
								}
							]
						}
					]
				}
			}
		},
		"RRRecUpdateFields": {
			"description": "RR model",
			"properties": {
				"owner": {
					"type": "string",
					"description": "Owner name for the resource record."
				},
				"classType": {
					"type": "string",
					"description": "Class type of records pertains to a type of network or software."
				},
				"rrType": {
					"type": "string",
					"description": "Type of resource record: A|CNAME|HINFO|MX|NS|PTR|TXT|WKS|AAAA|AFSDB|MB\n|MG|MINFO|MR|ISDN|SRV|X25|NAPTR|TXT_DKIM|SOA|SPF|CAA"
				},
				"data1": {
					"type": "string",
					"description": "The data associated with the specific resource record type."
				},
				"publishing": {
					"type": "string",
					"description": "Publishing type."
				},
				"ttl": {
					"type": "string",
					"description": "The length of time (in seconds) the name server will hold this information. If no TTL is defined, the value is inherited from the zone."
				},
				"data2": {
					"type": "string",
					"description": "The data associated with the specific resource record type."
				},
				"data3": {
					"type": "string",
					"description": "The data associated with the specific resource record type."
				},
				"data4": {
					"type": "string",
					"description": "The data associated with the specific resource record type."
				},
				"isCreatingReverseZoneRR": {
					"type": "boolean",
					"description": "When creating or updating PTR resource record in Object/Node level, if this property is set to true, the PTR resource record will be created in Reverse zone. Otherwise, resource record will be created in Object as normally. Default value of this property is false. This property will be hidden when users get resource record."
				},
				"optionalAttributeList": {
					"$ref": "#/definitions/UdaList"
				}
			}
		},
		"UpdateRRRec": {
			"type": "object",
			"description": "RR model",
			"required": [
				"rrId",
				"rRRecUpdateFields"
			],
			"properties": {
				"rrId": {
					"type": "integer",
					"description": "rrId of the resource record."
				},
				"updateFields": {
					"$ref": "#/definitions/RRRecUpdateFields"
				}
			}
		},
		"V4NetworkRec": {
			"description": "V4 Network model",
			"required": [
				"address",
				"maskLength",
				"email",
				"warningPercent",
				"warningType"
			],
			"properties": {
				"address": {
					"type": "string",
					"description": "V4 Network address"
				},
				"maskLength": {
					"type": "integer",
					"description": "Mask length of v4 network. This field is required when create, but must not be changed when modify"
				},
				"email": {
					"type": "string",
					"description": "email to contact. This field is required when create, but must not be changed when modify"
				},
				"warningPercent": {
					"type": "integer",
					"description": "Warning percent"
				},
				"warningType": {
					"type": "string",
					"description": "warnning type (1 or 2 or 3)"
				},
				"name": {
					"type": "string",
					"description": "Network name"
				},
				"dnsServer": {
					"type": "string",
					"description": "Name of DNS Server. This field is required when create, but must not be changed when modify"
				},
				"cidr": {
					"type": "string",
					"description": "CIDR (Y or N). This field is required when create, but must not be changed when modify"
				},
				"optionalAttributeList": {
					"$ref": "#/definitions/UdaList"
				},
				"optionalAddrRangeList": {
					"$ref": "#/definitions/AddrRangeList"
				}
			}
		},
		"UdaList": {
			"type": "object",
			"properties": {
				"udas": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/NameValue"
					}
				},
				"groups": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/UdaGroup"
					}
				}
			}
		},
		"UdaGroup": {
			"type": "object",
			"properties": {
				"name": {
					"type": "string"
				},
				"udas": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/NameValue"
					}
				}
			}
		},
		"NameValue": {
			"type": "object",
			"required": [
				"name",
				"value"
			],
			"properties": {
				"name": {
					"type": "string"
				},
				"value": {
					"type": "string"
				}
			}
		},
		"AddrRangeList": {
			"type": "object",
			"properties": {
				"addrRange": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/AddrRange"
					}
				}
			}
		},
		"AddrRange": {
			"type": "object",
			"properties": {
				"startAddress": {
					"type": "string"
				},
				"endAddress": {
					"type": "string"
				}
			}
		},
		"V6SubnetRec": {
			"type": "object",
			"description": "V6 Subnet model",
			"required": [
				"name",
				"address",
				"type",
				"prefixLength",
				"rangePrefixLength"
			],
			"properties": {
				"name": {
					"type": "string"
				},
				"address": {
					"type": "string"
				},
				"prefixLength": {
					"type": "integer"
				},
				"domains": {
					"$ref": "#/definitions/StringList"
				},
				"type": {
					"$ref": "#/definitions/V6SubnetType"
				},
				"poolName": {
					"type": "string"
				},
				"blockName": {
					"type": "string"
				},
				"standPrimDHCPServer": {
					"type": "string"
				},
				"failoverSecondDHCPServer": {
					"type": "string"
				},
				"optTemplate": {
					"type": "string"
				},
				"algorithmType": {
					"$ref": "#/definitions/V6DefaultAlgorithmType"
				},
				"rangePrefixLength": {
					"type": "integer"
				},
				"addressSelection": {
					"$ref": "#/definitions/V6AddressSelectionType"
				},
				"dhcpParams": {
					"$ref": "#/definitions/V6DhcpOptionsRec"
				},
				"optionalAttributeList": {
					"$ref": "#/definitions/UdaList"
				}
			}
		},
		"StringList": {
			"type": "object",
			"properties": {
				"name": {
					"type": "array",
					"items": {
						"type": "string"
					}
				}
			}
		},
		"V6SubnetType": {
			"type": "string",
			"enum": [
				"STATEFUL",
				"STATELESS"
			]
		},
		"V6DefaultAlgorithmType": {
			"type": "string",
			"description": "depend on using Algorithm value for createSubnet",
			"enum": [
				"BEST_FIT_FROM_START",
				"BEST_FIT_FROM_END",
				"CONTIGUOUS_SPARSE",
				"SPARSE"
			]
		},
		"V6AddressSelectionType": {
			"type": "string",
			"enum": [
				"NEXT_AVAILABLE",
				"RANDOM"
			]
		},
		"V6DhcpOptionsRec": {
			"type": "object",
			"properties": {
				"informationRefreshTime": {
					"type": "string"
				},
				"preferredLifeTime": {
					"type": "string"
				},
				"rebindingTime": {
					"type": "string"
				},
				"renewalTime": {
					"type": "string"
				},
				"validLifeTime": {
					"type": "string"
				},
				"bcmcsServerAddressList": {
					"type": "string"
				},
				"bcmcsServerDomainNameList": {
					"type": "string"
				},
				"dnsRecursiveNameServer": {
					"type": "string"
				},
				"domainSearchList": {
					"type": "string"
				},
				"nisServers": {
					"type": "string"
				},
				"nispDomainName": {
					"type": "string"
				},
				"panaAuthenticationAgents": {
					"type": "string"
				},
				"posixTimeZone": {
					"type": "string"
				},
				"sipServersDomainNameList": {
					"type": "string"
				},
				"sipServersIpv6AddressList": {
					"type": "string"
				},
				"sntpServers": {
					"type": "string"
				},
				"tzdbTimeZone": {
					"type": "string"
				},
				"vendorOptions": {
					"type": "string"
				}
			}
		},
		"V6CreateSubnetRec": {
			"type": "object",
			"required": [
				"prefixLength",
				"createReverseZone",
				"createSubnet",
				"subnetPrefixLength",
				"blockAddress",
				"algorithmType"
			],
			"properties": {
				"poolName": {
					"type": "string"
				},
				"blockName": {
					"type": "string"
				},
				"blockAddress": {
					"type": "string"
				},
				"prefixLength": {
					"type": "integer"
				},
				"subnetPrefixLength": {
					"type": "integer"
				},
				"subnetName": {
					"type": "string",
					"description": "depend on using Specific value for createSubnet"
				},
				"subnetAddress": {
					"type": "string",
					"description": "depend on using Specific value for createSubnet"
				},
				"subnetsNo": {
					"type": "integer",
					"description": "depend on using Algorithm value for createSubnet. That is the number of subnet will be created by 1 request"
				},
				"createSubnet": {
					"$ref": "#/definitions/V6CreateSubnetType"
				},
				"algorithmType": {
					"$ref": "#/definitions/V6DefaultAlgorithmType"
				},
				"createReverseZone": {
					"$ref": "#/definitions/V6CreateReverseZone"
				},
				"domains": {
					"$ref": "#/definitions/StringList"
				},
				"optionalAttributeList": {
					"$ref": "#/definitions/UdaList"
				}
			}
		},
		"V6CreateSubnetType": {
			"type": "string",
			"enum": [
				"ALGORITHM",
				"SPECIFIC"
			]
		},
		"V6CreateReverseZone": {
			"type": "string",
			"enum": [
				"TRUE",
				"FALSE"
			]
		},
		"V6AddressRec": {
			"type": "object",
			"required": [
				"hostName",
				"domainName",
				"rangeAddress",
				"address",
				"addressType",
				"range",
				"publishA",
				"publishPTR",
				"classType"
			],
			"properties": {
				"hostName": {
					"type": "string"
				},
				"domainName": {
					"type": "string"
				},
				"fqdn": {
					"type": "string"
				},
				"rangeAddress": {
					"type": "string"
				},
				"address": {
					"type": "string"
				},
				"newAddress": {
					"type": "string"
				},
				"iaid": {
					"type": "string"
				},
				"addressType": {
					"$ref": "#/definitions/V6AddressType"
				},
				"range": {
					"type": "string"
				},
				"subnet": {
					"type": "string"
				},
				"publishA": {
					"$ref": "#/definitions/V6PublishType"
				},
				"publishPTR": {
					"$ref": "#/definitions/V6PublishType"
				},
				"ttl": {
					"type": "integer"
				},
				"useMACAddress": {
					"type": "boolean"
				},
				"macAddress": {
					"type": "string"
				},
				"nodeName": {
					"type": "string"
				},
				"classType": {
					"type": "string"
				},
				"uniqueId": {
					"type": "string"
				}
			}
		},
		"V6AddressType": {
			"type": "string",
			"enum": [
				"STATIC",
				"MANUAL"
			]
		},
		"V6PublishType": {
			"type": "string",
			"enum": [
				"ALWAYS",
				"NEVER",
				"PUSH_ONLY"
			]
		},
		"V6RangeRec": {
			"type": "object",
			"required": [
				"name",
				"rangePrefixLength",
				"subnetAddress",
				"subnetPrefixLength",
				"rangeType",
				"addressSelection"
			],
			"properties": {
				"name": {
					"type": "string"
				},
				"startAddress": {
					"type": "string"
				},
				"newStartAddress": {
					"type": "string"
				},
				"rangePrefixLength": {
					"type": "integer"
				},
				"rangeType": {
					"$ref": "#/definitions/V6RangeType"
				},
				"standPrimDHCPServer": {
					"type": "string"
				},
				"failoverSecondDHCPServer": {
					"type": "string"
				},
				"optTemplate": {
					"type": "string"
				},
				"addressSelection": {
					"$ref": "#/definitions/V6AddressSelectionType"
				},
				"subnetName": {
					"type": "string"
				},
				"subnetAddress": {
					"type": "string"
				},
				"subnetPrefixLength": {
					"type": "integer"
				},
				"dhcpParams": {
					"$ref": "#/definitions/V6DhcpOptionsRec"
				},
				"udas": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/NameValue"
					}
				},
				"groups": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/UdaGroup"
					}
				}
			}
		},
		"V6RangeType": {
			"type": "string",
			"enum": [
				"DYNAMIC",
				"FIXED",
				"RESERVED",
				"DYNAMIC_TEMPORARY"
			]
		},
		"V4AddrRec": {
			"type": "object",
			"required": [
				"objectAddr",
				"subnetAddr"
			],
			"properties": {
				"objectAddr": {
					"type": "string",
					"description": "The hostname of the object. Not fully-qualified."
				},
				"subnetAddr": {
					"type": "string"
				},
				"objectName": {
					"type": "string"
				},
				"objectClass": {
					"type": "string",
					"description": "ObjectClass is a value of  Workstation, X-terminal, PC, Printer, Server, Wiring_HUB, Router, Bridge, Terminal_Server, Switch, Legacy_System, Gateway, Test_Equipment, Undefined, Others, Any user-defined object class name."
				},
				"domainName": {
					"type": "string",
					"description": "The domain of the object. If no value is provided, the Domain Name is identified as the default domain of the subnet the Object is on."
				},
				"expiredDate": {
					"type": "string",
					"description": "The date when a reserved object expires and is no longer reserved."
				},
				"serverType": {
					"type": "string",
					"description": "Only applicable if ObjectClass is 'server': TimeServer- If object is a time server, TftpServer- If object is a Tftp server, TftpServer\\&TimeServer- If object is a TftpServer and TimeServer.\n"
				},
				"applName": {
					"type": "string",
					"description": "The 'Primary Application' of the object."
				},
				"objectTag": {
					"type": "string",
					"description": "Tag field"
				},
				"roomId": {
					"type": "string",
					"description": "Room ID field"
				},
				"manufacturer": {
					"type": "string",
					"description": "Manufacturer Name"
				},
				"modelType": {
					"type": "string",
					"description": "Model Name"
				},
				"serialNumber": {
					"type": "string",
					"description": "Serial Number of Object"
				},
				"assetNumber": {
					"type": "string",
					"description": "Asset Number of object"
				},
				"hostId": {
					"type": "string",
					"description": "Host ID of object"
				},
				"purchaseDate": {
					"type": "string",
					"description": "Purchase Date/Time of object. Must be in yyyy-mm-dd format"
				},
				"objectDesc": {
					"type": "string",
					"description": "Object Description"
				},
				"hubName": {
					"type": "string",
					"description": "Hub Name(s) assigned to object."
				},
				"slotName": {
					"type": "string",
					"description": "Slot Name(s) assigned to object."
				},
				"portNumber": {
					"type": "string",
					"description": "Port Numbers assigned to object."
				},
				"locationId": {
					"type": "string",
					"description": "The Location ID. If no Location ID is specified, an attempt is made to match the record EXACTLY with the Street1, Street2, City, State, Zip and/or Country information that is supplied. If a match is not found, a new record is added without an ID."
				},
				"street1": {
					"type": "string",
					"description": "Street1 field of the location."
				},
				"street2": {
					"type": "string",
					"description": "Street2 field of the location."
				},
				"city": {
					"type": "string",
					"description": "City of the location."
				},
				"state": {
					"type": "string",
					"description": "State of the location."
				},
				"zip": {
					"type": "string",
					"description": "Zip of the location."
				},
				"country": {
					"type": "string",
					"description": "Country of the location."
				},
				"contactId": {
					"type": "string",
					"description": "The Contact ID. If no Contact ID is specified, an attempt is made to match the record EXACTLY with the ContactLastName and ContactFirstName information that is supplied. If no match is found, a new record is added without an ID."
				},
				"contactLastName": {
					"type": "string",
					"description": "Contact last name."
				},
				"contactFirstName": {
					"type": "string",
					"description": "Contact first name."
				},
				"contactEmail": {
					"type": "string",
					"description": "Contact email address."
				},
				"contactPhone": {
					"type": "string",
					"description": "Contact phone number."
				},
				"contactPager": {
					"type": "string",
					"description": "Contact pager number."
				},
				"routerGroup": {
					"type": "string",
					"description": "Router Group of object. Only applicable if the object class is \"router\"."
				},
				"dynamicConfig": {
					"type": "string",
					"description": "Dynamic Configuration of Object include Blank - Static object, None- Dynamic (none), M-DHCP- Manual DHCP, A-DHCP- Automatic DHCP, D-DHCP- Dynamic DHCP, M-BOOTP- Manual Bootp,  A-BOOTP- Automatic Bootp, Reserved - To reserve an object (the IP must be unused)"
				},
				"macAddr": {
					"type": "string",
					"description": "The Mac Address of Object. Exclude the colons (:) when entering a MAC address."
				},
				"tftpServer": {
					"type": "string",
					"description": "TFTP Server of object. Only applicable if object type is M-BOOTP."
				},
				"bootFileName": {
					"type": "string",
					"description": "Bootfile name of object. Only applicable if object type is MBOOTP."
				},
				"hardwareType": {
					"type": "string",
					"description": "NONE, ETHERNET, TOKEN_RING, AX25, PRONET, CHAOS, IEEE802, ARCNET."
				},
				"aliases": {
					"type": "string"
				},
				"mailForwarders": {
					"type": "string"
				},
				"mailHosts": {
					"type": "string"
				},
				"hubSlots": {
					"type": "string"
				},
				"dnsServers": {
					"type": "string",
					"description": "DNS Servers attached to this object. If multiple, separate by space. Only applicable for M-BOOTP objects."
				},
				"timeServers": {
					"type": "string",
					"description": "Time Servers attached to this object. If multiple, separate by space. Only applicable for M-BOOTP objects."
				},
				"defaultRouters": {
					"type": "string",
					"description": "IP Address(es) of Default routers, separated by space if multiples."
				},
				"userClasses": {
					"type": "string",
					"description": "Specific categories of user options. To enter one or more user classes for this object, enclose a list of users in double quotes (for example, user1, user2, user3)."
				},
				"users": {
					"type": "string"
				},
				"nameService": {
					"type": "string",
					"description": "Name Services selection:\n- No: Name Services checked off.\n- Yes: Name Services checked on.\n- A: Name Services checked on, A record checked on.\n- PTR: Name Services checked on, PTR record checked on.\n- A PTR: Name Services checked on, A record checked on, PTR record checked on.\n"
				},
				"dynamicDnsUpdate": {
					"type": "string",
					"description": "Dynamic Update selection:\n  - A- Dynamic updates for A records.\n  - PTR- Dynamic updates for PTR records.\n  - CNAME- Dynamic updates for CNAME records.\n  - MX- Dynamic updates for MX records.\n"
				},
				"dhcpServer": {
					"type": "string",
					"description": "The DHCP Server assigned to this object. Only applicable for dynamic objects."
				},
				"dhcpOptionTemplate": {
					"type": "string",
					"description": "The DHCP Option Template assigned to this object. Only applicable for dynamic objects."
				},
				"dhcpPolicyTemplate": {
					"type": "string",
					"description": "The DHCP Policy template assigned to this object. Only applicable for dynamic objects."
				},
				"leaseTime": {
					"type": "string",
					"description": "The lease time (in seconds assigned) to this object. Only applicable for dynamic objects."
				},
				"ttlTime": {
					"type": "string",
					"description": "Time to live (TTL) value, in seconds. Since 0 is a valid value, a value of-1 indicates no TTL set."
				},
				"vendorClass": {
					"type": "string",
					"description": "The Vendor Class assigned to this object. Only applicable for dynamic objects."
				},
				"clientId": {
					"type": "string",
					"description": "The unique value assigned to DHCP client."
				},
				"dualProtocol": {
					"type": "string"
				},
				"decNetArea": {
					"type": "string",
					"description": "DECNet Area. (Valid values are 1-63) Only applicable if Dual Protocol is set to DECNet. The DECNet Address is calculated on the input in the DECNetArea and the DECNet Node."
				},
				"decNetAddr": {
					"type": "string",
					"description": "DECNet Address. (Valid values are 1-1024) Only applicable if Dual Protocol set to DECNet. The DECNet Address is calculated on the input in the DECNetArea and the DECNet Node."
				},
				"decNetNode": {
					"type": "string"
				},
				"talkType": {
					"type": "string"
				},
				"ipxNode": {
					"type": "string",
					"description": "IPX Node. Only applicable if Dual Protocol is set to IPX."
				},
				"ipxNetworkNumber": {
					"type": "string",
					"description": "IPX Network number. Only applicable if Dual Protocol is set to IPX."
				},
				"netBiosDomain": {
					"type": "string",
					"description": "NetBIOS Name. Only applicable when dual protocol is set to NETBIOS."
				},
				"netBiosName": {
					"type": "string",
					"description": "NetBIOS Domain. Only applicable when dual protocol set to NETBIOS."
				},
				"usageBillServices": {
					"type": "string"
				},
				"usageBillLocation": {
					"type": "string"
				},
				"usageBillUserGroup": {
					"type": "string"
				},
				"usageBillObjectClass": {
					"type": "string"
				},
				"allowModifyDynamicRRs": {
					"type": "string"
				},
				"tombstoned": {
					"type": "string",
					"description": "1 indicates that this is a tombstoned external record. 0 indicates that it is not a tombstoned external record.\n"
				},
				"externalComment": {
					"type": "string",
					"description": "text (up to 255 characters), a comment indicating the history of this external add."
				},
				"externalTimestamp": {
					"type": "string",
					"description": "ExternalTimestamp must be in \"yyyy-mm-dd\" format"
				},
				"manualFlag": {
					"type": "string",
					"description": "Determines whether MACAddress/ClientID is set based on its value. If value is 0, MACAddress is set, if value is 1, ClientID is set."
				},
				"nodeId": {
					"type": "string"
				},
				"uniqueNodeId": {
					"type": "string"
				},
				"aTTL": {
					"type": "string"
				},
				"ptrTTL": {
					"type": "string"
				},
				"publishA": {
					"type": "string",
					"description": "A resource record option (Always | None | Push Only)."
				},
				"publishPTR": {
					"type": "string",
					"description": "PTR resource record option (Always | None | Push Only)."
				},
				"dhcpClientClass": {
					"type": "string"
				},
				"isUpdate": {
					"type": "string"
				},
				"isAddSelected": {
					"type": "string"
				},
				"isCheckDupName": {
					"type": "string"
				},
				"isCheckOnlyFQDNDups": {
					"type": "string"
				},
				"isSwapAliasAndObjectName": {
					"type": "string"
				},
				"localManualFlag": {
					"type": "string"
				}
			}
		},
		"V4AddressesRec": {
			"type": "object",
			"required": [
				"objectAddr"
			],
			"properties": {
				"objectAddr": {
					"type": "array",
					"items": {
						"type": "string"
					}
				},
				"v4AddrRec": {
					"$ref": "#/definitions/V4AddrRec"
				}
			}
		},
		"SplitV4AlterSubnetRec": {
			"type": "object",
			"required": [
				"fromSubnet",
				"toSubnets",
				"newMask"
			],
			"properties": {
				"fromSubnet": {
					"type": "string"
				},
				"toSubnets": {
					"type": "array",
					"items": {
						"type": "string"
					}
				},
				"newMask": {
					"type": "string"
				}
			}
		},
		"JoinV4AlterSubnetRec": {
			"type": "object",
			"required": [
				"fromSubnets",
				"toSubnet",
				"newMask"
			],
			"properties": {
				"fromSubnets": {
					"type": "array",
					"items": {
						"type": "string"
					}
				},
				"toSubnet": {
					"type": "string"
				},
				"newMask": {
					"type": "string"
				},
				"subnetProperties": {
					"type": "string"
				}
			}
		},
		"ResultCountDetail": {
			"description": "ResultCountDetail model",
			"required": [
				"passNumber",
				"faileNumber"
			],
			"properties": {
				"passNumber": {
					"type": "integer",
					"description": "The number updated successfully."
				},
				"failedNumber": {
					"type": "integer",
					"description": "The number can't be updated."
				},
				"errorDetailsList": {
					"$ref": "#/definitions/StringList",
					"description": "The error detail list."
				}
			},
			"example": {
				"passNumber": 1,
				"failedNumber": 2,
				"errorDetailsList": [
					"zone1.com - Zone [zone1.com] Not Found",
					"zone2.com - Permission Denied. You do not have appropriate privileges to perform this action."
				]
			}
		},
		"V4SubnetRec": {
			"type": "object",
			"required": [
				"subnetAddress",
				"subnetMask",
				"networkAddress"
			],
			"properties": {
				"subnetAddress": {
					"type": "string"
				},
				"subnetMask": {
					"type": "string"
				},
				"networkAddress": {
					"type": "string"
				},
				"subnetName": {
					"type": "string"
				},
				"subnetOrg": {
					"type": "string"
				},
				"application": {
					"type": "string"
				},
				"location": {
					"$ref": "#/definitions/LocationRec"
				},
				"contact": {
					"$ref": "#/definitions/ContactRec"
				},
				"hardwareType": {
					"$ref": "#/definitions/HwType"
				},
				"tftpServerName": {
					"type": "string"
				},
				"allowDHCPClientsToModifyDynamicObjectRRs": {
					"$ref": "#/definitions/ModifyRrsType"
				},
				"domains": {
					"$ref": "#/definitions/StringList"
				},
				"showUsage": {
					"type": "string"
				},
				"checkUsage": {
					"type": "string"
				},
				"subnetDescription": {
					"type": "string"
				},
				"sharedNetwork": {
					"type": "string"
				},
				"warningType": {
					"type": "integer"
				},
				"warningPercentage": {
					"type": "integer"
				},
				"preferredDNSServers": {
					"$ref": "#/definitions/StringList"
				},
				"preferredTimeServers": {
					"$ref": "#/definitions/StringList"
				},
				"defaultRouters": {
					"$ref": "#/definitions/StringList"
				},
				"defaultDHCPServer": {
					"type": "string"
				},
				"defaultDHCPOptionTemplate": {
					"type": "string"
				},
				"defaultDHCPPolicyTemplate": {
					"type": "string"
				},
				"primaryInterface": {
					"type": "boolean"
				},
				"optionalAttributeList": {
					"$ref": "#/definitions/UdaList"
				},
				"addressTemplate": {
					"type": "string"
				},
				"localTotalDynamicObjects": {
					"type": "integer"
				},
				"localLeasedDynamicObjects": {
					"type": "integer"
				},
				"localPercentDynamicObjectsUsed": {
					"type": "number"
				}
			}
		},
		"ModifyRrsType": {
			"type": "string",
			"enum": [
				"SAME_AS_IN_GLOBAL_POLICIES",
				"YES",
				"NO"
			]
		},
		"HwType": {
			"type": "string",
			"enum": [
				"ETHERNET",
				"TOKEN_RING",
				"AX25",
				"PRONET",
				"CHAOS",
				"IEEE802",
				"ARCNET"
			]
		},
		"LocationRec": {
			"type": "object",
			"properties": {
				"id": {
					"type": "integer"
				},
				"street1": {
					"type": "string"
				},
				"street2": {
					"type": "string"
				},
				"city": {
					"type": "string"
				},
				"state": {
					"type": "string"
				},
				"zip": {
					"type": "string"
				},
				"country": {
					"type": "string"
				}
			}
		},
		"ContactRec": {
			"type": "object",
			"properties": {
				"id": {
					"type": "integer"
				},
				"firstName": {
					"type": "string"
				},
				"lastName": {
					"type": "string"
				},
				"telephone": {
					"type": "string"
				},
				"pager": {
					"type": "string"
				},
				"email": {
					"type": "string"
				}
			}
		},
		"DNSServer": {
			"type": "object",
			"description": "Name of DNS server",
			"required": [
				"name"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "name"
				},
				"role": {
					"type": "string",
					"description": "Primary/Secondary DNS Server:\nWith P is for Primary and S is for Secondary\n"
				},
				"secureUpdate": {
					"type": "boolean",
					"description": "1 is turn on the flag of sending secure update 0 is not"
				}
			}
		},
		"DNSZoneSubOption": {
			"type": "object",
			"required": [
				"name",
				"value"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "name"
				},
				"value": {
					"type": "string",
					"description": "value"
				}
			}
		},
		"DNSZoneOption": {
			"type": "object",
			"required": [
				"name",
				"value"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "name"
				},
				"value": {
					"type": "string",
					"description": "value"
				},
				"subOption": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/DNSZoneSubOption"
					}
				}
			}
		},
		"DNSZoneOptionGroups": {
			"type": "object",
			"required": [
				"name"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "name"
				},
				"option": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/DNSZoneOption"
					}
				}
			}
		},
		"DNSZoneRec": {
			"type": "object",
			"required": [
				"name",
				"email",
				"expireTime",
				"negativeCacheTtl",
				"refreshTime",
				"retryTime",
				"defaultTtl"
			],
			"description": "This section defines a group of operations for adding a global zone. Different messages, \nand capabilities, are provided to handle the adding. Add, Get and Update actions support \nare supported. \n",
			"properties": {
				"name": {
					"type": "string",
					"description": "Name of the zone.\n"
				},
				"newName": {
					"type": "string",
					"description": "New name of the zone. This is used for updating a new name for a zone.\n"
				},
				"parentAddress": {
					"type": "string",
					"description": "Parent address of the splitted reverse zone.\n"
				},
				"networkAddress": {
					"type": "string",
					"description": "Network address of the reverse zone.\n"
				},
				"dnsServers": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/DNSServer"
					}
				},
				"defaultTtl": {
					"type": "integer",
					"description": "DNS default TTL.\n"
				},
				"email": {
					"type": "string",
					"description": "Email contact.\n"
				},
				"expireTime": {
					"type": "integer",
					"description": "Email contact.\n"
				},
				"negativeCacheTtl": {
					"type": "integer",
					"description": "DNS negative cache TTL.\n"
				},
				"postfixZoneExtension": {
					"type": "string",
					"description": "DNS postfix extension.\n"
				},
				"prefixZoneExtension": {
					"type": "string",
					"description": "DNS prefix extention.\n"
				},
				"refreshTime": {
					"type": "integer",
					"description": "DNS refresh time. \n"
				},
				"retryTime": {
					"type": "integer",
					"description": "DNS retry time.\n"
				},
				"udas": {
					"$ref": "#/definitions/NameValue"
				},
				"groups": {
					"$ref": "#/definitions/UdaGroup"
				},
				"dnsZoneOptions": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/DNSZoneOptionGroups"
					}
				}
			},
			"example": {
				"name": "nokia.com",
				"dnsServers": [
					{
						"name": "dns.example.com",
						"role": "P",
						"secureUpdate": false
					},
					{
						"name": "dnsSecondary.example.com",
						"role": "S",
						"secureUpdate": false
					},
					{
						"name": "zone1.example.com",
						"role": "P",
						"secureUpdate": true
					},
					{
						"name": "dnsSecondary.example.com",
						"role": "S",
						"secureUpdate": false
					}
				],
				"defaultTtl": 86400,
				"email": "support@nokia.com",
				"expireTime": 604800,
				"negativeCacheTtl": 600,
				"refreshTime": 21600,
				"retryTime": 3600,
				"udas": [
					{
						"name": "at1",
						"value": "true"
					},
					{
						"name": "test",
						"value": "vietnam"
					}
				],
				"groups": [
					{
						"name": "gr1",
						"udas": [
							{
								"name": "at1",
								"value": "false"
							}
						]
					},
					{
						"name": "gr2",
						"udas": [
							{
								"name": "testUDA",
								"value": "false"
							}
						]
					}
				],
				"dnsZoneOptions": [
					{
						"name": "Extensions",
						"options": [
							{
								"name": "Prefix of zone db file",
								"value": "Zone prefix comments"
							},
							{
								"name": "Postfix of zone db file",
								"value": "Zone postfix comments"
							}
						]
					},
					{
						"name": "ALU DNS 6.0 Options",
						"options": [
							{
								"name": "allow-transfer",
								"value": "Use Server Value",
								"subOptions": [
									{
										"name": "other"
									},
									{
										"name": "ACL Templates"
									}
								]
							},
							{
								"name": "allow-notify",
								"value": "Any",
								"subOptions": [
									{
										"name": "other"
									},
									{
										"name": "ACL Templates"
									}
								]
							},
							{
								"name": "zone block of named.conf",
								"value": "zone block of named.conf comments"
							},
							{
								"name": "Import External Updates",
								"value": "True",
								"subOptions": [
									{
										"name": "CNAME (Canonical Name)",
										"value": "True"
									},
									{
										"name": "AAAA (Host IPV6)",
										"value": "True"
									},
									{
										"name": "SRV (Server Resource Record)",
										"value": "True"
									},
									{
										"name": "A (Host IPV4)",
										"value": "True"
									},
									{
										"name": "PTR (Pointer)",
										"value": "True"
									},
									{
										"name": "TXT (Text)",
										"value": "True"
									}
								]
							},
							{
								"name": "allow-query",
								"value": "Use Server Value",
								"subOptions": [
									{
										"name": "other"
									},
									{
										"name": "ACL Templates"
									}
								]
							},
							{
								"name": "forwarders",
								"subOptions": [
									{
										"name": "forward",
										"value": "Use Server Value"
									}
								]
							},
							{
								"name": "allow-update",
								"value": "Use Server Value",
								"subOptions": [
									{
										"name": "other"
									},
									{
										"name": "ACL Templates"
									}
								]
							},
							{
								"name": "notify",
								"value": "No",
								"subOptions": [
									{
										"name": "also-notify"
									}
								]
							}
						]
					}
				]
			}
		},
		"V6BlockRec": {
			"type": "object",
			"required": [
				"name",
				"address",
				"prefixLength",
				"algorithmType",
				"poolName",
				"minPrefix",
				"maxPrefix",
				"defaultPrefix",
				"createType"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "Block"
				},
				"address": {
					"type": "string",
					"description": "IPv6 address"
				},
				"prefixLength": {
					"type": "integer",
					"description": "Length of the seed block"
				},
				"minPrefix": {
					"type": "integer",
					"description": "Smallest block that can be assigned"
				},
				"maxPrefix": {
					"type": "integer",
					"description": "Largest block that can be assigned"
				},
				"defaultPrefix": {
					"type": "integer",
					"description": "Default size of the block assigned"
				},
				"algorithmType": {
					"type": "string",
					"description": "BEST_FIT_FROM_START | BEST_FIT_FROM_END | SPARSE | CONTIGUOUS_SPARSE\n"
				},
				"poolName": {
					"type": "string",
					"description": "Name of the pool"
				},
				"createType": {
					"type": "integer",
					"description": "Keep value as 1 which refers to user initiated operation. It's required when create a V6Block\n"
				},
				"createReverseZone": {
					"type": "boolean",
					"description": "true for create V6 Reverse Zone and vice versa (default is true)."
				},
				"isReservedBlock": {
					"type": "boolean",
					"description": "create reserved block (default is false)"
				},
				"udas": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/NameValue"
					}
				},
				"groups": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/UdaGroup"
					}
				}
			},
			"example": {
				"name": "B1",
				"address": "4000::",
				"prefixLength": "48",
				"minPrefix": "64",
				"maxPrefix": "48",
				"defaultPrefix": "56",
				"algorithmType": "BEST_FIT_FROM_START",
				"poolName": "P1",
				"createType": 1,
				"createReverseZone": false,
				"isReservedBlock": false,
				"udas": [
					{
						"name": "atb1",
						"value": true
					}
				],
				"groups": [
					{
						"name": "grp1",
						"udas": [
							{
								"name": "atb1",
								"value": true
							}
						]
					}
				]
			}
		},
		"V6BlockAssign": {
			"type": "object",
			"required": [
				"targetPool",
				"sourcePool",
				"sourceBlock",
				"assignmentType",
				"assignAlgorithm",
				"prefixLength",
				"newBlockName",
				"defaultPrefixLength",
				"startAddress"
			],
			"properties": {
				"targetPool": {
					"type": "string",
					"description": "Name of target pool."
				},
				"sourcePool": {
					"type": "string",
					"description": "Name of source pool."
				},
				"sourceBlock": {
					"type": "string",
					"description": "Name of source block."
				},
				"sourceAddress": {
					"type": "string",
					"description": "IP Address/PrefixLength"
				},
				"assignmentType": {
					"type": "string",
					"description": "Method of assignment."
				},
				"assignAlgorithm": {
					"type": "string",
					"description": "Assignment algorithm used in the block."
				},
				"prefixLength": {
					"type": "integer",
					"description": "Size of the assigned block."
				},
				"newBlockName": {
					"type": "string",
					"description": "Name of the block assigned."
				},
				"defaultAlgorithm": {
					"type": "string",
					"description": "Assignment algorithm."
				},
				"defaultPrefixLength": {
					"type": "integer",
					"description": "Size of the assigned block."
				},
				"startAddress": {
					"type": "string",
					"description": "IP Address string."
				},
				"createReverseZone": {
					"type": "boolean",
					"description": "true for create V6 Reverse Zone and vice versa (default is false). Support both quotation marks and non-quotation marks"
				},
				"udas": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/NameValue"
					}
				},
				"groups": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/UdaGroup"
					}
				}
			},
			"example": {
				"targetPool": "poolB",
				"sourcePool": "poolA",
				"sourceBlock": "myBlock",
				"assignmentType": "ALGORITHM",
				"assignAlgorithm": "BEST_FIT_FROM_START",
				"prefixLength": 48,
				"newBlockName": "assignedBlock",
				"createReverseZone": "true",
				"udas": [
					{
						"name": "atb1",
						"value": true
					}
				],
				"groups": [
					{
						"name": "grp1",
						"udas": [
							{
								"name": "atb1",
								"value": true
							}
						]
					}
				]
			}
		},
		"V6PoolRec": {
			"type": "object",
			"required": [
				"name",
				"contact",
				"assignBlockType",
				"notificationType",
				"algorithmType",
				"minPrefix",
				"maxPrefix",
				"defaultPrefix"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "Name of the pool.\nYou should not enter a pool name with the last character is \\ \n\nThis will make the parent pool name get parsed incorrectly.\n"
				},
				"newName": {
					"type": "string",
					"description": "Name of the pool - support change name of pool.\n"
				},
				"fullQualifiedParentPoolName": {
					"type": "string",
					"description": "full Qualified Parent name of Pool"
				},
				"parentName": {
					"type": "string",
					"description": "Name of parent pool.\nIf you want the / character to be a part of the pool name, it must be escaped using slash \\ character.\n"
				},
				"contact": {
					"type": "string",
					"description": "E-mail ID of the contact"
				},
				"assignBlockType": {
					"type": "string",
					"description": "APPROVAL_REQUIRED AUTOMATIC_ASSIGNMENT\n"
				},
				"notificationType": {
					"type": "string",
					"description": "NONE REQUESTS_AND_ASSIGNMENTS REQUESTS_ONLY ASSIGNMENTS_ONLY\n"
				},
				"algorithmType": {
					"type": "string",
					"description": "BEST_FIT_FROM_START BEST_FIT_FROM_END SPARSE\n"
				},
				"minPrefix": {
					"type": "integer",
					"description": "Smallest block that can be assigned"
				},
				"maxPrefix": {
					"type": "integer",
					"description": "Largest block that can be assigned"
				},
				"defaultPrefix": {
					"type": "integer",
					"description": "Default size of the block assigned"
				},
				"blockReqType": {
					"type": "string",
					"description": "MANUAL_PARENT_REQUEST AUTOMATIC_PARENT_REQUEST\n"
				},
				"createReverseZone": {
					"type": "boolean",
					"description": "true for create V6 Reverse Zone and vice versa (default is false)."
				},
				"udas": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/NameValue"
					}
				},
				"groups": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/UdaGroup"
					}
				}
			},
			"example": {
				"name": "ChildPool1",
				"parentName": "Pool1",
				"fullQualifiedParentPoolName": "Pool/Pool1",
				"contact": "restapi@example.com",
				"blockReqType": "MANUAL_PARENT_REQUEST",
				"assignBlockType": "APPROVAL_REQUIRED",
				"notificationType": "REQUESTS_AND_ASSIGNMENTS",
				"algorithmType": "BEST_FIT_FROM_START",
				"minPrefix": "64",
				"maxPrefix": "48",
				"defaultPrefix": "56",
				"createReverseZone": true,
				"udas": [
					{
						"name": "atb1",
						"value": true
					}
				],
				"groups": [
					{
						"name": "grp1",
						"udas": [
							{
								"name": "atb1",
								"value": true
							}
						]
					}
				]
			}
		},
		"AlertRec": {
			"type": "object",
			"description": "Alert/Warning Messages",
			"required": [
				"alertType",
				"alertContent",
				"severity"
			],
			"properties": {
				"alertType": {
					"type": "string",
					"description": "A alert type\n\nDNS TUNNELS: messages about DNS TUNNELS attacks\n\nDNS DDOS: messages about DNS DDOS attacks\n\nDNS SUBDOMAIN DDOS: messages about DNS SubDomain DDoS attacks\n\nDNS REFLECTION AND AMPLIFICATION: messages about DNS REFLECTION AND AMPLIFICATION attacks"
				},
				"alertContent": {
					"type": "string",
					"description": "Alert Content"
				},
				"timestamp": {
					"type": "string",
					"description": "Time when we was attacked"
				},
				"severity": {
					"type": "string",
					"description": "Severity type\n\nCRITICAL: critical problem messages.\n\nWARNING: warning problem messages.\n\nINFO: information messages."
				}
			},
			"example": {
				"alertType": "DNS DDOS",
				"alertContent": "DDI DDoS Detection\nThe VitalQIP DDI Analytics server detected an abnormally high DNS query rate that exceeds the configured threshold for the DNS server on 2016-10-20T03:44:21.256001Z.\nIf desired, information on DNS queries can be obtained from the following sites:\nDNS Top Clients:\nhttp://192.168.88.175:5601/app/kibana#/visualize/edit/DNS-Top-Clients-IN\nTop-Clients-IN\nDNS Top Requested Domain Names:\nhttp://192.168.88.175:5601/app/kibana#/visualize/edit/DNS-Top-Requested-Domain-Names-IN\nDNS Top Requested Record Types:\nhttp://192.168.88.175:5601/app/kibana#/visualize/edit/DNS-Top-Requested-Record-Types-IN\nTo mitigate a DDoS attack, an administrator may want to configure Response Rate\n",
				"severity": "WARNING"
			}
		},
		"SchedulerOptions": {
			"type": "object",
			"properties": {
				"runMode": {
					"type": "string",
					"description": "IN_FOREGROUND: run the job immediately.\n\nIN_BACKGROUND: run the job in background.\n\nSCHEDULED_AT: run the job for later.\n\nThe default value is IN_FOREGROUND for server push and IN_BACKGROUND for preview push.",
					"default": "IN_FOREGROUND",
					"enum": [
						"IN_FOREGROUND",
						"IN_BACKGROUND",
						"SCHEDULED_AT"
					]
				},
				"scheduledTime": {
					"type": "string",
					"description": "Specify a date and time run the push, support the following date formats: yyyy-MM-dd'T'HH:mm:ss.SSSZ; MM/dd/yyyy hh:mm; EEE, yyyy-MM-dd hh:mm; yyyy-MM-dd hh:mm z; yyyyMMdd'T'hhmmZ; yyyy-MM-dd h:mma; MMM d HH:mm yyyy; EEE MMM d HH:mm:ss zzz yyyy"
				},
				"description": {
					"type": "string",
					"description": "Description of the job."
				},
				"sendEmail": {
					"type": "boolean",
					"description": "If the value is set to true then an email to be send when the job completed, it will require an email address is exist in toEmail field. The default is false."
				},
				"toEmail": {
					"type": "string",
					"description": "An email address of up to 255 characters. Multiple email addresses must be separated by a comma (,)."
				},
				"ccEmail": {
					"type": "string",
					"description": "An email address of up to 255 characters. Multiple email addresses must be separated by a comma (,)."
				}
			}
		},
		"TokenInfo": {
			"type": "object",
			"required": [
				"token"
			],
			"properties": {
				"token": {
					"type": "string",
					"description": "token"
				}
			}
		},
		"JobInfo": {
			"properties": {
				"adminName": {
					"type": "string",
					"description": "Filters on which the user's jobs are displayed. This field is disabled if the user is not a master or organization administrator, since normal administrator may only view."
				},
				"name": {
					"type": "string",
					"description": "Name of type job."
				},
				"description": {
					"type": "string",
					"description": "Description of the job."
				},
				"status": {
					"type": "string",
					"description": "The status of the job scheduler. Valid values are: Running, Pending, Delayed, Scheduled, Completed, Failed, Cancelled."
				},
				"server": {
					"type": "string",
					"description": "Name of the server to which the scheduled job is assigned."
				},
				"scheduledTime": {
					"type": "string",
					"description": "Jobs that are scheduled or started after a specified date and time, support the following date format: yyyy-MM-dd HH:mm z"
				},
				"startTime": {
					"type": "string",
					"description": "Jobs that are started in a specified date and time, support the following date format: yyyy-MM-dd HH:mm z"
				},
				"completedTime": {
					"type": "string",
					"description": "Jobs that are completed in a specified date and time, support the following date format: yyyy-MM-dd HH:mm z"
				}
			}
		},
		"v6Subnet": {
			"type": "object",
			"properties": {
				"name": {
					"type": "string"
				},
				"subnetAddressAndMaskLength": {
					"type": "string"
				}
			}
		},
		"v6SubnetCreated": {
			"type": "object",
			"properties": {
				"subnetNo": {
					"type": "integer"
				},
				"v6Subnets": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/v6Subnet"
					}
				},
				"status": {
					"type": "string"
				}
			},
			"example": {
				"subnetNo": "integer",
				"v6Subnets": [
					{
						"name": "string",
						"subnetAddressAndMaskLength": "string"
					}
				],
				"status": "string"
			}
		},
		"errorPermission": {
			"type": "object",
			"properties": {
				"error": {
					"type": "string"
				}
			},
			"example": {
				"error": "Invalid permissions for the requested operation."
			}
		},
		"error": {
			"type": "object",
			"properties": {
				"error": {
					"type": "string"
				}
			},
			"example": {
				"error": "Authentication failed. Invalid Authorization: {username}"
			}
		},
		"list": {
			"type": "object",
			"properties": {
				"DNSZoneRec": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/DNSZoneRec"
					}
				}
			},
			"example": {
				"list": [
					{
						"name": "nokiaFirst.com",
						"dnsServers": [
							{
								"name": "dns.example.com",
								"role": "P",
								"secureUpdate": false
							},
							{
								"name": "dnsSecondary.example.com",
								"role": "S",
								"secureUpdate": false
							},
							{
								"name": "zone1.example.com",
								"role": "P",
								"secureUpdate": true
							},
							{
								"name": "dnsSecondary.example.com",
								"role": "S",
								"secureUpdate": false
							}
						],
						"defaultTtl": 86400,
						"email": "support@nokia.com",
						"expireTime": 604800,
						"negativeCacheTtl": 600,
						"refreshTime": 21600,
						"retryTime": 3600,
						"udas": [
							{
								"name": "at1",
								"value": "true"
							},
							{
								"name": "test",
								"value": "vietnam"
							}
						],
						"groups": [
							{
								"name": "gr1",
								"udas": [
									{
										"name": "at1",
										"value": "false"
									}
								]
							},
							{
								"name": "gr2",
								"udas": [
									{
										"name": "testUDA",
										"value": "false"
									}
								]
							}
						],
						"dnsZoneOptions": [
							{
								"name": "Extensions",
								"options": [
									{
										"name": "Prefix of zone db file",
										"value": "Zone prefix comments"
									},
									{
										"name": "Postfix of zone db file",
										"value": "Zone postfix comments"
									}
								]
							},
							{
								"name": "ALU DNS 6.0 Options",
								"options": [
									{
										"name": "allow-transfer",
										"value": "Use Server Value",
										"subOptions": [
											{
												"name": "other"
											},
											{
												"name": "ACL Templates"
											}
										]
									},
									{
										"name": "allow-notify",
										"value": "Any",
										"subOptions": [
											{
												"name": "other"
											},
											{
												"name": "ACL Templates"
											}
										]
									},
									{
										"name": "zone block of named.conf",
										"value": "zone block of named.conf comments"
									},
									{
										"name": "Import External Updates",
										"value": "True",
										"subOptions": [
											{
												"name": "CNAME (Canonical Name)",
												"value": "True"
											},
											{
												"name": "AAAA (Host IPV6)",
												"value": "True"
											},
											{
												"name": "SRV (Server Resource Record)",
												"value": "True"
											},
											{
												"name": "A (Host IPV4)",
												"value": "True"
											},
											{
												"name": "PTR (Pointer)",
												"value": "True"
											},
											{
												"name": "TXT (Text)",
												"value": "True"
											}
										]
									},
									{
										"name": "allow-query",
										"value": "Use Server Value",
										"subOptions": [
											{
												"name": "other"
											},
											{
												"name": "ACL Templates"
											}
										]
									},
									{
										"name": "forwarders",
										"subOptions": [
											{
												"name": "forward",
												"value": "Use Server Value"
											}
										]
									},
									{
										"name": "allow-update",
										"value": "Use Server Value",
										"subOptions": [
											{
												"name": "other"
											},
											{
												"name": "ACL Templates"
											}
										]
									},
									{
										"name": "notify",
										"value": "No",
										"subOptions": [
											{
												"name": "also-notify"
											}
										]
									}
								]
							}
						]
					},
					{
						"name": "nokiaSecond.com",
						"dnsServers": [
							{
								"name": "dns.example.com",
								"role": "P",
								"secureUpdate": false
							},
							{
								"name": "dnsSecondary.example.com",
								"role": "S",
								"secureUpdate": false
							},
							{
								"name": "zone1.example.com",
								"role": "P",
								"secureUpdate": true
							},
							{
								"name": "dnsSecondary.example.com",
								"role": "S",
								"secureUpdate": false
							}
						],
						"defaultTtl": 86400,
						"email": "support@nokia.com",
						"expireTime": 604800,
						"negativeCacheTtl": 600,
						"refreshTime": 21600,
						"retryTime": 3600,
						"udas": [
							{
								"name": "at1",
								"value": "true"
							},
							{
								"name": "test",
								"value": "vietnam"
							}
						],
						"groups": [
							{
								"name": "gr1",
								"udas": [
									{
										"name": "at1",
										"value": "false"
									}
								]
							},
							{
								"name": "gr2",
								"udas": [
									{
										"name": "testUDA",
										"value": "false"
									}
								]
							}
						],
						"dnsZoneOptions": [
							{
								"name": "Extensions",
								"options": [
									{
										"name": "Prefix of zone db file",
										"value": "Zone prefix comments"
									},
									{
										"name": "Postfix of zone db file",
										"value": "Zone postfix comments"
									}
								]
							},
							{
								"name": "ALU DNS 6.0 Options",
								"options": [
									{
										"name": "allow-transfer",
										"value": "Use Server Value",
										"subOptions": [
											{
												"name": "other"
											},
											{
												"name": "ACL Templates"
											}
										]
									},
									{
										"name": "allow-notify",
										"value": "Any",
										"subOptions": [
											{
												"name": "other"
											},
											{
												"name": "ACL Templates"
											}
										]
									},
									{
										"name": "zone block of named.conf",
										"value": "zone block of named.conf comments"
									},
									{
										"name": "Import External Updates",
										"value": "True",
										"subOptions": [
											{
												"name": "CNAME (Canonical Name)",
												"value": "True"
											},
											{
												"name": "AAAA (Host IPV6)",
												"value": "True"
											},
											{
												"name": "SRV (Server Resource Record)",
												"value": "True"
											},
											{
												"name": "A (Host IPV4)",
												"value": "True"
											},
											{
												"name": "PTR (Pointer)",
												"value": "True"
											},
											{
												"name": "TXT (Text)",
												"value": "True"
											}
										]
									},
									{
										"name": "allow-query",
										"value": "Use Server Value",
										"subOptions": [
											{
												"name": "other"
											},
											{
												"name": "ACL Templates"
											}
										]
									},
									{
										"name": "forwarders",
										"subOptions": [
											{
												"name": "forward",
												"value": "Use Server Value"
											}
										]
									},
									{
										"name": "allow-update",
										"value": "Use Server Value",
										"subOptions": [
											{
												"name": "other"
											},
											{
												"name": "ACL Templates"
											}
										]
									},
									{
										"name": "notify",
										"value": "No",
										"subOptions": [
											{
												"name": "also-notify"
											}
										]
									}
								]
							}
						]
					}
				]
			}
		},
		"DNSGenerationRequest": {
			"type": "object",
			"required": [
				"serverName"
			],
			"properties": {
				"serverName": {
					"type": "string",
					"description": "Fully-qualified domain name of the server - The name of the server that the generation."
				},
				"pushDnsOptions": {
					"$ref": "#/definitions/DNSGenerationOptions"
				},
				"schedulerOptions": {
					"$ref": "#/definitions/SchedulerOptions"
				}
			},
			"example": {
				"serverName": "srv91.test.com",
				"pushDnsOptions": {
					"pushType": "CONFIG_AND_DATA",
					"targetZones": "SELECTED_ZONES",
					"generateTo": "SERVER",
					"force": "false",
					"selectedZones": [
						"test2.com",
						"zoneAt1.com"
					]
				},
				"schedulerOptions": {
					"runMode": "SCHEDULED_AT",
					"scheduledTime": "05/15/2017 15:20",
					"description": "Run job on 15th May 2017",
					"sendEmail": "true",
					"toEmail": "a@a.com",
					"ccEmail": "b@a.com"
				}
			}
		},
		"DNSGenerationOptions": {
			"type": "object",
			"properties": {
				"pushType": {
					"type": "string",
					"description": "CONFIG_AND_DATA: Generates the DNS configuration and data files without increasing the SOA serial number or reloading the server.\n\nUPDATE: The SOA serial number will be increased and the server will be reloaded.\n\nThe default value is UPDATE.\n\nIf you have selected a Microsoft DNS server, the above options are not displayed. Instead, you can select one of the following:\n\nALL_RECORDS: Generates the Microsoft DNS configuration and data files, including incrementing the SOA serial number and reloading the server.\n\nCHANGED_RECORDS_ONLY: Generates files for only changed records.\n\nThe default value is CHANGED_RECORDS_ONLY",
					"default": "UPDATE",
					"enum": [
						"CONFIG_AND_DATA",
						"UPDATE",
						"ALL_RECORDS",
						"CHANGED_RECORDS_ONLY"
					]
				},
				"targetZones": {
					"type": "string",
					"description": "ALL_ZONES: Update all zone.\n\nCHANGED_ZONES_ONLY: Only update zones that have changed since the last push.\n\nSELECTED_ZONES: Update zones will be selected. \n\nThe default value is ALL_ZONES.",
					"default": "ALL_ZONES",
					"enum": [
						"ALL_ZONES",
						"CHANGED_ZONES_ONLY",
						"SELECTED_ZONES"
					]
				},
				"generateTo": {
					"type": "string",
					"description": "SERVER: Files are generated to the DNS sever.\n\nPREVIEW: Files are generated to the web server for reviewing.\n\nThe default value is SERVER.",
					"default": "SERVER",
					"enum": [
						"SERVER",
						"PREVIEW"
					]
				},
				"selectedZones": {
					"type": "array",
					"items": {
						"type": "string"
					},
					"description": "Only update the zones that appear in this list."
				},
				"force": {
					"type": "boolean",
					"description": "Forces a push to the DNS server if the DNS server was locked previously. If it is still locked, an error message is returned."
				}
			}
		},
		"DNSServerGetMethod": {
			"type": "object",
			"required": [
				"serverName",
				"domainName",
				"serverType",
				"parameters"
			],
			"properties": {
				"serverName": {
					"type": "string",
					"description": "Name of DNS server - not FQDN"
				},
				"domainName": {
					"type": "string",
					"description": "Name of DNS zone"
				},
				"serverType": {
					"type": "string",
					"description": "Type of DNS server. One of following values:\n\n'ALU DNS 6.0',</br>'ALU DNS 6.1',</br>'ALU DNS 6.2',</br>'BIND-4.9.X',</br> 'BIND-8.X',</br>'BIND-9.X',</br>'LUCENT DNS 3.X',</br>'LUCENT DNS 4.X',</br>'LUCENT DNS 5.X',</br>'MICROSOFT DNS',</br>'MICROSOFT-NT4.0'"
				},
				"ipv4Address": {
					"type": "string",
					"description": "IPv4 address of this server. If it already exists, the object name should match serverName. Otherwise, new object will be created"
				},
				"ipv6Address": {
					"type": "string",
					"description": "IPv6 address of this server. The address need to exist in database"
				},
				"serverTemplate": {
					"type": "string",
					"description": "The template name for using to create new DNS server"
				},
				"attributeList": {
					"type": "object",
					"description": "UDA and UDA group to be associated with DNS server",
					"$ref": "#/definitions/UdaList"
				},
				"parameters": {
					"type": "array",
					"description": "The DNS server parameters to be created with DNS server",
					"items": {
						"$ref": "#/definitions/ParameterData"
					}
				}
			},
			"example": {
				"serverName": "example",
				"domainName": "test.com",
				"serverType": "ALU DNS 6.2",
				"ipv4Address": "192.168.88.1",
				"ipv6Address": "",
				"attributeList": {
					"udas": [
						{
							"name": "general attribute",
							"value": "this is multiple text"
						},
						{
							"name": "dropdown",
							"value": "item2"
						}
					],
					"groups": [
						{
							"name": "agroup",
							"udas": [
								{
									"name": "tobeingroup",
									"value": "5"
								}
							]
						}
					]
				},
				"parameters": [
					{
						"paramName": "Default Directory",
						"paramValue": "C:\\qip\\named"
					},
					{
						"paramName": "Email address for local and reverse zones",
						"paramValue": "mail@test.com"
					},
					{
						"paramName": "RNDC Key",
						"paramValue": "123456"
					},
					{
						"paramName": "RNDC Path",
						"paramValue": "C:\\qip\\named\\bin"
					},
					{
						"paramName": "DNSSEC",
						"paramValue": "Enabled",
						"childParams": [
							{
								"paramName": "Authoritative Zones",
								"childParams": [
									{
										"paramName": "DNSSEC Check Duplicate Records",
										"paramValue": "Warn"
									},
									{
										"paramName": "DNSSEC Load Keys Interval",
										"paramValue": "60"
									},
									{
										"paramName": "Key Directory",
										"paramValue": "keys"
									},
									{
										"paramName": "Sign DNSKEY Records with KSK only",
										"paramValue": "No"
									},
									{
										"paramName": "Sign zone with ZSK only",
										"paramValue": "Yes"
									}
								]
							},
							{
								"paramName": "Caching/Recursive",
								"childParams": [
									{
										"paramName": "DNSSEC Accept Expired Signatures",
										"paramValue": "No"
									},
									{
										"paramName": "DNSSEC BINDkeys File",
										"paramValue": "bind.keys"
									},
									{
										"paramName": "DNSSEC Validation",
										"paramValue": "Yes"
									}
								]
							}
						]
					}
				]
			}
		},
		"ParameterData": {
			"type": "object",
			"required": [
				"paramName"
			],
			"properties": {
				"paramName": {
					"type": "string",
					"description": "Parameter name"
				},
				"paramValue": {
					"type": "string",
					"description": "Parameter value"
				},
				"childParams": {
					"description": "Child parameter array of this parameter. Have the same structure as this parameter"
				}
			}
		},
		"DNSServerRec": {
			"type": "object",
			"required": [
				"serverName",
				"domain",
				"serverType"
			],
			"properties": {
				"serverName": {
					"type": "string",
					"description": "server name"
				},
				"address": {
					"type": "string",
					"description": "IPV4 address"
				},
				"domain": {
					"type": "string",
					"description": "domain name"
				},
				"serverType": {
					"type": "string",
					"description": "type of server"
				}
			}
		},
		"DNSServerZone": {
			"type": "object",
			"properties": {
				"name": {
					"type": "string",
					"description": "Zone name. \n"
				},
				"type": {
					"type": "string",
					"description": "Zone type. \n"
				},
				"email": {
					"type": "string",
					"description": "Email contact.\n"
				},
				"rpzFlag": {
					"type": "boolean",
					"description": "rpz Flag. \n"
				},
				"refreshTime": {
					"type": "integer",
					"description": "Zone refresh time. \n"
				},
				"expireTime": {
					"type": "integer",
					"description": "Zone expire time. \n"
				},
				"retryTime": {
					"type": "integer",
					"description": "Zone retry time.\n"
				},
				"minTime": {
					"type": "integer",
					"description": "Zone minimum time. \n"
				},
				"negativeCachingTtl": {
					"type": "integer",
					"description": "Zone negative cache TTL.\n"
				}
			}
		},
		"DNSZoneInfo": {
			"type": "object",
			"properties": {
				"zoneType": {
					"type": "string",
					"description": "Zone type.",
					"enum": [
						"QIP Managed",
						"Route 53"
					]
				},
				"zones": {
					"type": "array",
					"description": "contain zone information to be associated.",
					"items": {
						"$ref": "#/definitions/DNSZoneProfile"
					}
				},
				"removedZones": {
					"type": "array",
					"description": "contain zone information to be de-associated.",
					"items": {
						"$ref": "#/definitions/DNSZoneProfile"
					}
				}
			},
			"example": {
				"zoneType": "QIP Managed",
				"zones": [
					{
						"name": "test1.com",
						"role": "secondary",
						"primary": "srv1.test.com"
					}
				],
				"removedZones": [
					{
						"name": "test2.com",
						"role": "secondary",
						"primary": "srv2.test.com"
					}
				]
			}
		},
		"DNSZoneProfile": {
			"type": "object",
			"required": [
				"name",
				"role"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "Domain name"
				},
				"role": {
					"type": "string",
					"description": "Zone role.",
					"enum": [
						"PRIMARY",
						"SECONDARY",
						"FORWARDED"
					]
				},
				"primary": {
					"type": "string",
					"description": "Fully Qualified Domain Name of Primary Server"
				}
			}
		},
		"DNSServerTemplate": {
			"type": "object",
			"required": [
				"templateName",
				"serverType"
			],
			"properties": {
				"templateName": {
					"type": "string",
					"description": "Name of DNS Server Template - not FQDN"
				},
				"serverType": {
					"type": "string",
					"description": "Type of DNS server. One of following values:\n\n'ALU DNS 6.0',</br>'ALU DNS 6.1',</br>'ALU DNS 6.2',</br>'BIND-4.9.X',</br> 'BIND-8.X',</br>'BIND-9.X',</br>'LUCENT DNS 3.X',</br>'LUCENT DNS 4.X',</br>'LUCENT DNS 5.X',</br>'MICROSOFT DNS',</br>'MICROSOFT-NT4.0',</br>'DNS 6.3'"
				},
				"parameters": {
					"type": "array",
					"description": "The DNS Server parameters to be created with DNS server",
					"items": {
						"$ref": "#/definitions/ParameterData"
					}
				}
			},
			"example": {
				"templateName": "template",
				"serverType": "DNS 6.3",
				"parameters": [
					{
						"paramName": "Default Directory",
						"paramValue": "C:\\qip\\named"
					},
					{
						"paramName": "Email address for local and reverse zones",
						"paramValue": "mail@test.com"
					},
					{
						"paramName": "RNDC Key",
						"paramValue": "123456"
					},
					{
						"paramName": "RNDC Path",
						"paramValue": "C:\\qip\\named\\bin"
					},
					{
						"paramName": "DNSSEC",
						"paramValue": "Enabled",
						"childParams": [
							{
								"paramName": "Authoritative Zones",
								"childParams": [
									{
										"paramName": "DNSSEC Check Duplicate Records",
										"paramValue": "Warn"
									},
									{
										"paramName": "DNSSEC Load Keys Interval",
										"paramValue": "60"
									},
									{
										"paramName": "Key Directory",
										"paramValue": "keys"
									},
									{
										"paramName": "Sign DNSKEY Records with KSK only",
										"paramValue": "No"
									},
									{
										"paramName": "Sign zone with ZSK only",
										"paramValue": "Yes"
									}
								]
							},
							{
								"paramName": "Caching/Recursive",
								"childParams": [
									{
										"paramName": "DNSSEC Accept Expired Signatures",
										"paramValue": "No"
									},
									{
										"paramName": "DNSSEC BINDkeys File",
										"paramValue": "bind.keys"
									},
									{
										"paramName": "DNSSEC Validation",
										"paramValue": "Yes"
									}
								]
							}
						]
					}
				]
			}
		},
		"templateObject": {
			"type": "object",
			"properties": {
				"templateName": {
					"type": "string"
				},
				"serverType": {
					"type": "string"
				}
			}
		},
		"DHCPServerRec": {
			"type": "object",
			"required": [
				"serverName",
				"domain",
				"serverType"
			],
			"properties": {
				"serverName": {
					"type": "string",
					"description": "server name"
				},
				"address": {
					"type": "string",
					"description": "IPV4 address"
				},
				"domain": {
					"type": "string",
					"description": "domain name"
				},
				"serverType": {
					"type": "string",
					"description": "type of server"
				}
			},
			"example": {
				"list": [
					{
						"id": 1,
						"serverName": "dhcp",
						"address": "192.168.88.1",
						"domaim": "test.com",
						"serverType": "LUCENT DHCP 6.0"
					}
				]
			}
		},
		"DHCPServer": {
			"type": "object",
			"required": [
				"serverName",
				"domainName",
				"serverType",
				"parameters"
			],
			"properties": {
				"serverName": {
					"type": "string",
					"description": "Hostname of the DHCP Server - not FQDN"
				},
				"domainName": {
					"type": "string",
					"description": "Domain Name of the DHCP Server"
				},
				"serverType": {
					"type": "string",
					"description": "Type of DHCP server. One of following values:\n\n'LUCENT DHCP 5.4',</br>'LUCENT DHCP 5.5',</br>'LUCENT DHCP 5.6',</br>'LUCENT DHCP 6.0',</br>'MICROSOFT DHCP'"
				},
				"ipv4Address": {
					"type": "string",
					"description": "IPv4 address of this server. If it already exists, the object name should match serverName. Otherwise, new object will be created"
				},
				"ipv6Address": {
					"type": "string",
					"description": "IPv6 address of this server. The address need to exist in database"
				},
				"attributeList": {
					"type": "object",
					"description": "UDA and UDA group to be associated with DHCP server",
					"$ref": "#/definitions/UdaList"
				},
				"parameters": {
					"type": "array",
					"description": "The DHCP server parameters to be created with DHCP server",
					"items": {
						"$ref": "#/definitions/ParameterData"
					}
				}
			},
			"example": {
				"serverName": "example",
				"domainName": "test.com",
				"ipv4Address": "192.168.88.1",
				"ipv6Address": "",
				"serverType": "Lucent DHCP 6.0",
				"attributeList": {
					"udas": [
						{
							"name": "general attribute",
							"value": "this is multiple text"
						},
						{
							"name": "dropdown",
							"value": "item2"
						}
					],
					"groups": [
						{
							"name": "agroup",
							"udas": [
								{
									"name": "tobeingroup",
									"value": "5"
								}
							]
						}
					]
				},
				"parameters": [
					{
						"paramName": "Default Directory",
						"paramValue": "C:\\qip\\dhcp"
					},
					{
						"paramName": "DHCP Template",
						"paramValue": "general"
					},
					{
						"paramName": "Failover Server Type",
						"paramValue": "Standalone/Primary"
					},
					{
						"paramName": "Managed Range",
						"paramValue": "Corporation"
					},
					{
						"paramName": "Accept Client Names",
						"paramValue": "True"
					},
					{
						"paramName": "Additional Policies",
						"paramValue": ""
					},
					{
						"paramName": "Debug Information",
						"childParams": [
							{
								"paramName": "Debug",
								"paramValue": "All"
							},
							{
								"paramName": "DebugFile",
								"paramValue": "dhcpd.log"
							},
							{
								"paramName": "MaxDebugFileSize",
								"paramValue": "-1"
							}
						]
					},
					{
						"paramName": "Remote Server Proxy",
						"paramValue": ""
					},
					{
						"paramName": "Scheduled Automatic Updates",
						"paramValue": "None"
					},
					{
						"paramName": "Support Bootp",
						"paramValue": "True"
					},
					{
						"paramName": "Use Server Policy Template",
						"paramValue": "False"
					}
				]
			}
		},
		"DHCPGenerationRequest": {
			"type": "object",
			"description": "Push DHCP Data",
			"required": [
				"serverName"
			],
			"properties": {
				"serverName": {
					"type": "string",
					"description": "Server name"
				},
				"dhcpV6": {
					"type": "boolean",
					"description": "The DHCP Server is a dhcp v6 server. Default value is false."
				},
				"force": {
					"type": "boolean",
					"description": "Force a generation to the DHCP Server. Default value is false."
				},
				"pushDHCPOptions": {
					"$ref": "#/definitions/DHCPGenerationOptions",
					"description": "Push properties"
				},
				"schedulerOptions": {
					"$ref": "#/definitions/SchedulerOptions",
					"description": "Scheduler properties"
				}
			},
			"example": {
				"serverName": "dhcp.example.com",
				"dhcpV6": false,
				"pushDHCPOptions": {
					"pushType": "DEBUG",
					"debugType": "SET_DEBUG_LEVEL",
					"debugLevelType": "LEVEL_INFO",
					"force": false
				},
				"schedulerOptions": {
					"runMode": "IN_BACKGROUND",
					"description": "Description",
					"sendEmail": "true",
					"toEmail": "to@example.com",
					"ccEmail": "cc@example.com"
				}
			}
		},
		"DHCPGenerationOptions": {
			"type": "object",
			"description": "Push Server properties",
			"properties": {
				"pushType": {
					"type": "string",
					"description": "Push type. Valid values: SERVER, PREVIEW and DEBUG. Default value is SERVER.",
					"default": "SERVER",
					"enum": [
						"SERVER",
						"PREVIEW",
						"DEBUG"
					]
				},
				"debugType": {
					"type": "string",
					"description": "Debug type. Valid values: SET_DEBUG_LEVEL, CLEAR_DEBUG_LOG and STOP_DEBUG_LOG. This field is required when push type is DEBUG and the default value is SET_DEBUG_LEVEL.",
					"enum": [
						"SET_DEBUG_LEVEL",
						"CLEAR_DEBUG_LOG",
						"STOP_DEBUG_LOG"
					]
				},
				"debugLevelType": {
					"type": "string",
					"description": "Debug level type. Valid values: LEVEL_CRITICAL, LEVEL_INFO, LEVEL_ERROR, LEVEL_DEBUG and LEVEL_WARNING. This field is required when SET_DEBUG_LEVEL and the default is LEVEL_CRITICAL.",
					"enum": [
						"LEVEL_CRITICAL",
						"LEVEL_INFO",
						"LEVEL_ERROR",
						"LEVEL_DEBUG",
						"LEVEL_WARNING"
					]
				},
				"force": {
					"type": "boolean",
					"description": "Force run push DHCP Server. Default value is false."
				}
			}
		},
		"ModifyScopeReq": {
			"type": "object",
			"properties": {
				"dhcpServer": {
					"type": "string",
					"description": "Specifies the fully-qualified DHCP server name to which you are assigning this scope."
				},
				"dhcpType": {
					"type": "string",
					"description": "Specifies a DHCP type. The options are A(automatic) or D(dynamic)."
				},
				"dhcpOptionTemplate": {
					"type": "string",
					"description": "Specifies the DHCP option template to be assigned to this scope."
				},
				"dhcpPolicyTemplate": {
					"type": "string",
					"description": "Specifies the DHCP Policy template to be assigned to this scope."
				},
				"vendorClass": {
					"type": "string",
					"description": "Specifies the vendor class to be assigned to this scope."
				},
				"leaseTime": {
					"type": "integer",
					"description": "Specifies the lease time to be assigned to this scope."
				},
				"userClassList": {
					"type": "array",
					"description": "Specifies user class list to be assigned to scope.",
					"items": {
						"type": "string"
					}
				},
				"clientClassList": {
					"type": "array",
					"description": "Specifies client class list to be assigned to scope.",
					"items": {
						"type": "string"
					}
				},
				"dhcpFingerprintList": {
					"type": "array",
					"description": "Specifies the DHCP fingerprint list to be assigned to this scope.",
					"items": {
						"type": "string"
					}
				}
			},
			"example": {
				"dhcpServer": "DHCPServer.com",
				"dhcpType": "D",
				"dhcpOptionTemplate": "general",
				"dhcpFingerprintList": [
					"F1",
					"F3"
				],
				"dhcpPolicyTemplate": "nokia.com",
				"vendorClass": "newVendorCLass"
			}
		},
		"DHCPScopeReq": {
			"type": "object",
			"required": [
				"subnetAddress",
				"dhcpType",
				"startAddress",
				"endAddress",
				"domnName",
				"dhcpServer",
				"dhcpTemplate"
			],
			"properties": {
				"subnetAddress": {
					"type": "string",
					"description": "Specifies the subnet whose IP address(es) is associated with this DHCP scope."
				},
				"startAddress": {
					"type": "string",
					"description": "Specifies the beginning  address that defines the DHCP scope of addresses."
				},
				"endAddress": {
					"type": "string",
					"description": "Specifies the ending  address that defines the DHCP scope of addresses."
				},
				"domnName": {
					"type": "string",
					"description": "Specifies the fully-qualified domain name."
				},
				"nameService": {
					"type": "string",
					"description": "Specifies â€œYâ€� or â€œNâ€� to register this object with the name service."
				},
				"dynamicUpdate": {
					"type": "string",
					"description": "Specifies â€œYâ€� or â€œNâ€� to turn on or off the dynamic update flags."
				},
				"dhcpServer": {
					"type": "string",
					"description": "Specifies the fully-qualified DHCP server name to which you are assigning this scope."
				},
				"dhcpTemplate": {
					"type": "string",
					"description": "Specifies the DHCP template to be assigned to this scope."
				},
				"dhcpType": {
					"type": "string",
					"description": "Specifies a DHCP type. The options are A(automatic) or D(dynamic)."
				},
				"objectClass": {
					"type": "string",
					"description": "Specifies the object class description."
				},
				"vendorClass": {
					"type": "string",
					"description": "Specifies the vendor class to be assigned to this scope."
				},
				"leaseTime": {
					"type": "string",
					"description": "Specifies the lease time to be assigned to this scope."
				},
				"userClass": {
					"type": "string",
					"description": "QDHCP servers only: Specifies user class to be assigned to scope."
				}
			},
			"example": {
				"subnetAddress": "192.168.1.0",
				"startAddress": "192.168.1.1",
				"endAddress": "192.168.1.2",
				"domnName": "nokia.com",
				"dhcpType": "D",
				"dynamicUpdate": "True",
				"dhcpServer": "dhcp.nokia.com",
				"dhcpTemplate": "general"
			}
		},
		"ExplicitBlockRequest": {
			"description": "ExplicitBlockArinNotification model",
			"required": [
				"startAddress",
				"prefixLength",
				"pool",
				"blockStatus",
				"addressType",
				"ruleName"
			],
			"properties": {
				"startAddress": {
					"type": "string",
					"description": "Start Address of Block"
				},
				"prefixLength": {
					"type": "integer",
					"description": "Require when blockStatus is not SITE"
				},
				"pool": {
					"$ref": "#/definitions/poolRest"
				},
				"blockStatus": {
					"type": "string",
					"description": "Use action value FREE | USED | RESERVED | SITE"
				},
				"addressType": {
					"type": "string",
					"description": "Use action value V4"
				},
				"subnetCreationOption": {
					"type": "string",
					"description": "Use action value CREATE NEW IF NECESSARY | CREATE NEW | LINK TO EXISTING | DO NOT CREATE OR LINK"
				},
				"addressTemplate": {
					"type": "string"
				},
				"subnetName": {
					"type": "string"
				},
				"subnetProfileTemplateName": {
					"type": "string"
				},
				"networkContact": {
					"type": "string"
				},
				"ruleName": {
					"type": "string",
					"description": "Require when blockStatus is SITE"
				},
				"useDefaultRuleSize": {
					"type": "boolean"
				},
				"arinReassignSimpleReportRec": {
					"$ref": "#/definitions/arinReassignSimpleReportRec"
				},
				"arinReallocateOrReassignDetailedRec": {
					"$ref": "#/definitions/arinReallocateOrReassignDetailedRec"
				}
			},
			"example": {
				"startAddress": "10.0.0.0",
				"prefixLength": 16,
				"pool": {
					"name": "childPool",
					"parentName": "parentPool"
				},
				"blockStatus": "FREE",
				"addressType": "V4",
				"subnetCreationOption": "CREATE NEW IF NECESSARY",
				"addressTemplate": "templateName",
				"subnetName": "subnetName",
				"subnetProfileTemplateName": "subnetProfileTemplate",
				"networkContact": "a@a.a",
				"useDefaultRuleSize": false,
				"arinReassignSimpleReportRec": {
					"registrationAction": "NEW",
					"originAs": "192.168.0.0",
					"privateValue": false,
					"customerName": "Customer Name",
					"customerAddress": "600 Mountain Avenue",
					"customerCity": "Murray Hill",
					"customerState": "NJ",
					"customerPostalCode": "07974",
					"customerCountryCode": "US",
					"publicComment": "This is a sample block via VitalQIP API",
					"customizedInfo": "customer info"
				}
			}
		},
		"arinReassignSimpleReportRec": {
			"type": "object",
			"required": [
				"registrationAction"
			],
			"properties": {
				"registrationAction": {
					"type": "string",
					"description": "Use action value NEW | MODIFY | REMOVE"
				},
				"originAs": {
					"type": "string"
				},
				"privateValue": {
					"type": "boolean"
				},
				"customerName": {
					"type": "string"
				},
				"customerAddress": {
					"type": "string"
				},
				"customerCity": {
					"type": "string"
				},
				"customerState": {
					"type": "string"
				},
				"customerPostalCode": {
					"type": "string"
				},
				"customerCountryCode": {
					"type": "string"
				},
				"publicComment": {
					"type": "string"
				},
				"customizedInfo": {
					"type": "string"
				}
			}
		},
		"arinReallocateOrReassignDetailedRec": {
			"type": "object",
			"required": [
				"arinType",
				"organizationInfo",
				"contactInfo",
				"networkContactInfo"
			],
			"properties": {
				"arinType": {
					"type": "string",
					"description": "Use type value ARIN-Reallocate | ARIN-Reassign-Detailed"
				},
				"organizationInfo": {
					"$ref": "#/definitions/OrganizationInformation"
				},
				"contactInfo": {
					"$ref": "#/definitions/ContactInformation"
				},
				"networkInfo": {
					"$ref": "#/definitions/NetworkInformation"
				},
				"networkContactInfo": {
					"$ref": "#/definitions/NetworkContactInformation"
				},
				"publicComment": {
					"type": "string"
				},
				"addInfo": {
					"type": "string"
				},
				"othersCustomizedInfo": {
					"type": "string"
				}
			},
			"example": {
				"arinType": "ARIN-Reallocate",
				"organizationInfo": {
					"orgName": "VitalQIP Organization",
					"orgAddress": "600 Mountain Avenue",
					"orgCity": "Murray Hill",
					"orgState": "NJ",
					"orgPostalCode": "07974",
					"orgCountryCode": "US",
					"orgCustomizedInfo": "Customer Info"
				},
				"contactInfo": {
					"orgPocContactType": "PERSON",
					"orgPocLastNameOrRoleAccount": "my org POC last name",
					"orgPocFirstName": "my org POC First Name",
					"orgPocCompanyName": "my company name",
					"orgPocAddress": "600 Mountain Avenue",
					"orgPocCity": "Murray Hill",
					"orgPocState": "NJ",
					"orgPocPostalCode": "7974",
					"orgPocCountryCode": "US",
					"orgPocPhoneNumber": "891-345-5678",
					"orgPocEmailAddress": "orgPOCEmail@mycompany.com",
					"orgPocCustomizedInfo": "Customer Info"
				},
				"networkInfo": {
					"originAS": "192.168.0.0",
					"dnsHostName": "dns@example.com",
					"networkCustomizedInfo": "Customer Info"
				},
				"networkContactInfo": {
					"netPocType": "T",
					"netPocContactType": "PERSON",
					"netPocLastNameOrRoleAccount": "net POC Last Name",
					"netPocFirstName": "net Contact First Name",
					"netPocCompanyName": "Company Name",
					"netPocAddress": "600 Mountain Avenue",
					"netPocCity": "Murray Hill",
					"netPocState": "NJ",
					"netPocPostalCode": "07974",
					"netPocCountryCode": "US",
					"netPocPhoneNumber": "891-234-4567",
					"netPocEmailAddress": "netContactEmail@mycompany.com",
					"netPocCustomizedInfo": "Customer Info"
				},
				"publicComment": "This is a sample block via VitalQIP API",
				"addInfo": "this is additional information",
				"othersCustomizedInfo": "Other Customized Info"
			}
		},
		"OrganizationInformation": {
			"type": "object",
			"required": [
				"orgName",
				"orgAddress",
				"orgCity",
				"orgCountryCode"
			],
			"properties": {
				"downStreamOrgID": {
					"type": "integer"
				},
				"orgName": {
					"type": "string"
				},
				"orgAddress": {
					"type": "string"
				},
				"orgCity": {
					"type": "string"
				},
				"orgState": {
					"type": "string"
				},
				"orgPostalCode": {
					"type": "string"
				},
				"orgCountryCode": {
					"type": "string"
				},
				"orgCustomizedInfo": {
					"type": "string"
				}
			}
		},
		"ContactInformation": {
			"type": "object",
			"required": [
				"orgPocContactType",
				"orgPocLastNameOrRoleAccount",
				"orgPocFirstName",
				"orgPocAddress",
				"orgPocCity",
				"orgPocCountryCode",
				"orgPocPhoneNumber",
				"orgPocEmailAddress"
			],
			"properties": {
				"orgPocHandle": {
					"type": "string"
				},
				"orgPocContactType": {
					"type": "string",
					"description": "Use type PERSON | ROLE"
				},
				"orgPocLastNameOrRoleAccount": {
					"type": "string"
				},
				"orgPocFirstName": {
					"type": "string"
				},
				"orgPocCompanyName": {
					"type": "string"
				},
				"orgPocAddress": {
					"type": "string"
				},
				"orgPocCity": {
					"type": "string"
				},
				"orgPocState": {
					"type": "string"
				},
				"orgPocPostalCode": {
					"type": "string"
				},
				"orgPocCountryCode": {
					"type": "string"
				},
				"orgPocPhoneNumber": {
					"type": "string"
				},
				"orgPocEmailAddress": {
					"type": "string"
				},
				"orgPocCustomizedInfo": {
					"type": "string"
				}
			}
		},
		"NetworkContactInformation": {
			"type": "object",
			"required": [
				"netPocContactType",
				"netPocLastNameOrRoleAccount",
				"netPocFirstName",
				"netPocAddress",
				"netPocCity",
				"netPocCountryCode",
				"netPocPhoneNumber",
				"netPocEmailAddress"
			],
			"properties": {
				"netPocType": {
					"type": "string",
					"description": "Use type T (Resource Technical Contact) \n AB (Resource Abuse Contact) \n N (Resource NOC Contact) \n T,AB(T and AB) | T,N (T and N) | AB,N (AB and N) | T,AB,N (T,AB and N)"
				},
				"netPocHandle": {
					"type": "string"
				},
				"netPocContactType": {
					"type": "string",
					"description": "Use type PERSON | ROLE"
				},
				"netPocLastNameOrRoleAccount": {
					"type": "string"
				},
				"netPocFirstName": {
					"type": "string"
				},
				"netPocCompanyName": {
					"type": "string"
				},
				"netPocAddress": {
					"type": "string"
				},
				"netPocCity": {
					"type": "string"
				},
				"netPocState": {
					"type": "string"
				},
				"netPocPostalCode": {
					"type": "string"
				},
				"netPocCountryCode": {
					"type": "string"
				},
				"netPocPhoneNumber": {
					"type": "string"
				},
				"netPocEmailAddress": {
					"type": "string"
				},
				"netPocCustomizedInfo": {
					"type": "string"
				}
			}
		},
		"NetworkInformation": {
			"type": "object",
			"properties": {
				"originAS": {
					"type": "string"
				},
				"dnsHostName": {
					"type": "string"
				},
				"networkCustomizedInfo": {
					"type": "string"
				}
			}
		},
		"RecoverBlockRequest": {
			"description": "Recover Arin Notification model",
			"required": [
				"block",
				"seedPoolName"
			],
			"properties": {
				"block": {
					"$ref": "#/definitions/block"
				},
				"seedPoolName": {
					"type": "string"
				},
				"arinReassignSimpleReportRec": {
					"$ref": "#/definitions/arinReassignSimpleReportRec"
				},
				"arinReallocateOrReassignDetailedRec": {
					"$ref": "#/definitions/arinReallocateOrReassignDetailedRec"
				}
			},
			"example": {
				"block": {
					"startAddress": "10.0.0.0",
					"prefixLength": 16,
					"addressType": "V4",
					"pool": {
						"name": "childPool",
						"parentName": "parentPool"
					},
					"blockStatus": "FREE"
				},
				"seedPoolName": "parentPool",
				"arinReassignSimpleReportRec": {
					"registrationAction": "NEW",
					"originAs": "192.168.0.0",
					"privateValue": false,
					"customerName": "Customer Name",
					"customerAddress": "600 Mountain Avenue",
					"customerCity": "Murray Hill",
					"customerState": "NJ",
					"customerPostalCode": "07974",
					"customerCountryCode": "US",
					"publicComment": "This is a sample block via VitalQIP API",
					"customizedInfo": "customer info"
				}
			}
		},
		"AllocateBlockRequest": {
			"description": "Allocate Block To Pool model",
			"required": [
				"pool",
				"addressType",
				"networkContact",
				"ruleName"
			],
			"properties": {
				"pool": {
					"$ref": "#/definitions/poolRest"
				},
				"addressType": {
					"type": "string",
					"description": "Use address type V4"
				},
				"networkContact": {
					"type": "string",
					"description": "Require if rule type is SITE or USED."
				},
				"requireSpecificBlock": {
					"type": "boolean",
					"description": "Request enter value for prefixLength, startAddress, blockStatus if requireSpecificBlock is set true."
				},
				"prefixLength": {
					"type": "integer"
				},
				"startAddress": {
					"type": "string"
				},
				"blockStatus": {
					"type": "string"
				},
				"ruleName": {
					"type": "string"
				},
				"arinReassignSimpleReportRec": {
					"$ref": "#/definitions/arinReassignSimpleReportRec"
				},
				"arinReallocateOrReassignDetailedRec": {
					"$ref": "#/definitions/arinReallocateOrReassignDetailedRec"
				}
			},
			"example": {
				"pool": {
					"name": "childPool",
					"parentName": "parentPool"
				},
				"addressType": "V4",
				"networkContact": "a@a.a",
				"requireSpecificBlock": false,
				"prefixLength": 8,
				"startAddress": "10.0.0.0",
				"blockStatus": "FREE",
				"ruleName": "rule",
				"arinReassignSimpleReportRec": {
					"registrationAction": "NEW",
					"originAs": "192.168.0.0",
					"privateValue": false,
					"customerName": "Customer Name",
					"customerAddress": "600 Mountain Avenue",
					"customerCity": "Murray Hill",
					"customerState": "NJ",
					"customerPostalCode": "07974",
					"customerCountryCode": "US",
					"publicComment": "This is a sample block via VitalQIP API",
					"customizedInfo": "customer info"
				}
			}
		},
		"QuickBlockAllocRequest": {
			"description": "Quick Block Allocate model",
			"required": [
				"pool",
				"networkContact",
				"ruleName",
				"seedPoolName"
			],
			"properties": {
				"pool": {
					"$ref": "#/definitions/poolRest"
				},
				"addressType": {
					"type": "string",
					"description": "Use address type V4"
				},
				"networkContact": {
					"type": "string",
					"description": "Require if rule type is SITE or USED."
				},
				"poolContact": {
					"type": "string",
					"description": "If child pool is not found, User need enter poolContact field to create new child pool"
				},
				"ruleName": {
					"type": "string"
				},
				"subnetName": {
					"type": "string"
				},
				"seedPoolName": {
					"type": "string"
				},
				"arinReassignSimpleReportRec": {
					"$ref": "#/definitions/arinReassignSimpleReportRec"
				},
				"arinReallocateOrReassignDetailedRec": {
					"$ref": "#/definitions/arinReallocateOrReassignDetailedRec"
				}
			},
			"example": {
				"pool": {
					"name": "childPool",
					"parentName": "parentPool"
				},
				"addressType": "V4",
				"networkContact": "a1@a.a",
				"poolContact": "a2@a.a",
				"ruleName": "rule",
				"subnetName": "subnet1",
				"seedPoolName": "parentPool",
				"arinReassignSimpleReportRec": {
					"registrationAction": "NEW",
					"originAs": "192.168.0.0",
					"privateValue": false,
					"customerName": "Customer Name",
					"customerAddress": "600 Mountain Avenue",
					"customerCity": "Murray Hill",
					"customerState": "NJ",
					"customerPostalCode": "07974",
					"customerCountryCode": "US",
					"publicComment": "This is a sample block via VitalQIP API",
					"customizedInfo": "customer info"
				}
			}
		},
		"poolRest": {
			"type": "object",
			"required": [
				"name",
				"parentName"
			],
			"properties": {
				"name": {
					"type": "string"
				},
				"parentName": {
					"type": "string"
				}
			}
		},
		"block": {
			"type": "object",
			"required": [
				"pool",
				"prefixLength",
				"startAddress"
			],
			"properties": {
				"startAddress": {
					"type": "string"
				},
				"prefixLength": {
					"type": "integer"
				},
				"addressType": {
					"type": "string"
				},
				"pool": {
					"$ref": "#/definitions/poolRest"
				},
				"blockStatus": {
					"type": "string"
				}
			}
		},
		"X509Certificate": {
			"type": "object",
			"properties": {
				"serialNumber": {
					"type": "string",
					"description": "Serial number of the certificate"
				},
				"version": {
					"type": "integer",
					"description": "Version of the certificate"
				},
				"issuerDN": {
					"type": "string",
					"description": "The issuer distinguished name"
				},
				"subjectDN": {
					"type": "string",
					"description": "The subject name"
				},
				"publicKey": {
					"type": "string",
					"description": "The public key from this certificate"
				},
				"sigAlgName": {
					"type": "string",
					"description": "The signature algorithm name"
				},
				"notBefore": {
					"type": "string",
					"description": "The start date of the validity period with following date format: yyyy-MM-dd HH:mm z"
				},
				"notAfter": {
					"type": "string",
					"description": "The end date of the validity period with following date format: yyyy-MM-dd HH:mm z"
				}
			}
		},
		"KeyPairCertificate": {
			"type": "object",
			"properties": {
				"privateKey": {
					"type": "string",
					"description": "The base-64 ENCODED Key"
				},
				"certificate": {
					"type": "string",
					"description": "The Self-Signed X.509 Certificate"
				}
			}
		},
		"CertificateInformation": {
			"type": "object",
			"required": [
				"commonName"
			],
			"properties": {
				"expirationDate": {
					"type": "string",
					"description": "The expiration date of certificate, support the following date formats: yyyy-MM-dd"
				},
				"commonName": {
					"type": "string",
					"description": " Common name of a person"
				},
				"organizationUnit": {
					"type": "string",
					"description": "Small organization name"
				},
				"organizationName": {
					"type": "string",
					"description": "Large organization name"
				},
				"localityName": {
					"type": "string",
					"description": "Locality (city) name"
				},
				"stateName": {
					"type": "string",
					"description": "State or province name"
				},
				"country": {
					"type": "string",
					"description": "Two-letter country code"
				}
			},
			"example": {
				"expirationDate": "2030-06-28",
				"commonName": "qipman",
				"organizationUnit": "Vital QIP",
				"organizationName": "NOKIA",
				"localityName": "San Francisco",
				"stateName": "California",
				"country": "US"
			}
		},
		"SamlIdpRec": {
			"type": "object",
			"description": "SAML Identity Provider",
			"required": [
				"name",
				"entityId",
				"singleSignOnUrl",
				"singleSignOnMethod",
				"signingCertificate"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "Name of the SAML Identity Provider. Allows letters, numbers and spaces. Leading and trailing white space will be removed before saving"
				},
				"newName": {
					"type": "string",
					"description": "New name of the SAML Identity Provider. Allows letters, numbers and spaces. Leading and trailing white space will be removed before saving"
				},
				"active": {
					"type": "boolean",
					"description": "Indicates whether the SAML Identity Provider is currently active"
				},
				"entityId": {
					"type": "string",
					"description": "EntityID field of the SAML Identity Provider"
				},
				"singleSignOnUrl": {
					"type": "string",
					"description": "URL that will be use for Single Sign On. Must be a valid URL"
				},
				"singleSignOnMethod": {
					"type": "string",
					"description": "The method that will be use for Single Sign On. \"POST\" or \"REDIRECT\""
				},
				"singleLogoutUrl": {
					"type": "string",
					"description": "URL that will be use for Single Logout. Must be a valid URL"
				},
				"singleLogoutMethod": {
					"type": "string",
					"description": "The method that will be use for Single Logout. \"POST\" or \"REDIRECT\""
				},
				"signingCertificate": {
					"type": "string",
					"description": "The base-64 ENCODED certificate will be used to sign SAML requests"
				},
				"useSigningForEncryption": {
					"type": "boolean",
					"description": "Indicate that the signing certificate will be use for encrypting SAML requests. If true the value of the signingCertificate will be used for encrypting certificates and the encryptionCertificate value should be left blank"
				},
				"encryptionCertificate": {
					"type": "boolean",
					"description": "The base-64 ENCODED certificate that will be used to encrypt SAML requests"
				},
				"lastUpdateDate": {
					"type": "string",
					"description": "The last time (YYYY-MM-DD hh:mm:ss.s) that SAML Identity Provider was updated. This field is maintained by the system and cannot be updated"
				}
			},
			"example": {
				"name": "ADFS QIP",
				"newName": "ADFS QIP1",
				"active": true,
				"entityId": "http://idp.example.com/adfs/services/trust",
				"singleSignOnUrl": "https://idp.example.com/adfs/ls",
				"singleSignOnMethod": "Redirect",
				"singleLogoutUrl": "https://idp.example.com/adfs/ls",
				"singleLogoutMethod": "POST",
				"signingCertificate": "MIIDRzCCAi+gAwIBAgIEBrAUNDANBgkqhkiG9w0BAQsFADBMQswCQYDVQQGEwJWTjENMAsGA1...",
				"useSigningForEncryption": false,
				"encryptionCertificate": "MIIDRzCCAi+gAwIBAgIEBrAUNDANBgkqhkiG9w0BAQsFADBMQswCQYDVQQGEwJWTjENMAsGA1...",
				"lastUpdateDate": "2017-03-28 11:25:27.656"
			}
		},
		"SamlIdpInfo": {
			"type": "object",
			"description": "SAML Identity Provider information summary",
			"required": [
				"name",
				"entityId"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "Name of the SAML Identity Provider. Allows letters, numbers and spaces"
				},
				"active": {
					"type": "boolean",
					"description": "Indicates whether the SAML Identity Provider is currently active"
				},
				"entityId": {
					"type": "string",
					"description": "EntityID field of the SAML Identity Provider"
				},
				"lastUpdateDate": {
					"type": "string",
					"description": "The last time (YYYY-MM-DD hh:mm:ss.s) that SAML Identity Provider was updated. This field is maintained by the system and cannot be updated"
				}
			},
			"example": {
				"name": "ADFS QIP",
				"active": true,
				"entityId": "http://idp.example.com/adfs/services/trust",
				"lastUpdateDate": "2017-03-28 11:25:27.656"
			}
		},
		"SamlConfigurationRec": {
			"type": "object",
			"description": "SAML Configuration",
			"required": [
				"samlIdpName",
				"assertionConsumerUrl",
				"privateEncryptionKey",
				"encryptionCertificate",
				"hashAlgorithm"
			],
			"properties": {
				"enable": {
					"type": "boolean",
					"description": "Enable/Disable the Login with SAML"
				},
				"samlIdpName": {
					"type": "string",
					"description": "Required. Name of the SAML Identity Provider that will be used for SAML Configuration"
				},
				"assertionConsumerUrl": {
					"type": "string",
					"description": "Required. The Assertion Consumer URL in Service Provider side (QIP side). This field is READ-ONLY, it's use to register QIP with the SAML Identity Provider"
				},
				"singleLogoutUrl": {
					"type": "string",
					"description": "Optional. URL at Service Provider side (QIP side) that will be used for Single Logout. This field is READ-ONLY, it's use to register QIP with the SAML Identity Provider."
				},
				"entityId": {
					"type": "string",
					"description": "The entity ID of Service Provider side (QIP side) that will be used to identify SAML node"
				},
				"privateEncryptionKey": {
					"type": "string",
					"description": "Required. The base-64 ENCODED Key in Service Provider side (QIP side) that will be used in encrypting SAML requests"
				},
				"encryptionCertificate": {
					"type": "string",
					"description": "Required. The base-64 ENCODED Certificate in Service Provider side (QIP side) that will be used in encrypting SAML requests"
				},
				"hashAlgorithm": {
					"type": "string",
					"description": "The cryptographic algorithm that computes the digest of the digital signatures in the SAML protocol messages. Either \"SHA-1\" or \"SHA-256\"."
				}
			},
			"example": {
				"enable": true,
				"samlIdpName": "ADFS QIP1",
				"assertionConsumerUrl": "https://vitalqip.example.com:743/saml/SSO",
				"singleLogoutUrl": "https://vitalqip.example.com:743/saml/SingleLogout",
				"entityId": "https://vitalqip.example.com:743/saml/metadata",
				"privateEncryptionKey": "MIIDRzCCAi+gAwIBAgIEBrAUNDANBgkqhkiG9w0BAQsFADBMQswCQYDVQQGEwJWTjENMAsGA1...",
				"encryptionCertificate": "MIIDRzCCAi+gAwIBAgIEBrAUNDANBgkqhkiG9w0BAQsFADBMQswCQYDVQQGEwJWTjENMAsGA1...",
				"hashAlgorithm": "SHA256"
			}
		},
		"SamlRunningConfigurationRec": {
			"type": "object",
			"description": "SAML Configuration",
			"required": [
				"samlIdpName",
				"privateEncryptionKey",
				"encryptionCertificate",
				"hashAlgorithm"
			],
			"properties": {
				"enable": {
					"type": "boolean",
					"description": "Indicate the SSO with SAML is enable/disable"
				},
				"samlIdpName": {
					"type": "string",
					"description": "Name of the SAML Identity Provider that is used for SAML Configuration"
				},
				"samlIdp": {
					"type": "object",
					"$ref": "../infrastructures/saml-identity-provider.json#/definitions/SamlIdpRec",
					"description": "The SAML Identity Provider profile"
				},
				"assertionConsumerUrl": {
					"type": "string",
					"description": "The Assertion Consumer URL in Service Provider side (QIP side). This field is READ-ONLY, it's use to register QIP with the SAML Identity Provider"
				},
				"singleLogoutUrl": {
					"type": "string",
					"description": "URL at Service Provider side (QIP side) that will be used for Single Logout. This field is READ-ONLY, it's use to register QIP with the SAML Identity Provider."
				},
				"entityId": {
					"type": "string",
					"description": "The entity ID of Service Provider side (QIP side) that will be used to identify SAML node"
				},
				"privateEncryptionKey": {
					"type": "string",
					"description": "The base-64 ENCODED Key in Service Provider side (QIP side) that will be used in encrypting SAML requests"
				},
				"encryptionCertificate": {
					"type": "string",
					"description": "The base-64 ENCODED Certificate in Service Provider side (QIP side) that will be used in encrypting SAML requests"
				},
				"hashAlgorithm": {
					"type": "string",
					"description": "The cryptographic algorithm that computes the digest of the digital signatures in the SAML protocol messages. Either \"SHA-1\" or \"SHA-256\"."
				},
				"nextReloadTime": {
					"type": "string",
					"description": "The next reload time of SAML configuration"
				}
			},
			"example": {
				"enable": true,
				"samlIdpName": "ADFS QIP1",
				"samlIdp": {
					"name": "ADFS QIP",
					"newName": "ADFS QIP1",
					"active": true,
					"entityId": "https://idp.example.com/adfs/services/trust",
					"singleSignOnUrl": "https://idp.example.com/adfs/ls",
					"singleSignOnMethod": "Redirect",
					"singleLogoutUrl": "https://idp.example.com/adfs/ls",
					"singleLogoutMethod": "POST",
					"signingCertificate": "MIIDRzCCAi+gAwIBAgIEBrAUNDANBgkqhkiG9w0BAQsFADBMQswCQYDVQQGEwJWTjENMAsGA1...",
					"useSigningForEncryption": false,
					"encryptionCertificate": "MIIDRzCCAi+gAwIBAgIEBrAUNDANBgkqhkiG9w0BAQsFADBMQswCQYDVQQGEwJWTjENMAsGA1...",
					"lastUpdateDate": "2017-03-28 11:25:27.656"
				},
				"assertionConsumerUrl": "https://vitalqip.example.com/saml/asert",
				"singleLogoutUrl": "https://idp.example.com/saml/logout",
				"entityId": "https://idp.example.com/saml/metadata",
				"privateEncryptionKey": "MIIDRzCCAi+gAwIBAgIEBrAUNDANBgkqhkiG9w0BAQsFADBMQswCQYDVQQGEwJWTjENMAsGA1...",
				"encryptionCertificate": "MIIDRzCCAi+gAwIBAgIEBrAUNDANBgkqhkiG9w0BAQsFADBMQswCQYDVQQGEwJWTjENMAsGA1...",
				"hashAlgorithm": "SHA256",
				"nextReloadTime": "2017-06-20 09:16 ICT"
			}
		},
		"QipSearchResponse": {
			"type": "object",
			"properties": {
				"name": {
					"type": "string",
					"description": "Name of SubnetOrg, Domain, Network, Object, Router Group, Resource Record, V6Address, V6Block, V6Subnet, V6Range, V6Pool, All"
				},
				"address": {
					"type": "string",
					"description": "Address of Network, Object, Mac Address, V6Address, V6Block, V6Subnet, V6Range, V6Pool, All"
				},
				"type": {
					"type": "string",
					"description": "Infrastructure Type. One of following values:\n\n'All',\n'SubnetOrg',\n'Domain',\n'Network',\n 'Object',\n'Router Group',\n'Mac Address',\n'Resource Record',\n'V6Address',\n'V6Block',\n'V6Subnet',\n'V6Range',\n'V6Pool'"
				},
				"rr": {
					"$ref": "#/definitions/RRResponse"
				}
			}
		},
		"RRResponse": {
			"type": "object",
			"properties": {
				"name": {
					"type": "string",
					"description": "Name of Resource Record"
				},
				"recordType": {
					"type": "string",
					"description": "Resource Record Types"
				},
				"data": {
					"type": "string",
					"description": "Data"
				}
			}
		},
		"ManagedTsigKeyEntity": {
			"type": "object",
			"properties": {
				"key": {
					"type": "string",
					"description": "Name of the TSIG key."
				},
				"keyCreationDate": {
					"type": "number",
					"description": "The date (in Unix epoch milliseconds) when the key is created."
				},
				"keyState": {
					"type": "string",
					"description": "Active: This key is in use. Pending: This key needs to be published before use. Waiting: Waiting for qip-genddnsconfs to complete."
				},
				"server": {
					"type": "string",
					"description": "Name of the DNS server."
				},
				"publicationDate": {
					"type": "number",
					"description": "The date (in Unix epoch milliseconds) when the key is pushed successfully to the server."
				},
				"publicationRequired": {
					"type": "boolean",
					"description": "Is it necessary to publish a key to this server before the key can become Active."
				}
			},
			"example": {
				"key": "vitalqip-1-1",
				"keyCreationDate": 1496647905567,
				"keyState": "Active",
				"server": "example.com",
				"publicationDate": 1496721269305,
				"publicationRequired": true
			}
		},
		"ManagedTsigKeyRolloverRequest": {
			"type": "object",
			"required": [
				"keyAlgorithm",
				"keyLength"
			],
			"properties": {
				"keyAlgorithm": {
					"type": "string",
					"description": "Algorithm for creating new managed TSIG key. It must be one of the following values: HMAC-MD5, HMAC-SHA1, HMAC-SHA224, HMAC-SHA256, HMAC-SHA384, HMAC-SHA512."
				},
				"keyLength": {
					"type": "number",
					"description": "Length for creating new managed TSIG key. It must adhere to the selected algorithm."
				}
			},
			"example": {
				"keyAlgorithm": "HMAC-MD5",
				"keyLength": 512
			}
		},
		"Admin": {
			"type": "object",
			"required": [
				"loginName",
				"adminType",
				"authenticationType",
				"globalPrivileges"
			],
			"properties": {
				"loginName": {
					"type": "string",
					"description": "Login name"
				},
				"adminType": {
					"type": "string",
					"description": "Administrator Type: Master or Normal"
				},
				"authenticationType": {
					"type": "string",
					"description": "Authentication Type. One of following values: \n\n'Password',</br>'Certificate',</br>'SAML Managed',</br>'SAML Authenticated'"
				},
				"adminStatus": {
					"type": "string",
					"description": "Admin Status. One of following values: \n\n'Disabled',</br>'Enabled'"
				},
				"contact": {
					"type": "object",
					"description": "Person Profile",
					"properties": {
						"lastName": {
							"type": "string",
							"description": "Last Name"
						},
						"firstName": {
							"type": "string",
							"description": "First Name"
						},
						"email": {
							"type": "string",
							"description": "Email"
						},
						"phone": {
							"type": "string",
							"description": "Phone Number"
						},
						"mobile": {
							"type": "string",
							"description": "Mobile Number"
						}
					}
				},
				"location": {
					"type": "object",
					"description": "Location",
					"properties": {
						"street1": {
							"type": "string",
							"description": "Street1"
						},
						"street2": {
							"type": "string",
							"description": "Street2"
						},
						"city": {
							"type": "string",
							"description": "City"
						},
						"state": {
							"type": "string",
							"description": "State"
						},
						"zip": {
							"type": "string",
							"description": "Zip"
						},
						"country": {
							"type": "string",
							"description": "Country"
						}
					}
				},
				"businessUnitID": {
					"type": "string",
					"description": "Business Unit ID"
				},
				"defaultPrinter": {
					"type": "string",
					"description": "Default Printer ID"
				},
				"assignedOrganizations": {
					"type": "array",
					"description": "The Organizations to be assigned with Normal Administrator",
					"items": {
						"$ref": "#/definitions/AssignedOrganizationData"
					}
				},
				"globalPrivileges": {
					"type": "array",
					"description": "The Global Privileges to be created with Administrator",
					"items": {
						"$ref": "#/definitions/PrivilegeData"
					}
				},
				"organizationPrivilegesDefault": {
					"type": "array",
					"description": "The Default Organization Privileges to be created with Normal Administrator",
					"items": {
						"$ref": "#/definitions/PrivilegeData"
					}
				}
			},
			"example": {
				"loginName": "qipman",
				"adminType": "qipman",
				"authenticationType": "Password",
				"adminStatus": "Enabled",
				"contact": {
					"lastName": "qipman",
					"firstName": "qipman",
					"email": "abc@abc.com",
					"phone": "0123456789",
					"mobile": "0987654321"
				},
				"location": {
					"street1": "abc",
					"street2": "abc",
					"city": "abc",
					"state": "abc",
					"zip": "123456",
					"country": "abc"
				},
				"businessUnitID": "123456",
				"defaultPrinter": "abc",
				"assignedOrganizations": [
					{
						"orgName": "OrgTest1",
						"managedType": "Normal",
						"accessPermission": "Write",
						"useDefaultOrgPrivileges": "False",
						"organizationPrivileges": [
							{
								"privilegeName": "Access DNS Group",
								"value": "False"
							},
							{
								"privilegeName": "Access Infrastructure Import",
								"value": "False"
							},
							{
								"privilegeName": "Access Node Management",
								"value": "False"
							},
							{
								"privilegeName": "Access V6 Address Management",
								"value": "False"
							},
							{
								"privilegeName": "Access VisualIP Space Only",
								"value": "False"
							},
							{
								"privilegeName": "Allow Dynamic MDHCP Update Without DHCP Server Permission",
								"value": "True"
							},
							{
								"privilegeName": "Appliance Admin",
								"value": "False"
							},
							{
								"privilegeName": "Highest Level GUI Mode",
								"value": "Basic Mode"
							},
							{
								"privilegeName": "Access Address Allocation",
								"value": "False"
							},
							{
								"privilegeName": "Allow User Selection",
								"value": "False"
							},
							{
								"privilegeName": "Display MyView Tab Only",
								"value": "False"
							},
							{
								"privilegeName": "Require Alias",
								"value": "False"
							},
							{
								"privilegeName": "Require Contact Name",
								"value": "False"
							},
							{
								"privilegeName": "Require Location",
								"value": "False"
							},
							{
								"privilegeName": "Require MAC Address",
								"value": "False"
							},
							{
								"privilegeName": "Restrict CNAME",
								"value": "False"
							},
							{
								"privilegeName": "Restrict Subnet",
								"value": "False"
							},
							{
								"privilegeName": "Unique Name Warning",
								"value": "True"
							}
						]
					},
					{
						"orgName": "VitalQIP Organization",
						"managedType": "Organization",
						"accessPermission": "Read",
						"useDefaultOrgPrivileges": "True"
					}
				],
				"globalPrivileges": [
					{
						"privilegeName": "Allow Recursive Deletes",
						"value": "Temporary",
						"subPrivileges": [
							{
								"privilegeName": "Expiration",
								"value": "03/13/2020 12:00"
							}
						]
					},
					{
						"privilegeName": "Default Object Class",
						"value": "3G Phone"
					},
					{
						"privilegeName": "Allow AC Management",
						"value": "False"
					},
					{
						"privilegeName": "Allow Password Expiration",
						"value": "True"
					},
					{
						"privilegeName": "Create/Update Administrator",
						"value": "False"
					},
					{
						"privilegeName": "IPv4 subnet default view style",
						"value": "Table"
					},
					{
						"privilegeName": "Zone default view style",
						"value": "Table"
					},
					{
						"privilegeName": "IPv4 network default view style",
						"value": "Table"
					}
				],
				"organizationPrivilegesDefault": [
					{
						"privilegeName": "Access DNS Group",
						"value": "True",
						"subPrivileges": [
							{
								"privilegeName": "Manage DNS Group",
								"value": "True"
							},
							{
								"privilegeName": "Generate DNS Group",
								"value": "True"
							}
						]
					},
					{
						"privilegeName": "Access Infrastructure Import",
						"value": "True",
						"subPrivileges": [
							{
								"privilegeName": "Import IPv4 Networks",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv4 Subnets",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv4 Objects",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv6 Pools",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv6 Blocks",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv6 Subnets",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv6 Ranges",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv6 Addresses",
								"value": "False"
							},
							{
								"privilegeName": "Import DNS Domains",
								"value": "False"
							},
							{
								"privilegeName": "Import DNS Records",
								"value": "False"
							},
							{
								"privilegeName": "Import Subnet Organizations",
								"value": "False"
							},
							{
								"privilegeName": "Import Nodes",
								"value": "False"
							},
							{
								"privilegeName": "Import MAC Pools",
								"value": "False"
							}
						]
					},
					{
						"privilegeName": "Access Address Allocation",
						"value": "True",
						"subPrivileges": [
							{
								"privilegeName": "Maintain Blocks",
								"value": "True",
								"subPrivileges": [
									{
										"privilegeName": "Expand Blocks",
										"value": "False"
									},
									{
										"privilegeName": "Renumber Blocks",
										"value": "False"
									},
									{
										"privilegeName": "Split/Merge Blocks",
										"value": "False"
									},
									{
										"privilegeName": "Allocate Blocks",
										"value": "True",
										"subPrivileges": [
											{
												"privilegeName": "Rule Level",
												"value": "Normal"
											}
										]
									},
									{
										"privilegeName": "Explicitly Create Blocks",
										"value": "False"
									},
									{
										"privilegeName": "Free Blocks",
										"value": "False"
									},
									{
										"privilegeName": "Move Blocks",
										"value": "False"
									}
								]
							},
							{
								"privilegeName": "Maintain Pools",
								"value": "False"
							},
							{
								"privilegeName": "Maintain Seed Pool",
								"value": "False"
							},
							{
								"privilegeName": "Rule Override",
								"value": "False"
							},
							{
								"privilegeName": "Write New Infrastructure to Managed List",
								"value": "True"
							}
						]
					},
					{
						"privilegeName": "Access Node Management",
						"value": "False"
					},
					{
						"privilegeName": "Access V6 Address Management",
						"value": "False"
					},
					{
						"privilegeName": "Access VisualIP Space Only",
						"value": "False"
					},
					{
						"privilegeName": "Allow Dynamic MDHCP Update Without DHCP Server Permission",
						"value": "True"
					},
					{
						"privilegeName": "Appliance Admin",
						"value": "False"
					},
					{
						"privilegeName": "Highest Level GUI Mode",
						"value": "Advanced Mode",
						"subPrivileges": [
							{
								"privilegeName": "Create Infrastructure",
								"value": "True",
								"subPrivileges": [
									{
										"privilegeName": "Dynamic Domain Creation",
										"value": "False"
									}
								]
							},
							{
								"privilegeName": "Create Resource Records",
								"value": "False"
							}
						]
					},
					{
						"privilegeName": "Allow User Selection",
						"value": "False"
					},
					{
						"privilegeName": "Display MyView Tab Only",
						"value": "False"
					},
					{
						"privilegeName": "Require Alias",
						"value": "False"
					},
					{
						"privilegeName": "Require Contact Name",
						"value": "False"
					},
					{
						"privilegeName": "Require Location",
						"value": "False"
					},
					{
						"privilegeName": "Require MAC Address",
						"value": "False"
					},
					{
						"privilegeName": "Restrict CNAME",
						"value": "False"
					},
					{
						"privilegeName": "Restrict Subnet",
						"value": "False"
					},
					{
						"privilegeName": "Unique Name Warning",
						"value": "True"
					}
				]
			}
		},
		"AssignedOrganizationData": {
			"type": "object",
			"properties": {
				"orgName": {
					"type": "string",
					"description": "Organization Name"
				},
				"managedType": {
					"type": "string",
					"description": "Managed Type"
				},
				"accessPermission": {
					"type": "string",
					"description": "Access Permisstion"
				},
				"useDefaultOrgPrivileges": {
					"type": "string",
					"description": "Use default organization privileges."
				},
				"organizationPrivileges": {
					"type": "array",
					"description": "The Organization Privileges",
					"items": {
						"$ref": "#/definitions/PrivilegeData"
					}
				}
			}
		},
		"PrivilegeData": {
			"type": "object",
			"properties": {
				"privilegeName": {
					"type": "string",
					"description": "Privilege Name"
				},
				"value": {
					"type": "string",
					"description": "Privilege Value"
				}
			}
		},
		"SearchAdmin": {
			"type": "object",
			"description": "Search admin result",
			"properties": {
				"loginName": {
					"type": "string",
					"description": "Login name"
				},
				"adminType": {
					"type": "string",
					"description": "Administrator Type: Master or Normal"
				},
				"authenticationType": {
					"type": "string",
					"description": "Authentication Type. One of following values: \n\n'Password',</br>'Certificate',</br>'SAML Managed',</br>'SAML Authenticated'"
				},
				"adminStatus": {
					"type": "string",
					"description": "Admin Status. One of following values: \n\n'Disabled',</br>'Enabled'"
				},
				"assignedOrganizations": {
					"type": "array",
					"description": "The Organizations to be assigned with Normal Administrator",
					"items": {
						"$ref": "#/definitions/AssignedOrganizationData"
					}
				}
			},
			"example": {
				"list": [
					{
						"loginName": "Master1",
						"adminType": "Master",
						"authenticationType": "Password",
						"adminStatus": "Enabled"
					},
					{
						"loginName": "Normal1",
						"adminType": "Normal",
						"authenticationType": "Password",
						"adminStatus": "Enabled",
						"assignedOrganizations": [
							{
								"orgName": "OrgTest1",
								"managedType": "Normal",
								"accessPermission": "Write"
							},
							{
								"orgName": "VitalQIP Organization",
								"managedType": "Organization",
								"accessPermission": "Read"
							}
						]
					}
				]
			}
		},
		"modifyAdminRestModel": {
			"type": "object",
			"description": "Admin model",
			"xml": {
				"name": "AdminRestModel"
			},
			"properties": {
				"authenticationType": {
					"type": "string",
					"description": "Authentication Type. One of following values: \n\n'Password',</br>'Certificate',</br>'SAML Managed',</br>'SAML Authenticated'"
				},
				"adminStatus": {
					"type": "string",
					"description": "Admin Status. One of following values: \n\n'Disabled',</br>'Enabled'"
				},
				"contact": {
					"type": "object",
					"description": "Person Profile",
					"properties": {
						"lastName": {
							"type": "string",
							"description": "Last Name"
						},
						"firstName": {
							"type": "string",
							"description": "First Name"
						}
					}
				},
				"location": {
					"type": "object",
					"description": "Location",
					"properties": {
						"street1": {
							"type": "string",
							"description": "Street1"
						},
						"street2": {
							"type": "string",
							"description": "Street2"
						},
						"city": {
							"type": "string",
							"description": "City"
						},
						"state": {
							"type": "string",
							"description": "State"
						},
						"zip": {
							"type": "string",
							"description": "Zip"
						},
						"country": {
							"type": "string",
							"description": "Country"
						}
					}
				},
				"businessUnitID": {
					"type": "string",
					"description": "Business Unit ID"
				},
				"defaultPrinter": {
					"type": "string",
					"description": "Default Printer ID"
				},
				"assignedOrganizations": {
					"type": "array",
					"description": "The Organizations to be assigned with Normal Administrator",
					"items": {
						"$ref": "#/definitions/AssignedOrganizationData"
					}
				},
				"globalPrivileges": {
					"type": "array",
					"description": "The Global Privileges to be created with Administrator",
					"items": {
						"$ref": "#/definitions/PrivilegeData"
					}
				},
				"organizationPrivilegesDefault": {
					"type": "array",
					"description": "The Organization Privileges to be created with Normal Administrator",
					"items": {
						"$ref": "#/definitions/PrivilegeData"
					}
				}
			},
			"example": {
				"authenticationType": "Password",
				"adminStatus": "Enabled",
				"contact": {
					"lastName": "qipman",
					"firstName": "qipman"
				},
				"location": {
					"street1": "abc",
					"street2": "abc",
					"city": "abc",
					"state": "abc",
					"zip": "123456",
					"country": "abc"
				},
				"businessUnitID": "123456",
				"defaultPrinter": "abc",
				"assignedOrganizations": [
					{
						"orgName": "OrgTest1",
						"managedType": "Normal",
						"accessPermission": "Write",
						"useDefaultOrgPrivileges": "False",
						"organizationPrivileges": [
							{
								"privilegeName": "Access DNS Group",
								"value": "False"
							},
							{
								"privilegeName": "Access Infrastructure Import",
								"value": "False"
							},
							{
								"privilegeName": "Access Node Management",
								"value": "False"
							},
							{
								"privilegeName": "Access V6 Address Management",
								"value": "False"
							},
							{
								"privilegeName": "Access VisualIP Space Only",
								"value": "False"
							},
							{
								"privilegeName": "Allow Dynamic MDHCP Update Without DHCP Server Permission",
								"value": "True"
							},
							{
								"privilegeName": "Appliance Admin",
								"value": "False"
							},
							{
								"privilegeName": "Highest Level GUI Mode",
								"value": "Basic Mode"
							},
							{
								"privilegeName": "Access Address Allocation",
								"value": "False"
							},
							{
								"privilegeName": "Allow User Selection",
								"value": "False"
							},
							{
								"privilegeName": "Display MyView Tab Only",
								"value": "False"
							},
							{
								"privilegeName": "Require Alias",
								"value": "False"
							},
							{
								"privilegeName": "Require Contact Name",
								"value": "False"
							},
							{
								"privilegeName": "Require Location",
								"value": "False"
							},
							{
								"privilegeName": "Require MAC Address",
								"value": "False"
							},
							{
								"privilegeName": "Restrict CNAME",
								"value": "False"
							},
							{
								"privilegeName": "Restrict Subnet",
								"value": "False"
							},
							{
								"privilegeName": "Unique Name Warning",
								"value": "True"
							}
						]
					},
					{
						"orgName": "VitalQIP Organization",
						"managedType": "Organization",
						"accessPermission": "Read",
						"useDefaultOrgPrivileges": "True"
					}
				],
				"globalPrivileges": [
					{
						"privilegeName": "Allow Recursive Deletes",
						"value": "Temporary",
						"subPrivileges": [
							{
								"privilegeName": "Expiration",
								"value": "03/13/2020 12:00"
							}
						]
					},
					{
						"privilegeName": "Default Object Class",
						"value": "3G Phone"
					},
					{
						"privilegeName": "Allow AC Management",
						"value": "False"
					},
					{
						"privilegeName": "Allow Password Expiration",
						"value": "True"
					},
					{
						"privilegeName": "Create/Update Administrator",
						"value": "False"
					},
					{
						"privilegeName": "IPv4 subnet default view style",
						"value": "Table"
					},
					{
						"privilegeName": "Zone default view style",
						"value": "Table"
					},
					{
						"privilegeName": "IPv4 network default view style",
						"value": "Table"
					}
				],
				"organizationPrivilegesDefault": [
					{
						"privilegeName": "Access DNS Group",
						"value": "True",
						"subPrivileges": [
							{
								"privilegeName": "Manage DNS Group",
								"value": "True"
							},
							{
								"privilegeName": "Generate DNS Group",
								"value": "True"
							}
						]
					},
					{
						"privilegeName": "Access Infrastructure Import",
						"value": "True",
						"subPrivileges": [
							{
								"privilegeName": "Import IPv4 Networks",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv4 Subnets",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv4 Objects",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv6 Pools",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv6 Blocks",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv6 Subnets",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv6 Ranges",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv6 Addresses",
								"value": "False"
							},
							{
								"privilegeName": "Import DNS Domains",
								"value": "False"
							},
							{
								"privilegeName": "Import DNS Records",
								"value": "False"
							},
							{
								"privilegeName": "Import Subnet Organizations",
								"value": "False"
							},
							{
								"privilegeName": "Import Nodes",
								"value": "False"
							},
							{
								"privilegeName": "Import MAC Pools",
								"value": "False"
							}
						]
					},
					{
						"privilegeName": "Access Address Allocation",
						"value": "True",
						"subPrivileges": [
							{
								"privilegeName": "Maintain Blocks",
								"value": "True",
								"subPrivileges": [
									{
										"privilegeName": "Expand Blocks",
										"value": "False"
									},
									{
										"privilegeName": "Renumber Blocks",
										"value": "False"
									},
									{
										"privilegeName": "Split/Merge Blocks",
										"value": "False"
									},
									{
										"privilegeName": "Allocate Blocks",
										"value": "True",
										"subPrivileges": [
											{
												"privilegeName": "Rule Level",
												"value": "Normal"
											}
										]
									},
									{
										"privilegeName": "Explicitly Create Blocks",
										"value": "False"
									},
									{
										"privilegeName": "Free Blocks",
										"value": "False"
									},
									{
										"privilegeName": "Move Blocks",
										"value": "False"
									}
								]
							},
							{
								"privilegeName": "Maintain Pools",
								"value": "False"
							},
							{
								"privilegeName": "Maintain Seed Pool",
								"value": "False"
							},
							{
								"privilegeName": "Rule Override",
								"value": "False"
							},
							{
								"privilegeName": "Write New Infrastructure to Managed List",
								"value": "True"
							}
						]
					},
					{
						"privilegeName": "Access Node Management",
						"value": "False"
					},
					{
						"privilegeName": "Access V6 Address Management",
						"value": "False"
					},
					{
						"privilegeName": "Access VisualIP Space Only",
						"value": "False"
					},
					{
						"privilegeName": "Allow Dynamic MDHCP Update Without DHCP Server Permission",
						"value": "True"
					},
					{
						"privilegeName": "Appliance Admin",
						"value": "False"
					},
					{
						"privilegeName": "Highest Level GUI Mode",
						"value": "Advanced Mode",
						"subPrivileges": [
							{
								"privilegeName": "Create Infrastructure",
								"value": "True",
								"subPrivileges": [
									{
										"privilegeName": "Dynamic Domain Creation",
										"value": "False"
									}
								]
							},
							{
								"privilegeName": "Create Resource Records",
								"value": "False"
							}
						]
					},
					{
						"privilegeName": "Allow User Selection",
						"value": "False"
					},
					{
						"privilegeName": "Display MyView Tab Only",
						"value": "False"
					},
					{
						"privilegeName": "Require Alias",
						"value": "False"
					},
					{
						"privilegeName": "Require Contact Name",
						"value": "False"
					},
					{
						"privilegeName": "Require Location",
						"value": "False"
					},
					{
						"privilegeName": "Require MAC Address",
						"value": "False"
					},
					{
						"privilegeName": "Restrict CNAME",
						"value": "False"
					},
					{
						"privilegeName": "Restrict Subnet",
						"value": "False"
					},
					{
						"privilegeName": "Unique Name Warning",
						"value": "True"
					}
				]
			}
		},
		"AdminRestModel": {
			"type": "object",
			"description": "Admin model",
			"required": [
				"loginName",
				"password",
				"adminType",
				"authenticationType",
				"globalPrivileges"
			],
			"properties": {
				"loginName": {
					"type": "string",
					"description": "Login name"
				},
				"password": {
					"type": "string",
					"description": "Password"
				},
				"adminType": {
					"type": "string",
					"description": "Administrator Type: Master or Normal"
				},
				"authenticationType": {
					"type": "string",
					"description": "Authentication Type. One of following values: \n\n'Password',</br>'Certificate',</br>'SAML Managed',</br>'SAML Authenticated'"
				},
				"contact": {
					"type": "object",
					"description": "Person Profile",
					"properties": {
						"lastName": {
							"type": "string",
							"description": "Last Name"
						},
						"firstName": {
							"type": "string",
							"description": "First Name"
						}
					}
				},
				"location": {
					"type": "object",
					"description": "Location",
					"properties": {
						"street1": {
							"type": "string",
							"description": "Street1"
						},
						"street2": {
							"type": "string",
							"description": "Street2"
						},
						"city": {
							"type": "string",
							"description": "City"
						},
						"state": {
							"type": "string",
							"description": "State"
						},
						"zip": {
							"type": "string",
							"description": "Zip"
						},
						"country": {
							"type": "string",
							"description": "Country"
						}
					}
				},
				"businessUnitID": {
					"type": "string",
					"description": "Business Unit ID"
				},
				"defaultPrinter": {
					"type": "string",
					"description": "Default Printer ID"
				},
				"assignedOrganizations": {
					"type": "array",
					"description": "The Organizations to be assigned with Normal Administrator",
					"items": {
						"$ref": "#/definitions/AssignedOrganizationData"
					}
				},
				"globalPrivileges": {
					"type": "array",
					"description": "The Global Privileges to be created with Administrator",
					"items": {
						"$ref": "#/definitions/PrivilegeData"
					}
				},
				"organizationPrivilegesDefault": {
					"type": "array",
					"description": "The Organization Privileges to be created with Normal Administrator",
					"items": {
						"$ref": "#/definitions/PrivilegeData"
					}
				}
			},
			"example": {
				"loginName": "Example",
				"password": "123456",
				"adminType": "Master",
				"authenticationType": "Password",
				"contact": {
					"lastName": "qipman",
					"firstName": "qipman"
				},
				"location": {
					"street1": "abc",
					"street2": "abc",
					"city": "abc",
					"state": "abc",
					"zip": "123456",
					"country": "abc"
				},
				"businessUnitID": "123456",
				"defaultPrinter": "abc",
				"assignedOrganizations": [
					{
						"orgName": "OrgTest1",
						"managedType": "Normal",
						"accessPermission": "Write",
						"useDefaultOrgPrivileges": "False",
						"organizationPrivileges": [
							{
								"privilegeName": "Access DNS Group",
								"value": "False"
							},
							{
								"privilegeName": "Access Infrastructure Import",
								"value": "False"
							},
							{
								"privilegeName": "Access Node Management",
								"value": "False"
							},
							{
								"privilegeName": "Access V6 Address Management",
								"value": "False"
							},
							{
								"privilegeName": "Access VisualIP Space Only",
								"value": "False"
							},
							{
								"privilegeName": "Allow Dynamic MDHCP Update Without DHCP Server Permission",
								"value": "True"
							},
							{
								"privilegeName": "Appliance Admin",
								"value": "False"
							},
							{
								"privilegeName": "Highest Level GUI Mode",
								"value": "Basic Mode"
							},
							{
								"privilegeName": "Access Address Allocation",
								"value": "False"
							},
							{
								"privilegeName": "Allow User Selection",
								"value": "False"
							},
							{
								"privilegeName": "Display MyView Tab Only",
								"value": "False"
							},
							{
								"privilegeName": "Require Alias",
								"value": "False"
							},
							{
								"privilegeName": "Require Contact Name",
								"value": "False"
							},
							{
								"privilegeName": "Require Location",
								"value": "False"
							},
							{
								"privilegeName": "Require MAC Address",
								"value": "False"
							},
							{
								"privilegeName": "Restrict CNAME",
								"value": "False"
							},
							{
								"privilegeName": "Restrict Subnet",
								"value": "False"
							},
							{
								"privilegeName": "Unique Name Warning",
								"value": "True"
							}
						]
					},
					{
						"orgName": "VitalQIP Organization",
						"managedType": "Organization",
						"accessPermission": "Read",
						"useDefaultOrgPrivileges": "True"
					}
				],
				"globalPrivileges": [
					{
						"privilegeName": "Allow Recursive Deletes",
						"value": "Temporary",
						"subPrivileges": [
							{
								"privilegeName": "Expiration",
								"value": "03/13/2020 12:00"
							}
						]
					},
					{
						"privilegeName": "Default Object Class",
						"value": "3G Phone"
					},
					{
						"privilegeName": "Allow AC Management",
						"value": "False"
					},
					{
						"privilegeName": "Allow Password Expiration",
						"value": "True"
					},
					{
						"privilegeName": "Allow REST API Execution",
						"value": "True"
					},
					{
						"privilegeName": "Create/Update Administrator",
						"value": "False"
					},
					{
						"privilegeName": "IPv4 subnet default view style",
						"value": "Table"
					},
					{
						"privilegeName": "Zone default view style",
						"value": "Table"
					},
					{
						"privilegeName": "IPv4 network default view style",
						"value": "Table"
					}
				],
				"organizationPrivilegesDefault": [
					{
						"privilegeName": "Access DNS Group",
						"value": "True",
						"subPrivileges": [
							{
								"privilegeName": "Manage DNS Group",
								"value": "True"
							},
							{
								"privilegeName": "Generate DNS Group",
								"value": "True"
							}
						]
					},
					{
						"privilegeName": "Access Infrastructure Import",
						"value": "True",
						"subPrivileges": [
							{
								"privilegeName": "Import IPv4 Networks",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv4 Subnets",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv4 Objects",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv6 Pools",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv6 Blocks",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv6 Subnets",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv6 Ranges",
								"value": "False"
							},
							{
								"privilegeName": "Import IPv6 Addresses",
								"value": "False"
							},
							{
								"privilegeName": "Import DNS Domains",
								"value": "False"
							},
							{
								"privilegeName": "Import DNS Records",
								"value": "False"
							},
							{
								"privilegeName": "Import Subnet Organizations",
								"value": "False"
							},
							{
								"privilegeName": "Import Nodes",
								"value": "False"
							},
							{
								"privilegeName": "Import MAC Pools",
								"value": "False"
							}
						]
					},
					{
						"privilegeName": "Access Address Allocation",
						"value": "True",
						"subPrivileges": [
							{
								"privilegeName": "Maintain Blocks",
								"value": "True",
								"subPrivileges": [
									{
										"privilegeName": "Expand Blocks",
										"value": "False"
									},
									{
										"privilegeName": "Renumber Blocks",
										"value": "False"
									},
									{
										"privilegeName": "Split/Merge Blocks",
										"value": "False"
									},
									{
										"privilegeName": "Allocate Blocks",
										"value": "True",
										"subPrivileges": [
											{
												"privilegeName": "Rule Level",
												"value": "Normal"
											}
										]
									},
									{
										"privilegeName": "Explicitly Create Blocks",
										"value": "False"
									},
									{
										"privilegeName": "Free Blocks",
										"value": "False"
									},
									{
										"privilegeName": "Move Blocks",
										"value": "False"
									}
								]
							},
							{
								"privilegeName": "Maintain Pools",
								"value": "False"
							},
							{
								"privilegeName": "Maintain Seed Pool",
								"value": "False"
							},
							{
								"privilegeName": "Rule Override",
								"value": "False"
							},
							{
								"privilegeName": "Write New Infrastructure to Managed List",
								"value": "True"
							}
						]
					},
					{
						"privilegeName": "Access Node Management",
						"value": "False"
					},
					{
						"privilegeName": "Access V6 Address Management",
						"value": "False"
					},
					{
						"privilegeName": "Access VisualIP Space Only",
						"value": "False"
					},
					{
						"privilegeName": "Allow Dynamic MDHCP Update Without DHCP Server Permission",
						"value": "True"
					},
					{
						"privilegeName": "Appliance Admin",
						"value": "False"
					},
					{
						"privilegeName": "Highest Level GUI Mode",
						"value": "Advanced Mode",
						"subPrivileges": [
							{
								"privilegeName": "Create Infrastructure",
								"value": "True",
								"subPrivileges": [
									{
										"privilegeName": "Dynamic Domain Creation",
										"value": "False"
									}
								]
							},
							{
								"privilegeName": "Create Resource Records",
								"value": "False"
							}
						]
					},
					{
						"privilegeName": "Allow User Selection",
						"value": "False"
					},
					{
						"privilegeName": "Display MyView Tab Only",
						"value": "False"
					},
					{
						"privilegeName": "Require Alias",
						"value": "False"
					},
					{
						"privilegeName": "Require Contact Name",
						"value": "False"
					},
					{
						"privilegeName": "Require Location",
						"value": "False"
					},
					{
						"privilegeName": "Require MAC Address",
						"value": "False"
					},
					{
						"privilegeName": "Restrict CNAME",
						"value": "False"
					},
					{
						"privilegeName": "Restrict Subnet",
						"value": "False"
					},
					{
						"privilegeName": "Unique Name Warning",
						"value": "True"
					}
				]
			}
		},
		"managedListGet": {
			"type": "object",
			"xml": {
				"name": "list"
			},
			"properties": {
				"ManagedListRestModel": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/managedListRequest"
					}
				}
			},
			"example": {
				"list": [
					{
						"itemType": "Domain",
						"itemsList": [
							{
								"itemName": "test.com",
								"accessPermission": "Read"
							},
							{
								"itemName": "abc",
								"accessPermission": "Read"
							}
						]
					},
					{
						"itemType": "Role",
						"itemsList": [
							{
								"itemName": "Role1",
								"accessPermission": "Read"
							}
						]
					}
				]
			}
		},
		"managedListRequest": {
			"type": "object",
			"required": [
				"itemType",
				"itemsList"
			],
			"properties": {
				"itemType": {
					"type": "string",
					"description": "Item type name"
				},
				"itemsList": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/Item"
					}
				}
			}
		},
		"Item": {
			"type": "object",
			"required": [
				"itemName",
				"accessPermission"
			],
			"properties": {
				"itemName": {
					"type": "string",
					"description": "Item name"
				},
				"accessPermission": {
					"type": "string",
					"description": "Access permission"
				}
			}
		},
		"AdminRoleRestModel": {
			"type": "object",
			"description": "Administrator role model",
			"required": [
				"adminRoleName"
			],
			"properties": {
				"adminRoleName": {
					"type": "string",
					"description": "Administrator role name"
				},
				"adminRoleDescription": {
					"type": "string",
					"description": "Administrator role description"
				}
			},
			"example": {
				"adminRoleName": "string",
				"adminRoleDescription": "string"
			}
		},
		"modifyAdminRoleRestModel": {
			"type": "object",
			"description": "Administrator role model",
			"xml": {
				"name": "AdminRoleRestModel"
			},
			"properties": {
				"adminRoleName": {
					"type": "string",
					"description": "Administrator role name"
				},
				"adminRoleDescription": {
					"type": "string",
					"description": "Administrator role description"
				}
			},
			"example": {
				"adminRoleName": "string",
				"adminRoleDescription": "string"
			}
		},
		"SearchDlist": {
			"type": "object",
			"description": "Search administrator role result",
			"xml": {
				"name": "list"
			},
			"properties": {
				"AdminRoleRestModel": {
					"type": "array",
					"description": "List of administrator roles",
					"items": {
						"type": "object",
						"description": "Administrator Role Rest Model",
						"properties": {
							"adminRoleName": {
								"type": "string",
								"description": "Administrator Role Name"
							},
							"adminRoleDescription": {
								"type": "string",
								"description": "Administrator Role Description"
							}
						}
					},
					"example": [
						{
							"adminRoleName": "string",
							"adminRoleDescription": "string"
						},
						{
							"adminRoleName": "string",
							"adminRoleDescription": "string"
						}
					]
				}
			},
			"example": {
				"list": [
					{
						"adminRoleName": "string",
						"adminRoleDescription": "string"
					},
					{
						"adminRoleName": "string",
						"adminRoleDescription": "string"
					}
				]
			}
		},
		"AssignedAdminDlist": {
			"type": "object",
			"description": "Administrator name rest model",
			"xml": {
				"name": "list"
			},
			"properties": {
				"AdminNameRestModel": {
					"type": "array",
					"description": "List of assigned administrator names",
					"items": {
						"type": "string",
						"description": "Login name"
					},
					"example": [
						{
							"loginName": "string"
						},
						{
							"loginName": "string"
						}
					]
				}
			},
			"example": {
				"list": [
					{
						"loginName": "string"
					},
					{
						"loginName": "string"
					}
				]
			}
		},
		"ManagedListDlist": {
			"type": "object",
			"description": "Administrator managed list",
			"xml": {
				"name": "list"
			},
			"properties": {
				"ManagedListRestModel": {
					"type": "array",
					"description": "Managed list",
					"items": {
						"type": "object",
						"properties": {
							"itemType": {
								"type": "string",
								"description": "Item type : Role, QIPApp, BootPServer, DcServer, DhcpServer, DnsServer, Domain, V4Object, V4AddressRange, V4ObjectRange, V4Subnet, Network, OSPF, SubnetOrg, V6Pool, V6Subnet, V6Range, DhcpV6Server"
							},
							"itemsList": {
								"type": "array",
								"description": "Items list",
								"items": {
									"type": "object",
									"properties": {
										"itemName": {
											"type": "string",
											"description": "Item Name"
										},
										"accessPermission": {
											"type": "string",
											"description": "Access Permission: Write, Read"
										}
									}
								}
							}
						}
					},
					"example": [
						{
							"itemType": "string",
							"itemsList": [
								{
									"itemName": "string",
									"accessPermission": "Write"
								},
								{
									"itemName": "string",
									"accessPermission": "Read"
								}
							]
						},
						{
							"itemType": "string",
							"itemsList": [
								{
									"itemName": "string",
									"accessPermission": "Write"
								},
								{
									"itemName": "string",
									"accessPermission": "Read"
								}
							]
						}
					]
				}
			},
			"example": {
				"list": [
					{
						"itemType": "string",
						"itemsList": [
							{
								"itemName": "string",
								"accessPermission": "Write"
							},
							{
								"itemName": "string",
								"accessPermission": "Read"
							}
						]
					},
					{
						"itemType": "string",
						"itemsList": [
							{
								"itemName": "string",
								"accessPermission": "Write"
							},
							{
								"itemName": "string",
								"accessPermission": "Read"
							}
						]
					}
				]
			}
		},
		"ResponseEntity": {
			"type": "object",
			"description": "Response entity",
			"properties": {
				"headers": {
					"type": "string"
				},
				"body": {
					"type": "string"
				},
				"statusCode": {
					"type": "string"
				}
			},
			"example": {
				"list": [
					{
						"message": "Moving V4 Object from 192.168.88.2 to 192.168.99.10 is sucessful.",
						"messageDetail": "Moved from: 192.168.88.2 to: 192.168.99.10"
					},
					{
						"message": "Moving V4 Object from 192.168.88.5 to 192.168.77.0 is failed.",
						"messageDetail": "Destination subnet does not exist 192.168.77.0"
					},
					{
						"message": "Moving V4 Object from 192.168.88.5 to 192.168.77.1 is failed.",
						"messageDetail": "Subnet Move CLI qip-move error C:\\qip\\cli\\qip-move\r\nSubnet for 192.168.77.1  does not exist!\r\nNot found in database!\r\n"
					},
					{
						"message": "Moving V4 Object from 192.168.88.5 to 192.168.77.1 is failed.",
						"messageDetail": "Invalid fields [moveOption] when moving object from [192.168.88.2] to [192.168.99.0]."
					},
					{
						"message": "Moving V4 Object from 192.168.99.3 to 192.168.99.99 is failed.",
						"messageDetail": "Subnet Move CLI qip-move error [SERVERERROR] Error from Server: ORA-20000: 77: This IP address is used.\r\nORA-06512: at \"QIPADMIN.QSIDBERROR\", line 67\r\nORA-06512: at \"QIPADMIN.CREATEPLACEHOLDER\", line 69\r\nORA-06512: at line 1\r\n\r\n\r\nC:\\qip\\cli\\qip-move ERROR: move failed!\r\nC:\\qip\\cli\\qip-move\r\n192.168.99.3\r\nError code = -1\r\n"
					},
					{
						"message": "Moving V4 Object from 192.168.88.1 to 192.168.99.0 is failed.",
						"messageDetail": "Could not find IPv4 Address 192.168.088.001."
					},
					{
						"message": "Moving V4 Object from 192.168.88.5 to 192.168.88.12 is failed.",
						"messageDetail": "The scheduled time is not in a date format."
					},
					{
						"message": "Moving V4 Object from 192.168.88.5 to 192.168.88.12 is failed.",
						"messageDetail": "Subnet Move CLI qip-move error C:\\qip\\cli\\qip-move\r\ntime must be at least one hour from now\r\nInvalid parameter passed!\r\n"
					},
					{
						"message": "Moving V4 Object from 192.168.88.2 to 192.168.99.9 is failed.",
						"messageDetail": "Subnet Move CLI qip-move error C:\\qip\\cli\\qip-move\r\nDateTime must be in the future.\r\nInvalid parameter passed!\r\n"
					}
				]
			}
		},
		"FreeSubnet": {
			"type": "object",
			"description": "Free subnet list",
			"properties": {
				"subnetName": {
					"type": "string"
				},
				"subnetAddress": {
					"type": "string"
				},
				"subnetOrgName": {
					"type": "string"
				}
			},
			"example": {
				"list": [
					{
						"subnetName": "subnet1",
						"subnetAddress": "192.168.88.0",
						"subnetOrgName": "subnetOrg1"
					},
					{
						"subnetName": "subnet2",
						"subnetAddress": "192.168.88.128"
					}
				]
			}
		},
		"dhcpoptiontemplate": {
			"type": "object",
			"required": [
				"templateName"
			],
			"properties": {
				"templateName": {
					"type": "string",
					"description": "Name of DHCP OPTION"
				},
				"listOptions": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/option"
					},
					"xml": {
						"name": "options"
					}
				}
			},
			"example": {
				"templateName": "ExampleTemplate",
				"options": [
					{
						"optionName": "CableLabs Client Config",
						"childOption": [
							{
								"optionName": "SP Primary DHCP Server Address",
								"value": "10.0.0.10"
							},
							{
								"optionName": "SP Secondary DHCP Server Address",
								"value": "10.0.0.11"
							},
							{
								"optionName": "SP SNMP Entity Address",
								"value": "10.0.0.12"
							},
							{
								"optionName": "SP Primary DNS Server Address",
								"value": "10.0.0.13"
							},
							{
								"optionName": "SP Secondary DNS Server Address",
								"value": "10.0.0.14"
							},
							{
								"optionName": "Kerberos Realm",
								"value": "kerberos.mycorp.net"
							},
							{
								"optionName": "Use Ticket-Granting-Ticket",
								"value": "false"
							},
							{
								"optionName": "Provisioning Timer",
								"value": "30"
							},
							{
								"optionName": "CMS FQDN",
								"value": "cms.mycorp.net"
							}
						]
					},
					{
						"optionName": "CableLabs Client Config (122)",
						"childOption": [
							{
								"optionName": "TSP AP-REQ/AP-REP Backoff and Retry",
								"childOption": [
									{
										"optionName": "Maximum Retry",
										"value": "100"
									},
									{
										"optionName": "Maximum Timeout",
										"value": "100"
									},
									{
										"optionName": "Nominal Timeout",
										"value": "50"
									}
								]
							},
							{
								"optionName": "TSP AS-REQ/AS-REP Backoff and Retry",
								"childOption": [
									{
										"optionName": "Maximum Retry",
										"value": "100"
									},
									{
										"optionName": "Maximum Timeout",
										"value": "100"
									},
									{
										"optionName": "Nominal Timeout",
										"value": "50"
									}
								]
							},
							{
								"optionName": "TSP Kerberos Realm Name",
								"value": "kerberos.mycorp.net"
							},
							{
								"optionName": "TSP Primary DHCP Server Address",
								"value": "10.0.0.15"
							},
							{
								"optionName": "TSP Provisioning Server Address",
								"value": "FQDN",
								"childOption": [
									{
										"optionName": "FQDN",
										"value": "example.com"
									}
								]
							},
							{
								"optionName": "TSP Provisioning Timer",
								"value": "22"
							},
							{
								"optionName": "TSP Secondary DHCP Server Address",
								"value": "10.0.0.16"
							},
							{
								"optionName": "TSP Ticket Granting Server Utilization",
								"value": "false"
							}
						]
					},
					{
						"optionName": "Boot File Size",
						"value": "65535"
					},
					{
						"optionName": "Cookie Server",
						"value": "10.0.0.17 10.0.0.18"
					},
					{
						"optionName": "Domain Name",
						"value": "User Defined",
						"childOption": [
							{
								"optionName": "User Defined",
								"value": "example.com"
							}
						]
					},
					{
						"optionName": "Domain Name Server",
						"value": "Same as in Subnet Profile",
						"childOption": [
							{
								"optionName": "Same as in Subnet Profile"
							}
						]
					},
					{
						"optionName": "Extensions Path",
						"value": "c:\\qip"
					},
					{
						"optionName": "Host Name",
						"value": "User Defined",
						"childOption": [
							{
								"optionName": "User Defined",
								"value": "example.com"
							}
						]
					},
					{
						"optionName": "Impress Server",
						"value": "10.0.0.19 10.0.0.20"
					},
					{
						"optionName": "LPR Server",
						"value": "10.0.0.21 10.0.0.22"
					},
					{
						"optionName": "Log Server",
						"value": "10.0.0.23 10.0.0.24"
					},
					{
						"optionName": "Merit Dump File",
						"value": "meritFile"
					},
					{
						"optionName": "Name Server",
						"value": "10.0.0.25 10.0.0.26"
					},
					{
						"optionName": "Resource Location Server",
						"value": "10.0.0.27 10.0.0.28"
					},
					{
						"optionName": "Root Path",
						"value": "c:\\qip"
					},
					{
						"optionName": "Router",
						"value": "Same as in Subnet Profile",
						"childOption": [
							{
								"optionName": "Same as in Subnet Profile"
							}
						]
					},
					{
						"optionName": "Subnet Mask",
						"value": "Same as in Subnet Profile",
						"childOption": [
							{
								"optionName": "Same as in Subnet Profile"
							}
						]
					},
					{
						"optionName": "Swap Server",
						"value": "10.0.0.31"
					},
					{
						"optionName": "Time Offset",
						"value": "1000"
					},
					{
						"optionName": "Time Server",
						"value": "Same as in Subnet Profile",
						"childOption": [
							{
								"optionName": "Same as in Subnet Profile"
							}
						]
					},
					{
						"optionName": "Default IP Time-to-live",
						"value": "1"
					},
					{
						"optionName": "IP Forwarding Enable/Disable",
						"value": "false"
					},
					{
						"optionName": "Maximum Datagram Reassembly Size",
						"value": "576"
					},
					{
						"optionName": "Non-Local Source Routing Enable/Disable",
						"value": "false"
					},
					{
						"optionName": "Path MTU Aging Timeout",
						"value": "1000"
					},
					{
						"optionName": "Path MTU Plateau Table",
						"value": "69"
					},
					{
						"optionName": "Policy Filter",
						"value": "10.0.0.32 255.0.0.0"
					},
					{
						"optionName": "All Subnets are Local",
						"value": "false"
					},
					{
						"optionName": "Broadcast Address",
						"value": "Same as in Subnet Profile",
						"childOption": [
							{
								"optionName": "Same as in Subnet Profile"
							}
						]
					},
					{
						"optionName": "Interface MTU",
						"value": "65535"
					},
					{
						"optionName": "Mask Supplier",
						"value": "false"
					},
					{
						"optionName": "Perform Mask Discovery",
						"value": "false"
					},
					{
						"optionName": "Perform Router Discovery",
						"value": "false"
					},
					{
						"optionName": "Router Solicitation Address",
						"value": "10.0.0.33"
					},
					{
						"optionName": "Static Route",
						"value": "10.0.0.1 10.0.0.2"
					},
					{
						"optionName": "Classless Static Route",
						"value": "10.0.0.0 255.0.0.0 10.0.0.1"
					},
					{
						"optionName": "ARP Cache Timeout",
						"value": "1000"
					},
					{
						"optionName": "Ethernet Encapsulation",
						"value": "false"
					},
					{
						"optionName": "Trailer Encapsulation",
						"value": "false"
					},
					{
						"optionName": "TCP Default TTL",
						"value": "251"
					},
					{
						"optionName": "TCP Keepalive Garbage",
						"value": "false"
					},
					{
						"optionName": "TCP Keepalive Interval",
						"value": "1000"
					},
					{
						"optionName": "Default Finger Server",
						"value": "10.0.0.35 10.0.0.36"
					},
					{
						"optionName": "Default Internet Relay Chat (IRC) Server",
						"value": "10.0.0.37 10.0.0.38"
					},
					{
						"optionName": "Default World Wide Web (WWW) Server",
						"value": "10.0.0.39 10.0.0.40"
					},
					{
						"optionName": "Microsoft Default Router Metric Base",
						"value": "1000"
					},
					{
						"optionName": "Microsoft Disable Netbios",
						"value": "1000"
					},
					{
						"optionName": "Microsoft Release DHCP Lease on Shutdown",
						"value": "1000"
					},
					{
						"optionName": "Mobile IP Home Agent",
						"value": "10.0.0.41 10.0.0.42"
					},
					{
						"optionName": "Multicast TTL",
						"value": "251"
					},
					{
						"optionName": "NetBIOS over TCP/IP Datagram Distribution Server",
						"value": "10.0.0.43 10.0.0.44"
					},
					{
						"optionName": "NetBIOS over TCP/IP Name Server",
						"value": "10.0.0.45 10.0.0.46"
					},
					{
						"optionName": "NetBIOS over TCP/IP Node Type",
						"value": "B-node"
					},
					{
						"optionName": "NetBIOS over TCP/IP Scope"
					},
					{
						"optionName": "Network Information Servers",
						"value": "Same as in Subnet Profile",
						"childOption": [
							{
								"optionName": "Same as in Subnet Profile"
							}
						]
					},
					{
						"optionName": "Network Information Service Domain",
						"value": "Same as in Subnet Profile",
						"childOption": [
							{
								"optionName": "Same as in Subnet Profile"
							}
						]
					},
					{
						"optionName": "Network Information Service+Domain",
						"value": "example.com"
					},
					{
						"optionName": "Network Information Service+Servers",
						"value": "10.0.0.47"
					},
					{
						"optionName": "Network News Transport Protocol (NNTP) Server",
						"value": "10.0.0.48"
					},
					{
						"optionName": "Network Time Protocol Servers",
						"value": "Same as in Subnet Profile",
						"childOption": [
							{
								"optionName": "Same as in Subnet Profile"
							}
						]
					},
					{
						"optionName": "Post Office Protocol (POP3) Server",
						"value": "10.0.0.49 10.0.0.50"
					},
					{
						"optionName": "Scope Life",
						"value": "1000"
					},
					{
						"optionName": "Simple Mail Transport Protocol (SMTP) Server",
						"value": "10.0.0.51"
					},
					{
						"optionName": "StreetTalk Directory Assistance (STDA) Server",
						"value": "10.0.0.52 10.0.0.53"
					},
					{
						"optionName": "StreetTalk Server",
						"value": "10.0.0.54 10.0.0.55"
					},
					{
						"optionName": "Vendor Specific Information"
					},
					{
						"optionName": "X Window System Display Manager",
						"value": "10.0.0.54"
					},
					{
						"optionName": "X Window System Font Server",
						"value": "10.0.0.55 10.0.0.56"
					},
					{
						"optionName": "Broadcast and Multicast Control Service Domain List"
					},
					{
						"optionName": "Broadcast and Multicast Control Service Address List",
						"value": "10.0.0.57"
					},
					{
						"optionName": "Timezone specified as IEEE 1003.1 String",
						"value": "1010"
					},
					{
						"optionName": "Timezone specified as TZ Database String",
						"value": "1010"
					},
					{
						"optionName": "SIP Server Address List",
						"value": "10.0.0.58 10.0.0.59"
					},
					{
						"optionName": "SIP Server Domain List",
						"value": "10.0.0.60 10.0.0.61"
					},
					{
						"optionName": "Bootfile Name",
						"value": "bootfile"
					},
					{
						"optionName": "Client Identifier",
						"value": "client1"
					},
					{
						"optionName": "IP Address Lease Time",
						"value": "Limited",
						"childOption": [
							{
								"optionName": "Limited Lease Time",
								"value": "900000"
							}
						]
					},
					{
						"optionName": "Option Overload",
						"value": "2"
					},
					{
						"optionName": "Rebinding (T2) Time",
						"value": "1000"
					},
					{
						"optionName": "Renewal (T1) Time",
						"value": "1000"
					},
					{
						"optionName": "TFTP Server Name",
						"value": "TFTPServer"
					},
					{
						"optionName": "Vendor Class Identifier"
					},
					{
						"optionName": "NDS Context"
					},
					{
						"optionName": "NDS Servers",
						"value": "10.0.0.0.60 10.0.0.61"
					},
					{
						"optionName": "NDS Tree Name",
						"value": "NDS_Tree1"
					},
					{
						"optionName": "Netware/IP Domain Name",
						"value": "example.com"
					},
					{
						"optionName": "Netware/IP Information",
						"childOption": [
							{
								"optionName": "NWIP Setting",
								"value": "NWIP_EXIST_IN_OPTIONS_AREA",
								"childOption": [
									{
										"optionName": "AUTORETRIES",
										"value": "1000"
									},
									{
										"optionName": "AUTORETRY_SECS",
										"value": "1000"
									},
									{
										"optionName": "NEAREST_NWIP_SERVER",
										"value": "10.0.0.62 10.0.0.63"
									},
									{
										"optionName": "NSQ_BROADCAST",
										"value": "<Not Set>"
									},
									{
										"optionName": "NWIP_1_1",
										"value": "<Not Set>"
									},
									{
										"optionName": "PREFERRED_DSS",
										"value": "10.0.0.64"
									},
									{
										"optionName": "PRIMARY_DSS",
										"value": "10.0.0.65"
									}
								]
							}
						]
					},
					{
						"optionName": "Auto Configuration of IPv4 Clients",
						"value": "False"
					},
					{
						"optionName": "SLP Directory Agent",
						"childOption": [
							{
								"optionName": "Directory Agent Address",
								"value": "10.0.0.66"
							},
							{
								"optionName": "Mandatory",
								"value": "false"
							}
						]
					},
					{
						"optionName": "SLP Service Scope",
						"childOption": [
							{
								"optionName": "Mandatory",
								"value": "false"
							},
							{
								"optionName": "Scope List",
								"value": "192.168.88.3-192.168.88.7, 192.168.88.8-192.168.88.20"
							}
						]
					},
					{
						"optionName": "User Authentication Protocol"
					},
					{
						"optionName": "Domain Search Option"
					}
				]
			}
		},
		"modifyDHCPOptionTemplatelist": {
			"type": "object",
			"xml": {
				"name": "list"
			},
			"properties": {
				"options": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/option"
					}
				}
			},
			"example": {
				"list": [
					{
						"optionName": "CableLabs Client Config",
						"childOption": [
							{
								"optionName": "SP Primary DHCP Server Address",
								"value": "10.0.0.10"
							},
							{
								"optionName": "SP Secondary DHCP Server Address",
								"value": "10.0.0.11"
							},
							{
								"optionName": "SP SNMP Entity Address",
								"value": "10.0.0.12"
							},
							{
								"optionName": "SP Primary DNS Server Address",
								"value": "10.0.0.13"
							},
							{
								"optionName": "SP Secondary DNS Server Address",
								"value": "10.0.0.14"
							},
							{
								"optionName": "Kerberos Realm",
								"value": "kerberos.mycorp.net"
							},
							{
								"optionName": "Use Ticket-Granting-Ticket",
								"value": "false"
							},
							{
								"optionName": "Provisioning Timer",
								"value": "30"
							},
							{
								"optionName": "CMS FQDN",
								"value": "cms.mycorp.net"
							}
						]
					},
					{
						"optionName": "CableLabs Client Config (122)",
						"childOption": [
							{
								"optionName": "TSP AP-REQ/AP-REP Backoff and Retry",
								"childOption": [
									{
										"optionName": "Maximum Retry",
										"value": "100"
									},
									{
										"optionName": "Maximum Timeout",
										"value": "100"
									},
									{
										"optionName": "Nominal Timeout",
										"value": "50"
									}
								]
							},
							{
								"optionName": "TSP AS-REQ/AS-REP Backoff and Retry",
								"childOption": [
									{
										"optionName": "Maximum Retry",
										"value": "100"
									},
									{
										"optionName": "Maximum Timeout",
										"value": "100"
									},
									{
										"optionName": "Nominal Timeout",
										"value": "50"
									}
								]
							},
							{
								"optionName": "TSP Kerberos Realm Name",
								"value": "kerberos.mycorp.net"
							},
							{
								"optionName": "TSP Primary DHCP Server Address",
								"value": "10.0.0.15"
							},
							{
								"optionName": "TSP Provisioning Server Address",
								"value": "FQDN",
								"childOption": [
									{
										"optionName": "FQDN",
										"value": "example.com"
									}
								]
							},
							{
								"optionName": "TSP Provisioning Timer",
								"value": "22"
							},
							{
								"optionName": "TSP Secondary DHCP Server Address",
								"value": "10.0.0.16"
							},
							{
								"optionName": "TSP Ticket Granting Server Utilization",
								"value": "false"
							}
						]
					},
					{
						"optionName": "Boot File Size",
						"value": "65535"
					},
					{
						"optionName": "Cookie Server",
						"value": "10.0.0.17 10.0.0.18"
					},
					{
						"optionName": "Domain Name",
						"value": "User Defined",
						"childOption": [
							{
								"optionName": "User Defined",
								"value": "example.com"
							}
						]
					},
					{
						"optionName": "Domain Name Server",
						"value": "Same as in Subnet Profile",
						"childOption": [
							{
								"optionName": "Same as in Subnet Profile"
							}
						]
					},
					{
						"optionName": "Extensions Path",
						"value": "c:\\qip"
					},
					{
						"optionName": "Host Name",
						"value": "User Defined",
						"childOption": [
							{
								"optionName": "User Defined",
								"value": "example.com"
							}
						]
					},
					{
						"optionName": "Impress Server",
						"value": "10.0.0.19 10.0.0.20"
					},
					{
						"optionName": "LPR Server",
						"value": "10.0.0.21 10.0.0.22"
					},
					{
						"optionName": "Log Server",
						"value": "10.0.0.23 10.0.0.24"
					},
					{
						"optionName": "Merit Dump File",
						"value": "meritFile"
					},
					{
						"optionName": "Name Server",
						"value": "10.0.0.25 10.0.0.26"
					},
					{
						"optionName": "Resource Location Server",
						"value": "10.0.0.27 10.0.0.28"
					},
					{
						"optionName": "Root Path",
						"value": "c:\\qip"
					},
					{
						"optionName": "Router",
						"value": "Same as in Subnet Profile",
						"childOption": [
							{
								"optionName": "Same as in Subnet Profile"
							}
						]
					},
					{
						"optionName": "Subnet Mask",
						"value": "Same as in Subnet Profile",
						"childOption": [
							{
								"optionName": "Same as in Subnet Profile"
							}
						]
					},
					{
						"optionName": "Swap Server",
						"value": "10.0.0.31"
					},
					{
						"optionName": "Time Offset",
						"value": "1000"
					},
					{
						"optionName": "Time Server",
						"value": "Same as in Subnet Profile",
						"childOption": [
							{
								"optionName": "Same as in Subnet Profile"
							}
						]
					},
					{
						"optionName": "Default IP Time-to-live",
						"value": "1"
					},
					{
						"optionName": "IP Forwarding Enable/Disable",
						"value": "false"
					},
					{
						"optionName": "Maximum Datagram Reassembly Size",
						"value": "576"
					},
					{
						"optionName": "Non-Local Source Routing Enable/Disable",
						"value": "false"
					},
					{
						"optionName": "Path MTU Aging Timeout",
						"value": "1000"
					},
					{
						"optionName": "Path MTU Plateau Table",
						"value": "69"
					},
					{
						"optionName": "Policy Filter",
						"value": "10.0.0.32 255.0.0.0"
					},
					{
						"optionName": "All Subnets are Local",
						"value": "false"
					},
					{
						"optionName": "Broadcast Address",
						"value": "Same as in Subnet Profile",
						"childOption": [
							{
								"optionName": "Same as in Subnet Profile"
							}
						]
					},
					{
						"optionName": "Interface MTU",
						"value": "65535"
					},
					{
						"optionName": "Mask Supplier",
						"value": "false"
					},
					{
						"optionName": "Perform Mask Discovery",
						"value": "false"
					},
					{
						"optionName": "Perform Router Discovery",
						"value": "false"
					},
					{
						"optionName": "Router Solicitation Address",
						"value": "10.0.0.33"
					},
					{
						"optionName": "Static Route",
						"value": "10.0.0.1 10.0.0.2"
					},
					{
						"optionName": "Classless Static Route",
						"value": "10.0.0.0 255.0.0.0 10.0.0.1"
					},
					{
						"optionName": "ARP Cache Timeout",
						"value": "1000"
					},
					{
						"optionName": "Ethernet Encapsulation",
						"value": "false"
					},
					{
						"optionName": "Trailer Encapsulation",
						"value": "false"
					},
					{
						"optionName": "TCP Default TTL",
						"value": "251"
					},
					{
						"optionName": "TCP Keepalive Garbage",
						"value": "false"
					},
					{
						"optionName": "TCP Keepalive Interval",
						"value": "1000"
					},
					{
						"optionName": "Default Finger Server",
						"value": "10.0.0.35 10.0.0.36"
					},
					{
						"optionName": "Default Internet Relay Chat (IRC) Server",
						"value": "10.0.0.37 10.0.0.38"
					},
					{
						"optionName": "Default World Wide Web (WWW) Server",
						"value": "10.0.0.39 10.0.0.40"
					},
					{
						"optionName": "Microsoft Default Router Metric Base",
						"value": "1000"
					},
					{
						"optionName": "Microsoft Disable Netbios",
						"value": "1000"
					},
					{
						"optionName": "Microsoft Release DHCP Lease on Shutdown",
						"value": "1000"
					},
					{
						"optionName": "Mobile IP Home Agent",
						"value": "10.0.0.41 10.0.0.42"
					},
					{
						"optionName": "Multicast TTL",
						"value": "251"
					},
					{
						"optionName": "NetBIOS over TCP/IP Datagram Distribution Server",
						"value": "10.0.0.43 10.0.0.44"
					},
					{
						"optionName": "NetBIOS over TCP/IP Name Server",
						"value": "10.0.0.45 10.0.0.46"
					},
					{
						"optionName": "NetBIOS over TCP/IP Node Type",
						"value": "B-node"
					},
					{
						"optionName": "NetBIOS over TCP/IP Scope"
					},
					{
						"optionName": "Network Information Servers",
						"value": "Same as in Subnet Profile",
						"childOption": [
							{
								"optionName": "Same as in Subnet Profile"
							}
						]
					},
					{
						"optionName": "Network Information Service Domain",
						"value": "Same as in Subnet Profile",
						"childOption": [
							{
								"optionName": "Same as in Subnet Profile"
							}
						]
					},
					{
						"optionName": "Network Information Service+Domain",
						"value": "example.com"
					},
					{
						"optionName": "Network Information Service+Servers",
						"value": "10.0.0.47"
					},
					{
						"optionName": "Network News Transport Protocol (NNTP) Server",
						"value": "10.0.0.48"
					},
					{
						"optionName": "Network Time Protocol Servers",
						"value": "Same as in Subnet Profile",
						"childOption": [
							{
								"optionName": "Same as in Subnet Profile"
							}
						]
					},
					{
						"optionName": "Post Office Protocol (POP3) Server",
						"value": "10.0.0.49 10.0.0.50"
					},
					{
						"optionName": "Scope Life",
						"value": "1000"
					},
					{
						"optionName": "Simple Mail Transport Protocol (SMTP) Server",
						"value": "10.0.0.51"
					},
					{
						"optionName": "StreetTalk Directory Assistance (STDA) Server",
						"value": "10.0.0.52 10.0.0.53"
					},
					{
						"optionName": "StreetTalk Server",
						"value": "10.0.0.54 10.0.0.55"
					},
					{
						"optionName": "Vendor Specific Information"
					},
					{
						"optionName": "X Window System Display Manager",
						"value": "10.0.0.54"
					},
					{
						"optionName": "X Window System Font Server",
						"value": "10.0.0.55 10.0.0.56"
					},
					{
						"optionName": "Broadcast and Multicast Control Service Domain List"
					},
					{
						"optionName": "Broadcast and Multicast Control Service Address List",
						"value": "10.0.0.57"
					},
					{
						"optionName": "Timezone specified as IEEE 1003.1 String",
						"value": "1010"
					},
					{
						"optionName": "Timezone specified as TZ Database String",
						"value": "1010"
					},
					{
						"optionName": "SIP Server Address List",
						"value": "10.0.0.58 10.0.0.59"
					},
					{
						"optionName": "SIP Server Domain List",
						"value": "10.0.0.60 10.0.0.61"
					},
					{
						"optionName": "Bootfile Name",
						"value": "bootfile"
					},
					{
						"optionName": "Client Identifier",
						"value": "client1"
					},
					{
						"optionName": "IP Address Lease Time",
						"value": "Limited",
						"childOption": [
							{
								"optionName": "Limited",
								"value": "900000"
							}
						]
					},
					{
						"optionName": "Option Overload",
						"value": "2"
					},
					{
						"optionName": "Rebinding (T2) Time",
						"value": "1000"
					},
					{
						"optionName": "Renewal (T1) Time",
						"value": "1000"
					},
					{
						"optionName": "TFTP Server Name",
						"value": "TFTPServer"
					},
					{
						"optionName": "Vendor Class Identifier"
					},
					{
						"optionName": "NDS Context"
					},
					{
						"optionName": "NDS Servers",
						"value": "10.0.0.0.60 10.0.0.61"
					},
					{
						"optionName": "NDS Tree Name",
						"value": "NDS_Tree1"
					},
					{
						"optionName": "Netware/IP Domain Name",
						"value": "example.com"
					},
					{
						"optionName": "Netware/IP Information",
						"childOption": [
							{
								"optionName": "NWIP Setting",
								"value": "NWIP_EXIST_IN_OPTIONS_AREA",
								"childOption": [
									{
										"optionName": "AUTORETRIES",
										"value": "1000"
									},
									{
										"optionName": "AUTORETRY_SECS",
										"value": "1000"
									},
									{
										"optionName": "NEAREST_NWIP_SERVER",
										"value": "10.0.0.62 10.0.0.63"
									},
									{
										"optionName": "NSQ_BROADCAST",
										"value": "<Not Set>"
									},
									{
										"optionName": "NWIP_1_1",
										"value": "<Not Set>"
									},
									{
										"optionName": "PREFERRED_DSS",
										"value": "10.0.0.64"
									},
									{
										"optionName": "PRIMARY_DSS",
										"value": "10.0.0.65"
									}
								]
							}
						]
					},
					{
						"optionName": "Auto Configuration of IPv4 Clients",
						"value": "False"
					},
					{
						"optionName": "SLP Directory Agent",
						"childOption": [
							{
								"optionName": "Directory Agent Address",
								"value": "10.0.0.66"
							},
							{
								"optionName": "Mandatory",
								"value": "false"
							}
						]
					},
					{
						"optionName": "SLP Service Scope",
						"childOption": [
							{
								"optionName": "Mandatory",
								"value": "false"
							},
							{
								"optionName": "Scope List",
								"value": "192.168.88.3-192.168.88.7, 192.168.88.8-192.168.88.20"
							}
						]
					},
					{
						"optionName": "User Authentication Protocol"
					},
					{
						"optionName": "Domain Search Option"
					}
				]
			}
		},
		"DhcpOptTemplate": {
			"type": "object",
			"properties": {
				"infraType": {
					"type": "string",
					"description": "Type of Infrastructure"
				},
				"address": {
					"type": "string",
					"description": "Address of Subnet/Object"
				},
				"templateName": {
					"type": "string",
					"description": "Name of DHCP template"
				},
				"option": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/option"
					}
				}
			},
			"example": {
				"infraType": "SUBNET",
				"address": "10.1.1.0",
				"templateName": "testDhcpOptTmpl",
				"option": [
					{
						"optionName": "Boot File Size",
						"value": "20"
					}
				]
			}
		},
		"option": {
			"type": "object",
			"properties": {
				"optionName": {
					"type": "string",
					"description": "Name of option"
				},
				"value": {
					"type": "string",
					"description": "Value of option"
				},
				"childOption": {
					"type": "object",
					"properties": {
						"options": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/childOptionLv1"
							}
						}
					}
				}
			}
		},
		"childOptionLv1": {
			"title": "option",
			"type": "object",
			"properties": {
				"optionName": {
					"type": "string",
					"description": "Name of option"
				},
				"value": {
					"type": "string",
					"description": "Value of option"
				},
				"childOption": {
					"type": "object",
					"properties": {
						"options": {
							"type": "array",
							"items": {
								"$ref": "#/definitions/childOptionLv2"
							}
						}
					}
				}
			}
		},
		"childOptionLv2": {
			"title": "option",
			"type": "object",
			"properties": {
				"optionName": {
					"type": "string",
					"description": "Name of option"
				},
				"value": {
					"type": "string",
					"description": "Value of option"
				}
			}
		},
		"templateName": {
			"type": "string"
		},
		"searchoptiontemplatebyoptnum": {
			"type": "object",
			"properties": {
				"templateName": {
					"type": "array",
					"description": "The list name of DHCP Option Template",
					"items": {
						"$ref": "#/definitions/templateName"
					}
				}
			},
			"example": {
				"templateName": [
					"ExampleTemplate1",
					"ExampleTemplate2"
				]
			}
		},
		"dhcpServerNames": {
			"type": "string"
		},
		"subnetOrgNames": {
			"type": "string"
		},
		"clientClassNames": {
			"type": "string"
		},
		"subnetIpAddrs": {
			"type": "string"
		},
		"objIpAddrs": {
			"type": "string"
		},
		"searchoptiontemplatebyname": {
			"type": "object",
			"properties": {
				"dhcpServerNames": {
					"type": "array",
					"description": "The list DHCP Server name is accsociated with DHCP Option Template",
					"items": {
						"$ref": "#/definitions/dhcpServerNames"
					}
				},
				"subnetOrgNames": {
					"type": "array",
					"description": "The list Subnet Organization name is accsociated with DHCP Option Template",
					"items": {
						"$ref": "#/definitions/subnetOrgNames"
					}
				},
				"clientClassNames": {
					"type": "array",
					"description": "The list Client Class name is accsociated with DHCP Option Template",
					"items": {
						"$ref": "#/definitions/clientClassNames"
					}
				},
				"subnetIpAddrs": {
					"type": "array",
					"description": "The list Subnet IP Addresses is accsociated with DHCP Option Template",
					"items": {
						"$ref": "#/definitions/subnetIpAddrs"
					}
				},
				"objIpAddrs": {
					"type": "array",
					"description": "The list Object IP Addresses is accsociated with DHCP Option Template",
					"items": {
						"$ref": "#/definitions/objIpAddrs"
					}
				}
			},
			"example": {
				"dhcpServerNames": [
					"DhcpServer1.com",
					"DhcpServer2.com"
				],
				"subnetOrgNames": [
					"SubnetOgr1",
					"SubnetOgr2"
				],
				"clientClassNames": [
					"Clientclass1",
					"Clientclass2"
				],
				"subnetIpAddrs": [
					"10.10.10.0",
					"11.11.11.0"
				],
				"objIpAddrs": [
					"10.10.10.10",
					"11.11.11.11"
				]
			}
		},
		"MoveV6List": {
			"type": "object",
			"xml": {
				"name": "list"
			},
			"properties": {
				"V6ObjectMoveRest": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/V6ObjectMoveRest"
					}
				}
			},
			"example": {
				"list": [
					{
						"objIPAddress": "2005::2",
						"destinationAddress": "2009::2",
						"moveOption": "Assign"
					},
					{
						"objIPAddress": "2005::1",
						"destinationAddress": "1000::",
						"moveOption": "Auto",
						"force": "true"
					},
					{
						"objIPAddress": "2005::3",
						"destinationAddress": "2008::",
						"moveOption": "Auto",
						"scheduleDate": "08/30/2019 00:00"
					}
				]
			}
		},
		"V6ObjectMoveRest": {
			"type": "object",
			"description": "V6 Address Rest Model",
			"required": [
				"objIPAddress",
				"destinationAddress",
				"moveOption"
			],
			"properties": {
				"objIPAddress": {
					"type": "string",
					"description": "Object IP address."
				},
				"destinationAddress": {
					"type": "string",
					"description": "Destination address."
				},
				"moveOption": {
					"type": "string",
					"description": "IPv6 address move option. It has two values: Assign, Auto"
				},
				"force": {
					"type": "string",
					"description": "Force to move an IPv6 address which is associated to the server. It has two values: true, false. The default value is false."
				},
				"scheduleDate": {
					"type": "string",
					"description": "If you including this filed in the request body that mean the IPv6 will move with scheduled. The date format allow such as MM/dd/yyyy hh:mm, yyyy-MM-dd'T'HH:mm:ss.SSSZ, yyyy-MM-dd hh:mm, yyyy-MM-dd hh:mm z, yyyyMMdd'T'hhmmZ, yyyy-MM-dd'T'HH:mm:ss.SSSX, yyyy-MM-dd h:mma, MMM d HH:mm yyyy, EEE MMM d HH:mm:ss zzz yyyy"
				}
			}
		},
		"ResponseEntityMoveV6": {
			"type": "object",
			"description": "Response entity",
			"xml": {
				"name": "ResponseEntity"
			},
			"properties": {
				"headers": {
					"type": "string"
				},
				"body": {
					"type": "string"
				},
				"statusCode": {
					"type": "string"
				}
			},
			"example": {
				"list": [
					{
						"message": "Moving V6 Object from 2005::2 to 2008::6 is successful."
					},
					{
						"message": "Moving V6 Object from 2005::3 to 2006:: is successful.",
						"messageDetail": "Destination Address: 2006::2. Scheduled At: Move V6 Object from 2005::3 to 2006::1. Job id is: 20."
					},
					{
						"message": "Moving V6 Object from 2005::8 to 2006:: is failed.",
						"messageDetail": "Cannot move the IPv6 Address 2005::8 which has associated with server(s)."
					},
					{
						"message": "Moving V6 Object from 2005::1 to 2006::6 is failed.",
						"messageDetail": "Could not find IPv6 Address 2005::1."
					},
					{
						"message": "Moving V6 Object from 2005::5 to 2007::12 is failed.",
						"messageDetail": "The scheduled time is not in a date format."
					}
				]
			}
		},
		"ForwardedZone": {
			"type": "object",
			"required": [
				"name"
			],
			"description": "This section defines a group of operations for adding a forwarded zone. Different messages, \nand capabilities, are provided to handle the adding. Add, Get and Update actions support \nare supported. \n",
			"properties": {
				"name": {
					"type": "string",
					"description": "Name of the forwarded zone.\n"
				},
				"forwardersList": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/ForwardersList"
					}
				},
				"forward": {
					"type": "string",
					"description": "Forward options: Use Server Value|forward only| forward first\n"
				},
				"dnsServers": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/DNSServer"
					}
				},
				"udas": {
					"$ref": "#/definitions/NameValue"
				},
				"groups": {
					"$ref": "#/definitions/UdaGroup"
				}
			},
			"example": {
				"name": "nokia.com",
				"forwardersList": [
					{
						"ipAddress": "192.168.99.98",
						"port": 5000
					},
					{
						"ipAddress": "2000::1",
						"port": 5001
					}
				],
				"forward": "Use Server Value",
				"dnsServers": [
					"dns.example.com",
					"dnsserver.example.com"
				],
				"udas": [
					{
						"name": "at1",
						"value": "true"
					},
					{
						"name": "test",
						"value": "vietnam"
					}
				],
				"groups": [
					{
						"name": "gr1",
						"udas": [
							{
								"name": "at1",
								"value": "false"
							}
						]
					},
					{
						"name": "gr2",
						"udas": [
							{
								"name": "testUDA",
								"value": "false"
							}
						]
					}
				]
			}
		},
		"ForwardersList": {
			"type": "object",
			"description": "Address",
			"required": [
				"ipAddress"
			],
			"properties": {
				"ipAddress": {
					"type": "string",
					"description": "ipAddress"
				},
				"port": {
					"type": "integer",
					"description": "port"
				}
			}
		},
		"modifyForwardedZone": {
			"type": "object",
			"required": [
				"name"
			],
			"description": "This section defines a group of operations for adding a forwarded zone. Different messages, \nand capabilities, are provided to handle the adding. Add, Get and Update actions support \nare supported. \n",
			"xml": {
				"name": "ForwardedZone"
			},
			"properties": {
				"forwardersList": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/ForwardersList"
					}
				},
				"forward": {
					"type": "string",
					"description": "Forward options: Use Server Value|forward only| forward first\n"
				},
				"dnsServers": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/DNSServer"
					}
				},
				"udas": {
					"$ref": "#/definitions/NameValue"
				},
				"groups": {
					"$ref": "#/definitions/UdaGroup"
				}
			},
			"example": {
				"forwardersList": [
					{
						"ipAddress": "192.168.99.98",
						"port": 5000
					},
					{
						"ipAddress": "2000::1",
						"port": 5001
					}
				],
				"forward": "Use Server Value",
				"dnsServers": [
					"dns.example.com",
					"dnsserver.example.com"
				],
				"udas": [
					{
						"name": "at1",
						"value": "true"
					},
					{
						"name": "test",
						"value": "vietnam"
					}
				],
				"groups": [
					{
						"name": "gr1",
						"udas": [
							{
								"name": "at1",
								"value": "false"
							}
						]
					},
					{
						"name": "gr2",
						"udas": [
							{
								"name": "testUDA",
								"value": "false"
							}
						]
					}
				]
			}
		},
		"DhcpPolicyTemplateRest": {
			"type": "object",
			"required": [
				"templateName",
				"policyLevel"
			],
			"properties": {
				"templateName": {
					"type": "string",
					"description": "Name of DHCP Policy Template"
				},
				"policyLevel": {
					"type": "string",
					"description": "Level of DHCP Policy Template"
				},
				"policies": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/policyData"
					}
				}
			},
			"example": {
				"templateName": "ExampleTemplate",
				"policyLevel": "Server",
				"policies": [
					{
						"policyName": "Access Control",
						"subPolicy": [
							{
								"policyName": "Access Control Enabled",
								"value": "True",
								"subPolicy": [
									{
										"policyName": "DefaultClass",
										"value": "0"
									},
									{
										"policyName": "ReceiveTimeout",
										"value": "2000"
									}
								]
							}
						]
					}
				]
			}
		},
		"policyData": {
			"type": "object",
			"properties": {
				"policyName": {
					"type": "string",
					"description": "policy Name"
				},
				"value": {
					"type": "string",
					"description": "policy Value"
				},
				"subPolicy": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/subPolicy1"
					}
				}
			}
		},
		"subPolicy1": {
			"title": "policy",
			"type": "object",
			"properties": {
				"policyName": {
					"type": "string",
					"description": "Name of policy"
				},
				"value": {
					"type": "string",
					"description": "Value of policy"
				},
				"subPolicy": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/subPolicy2"
					}
				}
			}
		},
		"subPolicy2": {
			"title": "policy",
			"type": "object",
			"properties": {
				"policyName": {
					"type": "string",
					"description": "Name of policy"
				},
				"value": {
					"type": "string",
					"description": "Value of policy"
				}
			}
		},
		"modifyDhcpPolicyTemplateRest": {
			"type": "object",
			"xml": {
				"name": "DhcpPolicyTemplateRest"
			},
			"properties": {
				"policies": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/policyData"
					}
				}
			},
			"example": {
				"policies": [
					{
						"policyName": "Access Control",
						"subPolicy": [
							{
								"policyName": "Access Control Enabled",
								"value": "True",
								"subPolicy": [
									{
										"policyName": "DefaultClass",
										"value": "0"
									},
									{
										"policyName": "ReceiveTimeout",
										"value": "2000"
									}
								]
							}
						]
					}
				]
			}
		},
		"NodeRec": {
			"type": "object",
			"description": "Node model",
			"required": [
				"name",
				"nodeType"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "Node name"
				},
				"nodeType": {
					"type": "string",
					"description": "Node type"
				},
				"uniqueID": {
					"type": "string"
				},
				"duid": {
					"type": "string"
				},
				"description": {
					"type": "string"
				},
				"udas": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/NameValue"
					}
				},
				"groups": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/UdaGroup"
					}
				}
			}
		},
		"NodeModel": {
			"type": "object",
			"description": "Node model",
			"required": [
				"name",
				"nodeType"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "Node name"
				},
				"nodeType": {
					"type": "string",
					"description": "Node type"
				},
				"uniqueID": {
					"type": "string"
				},
				"duid": {
					"type": "string"
				},
				"description": {
					"type": "string"
				},
				"macAddress": {
					"type": "string"
				},
				"udas": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/NameValue"
					}
				},
				"groups": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/UdaGroup"
					}
				}
			}
		},
		"LinkNodeToIPAddress": {
			"type": "object",
			"required": [
				"uniqueID",
				"toAddress",
				"addressType"
			],
			"properties": {
				"uniqueID": {
					"type": "string"
				},
				"toAddress": {
					"type": "array",
					"description": "toAddress field contain IP addresses with the same type",
					"items": {
						"type": "string"
					}
				},
				"addressType": {
					"type": "string",
					"description": "Address type.",
					"enum": [
						"V4",
						"V6"
					]
				}
			}
		},
		"UnLinkIPv4AddressesFromNodes": {
			"type": "object",
			"required": [
				"uniqueID",
				"address"
			],
			"properties": {
				"uniqueID": {
					"type": "string"
				},
				"unlinkIpAddress": {
					"type": "array",
					"description": "address field contain IPv4 address",
					"items": {
						"type": "string"
					}
				}
			}
		},
		"SubnetOrgRec": {
			"type": "object",
			"required": [
				"subnetOrgName"
			],
			"properties": {
				"subnetOrgName": {
					"type": "string",
					"description": "Name of the subnet organization.\n"
				},
				"dhcpServer": {
					"type": "string",
					"description": "FQDN of the DHCP Server.\n"
				},
				"dhcpOptionTemplate": {
					"type": "string",
					"description": "Name of the DHCP option template.\n"
				},
				"warningType": {
					"type": "integer"
				},
				"warningPercent": {
					"type": "integer"
				},
				"siteName": {
					"type": "string",
					"description": "The site name of the Windows 2000 site.\nDefaut value is same name as subnet organization\n."
				},
				"subnetAddresses": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/SubnetAddress"
					}
				},
				"globalAllocationPolicys": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/GlobalAllocationPolicy"
					}
				},
				"domainControllers": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/DomainController"
					}
				},
				"udas": {
					"$ref": "#/definitions/NameValue"
				},
				"groups": {
					"$ref": "#/definitions/UdaGroup"
				}
			},
			"example": {
				"subnetOrgName": "example",
				"dhcpServer": "dhcp.test.com",
				"dhcpOptionTemplate": "general",
				"warningType": 0,
				"warningPercent": 0,
				"siteName": "example",
				"subnetAddresses": [
					"10.10.10.0",
					"11.11.11.0"
				],
				"globalAllocationPolicys": [
					{
						"objectClass": "Server",
						"offset": "10"
					},
					{
						"objectClass": "Router",
						"offset": "-5"
					}
				],
				"domainControllers": [
					"controller.example.com",
					"controller1.example.com"
				],
				"udas": [
					{
						"name": "at1",
						"value": "true"
					}
				],
				"groups": [
					{
						"name": "gr1",
						"udas": [
							{
								"name": "at1",
								"value": "false"
							}
						]
					}
				]
			}
		},
		"SubnetAddress": {
			"type": "string"
		},
		"GlobalAllocationPolicy": {
			"type": "object",
			"description": "Global allocation policy",
			"required": [
				"objectClass, offset"
			],
			"properties": {
				"objectClass": {
					"type": "string"
				},
				"offset": {
					"type": "integer"
				}
			}
		},
		"DomainController": {
			"type": "string"
		},
		"macPool": {
			"type": "object",
			"required": [
				"macAddress",
				"hardwareType",
				"excludeFlag"
			],
			"properties": {
				"macAddress": {
					"type": "string",
					"description": "Mac Address of Mac Pool"
				},
				"hardwareType": {
					"type": "string",
					"description": "Hardware Type of Mac Pool"
				},
				"excludeFlag": {
					"type": "string",
					"description": "Exclude a MAC address from the pool"
				}
			}
		},
		"MacPoolList": {
			"type": "object",
			"xml": {
				"name": "list"
			},
			"properties": {
				"macPool": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/macPool"
					}
				}
			},
			"example": {
				"list": [
					{
						"macAddress": "2c549188c9e3",
						"hardwareType": "Ethernet",
						"excludeFlag": "true"
					},
					{
						"macAddress": "112233445566",
						"hardwareType": "Chaos",
						"excludeFlag": "false"
					}
				]
			}
		},
		"dellist": {
			"type": "object",
			"properties": {
				"macPool": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/delmacpool"
					}
				}
			},
			"xml": {
				"name": "list"
			},
			"example": {
				"list": [
					{
						"macAddress": "2c549188c9e3",
						"hardwareType": "Ethernet"
					},
					{
						"macAddress": "112233445566",
						"hardwareType": "Chaos"
					}
				]
			}
		},
		"delmacpool": {
			"type": "object",
			"required": [
				"macAddress",
				"hardwareType"
			],
			"properties": {
				"macAddress": {
					"type": "string",
					"description": "Mac Address of Mac Pool"
				},
				"hardwareType": {
					"type": "string",
					"description": "Hardware Type of Mac Pool"
				}
			}
		},
		"ACLTemplateRec": {
			"type": "object",
			"required": [
				"name"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "Name of ACL Template.\n"
				},
				"templateElements": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/TemplateElement"
					}
				}
			},
			"example": {
				"name": "example",
				"templateElements": [
					{
						"type": "Text",
						"value": "example",
						"include": false
					},
					{
						"type": "IPv4 Address",
						"value": "10.10.10.10",
						"include": false
					},
					{
						"type": "IPv4 Address",
						"value": "11.11.11.11",
						"include": true
					},
					{
						"type": "IPv6 Address",
						"value": "2000::1",
						"include": false
					}
				]
			}
		},
		"TemplateElement": {
			"type": "object",
			"description": "ACL Template Element(s)",
			"properties": {
				"type": {
					"type": "string"
				},
				"value": {
					"type": "string"
				},
				"include": {
					"type": "boolean"
				}
			}
		},
		"ACLTemplateModifyRec": {
			"type": "object",
			"title": "ACLTemplateRec",
			"xml": {
				"name": "ACLTemplateRec"
			},
			"properties": {
				"name": {
					"type": "string",
					"description": "Name of ACL Template.\n"
				},
				"templateElements": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/TemplateElement"
					}
				}
			},
			"example": {
				"name": "example",
				"templateElements": [
					{
						"type": "Text",
						"value": "example",
						"include": false
					},
					{
						"type": "IPv4 Address",
						"value": "10.10.10.10",
						"include": false
					},
					{
						"type": "IPv4 Address",
						"value": "11.11.11.11",
						"include": true
					},
					{
						"type": "IPv6 Address",
						"value": "2000::1",
						"include": false
					}
				]
			}
		},
		"SignZone": {
			"type": "object",
			"description": "Sign Zone Rest Model",
			"required": [
				"zoneName"
			],
			"properties": {
				"zoneName": {
					"type": "string",
					"description": "Name of the zone."
				},
				"generatePushScheduler": {
					"$ref": "#/definitions/SchedulerOptionsSignZone"
				}
			}
		},
		"SchedulerOptionsSignZone": {
			"type": "object",
			"description": "If the user provides value for this field, after zone is signed successfully, the server will also perform the Generate Push for all DNS Servers associated with the signed zone.",
			"xml": {
				"name": "SchedulerOptions"
			},
			"properties": {
				"runMode": {
					"type": "string",
					"description": "IN_FOREGROUND: run the job immediately.\n\nIN_BACKGROUND: run the job in background.",
					"enum": [
						"IN_BACKGROUND",
						"IN_FOREGROUND"
					]
				},
				"description": {
					"type": "string",
					"description": "Description of the job."
				},
				"sendEmail": {
					"type": "boolean",
					"description": "If the value is set to true then an email to be send when the job completed, it will require an email address is exist in toEmail field. The default is false."
				},
				"toEmail": {
					"type": "string",
					"description": "An email address of up to 255 characters. Multiple email addresses must be separated by a comma (,)."
				},
				"ccEmail": {
					"type": "string",
					"description": "An email address of up to 255 characters. Multiple email addresses must be separated by a comma (,)."
				}
			}
		}
	}
}