{ "id":"/axapi/v3/slb/template/policy/{name}/forward-policy/source/{name}", "type":"object", "node-type":"list", "title":"source", "partition-visibility":"shared", "description":"proxy source list", "properties":{ "name":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":63, "partition-visibility":"shared", "description":"source destination match rule name", "optional":false }, "match-class-list":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":63, "partition-visibility":"shared", "not":"match-any", "description":"Class List Name", "optional":true }, "match-any":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "not":"match-class-list", "description":"Match any source", "optional":true }, "match-authorize-policy":{ "type":"string", "format":"string", "minLength":1, "maxLength":128, "partition-visibility":"shared", "$ref":"/axapi/v3/aam/authorization/policy", "description":"Authorize-policy for user and group based policy", "optional":true }, "priority":{ "type":"number", "format":"number", "minimum":1, "maximum":2000, "partition-visibility":"shared", "description":"Priority of the source(higher the number higher the priority, default 0)", "optional":true }, "uuid":{ "type":"string", "format":"string", "minLength":1, "maxLength":64, "partition-visibility":"shared", "modify-not-allowed":1, "description":"uuid of the object", "optional":true }, "user-tag":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":127, "partition-visibility":"shared", "description":"Customized tag", "optional":true }, "sampling-enable":{ "type":"array", "minItems":1, "items":{ "type":"object" }, "uniqueItems":true, "array":[ { "properties":{ "counters1":{ "type":"string", "format":"enum", "partition-visibility":"shared", "description":"'all': all; 'hits': Number of requests matching this source rule; 'destination-match-not-found': Number of requests without matching destination rule; 'no-host-info': Failed to parse ip or host information from request; ", "enum":[ "all", "hits", "destination-match-not-found", "no-host-info" ] } } } ] }, "destination":{ "type":"object", "$ref":"/axapi/v3/slb/template/policy/{name}/forward-policy/source/{name}/destination", "properties":{ "adv-match-list":{ "type":"array", "minItems":1, "items":{ "type":"adv-match" }, "uniqueItems":true, "$ref":"/axapi/v3/slb/template/policy/{name}/forward-policy/source/{name}/destination/adv-match/{priority}", "array":[ { "properties":{ "priority":{ "type":"number", "format":"number", "minimum":1, "maximum":1000, "partition-visibility":"shared", "description":"Rule priority (1000 is highest)", "optional":false }, "match-host":{ "type":"string", "format":"string", "minLength":1, "maxLength":128, "partition-visibility":"shared", "$ref":"/axapi/v3/class-list", "description":"Match request host (HTTP stage) or SNI/SAN (SSL stage)", "optional":true }, "match-http-content-encoding":{ "type":"string", "format":"string", "minLength":1, "maxLength":128, "partition-visibility":"shared", "$ref":"/axapi/v3/class-list", "description":"Match the value of HTTP header \"Content-Encoding\"", "optional":true }, "match-http-content-length-range-begin":{ "type":"number", "format":"number", "minimum":0, "maximum":2147483647, "partition-visibility":"shared", "description":"Match the value of HTTP header \"Content-Length\" with an inclusive range", "optional":true }, "match-http-content-length-range-end":{ "type":"number", "format":"number", "minimum":0, "maximum":2147483647, "partition-visibility":"shared", "description":"End of the \"Content-Length\" range", "optional":true }, "match-http-content-type":{ "type":"string", "format":"string", "minLength":1, "maxLength":128, "partition-visibility":"shared", "$ref":"/axapi/v3/class-list", "description":"Match the value of HTTP header \"Content-Type\"", "optional":true }, "match-http-header":{ "type":"string", "format":"string", "minLength":1, "maxLength":128, "partition-visibility":"shared", "$ref":"/axapi/v3/class-list", "description":"Matching the name of all request headers", "optional":true }, "match-http-method-connect":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Match HTTP request method CONNECT", "optional":true }, "match-http-method-delete":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Match HTTP request method DELETE", "optional":true }, "match-http-method-get":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Match HTTP request method GET", "optional":true }, "match-http-method-head":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Match HTTP request method HEAD", "optional":true }, "match-http-method-options":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Match HTTP request method OPTIONS", "optional":true }, "match-http-method-patch":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Match HTTP request method PATCH", "optional":true }, "match-http-method-post":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Match HTTP request method POST", "optional":true }, "match-http-method-put":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Match HTTP request method PUT", "optional":true }, "match-http-method-trace":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Match HTTP request method TRACE", "optional":true }, "match-http-request-file-extension":{ "type":"string", "format":"string", "minLength":1, "maxLength":128, "partition-visibility":"shared", "$ref":"/axapi/v3/class-list", "description":"Match file extension of URL in HTTP request line", "optional":true }, "match-http-url-regex":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":127, "partition-visibility":"shared", "description":"Match URI in HTTP request line by given regular expression", "optional":true }, "match-http-url":{ "type":"string", "format":"string", "minLength":1, "maxLength":128, "partition-visibility":"shared", "$ref":"/axapi/v3/class-list", "description":"Match URL in HTTP request line", "optional":true }, "match-http-user-agent":{ "type":"string", "format":"string", "minLength":1, "maxLength":128, "partition-visibility":"shared", "$ref":"/axapi/v3/class-list", "description":"Matching the value of HTTP header \"User-Agent\"", "optional":true }, "match-server-address":{ "type":"string", "format":"string", "minLength":1, "maxLength":128, "partition-visibility":"shared", "$ref":"/axapi/v3/class-list", "description":"Match target server IP address", "optional":true }, "match-server-port":{ "type":"number", "format":"number", "minimum":1, "maximum":65535, "partition-visibility":"shared", "not":"match-server-port-range-begin", "description":"Match target server port number", "optional":true }, "match-server-port-range-begin":{ "type":"number", "format":"number", "minimum":1, "maximum":65535, "partition-visibility":"shared", "not":"match-server-port", "description":"Math targer server port range inclusively", "optional":true }, "match-server-port-range-end":{ "type":"number", "format":"number", "minimum":1, "maximum":65535, "partition-visibility":"shared", "description":"End of port range", "optional":true }, "match-time-range":{ "type":"string", "format":"string", "minLength":1, "maxLength":128, "partition-visibility":"shared", "$ref":"/axapi/v3/slb/forward-proxy/time-range", "description":"Enable rule in this time-range", "optional":true }, "match-web-category-list":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":63, "partition-visibility":"shared", "$ref":"/axapi/v3/web-category/category-list", "description":"Match web-category list", "optional":true }, "match-web-reputation-scope":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":63, "partition-visibility":"shared", "$ref":"/axapi/v3/web-category/reputation-scope", "description":"Match web-reputation scope", "optional":true }, "disable-reqmod-icap":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Disable REQMOD ICAP template", "optional":true }, "disable-respmod-icap":{ "type":"number", "format":"flag", "default":0, "partition-visibility":"shared", "description":"Disable RESPMOD ICAP template", "optional":true }, "notify-page":{ "type":"string", "format":"string", "minLength":1, "maxLength":128, "partition-visibility":"shared", "$ref":"/axapi/v3/slb/forward-proxy/notify-page", "description":"Send notify-page to client", "optional":true }, "action":{ "type":"string", "format":"string", "minLength":1, "maxLength":63, "partition-visibility":"shared", "not":"dual-stack-action", "description":"Forwading action of this rule", "optional":true }, "dual-stack-action":{ "type":"string", "format":"string", "minLength":1, "maxLength":63, "partition-visibility":"shared", "not":"action", "description":"Forwarding action of this rule", "optional":true }, "uuid":{ "type":"string", "format":"string", "minLength":1, "maxLength":64, "partition-visibility":"shared", "modify-not-allowed":1, "description":"uuid of the object", "optional":true }, "user-tag":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":127, "partition-visibility":"shared", "description":"Customized tag", "optional":true }, "sampling-enable":{ "type":"array", "minItems":1, "items":{ "type":"object" }, "uniqueItems":true, "array":[ { "properties":{ "counters1":{ "type":"string", "format":"enum", "partition-visibility":"shared", "description":"'all': all; 'hits': Number of requests hit this rule; ", "enum":[ "all", "hits" ] } } } ] } }, "required":[ "priority" ] } ] }, "class-list-list":{ "type":"array", "minItems":1, "items":{ "type":"class-list" }, "uniqueItems":true, "$ref":"/axapi/v3/slb/template/policy/{name}/forward-policy/source/{name}/destination/class-list/{dest-class-list}", "array":[ { "properties":{ "dest-class-list":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":63, "partition-visibility":"shared", "description":"Destination Class List Name", "optional":false }, "action":{ "type":"string", "format":"string", "minLength":1, "maxLength":63, "partition-visibility":"shared", "description":"Action to be performed", "optional":true }, "dual-stack-action":{ "type":"string", "format":"string", "minLength":1, "maxLength":63, "partition-visibility":"shared", "description":"Dual-stack action to be performed", "optional":true }, "type":{ "type":"string", "format":"enum", "partition-visibility":"shared", "description":"'host': Match hostname; 'url': Match URL; 'ip': Match destination IP address; ", "enum":[ "host", "url", "ip" ], "optional":true }, "priority":{ "type":"number", "format":"number", "minimum":1, "maximum":1024, "partition-visibility":"shared", "description":"Priority value of the action(higher the number higher the priority)", "optional":true }, "uuid":{ "type":"string", "format":"string", "minLength":1, "maxLength":64, "partition-visibility":"shared", "modify-not-allowed":1, "description":"uuid of the object", "optional":true } }, "required":[ "dest-class-list" ] } ] }, "web-reputation-scope-list":{ "type":"array", "minItems":1, "items":{ "type":"web-reputation-scope" }, "uniqueItems":true, "$ref":"/axapi/v3/slb/template/policy/{name}/forward-policy/source/{name}/destination/web-reputation-scope/{web-reputation-scope}", "array":[ { "properties":{ "web-reputation-scope":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":63, "partition-visibility":"shared", "$ref":"/axapi/v3/web-category/reputation-scope", "description":"Destination Web Reputation Scope Name", "optional":false }, "action":{ "type":"string", "format":"string", "minLength":1, "maxLength":63, "partition-visibility":"shared", "description":"Action to be performed", "optional":true }, "dual-stack-action":{ "type":"string", "format":"string", "minLength":1, "maxLength":63, "partition-visibility":"shared", "description":"Dual-stack action to be performed", "optional":true }, "type":{ "type":"string", "format":"enum", "partition-visibility":"shared", "description":"'host': Match hostname; 'url': match URL; ", "enum":[ "host", "url" ], "optional":true }, "priority":{ "type":"number", "format":"number", "minimum":1, "maximum":1024, "partition-visibility":"shared", "description":"Priority value of the action(higher the number higher the priority)", "optional":true }, "uuid":{ "type":"string", "format":"string", "minLength":1, "maxLength":64, "partition-visibility":"shared", "modify-not-allowed":1, "description":"uuid of the object", "optional":true } }, "required":[ "web-reputation-scope" ] } ] }, "web-category-list-list":{ "type":"array", "minItems":1, "items":{ "type":"web-category-list" }, "uniqueItems":true, "$ref":"/axapi/v3/slb/template/policy/{name}/forward-policy/source/{name}/destination/web-category-list/{web-category-list}", "array":[ { "properties":{ "web-category-list":{ "type":"string", "format":"string-rlx", "minLength":1, "maxLength":63, "partition-visibility":"shared", "$ref":"/axapi/v3/web-category/category-list", "description":"Destination Web Category List Name", "optional":false }, "action":{ "type":"string", "format":"string", "minLength":1, "maxLength":63, "partition-visibility":"shared", "description":"Action to be performed", "optional":true }, "dual-stack-action":{ "type":"string", "format":"string", "minLength":1, "maxLength":63, "partition-visibility":"shared", "description":"Dual-stack action to be performed", "optional":true }, "type":{ "type":"string", "format":"enum", "partition-visibility":"shared", "description":"'host': Match hostname; 'url': match URL; ", "enum":[ "host", "url" ], "optional":true }, "priority":{ "type":"number", "format":"number", "minimum":1, "maximum":1024, "partition-visibility":"shared", "description":"Priority value of the action(higher the number higher the priority)", "optional":true }, "uuid":{ "type":"string", "format":"string", "minLength":1, "maxLength":64, "partition-visibility":"shared", "modify-not-allowed":1, "description":"uuid of the object", "optional":true } }, "required":[ "web-category-list" ] } ] }, "any":{ "type":"object", "$ref":"/axapi/v3/slb/template/policy/{name}/forward-policy/source/{name}/destination/any", "properties":{ "action":{ "type":"string", "format":"string", "minLength":1, "maxLength":63, "partition-visibility":"shared", "not":"dual-stack-action", "description":"Action to be performed" }, "dual-stack-action":{ "type":"string", "format":"string", "minLength":1, "maxLength":63, "partition-visibility":"shared", "not":"action", "description":"Dual-stack action to be performed" }, "uuid":{ "type":"string", "format":"string", "minLength":1, "maxLength":64, "partition-visibility":"shared", "modify-not-allowed":1, "description":"uuid of the object" }, "sampling-enable":{ "type":"array", "minItems":1, "items":{ "type":"object" }, "uniqueItems":true, "array":[ { "properties":{ "counters1":{ "type":"string", "format":"enum", "partition-visibility":"shared", "description":"'all': all; 'hits': Number of requests matching this destination rule; ", "enum":[ "all", "hits" ] } } } ] } } } } } }, "object-keys":[ "name" ], "required":[ "name" ] }