Skip to main content

DnsGateway

Dns Gateway resource for Zscaler Internet Access.

Resource operations

This resource supports the following standard methods: create(), load(), update(), delete(). They operate on the instance state — set properties with dot notation, then call the method with no arguments.

Quick Start​

import zssdk
import logging

# Enable debug logging for DnsGateway
logging.getLogger('zssdk.zia').setLevel(logging.DEBUG)
logging.basicConfig(level=logging.DEBUG)

session = zssdk.Session(
vanity_domain="your-vanity-domain",
client_id="your-client-id",
client_secret="your-client-secret",
)

# Get a specific DnsGateway
resource = session.zia.DnsGateway(id="your-resource-id")
resource.load()
print(resource)

# Debug output shows HTTP request/response details

Identifiers​

NameTypeDescription
idstringUnique identifier

Actions​

create()​

Creates a new DnsGateway. Set properties on the resource instance, then call create() — this method takes no arguments.

Properties for creation:

NameTypeRequiredDescription
auto_createdbooleanNo-
dns_gateway_protocolsDnsGatewayProtocolsEnumCollectionNo-
dns_gateway_typestringNo-
failure_behaviorstringNo-
idintegerNo-
last_modified_byEntityReferenceNo-
last_modified_timeintegerNo-
namestringNo-
nat_ztr_gatewaybooleanNo-
primary_ip_or_fqdnstringNo-
primary_portsint32CollectionNo-
protocolsDnsGatewayProtocolsEnumCollectionNo-
secondary_ip_or_fqdnstringNo-
secondary_portsint32CollectionNo-

Returns: DnsGateway

Example:

resource = session.zia.DnsGateway()
resource.auto_created = True
resource.dns_gateway_protocols = ["value"]
resource.dns_gateway_type = "value"
resource.create()
print(f"Created with ID: {resource.id}")

delete()​

Deletes a DnsGateway by id. Only the id identifier is required; delete() takes no other arguments.

Example:

resource = session.zia.DnsGateway(id="your-resource-id")
resource.delete()

load()​

Fetches an existing DnsGateway by id. Only the id identifier is required; load() takes no other arguments.

Returns: DnsGateway

Example:

resource = session.zia.DnsGateway(id="your-resource-id")
resource.load()
print(resource.name)

update()​

Updates an existing DnsGateway. Call load() first, modify properties, then call update() — this method takes no arguments.

Properties for update:

NameTypeRequiredDescription
auto_createdbooleanNo-
dns_gateway_protocolsDnsGatewayProtocolsEnumCollectionNo-
dns_gateway_typestringNo-
failure_behaviorstringNo-
idintegerYes-
last_modified_byEntityReferenceNo-
last_modified_timeintegerNo-
namestringNo-
nat_ztr_gatewaybooleanNo-
primary_ip_or_fqdnstringNo-
primary_portsint32CollectionNo-
protocolsDnsGatewayProtocolsEnumCollectionNo-
secondary_ip_or_fqdnstringNo-
secondary_portsint32CollectionNo-

Returns: DnsGateway

Example:

resource = session.zia.DnsGateway(id="your-resource-id")
resource.load()
resource.name = "Updated value"
resource.update()

Attributes​

NameTypeRequiredDescription
auto_createdbooleanNo-
dns_gateway_protocolsDnsGatewayProtocolsEnumCollectionNo-
dns_gateway_typestringNo-
failure_behaviorstringNo-
idintegerNo-
last_modified_byEntityReferenceNo-
last_modified_timeintegerNo-
namestringNo-
nat_ztr_gatewaybooleanNo-
primary_ip_or_fqdnstringNo-
primary_portsint32CollectionNo-
protocolsDnsGatewayProtocolsEnumCollectionNo-
secondary_ip_or_fqdnstringNo-
secondary_portsint32CollectionNo-