# This is an automatically generated code sample.
# To make this code sample work in your Oracle Cloud tenancy,
# please replace the values for any parameters whose current values do not fit
# your use case (such as resource IDs, strings containing ‘EXAMPLE’ or ‘unique_id’, and
# boolean, number, and enum parameters with values not fitting your use case).

import oci

# Create a default config using DEFAULT profile in default location
# Refer to
# https://docs.cloud.oracle.com/en-us/iaas/Content/API/Concepts/sdkconfig.htm#SDK_and_CLI_Configuration_File
# for more info
config = oci.config.from_file()


# Initialize service client with default config file
network_load_balancer_client = oci.network_load_balancer.NetworkLoadBalancerClient(
    config)


# Send the request to service, some parameters are not required, see API
# doc for more info
update_backend_set_response = network_load_balancer_client.update_backend_set(
    network_load_balancer_id="ocid1.test.oc1..<unique_ID>EXAMPLE-networkLoadBalancerId-Value",
    update_backend_set_details=oci.network_load_balancer.models.UpdateBackendSetDetails(
        policy="EXAMPLE-policy-Value",
        is_preserve_source=False,
        is_fail_open=True,
        is_instant_failover_enabled=True,
        ip_version="IPV4",
        backends=[
            oci.network_load_balancer.models.BackendDetails(
                port=36958,
                name="EXAMPLE-name-Value",
                ip_address="EXAMPLE-ipAddress-Value",
                target_id="ocid1.test.oc1..<unique_ID>EXAMPLE-targetId-Value",
                weight=66,
                is_backup=False,
                is_drain=True,
                is_offline=True)],
        health_checker=oci.network_load_balancer.models.HealthCheckerDetails(
            protocol="DNS",
            port=698,
            retries=463,
            timeout_in_millis=95,
            interval_in_millis=477,
            url_path="EXAMPLE-urlPath-Value",
            response_body_regex="EXAMPLE-responseBodyRegex-Value",
            return_code=226,
            request_data="SEUyGAiyVN9EUL8HF2ft",
            response_data="6jCIKs1lJIMHx8ZZ7IrH",
            dns=oci.network_load_balancer.models.DnsHealthCheckerDetails(
                domain_name="EXAMPLE-domainName-Value",
                transport_protocol="UDP",
                query_class="IN",
                query_type="A",
                rcodes=[
                            "NOERROR",
                            "SERVFAIL",
                            "NXDOMAIN",
                            "REFUSED"]))),
    backend_set_name="EXAMPLE-backendSetName-Value",
    opc_request_id="LTLXVCUK8GVXBG4C7HTD<unique_ID>",
    opc_retry_token="EXAMPLE-opcRetryToken-Value",
    if_match="EXAMPLE-ifMatch-Value")

# Get the data from response
print(update_backend_set_response.headers)