- Home
- API Enriched
- Network Security
- config
- Replace Forward Proxy Policy.
Replace Forward Proxy Policy.
const url = 'https://example-corp.console.ves.volterra.io/api/v1/api/production/us-east-1/namespaces/default/api/config/namespaces/example/forward_proxy_policys/example';const options = { method: 'PUT', headers: {Authorization: '<Authorization>', 'Content-Type': 'application/json'}, body: '{"metadata":{"annotations":{},"description":"example","disable":true,"labels":{},"name":"example","namespace":"example"},"spec":{"allow_all":{},"allow_list":{"default_action_allow":{},"default_action_deny":{},"default_action_next_policy":{},"dest_list":[{"ipv6_prefixes":["example"],"port_ranges":"example","prefixes":["example"]}],"http_list":[{"any_path":{},"exact_value":"example","path_exact_value":"example","path_prefix_value":"example","path_regex_value":"example","regex_value":"example","suffix_value":"example"}],"tls_list":[{"exact_value":"example","regex_value":"example","suffix_value":"example"}]},"any_proxy":{},"deny_list":{"default_action_allow":{},"default_action_deny":{},"default_action_next_policy":{},"dest_list":[{"ipv6_prefixes":["example"],"port_ranges":"example","prefixes":["example"]}],"http_list":[{"any_path":{},"exact_value":"example","path_exact_value":"example","path_prefix_value":"example","path_regex_value":"example","regex_value":"example","suffix_value":"example"}],"tls_list":[{"exact_value":"example","regex_value":"example","suffix_value":"example"}]},"drp_http_connect":{},"network_connector":{"name":"example","namespace":"example"},"proxy_label_selector":{"expressions":["example"]},"rule_list":{"rules":[{"action":"DENY","all_destinations":{},"all_sources":{},"dst_asn_list":{"as_numbers":[1]},"dst_asn_set":{"name":"example","namespace":"example"},"dst_ip_prefix_set":{"name":"example","namespace":"example"},"dst_label_selector":{"expressions":["example"]},"dst_prefix_list":{"prefixes":["example"]},"http_list":{"http_list":[{"any_path":{},"exact_value":"example","path_exact_value":"example","path_prefix_value":"example","path_regex_value":"example","regex_value":"example","suffix_value":"example"}]},"ip_prefix_set":{"name":"example","namespace":"example"},"label_selector":{"expressions":["example"]},"metadata":{"description":"example","name":"example"},"no_http_connect_port":{},"port_matcher":{"invert_matcher":true,"ports":["example"]},"prefix_list":{"prefixes":["example"]},"tls_list":{"tls_list":[{"exact_value":"example","regex_value":"example","suffix_value":"example"}]},"url_category_list":{"url_categories":["UNCATEGORIZED"]}}]}}}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PUT \ --url https://example-corp.console.ves.volterra.io/api/v1/api/production/us-east-1/namespaces/default/api/config/namespaces/example/forward_proxy_policys/example \ --header 'Authorization: <Authorization>' \ --header 'Content-Type: application/json' \ --data '{ "metadata": { "annotations": {}, "description": "example", "disable": true, "labels": {}, "name": "example", "namespace": "example" }, "spec": { "allow_all": {}, "allow_list": { "default_action_allow": {}, "default_action_deny": {}, "default_action_next_policy": {}, "dest_list": [ { "ipv6_prefixes": [ "example" ], "port_ranges": "example", "prefixes": [ "example" ] } ], "http_list": [ { "any_path": {}, "exact_value": "example", "path_exact_value": "example", "path_prefix_value": "example", "path_regex_value": "example", "regex_value": "example", "suffix_value": "example" } ], "tls_list": [ { "exact_value": "example", "regex_value": "example", "suffix_value": "example" } ] }, "any_proxy": {}, "deny_list": { "default_action_allow": {}, "default_action_deny": {}, "default_action_next_policy": {}, "dest_list": [ { "ipv6_prefixes": [ "example" ], "port_ranges": "example", "prefixes": [ "example" ] } ], "http_list": [ { "any_path": {}, "exact_value": "example", "path_exact_value": "example", "path_prefix_value": "example", "path_regex_value": "example", "regex_value": "example", "suffix_value": "example" } ], "tls_list": [ { "exact_value": "example", "regex_value": "example", "suffix_value": "example" } ] }, "drp_http_connect": {}, "network_connector": { "name": "example", "namespace": "example" }, "proxy_label_selector": { "expressions": [ "example" ] }, "rule_list": { "rules": [ { "action": "DENY", "all_destinations": {}, "all_sources": {}, "dst_asn_list": { "as_numbers": [ 1 ] }, "dst_asn_set": { "name": "example", "namespace": "example" }, "dst_ip_prefix_set": { "name": "example", "namespace": "example" }, "dst_label_selector": { "expressions": [ "example" ] }, "dst_prefix_list": { "prefixes": [ "example" ] }, "http_list": { "http_list": [ { "any_path": {}, "exact_value": "example", "path_exact_value": "example", "path_prefix_value": "example", "path_regex_value": "example", "regex_value": "example", "suffix_value": "example" } ] }, "ip_prefix_set": { "name": "example", "namespace": "example" }, "label_selector": { "expressions": [ "example" ] }, "metadata": { "description": "example", "name": "example" }, "no_http_connect_port": {}, "port_matcher": { "invert_matcher": true, "ports": [ "example" ] }, "prefix_list": { "prefixes": [ "example" ] }, "tls_list": { "tls_list": [ { "exact_value": "example", "regex_value": "example", "suffix_value": "example" } ] }, "url_category_list": { "url_categories": [ "UNCATEGORIZED" ] } } ] } } }'Shape of the Forward Proxy Policy replace specification.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Namespace This defines the workspace within which each the configuration object is to be created. Must be a DNS_LABEL format. For a namespace object itself, namespace value will be ""
Name The configuration object to be replaced will be looked up by name.
Request Bodyrequired
Section titled “Request Bodyrequired”This is the input message of the ‘Replace’ RPC.
object
object
Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects.
object
Human readable description for the object.
A value of true will administratively disable the object.
Map of string keys and values that can be used to organize and categorize (scope and select) objects as chosen by the user. Values specified here will be used by selector expression.
object
This is the name of configuration object. It has to be unique within the namespace. It can only be specified during create API and cannot be changed during replace API. The value of name has to follow DNS-1035 format. Required: YES.
This defines the workspace within which each the configuration object is to be created. Must be a DNS_LABEL format. For a namespace object itself, namespace value will be ""
object
object
object
object
object
object
L4 destinations for non-HTTP and non-TLS connections and TLS connections without SNI.
L4 Destination consisting of IPv4 Prefixes and TCP Port Range.
object
Destination IPv6 prefixes.
A string containing a comma separated list of port ranges. Each port range consists of a single port or two ports separated by ”-”. Required: YES.
Destination IPv4 prefixes.
URLs for HTTP connections.
URL strings in form “HTTP://
object
object
Exclusive with [regex_value suffix_value] Exact domain name.
Exclusive with [any_path path_prefix_value path_regex_value] Exact Path to match.
Exclusive with [any_path path_exact_value path_regex_value] Prefix of Path e.g “/abc/xyz” will match “/abc/xyz/.*”
Exclusive with [any_path path_exact_value path_prefix_value] Regular Expression value for the Path to match.
Exclusive with [exact_value suffix_value] Regular Expression value for the domain name.
Exclusive with [exact_value regex_value] Suffix of domain names e.g “xyz.com” will match “*.xyz.com”
Domains in SNI for TLS connections.
Domains names.
object
Exclusive with [regex_value suffix_value] Exact domain name.
Exclusive with [exact_value suffix_value] Regular Expression value for the domain name.
Exclusive with [exact_value regex_value] Suffix of domain name e.g “xyz.com” will match “*.xyz.com” and “xyz.com”
object
object
object
object
object
L4 destinations for non-HTTP and non-TLS connections and TLS connections without SNI.
L4 Destination consisting of IPv4 Prefixes and TCP Port Range.
object
Destination IPv6 prefixes.
A string containing a comma separated list of port ranges. Each port range consists of a single port or two ports separated by ”-”. Required: YES.
Destination IPv4 prefixes.
URLs for HTTP connections.
URL strings in form “HTTP://
object
object
Exclusive with [regex_value suffix_value] Exact domain name.
Exclusive with [any_path path_prefix_value path_regex_value] Exact Path to match.
Exclusive with [any_path path_exact_value path_regex_value] Prefix of Path e.g “/abc/xyz” will match “/abc/xyz/.*”
Exclusive with [any_path path_exact_value path_prefix_value] Regular Expression value for the Path to match.
Exclusive with [exact_value suffix_value] Regular Expression value for the domain name.
Exclusive with [exact_value regex_value] Suffix of domain names e.g “xyz.com” will match “*.xyz.com”
Domains in SNI for TLS connections.
Domains names.
object
Exclusive with [regex_value suffix_value] Exact domain name.
Exclusive with [exact_value suffix_value] Regular Expression value for the domain name.
Exclusive with [exact_value regex_value] Suffix of domain name e.g “xyz.com” will match “*.xyz.com” and “xyz.com”
object
object
When a configuration object(e.g. Virtual_host) refers to another(e.g route) then name will hold the referred object’s(e.g. Route’s) name. Required: YES.
When a configuration object(e.g. Virtual_host) refers to another(e.g route) then namespace will hold the referred object’s(e.g. Route’s) namespace.
When a configuration object(e.g. Virtual_host) refers to another(e.g route) then tenant will hold the referred object’s(e.g. Route’s) tenant.
object
Expressions contains the Kubernetes style label expression for selections. Required: YES.
object
List of custom rules
Required: YES.
URL(s) and domains policy for forward proxy for a connection type (TLS or HTTP)
object
object
object
object
An unordered set of RFC 6793 defined 4-byte AS numbers that can be used to create allow or deny lists for use in network policy or service policy. It can be used to create the allow list only for DNS Load Balancer. Required: YES.
object
When a configuration object(e.g. Virtual_host) refers to another(e.g route) then name will hold the referred object’s(e.g. Route’s) name. Required: YES.
When a configuration object(e.g. Virtual_host) refers to another(e.g route) then namespace will hold the referred object’s(e.g. Route’s) namespace.
When a configuration object(e.g. Virtual_host) refers to another(e.g route) then tenant will hold the referred object’s(e.g. Route’s) tenant.
object
When a configuration object(e.g. Virtual_host) refers to another(e.g route) then name will hold the referred object’s(e.g. Route’s) name. Required: YES.
When a configuration object(e.g. Virtual_host) refers to another(e.g route) then namespace will hold the referred object’s(e.g. Route’s) namespace.
When a configuration object(e.g. Virtual_host) refers to another(e.g route) then tenant will hold the referred object’s(e.g. Route’s) tenant.
object
Expressions contains the Kubernetes style label expression for selections. Required: YES.
object
List of IPv4 prefixes that represent an endpoint.
object
URLs for HTTP connections.
URL strings in form “HTTP://
object
object
Exclusive with [regex_value suffix_value] Exact domain name.
Exclusive with [any_path path_prefix_value path_regex_value] Exact Path to match.
Exclusive with [any_path path_exact_value path_regex_value] Prefix of Path e.g “/abc/xyz” will match “/abc/xyz/.*”
Exclusive with [any_path path_exact_value path_prefix_value] Regular Expression value for the Path to match.
Exclusive with [exact_value suffix_value] Regular Expression value for the domain name.
Exclusive with [exact_value regex_value] Suffix of domain names e.g “xyz.com” will match “*.xyz.com”
object
When a configuration object(e.g. Virtual_host) refers to another(e.g route) then name will hold the referred object’s(e.g. Route’s) name. Required: YES.
When a configuration object(e.g. Virtual_host) refers to another(e.g route) then namespace will hold the referred object’s(e.g. Route’s) namespace.
When a configuration object(e.g. Virtual_host) refers to another(e.g route) then tenant will hold the referred object’s(e.g. Route’s) tenant.
object
Expressions contains the Kubernetes style label expression for selections. Required: YES.
object
Human readable description.
This is the name of the message. The value of name has to follow DNS-1035 format. Required: YES.
object
object
Invert the match result.
A list of strings, each of which is a single port value or a tuple of start and end port values separated by ”-”. The start and end values are considered to be part of the range. Required: YES.
object
List of IPv4 prefixes that represent an endpoint.
object
Domains in SNI for TLS connections.
Domains names.
object
Exclusive with [regex_value suffix_value] Exact domain name.
Exclusive with [exact_value suffix_value] Regular Expression value for the domain name.
Exclusive with [exact_value regex_value] Suffix of domain name e.g “xyz.com” will match “*.xyz.com” and “xyz.com”
object
List of URL categories to be selected
Required: YES.
Responses
Section titled “Responses”A successful response.
object
Examplegenerated
{}Returned when operation is not authorized.
Examplegenerated
exampleReturned when there is no permission to access resource.
Examplegenerated
exampleReturned when resource is not found.
Examplegenerated
exampleReturned when operation on resource is conflicting with current value.
Examplegenerated
exampleReturned when operation has been rejected as it is happening too frequently.
Examplegenerated
exampleReturned when server encountered an error in processing API.
Examplegenerated
exampleReturned when service is unavailable temporarily.
Examplegenerated
exampleReturned when server timed out processing request.
Examplegenerated
example