# 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
core_client = oci.core.VirtualNetworkClient(config)


# Send the request to service, some parameters are not required, see API
# doc for more info
create_virtual_circuit_response = core_client.create_virtual_circuit(
    create_virtual_circuit_details=oci.core.models.CreateVirtualCircuitDetails(
        compartment_id="ocid1.test.oc1..<unique_ID>EXAMPLE-compartmentId-Value",
        type="PRIVATE",
        bandwidth_shape_name="EXAMPLE-bandwidthShapeName-Value",
        cross_connect_mappings=[
            oci.core.models.CrossConnectMapping(
                bgp_md5_auth_key="EXAMPLE-bgpMd5AuthKey-Value",
                cross_connect_or_cross_connect_group_id="ocid1.test.oc1..<unique_ID>EXAMPLE-crossConnectOrCrossConnectGroupId-Value",
                customer_bgp_peering_ip="EXAMPLE-customerBgpPeeringIp-Value",
                oracle_bgp_peering_ip="EXAMPLE-oracleBgpPeeringIp-Value",
                customer_bgp_peering_ipv6="EXAMPLE-customerBgpPeeringIpv6-Value",
                oracle_bgp_peering_ipv6="EXAMPLE-oracleBgpPeeringIpv6-Value",
                vlan=6266350)],
        routing_policy=["ORACLE_SERVICE_NETWORK"],
        bgp_admin_state="DISABLED",
        is_bfd_enabled=False,
        is_transport_mode=True,
        customer_bgp_asn=783,
        customer_asn=295,
        defined_tags={
            'EXAMPLE_KEY_n7dEs': {
                        'EXAMPLE_KEY_Olabg': 'EXAMPLE--Value'}},
        display_name="EXAMPLE-displayName-Value",
        freeform_tags={
            'EXAMPLE_KEY_WSA8X': 'EXAMPLE_VALUE_r3A7FfDiK2vR1lUy4mQJ'},
        gateway_id="ocid1.test.oc1..<unique_ID>EXAMPLE-gatewayId-Value",
        provider_name="EXAMPLE-providerName-Value",
        provider_service_id="ocid1.test.oc1..<unique_ID>EXAMPLE-providerServiceId-Value",
        provider_service_key_name="EXAMPLE-providerServiceKeyName-Value",
        provider_service_name="EXAMPLE-providerServiceName-Value",
        public_prefixes=[
            oci.core.models.CreateVirtualCircuitPublicPrefixDetails(
                cidr_block="EXAMPLE-cidrBlock-Value")],
        region="EXAMPLE-region-Value",
        ip_mtu="MTU_9000"),
    opc_retry_token="EXAMPLE-opcRetryToken-Value")

# Get the data from response
print(create_virtual_circuit_response.data)