- Home
- API Enriched
- Bigip
- config
- Replace BIG-IP virtual server.
Replace BIG-IP virtual server.
const url = 'https://example-corp.console.ves.volterra.io/api/v1/api/production/us-east-1/namespaces/default/api/config/namespaces/example/bigip_virtual_servers/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":{"api_specification":{"api_definition":{"name":"example","namespace":"example"},"validation_all_spec_endpoints":{"fall_through_mode":{"fall_through_mode_allow":{},"fall_through_mode_custom":{"open_api_validation_rules":[{"action_block":{},"action_report":{},"action_skip":{},"api_endpoint":{"methods":["ANY"],"path":"example"},"api_group":"example","base_path":"example","metadata":{"description":"example","name":"example"}}]}},"settings":{"oversized_body_fail_validation":{},"oversized_body_skip_validation":{},"property_validation_settings_custom":{"queryParameters":{"allow_additional_parameters":{},"disallow_additional_parameters":{}}},"property_validation_settings_default":{}},"validation_mode":{"response_validation_mode_active":{"enforcement_block":{},"enforcement_report":{},"response_validation_properties":["PROPERTY_QUERY_PARAMETERS"]},"skip_response_validation":{},"skip_validation":{},"validation_mode_active":{"enforcement_block":{},"enforcement_report":{},"request_validation_properties":["PROPERTY_QUERY_PARAMETERS"]}}},"validation_custom_list":{"fall_through_mode":{"fall_through_mode_allow":{},"fall_through_mode_custom":{"open_api_validation_rules":[{"action_block":{},"action_report":{},"action_skip":{},"api_endpoint":{"methods":["ANY"],"path":"example"},"api_group":"example","base_path":"example","metadata":{"description":"example","name":"example"}}]}},"open_api_validation_rules":[{"any_domain":{},"api_endpoint":{"methods":["ANY"],"path":"example"},"api_group":"example","base_path":"example","metadata":{"description":"example","name":"example"},"specific_domain":"example","validation_mode":{"response_validation_mode_active":{"enforcement_block":{},"enforcement_report":{},"response_validation_properties":["PROPERTY_QUERY_PARAMETERS"]},"skip_response_validation":{},"skip_validation":{},"validation_mode_active":{"enforcement_block":{},"enforcement_report":{},"request_validation_properties":["PROPERTY_QUERY_PARAMETERS"]}}}],"settings":{"oversized_body_fail_validation":{},"oversized_body_skip_validation":{},"property_validation_settings_custom":{"queryParameters":{"allow_additional_parameters":{},"disallow_additional_parameters":{}}},"property_validation_settings_default":{}}},"validation_disabled":{}},"default_sensitive_data_policy":{},"disable_api_definition":{},"disable_api_discovery":{},"enable_api_discovery":{"api_crawler":{"api_crawler_config":{"domains":[{"domain":"example","simple_login":{"password":{"blindfold_secret_info":{"decryption_provider":"example","location":"example","store_provider":"example"},"clear_secret_info":{"provider":"example","url":"https://example.com"}},"user":"example"}}]},"disable_api_crawler":{}},"api_discovery_from_code_scan":{"code_base_integrations":[{"all_repos":{},"code_base_integration":{"name":"example","namespace":"example"},"selected_repos":{"api_code_repo":["example"]}}]},"custom_api_auth_discovery":{"api_discovery_ref":{"name":"example","namespace":"example"}},"default_api_auth_discovery":{},"disable_learn_from_redirect_traffic":{},"discovered_api_settings":{"purge_duration_for_inactive_discovered_apis":1},"enable_learn_from_redirect_traffic":{}},"sensitive_data_policy":{"sensitive_data_policy_ref":{"name":"example","namespace":"example"}}}}'};
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/bigip_virtual_servers/example \ --header 'Authorization: <Authorization>' \ --header 'Content-Type: application/json' \ --data '{ "metadata": { "annotations": {}, "description": "example", "disable": true, "labels": {}, "name": "example", "namespace": "example" }, "spec": { "api_specification": { "api_definition": { "name": "example", "namespace": "example" }, "validation_all_spec_endpoints": { "fall_through_mode": { "fall_through_mode_allow": {}, "fall_through_mode_custom": { "open_api_validation_rules": [ { "action_block": {}, "action_report": {}, "action_skip": {}, "api_endpoint": { "methods": [ "ANY" ], "path": "example" }, "api_group": "example", "base_path": "example", "metadata": { "description": "example", "name": "example" } } ] } }, "settings": { "oversized_body_fail_validation": {}, "oversized_body_skip_validation": {}, "property_validation_settings_custom": { "queryParameters": { "allow_additional_parameters": {}, "disallow_additional_parameters": {} } }, "property_validation_settings_default": {} }, "validation_mode": { "response_validation_mode_active": { "enforcement_block": {}, "enforcement_report": {}, "response_validation_properties": [ "PROPERTY_QUERY_PARAMETERS" ] }, "skip_response_validation": {}, "skip_validation": {}, "validation_mode_active": { "enforcement_block": {}, "enforcement_report": {}, "request_validation_properties": [ "PROPERTY_QUERY_PARAMETERS" ] } } }, "validation_custom_list": { "fall_through_mode": { "fall_through_mode_allow": {}, "fall_through_mode_custom": { "open_api_validation_rules": [ { "action_block": {}, "action_report": {}, "action_skip": {}, "api_endpoint": { "methods": [ "ANY" ], "path": "example" }, "api_group": "example", "base_path": "example", "metadata": { "description": "example", "name": "example" } } ] } }, "open_api_validation_rules": [ { "any_domain": {}, "api_endpoint": { "methods": [ "ANY" ], "path": "example" }, "api_group": "example", "base_path": "example", "metadata": { "description": "example", "name": "example" }, "specific_domain": "example", "validation_mode": { "response_validation_mode_active": { "enforcement_block": {}, "enforcement_report": {}, "response_validation_properties": [ "PROPERTY_QUERY_PARAMETERS" ] }, "skip_response_validation": {}, "skip_validation": {}, "validation_mode_active": { "enforcement_block": {}, "enforcement_report": {}, "request_validation_properties": [ "PROPERTY_QUERY_PARAMETERS" ] } } } ], "settings": { "oversized_body_fail_validation": {}, "oversized_body_skip_validation": {}, "property_validation_settings_custom": { "queryParameters": { "allow_additional_parameters": {}, "disallow_additional_parameters": {} } }, "property_validation_settings_default": {} } }, "validation_disabled": {} }, "default_sensitive_data_policy": {}, "disable_api_definition": {}, "disable_api_discovery": {}, "enable_api_discovery": { "api_crawler": { "api_crawler_config": { "domains": [ { "domain": "example", "simple_login": { "password": { "blindfold_secret_info": { "decryption_provider": "example", "location": "example", "store_provider": "example" }, "clear_secret_info": { "provider": "example", "url": "https://example.com" } }, "user": "example" } } ] }, "disable_api_crawler": {} }, "api_discovery_from_code_scan": { "code_base_integrations": [ { "all_repos": {}, "code_base_integration": { "name": "example", "namespace": "example" }, "selected_repos": { "api_code_repo": [ "example" ] } } ] }, "custom_api_auth_discovery": { "api_discovery_ref": { "name": "example", "namespace": "example" } }, "default_api_auth_discovery": {}, "disable_learn_from_redirect_traffic": {}, "discovered_api_settings": { "purge_duration_for_inactive_discovered_apis": 1 }, "enable_learn_from_redirect_traffic": {} }, "sensitive_data_policy": { "sensitive_data_policy_ref": { "name": "example", "namespace": "example" } } } }'Shape of the BIG-IP virtual server 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
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
object
object
object
Required: YES.
Fall Through Rule for a specific endpoint, base-path, or API group.
object
object
object
object
object
Methods to be matched.
Path to be matched Required: YES.
Exclusive with [api_endpoint base_path] The API group which this validation applies to.
Exclusive with [api_endpoint api_group] The base path which this validation applies to.
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
object
object
object
object
object
object
object
object
object
object
List of properties of the response to validate according to the OpenAPI specification file (a.k.a. Swagger)
Required: YES.
object
object
object
object
object
List of properties of the request to validate according to the OpenAPI specification file (a.k.a. Swagger)
Required: YES.
object
object
object
object
Required: YES.
Fall Through Rule for a specific endpoint, base-path, or API group.
object
object
object
object
object
Methods to be matched.
Path to be matched Required: YES.
Exclusive with [api_endpoint base_path] The API group which this validation applies to.
Exclusive with [api_endpoint api_group] The base path which this validation applies to.
object
Human readable description.
This is the name of the message. The value of name has to follow DNS-1035 format. Required: YES.
Required: YES.
OpenAPI Validation Rule for a specific endpoint, base-path, or API group.
object
object
object
Methods to be matched.
Path to be matched Required: YES.
Exclusive with [api_endpoint base_path] The API group which this validation applies to.
Exclusive with [api_endpoint api_group] The base path which this validation applies to.
object
Human readable description.
This is the name of the message. The value of name has to follow DNS-1035 format. Required: YES.
Exclusive with [any_domain] The rule will apply for a specific domain.
object
object
object
object
List of properties of the response to validate according to the OpenAPI specification file (a.k.a. Swagger)
Required: YES.
object
object
object
object
object
List of properties of the request to validate according to the OpenAPI specification file (a.k.a. Swagger)
Required: YES.
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
Enter domains and their credentials to allow authenticated API crawling. You can only include domains you own that are associated with this Load Balancer.
Required: YES.
The DomainConfiguration message.
object
Select the domain to execute API Crawling with given credentials.
Required: YES.
object
object
object
Name of the Secret Management Access object that contains information about the backend Secret Management service.
Location is the uri_ref. It could be in URL format for string:/// Or it could be a path if the store provider is an HTTP/HTTPS location Required: YES.
Name of the Secret Management Access object that contains information about the store to GET encrypted bytes This field needs to be provided only if the URL scheme is not string:///.
object
Name of the Secret Management Access object that contains information about the store to GET encrypted bytes This field needs to be provided only if the URL scheme is not string:///.
URL of the secret. Currently supported URL schemes is string:///. For string:/// scheme, Secret needs to be encoded Base64 format. When asked for this secret, caller will GET Secret bytes after Base64 decoding. Required: YES.
Enter the username to assign credentials for the selected domain to crawl.
object
object
Required: YES.
object
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
Code repository which contain API endpoints
Required: YES.
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
object
object
Inactive discovered API will be deleted after configured duration.
object
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.
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