# 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
create_backend_set_response = network_load_balancer_client.create_backend_set(
    network_load_balancer_id="ocid1.test.oc1..<unique_ID>EXAMPLE-networkLoadBalancerId-Value",
    create_backend_set_details=oci.network_load_balancer.models.CreateBackendSetDetails(
        name="EXAMPLE-name-Value",
        policy="THREE_TUPLE",
        health_checker=oci.network_load_balancer.models.HealthCheckerDetails(
            protocol="HTTP",
            port=329,
            retries=281,
            timeout_in_millis=721,
            interval_in_millis=561,
            url_path="EXAMPLE-urlPath-Value",
            response_body_regex="EXAMPLE-responseBodyRegex-Value",
            return_code=728,
            request_data="SFGGaA4GlEMiKD4a1E9D",
            response_data="9NlhUGrUzBTJM21V0ljI",
            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"])),
        is_preserve_source=False,
        is_fail_open=True,
        is_instant_failover_enabled=True,
        ip_version="IPV4",
        backends=[
            oci.network_load_balancer.models.BackendDetails(
                port=51397,
                name="EXAMPLE-name-Value",
                ip_address="EXAMPLE-ipAddress-Value",
                target_id="ocid1.test.oc1..<unique_ID>EXAMPLE-targetId-Value",
                weight=12,
                is_backup=False,
                is_drain=True,
                is_offline=True)]),
    opc_request_id="TW8U33T2NMHTB9UQUK3T<unique_ID>",
    opc_retry_token="EXAMPLE-opcRetryToken-Value",
    if_match="EXAMPLE-ifMatch-Value")

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