ZonesClient

class ZonesClient(client: Client)[source]

ZoneClient is a client for the Zone (DNS) API.

See https://docs.hetzner.cloud/reference/cloud#zones and https://docs.hetzner.cloud/reference/cloud#zone-rrsets.

actions: ResourceActionsClient

Zones scoped actions client

Type:

ResourceActionsClient

add_rrset_records(rrset: ZoneRRSet | BoundZoneRRSet, records: list[ZoneRecord], ttl: int | None = None) BoundAction[source]

Adds records to a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-add-records-to-an-rrset

Parameters:
  • rrset – RRSet to update.

  • records – Records to add to the RRSet.

  • ttl – Time To Live (TTL) of the RRSet.

change_primary_nameservers(zone: Zone | BoundZone, primary_nameservers: list[ZonePrimaryNameserver]) BoundAction[source]

Changes the primary nameservers of a Zone.

See https://docs.hetzner.cloud/reference/cloud#zone-actions-change-a-zones-primary-nameservers

Parameters:
  • zone – Zone to update.

  • primary_nameservers – Primary nameservers of the Zone.

change_protection(zone: Zone | BoundZone, *, delete: bool | None = None) BoundAction[source]

Changes the protection of a Zone.

See https://docs.hetzner.cloud/reference/cloud#zone-actions-change-a-zones-protection

Parameters:
  • zone – Zone to update.

  • delete – Prevents the Zone from being deleted.

change_rrset_protection(rrset: ZoneRRSet | BoundZoneRRSet, *, change: bool | None = None) BoundAction[source]

Changes the protection of a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-change-an-rrsets-protection

Parameters:
  • rrset – RRSet to update.

  • change – Prevent the Zone from being changed (deletion and updates).

change_rrset_ttl(rrset: ZoneRRSet | BoundZoneRRSet, ttl: int | None) BoundAction[source]

Changes the TTL of a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-change-an-rrsets-ttl

Parameters:
  • rrset – RRSet to update.

  • change – Time To Live (TTL) of the RRSet.

change_ttl(zone: Zone | BoundZone, ttl: int) BoundAction[source]

Changes the TTL of a Zone.

See https://docs.hetzner.cloud/reference/cloud#zone-actions-change-a-zones-default-ttl

Parameters:
  • zone – Zone to update.

  • ttl – Default Time To Live (TTL) of the Zone.

create(*, name: str, mode: Literal['primary', 'secondary'], ttl: int | None = None, labels: dict[str, str] | None = None, primary_nameservers: list[ZonePrimaryNameserver] | None = None, rrsets: list[ZoneRRSet] | None = None, zonefile: str | None = None) CreateZoneResponse[source]

Creates a Zone.

A default SOA and three NS resource records with the assigned Hetzner nameservers are created automatically.

See https://docs.hetzner.cloud/reference/cloud#zones-create-a-zone

Parameters:
  • name – Name of the Zone.

  • mode – Mode of the Zone.

  • ttl – Default Time To Live (TTL) of the Zone.

  • labels – User-defined labels (key/value pairs) for the Resource.

  • primary_nameservers – Primary nameservers of the Zone.

  • rrsets – RRSets to be added to the Zone.

  • zonefile – Zone file to import.

create_rrset(zone: Zone | BoundZone, *, name: str, type: Literal['A', 'AAAA', 'CAA', 'CNAME', 'DS', 'HINFO', 'HTTPS', 'MX', 'NS', 'PTR', 'RP', 'SOA', 'SRV', 'SVCB', 'TLSA', 'TXT'], ttl: int | None = None, labels: dict[str, str] | None = None, records: list[ZoneRecord] | None = None) CreateZoneRRSetResponse[source]

Creates a ZoneRRSet in the Zone.

See https://docs.hetzner.cloud/reference/cloud#zone-rrsets-create-an-rrset

Parameters:
  • zone – Zone to create the RRSets in.

  • name – Name of the RRSet.

  • type – Type of the RRSet.

  • ttl – Time To Live (TTL) of the RRSet.

  • labels – User-defined labels (key/value pairs) for the Resource.

  • records – Records of the RRSet.

delete(zone: Zone | BoundZone) DeleteZoneResponse[source]

Deletes a Zone.

See https://docs.hetzner.cloud/reference/cloud#zones-delete-a-zone

Parameters:

zone – Zone to delete.

delete_rrset(rrset: ZoneRRSet | BoundZoneRRSet) DeleteZoneRRSetResponse[source]

Deletes a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrsets-delete-an-rrset

Parameters:

rrset – RRSet to delete.

export_zonefile(zone: Zone | BoundZone) ExportZonefileResponse[source]

Returns a generated Zone file in BIND (RFC 1034/1035) format.

See https://docs.hetzner.cloud/reference/cloud#zones-export-a-zone-file

Parameters:

zone – Zone to export the zone file from.

get(id_or_name: int | str) BoundZone[source]

Returns a single Zone.

See https://docs.hetzner.cloud/reference/cloud#zones-get-a-zone

Parameters:

id_or_name – ID or Name of the Zone.

get_actions(zone: Zone | BoundZone, *, status: list[Literal['running', 'success', 'error']] | None = None, sort: list[Literal['id', 'id:asc', 'id:desc', 'command', 'command:asc', 'command:desc', 'status', 'status:asc', 'status:desc', 'started', 'started:asc', 'started:desc', 'finished', 'finished:asc', 'finished:desc']] | None = None) list[BoundAction][source]

Returns all Actions for a Zone.

See https://docs.hetzner.cloud/reference/cloud#zones-list-zones

Parameters:
  • zone – Zone to get the Actions for.

  • status – Filter the Actions by status.

  • sort – Sort Actions by field and direction.

get_actions_list(zone: Zone | BoundZone, *, status: list[Literal['running', 'success', 'error']] | None = None, sort: list[Literal['id', 'id:asc', 'id:desc', 'command', 'command:asc', 'command:desc', 'status', 'status:asc', 'status:desc', 'started', 'started:asc', 'started:desc', 'finished', 'finished:asc', 'finished:desc']] | None = None, page: int | None = None, per_page: int | None = None) ActionsPageResult[source]

Returns a paginated list of Actions for a Zone.

See https://docs.hetzner.cloud/reference/cloud#zones-list-zones

Parameters:
  • zone – Zone to get the Actions for.

  • status – Filter the Actions by status.

  • sort – Sort Actions by field and direction.

  • page – Page number to get.

  • per_page – Maximum number of Actions returned per page.

get_all(*, name: str | None = None, mode: Literal['primary', 'secondary'] | None = None, label_selector: str | None = None, sort: list[str] | None = None) list[BoundZone][source]

Returns a list of all Zone.

See https://docs.hetzner.cloud/reference/cloud#zones-list-zones

Parameters:
  • name – Filter resources by their name. The response will only contain the resources matching exactly the specified name.

  • mode – Filter resources by their mode. The response will only contain the resources matching exactly the specified mode.

  • label_selector – Filter resources by labels. The response will only contain resources matching the label selector.

  • sort – Sort resources by field and direction.

get_list(*, name: str | None = None, mode: Literal['primary', 'secondary'] | None = None, label_selector: str | None = None, sort: list[str] | None = None, page: int | None = None, per_page: int | None = None) ZonesPageResult[source]

Returns a list of Zone for a specific page.

See https://docs.hetzner.cloud/reference/cloud#zones-list-zones

Parameters:
  • name – Filter resources by their name. The response will only contain the resources matching exactly the specified name.

  • mode – Filter resources by their mode. The response will only contain the resources matching exactly the specified mode.

  • label_selector – Filter resources by labels. The response will only contain resources matching the label selector.

  • sort – Sort resources by field and direction.

  • page – Page number to return.

  • per_page – Maximum number of entries returned per page.

get_rrset(zone: Zone | BoundZone, name: str, type: Literal['A', 'AAAA', 'CAA', 'CNAME', 'DS', 'HINFO', 'HTTPS', 'MX', 'NS', 'PTR', 'RP', 'SOA', 'SRV', 'SVCB', 'TLSA', 'TXT']) BoundZoneRRSet[source]

Returns a single ZoneRRSet from the Zone.

See https://docs.hetzner.cloud/reference/cloud#zone-rrsets-get-an-rrset

Parameters:
  • zone – Zone to fetch the RRSet from.

  • name – Name of the RRSet.

  • type – Type of the RRSet.

get_rrset_all(zone: Zone | BoundZone, *, name: str | None = None, type: list[Literal['A', 'AAAA', 'CAA', 'CNAME', 'DS', 'HINFO', 'HTTPS', 'MX', 'NS', 'PTR', 'RP', 'SOA', 'SRV', 'SVCB', 'TLSA', 'TXT']] | None = None, label_selector: str | None = None, sort: list[str] | None = None) list[BoundZoneRRSet][source]

Returns all ZoneRRSet in the Zone.

See https://docs.hetzner.cloud/reference/cloud#zone-rrsets-list-rrsets

Parameters:
  • zone – Zone to fetch the RRSets from.

  • name – Filter resources by their name. The response will only contain the resources matching exactly the specified name.

  • type – Filter resources by their type. The response will only contain the resources matching exactly the specified type.

  • label_selector – Filter resources by labels. The response will only contain resources matching the label selector.

  • sort – Sort resources by field and direction.

get_rrset_list(zone: Zone | BoundZone, *, name: str | None = None, type: list[Literal['A', 'AAAA', 'CAA', 'CNAME', 'DS', 'HINFO', 'HTTPS', 'MX', 'NS', 'PTR', 'RP', 'SOA', 'SRV', 'SVCB', 'TLSA', 'TXT']] | None = None, label_selector: str | None = None, sort: list[str] | None = None, page: int | None = None, per_page: int | None = None) ZoneRRSetsPageResult[source]

Returns all ZoneRRSet in the Zone for a specific page.

See https://docs.hetzner.cloud/reference/cloud#zone-rrsets-list-rrsets

Parameters:
  • zone – Zone to fetch the RRSets from.

  • name – Filter resources by their name. The response will only contain the resources matching exactly the specified name.

  • type – Filter resources by their type. The response will only contain the resources matching exactly the specified type.

  • label_selector – Filter resources by labels. The response will only contain resources matching the label selector.

  • sort – Sort resources by field and direction.

  • page – Page number to return.

  • per_page – Maximum number of entries returned per page.

import_zonefile(zone: Zone | BoundZone, zonefile: str) BoundAction[source]

Imports a zone file, replacing all resource record sets (ZoneRRSet).

See https://docs.hetzner.cloud/reference/cloud#zone-actions-import-a-zone-file

Parameters:
  • zone – Zone to import the zone file into.

  • zonefile – Zone file to import.

remove_rrset_records(rrset: ZoneRRSet | BoundZoneRRSet, records: list[ZoneRecord]) BoundAction[source]

Removes records from a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-remove-records-from-an-rrset

Parameters:
  • rrset – RRSet to update.

  • records – Records to remove from the RRSet.

set_rrset_records(rrset: ZoneRRSet | BoundZoneRRSet, records: list[ZoneRecord]) BoundAction[source]

Sets the records of a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-set-records-of-an-rrset

Parameters:
  • rrset – RRSet to update.

  • records – Records to set in the RRSet.

update(zone: Zone | BoundZone, *, labels: dict[str, str] | None = None) BoundZone[source]

Updates a Zone.

See https://docs.hetzner.cloud/reference/cloud#zones-update-a-zone

Parameters:
  • zone – Zone to update.

  • labels – User-defined labels (key/value pairs) for the Resource.

update_rrset(rrset: ZoneRRSet | BoundZoneRRSet, *, labels: dict[str, str] | None = None) BoundZoneRRSet[source]

Updates a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrsets-update-an-rrset

Parameters:
  • rrset – RRSet to update.

  • labels – User-defined labels (key/value pairs) for the Resource.

update_rrset_records(rrset: ZoneRRSet | BoundZoneRRSet, records: list[ZoneRecord]) BoundAction[source]

Updates records in a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-update-records-of-an-rrset

Parameters:
  • rrset – RRSet to update.

  • records – Records to update in the RRSet.

class BoundZone(client: ZonesClient, data: dict[str, Any], complete: bool = True)[source]
add_rrset_records(rrset: ZoneRRSet | BoundZoneRRSet, records: list[ZoneRecord], ttl: int | None = None) BoundAction[source]

Adds records to a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-add-records-to-an-rrset

Parameters:
  • rrset – RRSet to update.

  • records – Records to add to the RRSet.

  • ttl – Time To Live (TTL) of the RRSet.

change_primary_nameservers(primary_nameservers: list[ZonePrimaryNameserver]) BoundAction[source]

Changes the primary nameservers of the Zone.

See https://docs.hetzner.cloud/reference/cloud#zone-actions-change-a-zones-primary-nameservers

Parameters:

primary_nameservers – Primary nameservers of the Zone.

change_protection(*, delete: bool | None = None) BoundAction[source]

Changes the protection of the Zone.

See https://docs.hetzner.cloud/reference/cloud#zone-actions-change-a-zones-protection

Parameters:

delete – Prevents the Zone from being deleted.

change_rrset_protection(rrset: ZoneRRSet | BoundZoneRRSet, *, change: bool | None = None) BoundAction[source]

Changes the protection of a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-change-an-rrsets-protection

Parameters:
  • rrset – RRSet to update.

  • change – Prevent the Zone from being changed (deletion and updates).

change_rrset_ttl(rrset: ZoneRRSet | BoundZoneRRSet, ttl: int | None) BoundAction[source]

Changes the TTL of a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-change-an-rrsets-ttl

Parameters:
  • rrset – RRSet to update.

  • change – Time To Live (TTL) of the RRSet.

change_ttl(ttl: int) BoundAction[source]

Changes the TTL of the Zone.

See https://docs.hetzner.cloud/reference/cloud#zone-actions-change-a-zones-default-ttl

Parameters:

ttl – Default Time To Live (TTL) of the Zone.

create_rrset(*, name: str, type: Literal['A', 'AAAA', 'CAA', 'CNAME', 'DS', 'HINFO', 'HTTPS', 'MX', 'NS', 'PTR', 'RP', 'SOA', 'SRV', 'SVCB', 'TLSA', 'TXT'], ttl: int | None = None, labels: dict[str, str] | None = None, records: list[ZoneRecord] | None = None) CreateZoneRRSetResponse[source]

Creates a ZoneRRSet in the Zone.

See https://docs.hetzner.cloud/reference/cloud#zone-rrsets-create-an-rrset

Parameters:
  • name – Name of the RRSet.

  • type – Type of the RRSet.

  • ttl – Time To Live (TTL) of the RRSet.

  • labels – User-defined labels (key/value pairs) for the Resource.

  • records – Records of the RRSet.

delete() DeleteZoneResponse[source]

Deletes the Zone.

See https://docs.hetzner.cloud/reference/cloud#zones-delete-a-zone

delete_rrset(rrset: ZoneRRSet | BoundZoneRRSet) DeleteZoneRRSetResponse[source]

Deletes a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrsets-delete-an-rrset

Parameters:

rrset – RRSet to delete.

export_zonefile() ExportZonefileResponse[source]

Returns a generated Zone file in BIND (RFC 1034/1035) format.

See https://docs.hetzner.cloud/reference/cloud#zones-export-a-zone-file

get_actions(*, status: list[Literal['running', 'success', 'error']] | None = None, sort: list[Literal['id', 'id:asc', 'id:desc', 'command', 'command:asc', 'command:desc', 'status', 'status:asc', 'status:desc', 'started', 'started:asc', 'started:desc', 'finished', 'finished:asc', 'finished:desc']] | None = None) list[BoundAction][source]

Returns all Actions for a Zone.

See https://docs.hetzner.cloud/reference/cloud#zones-list-zones

Parameters:
  • status – Filter the Actions by status.

  • sort – Sort Actions by field and direction.

get_actions_list(*, status: list[Literal['running', 'success', 'error']] | None = None, sort: list[Literal['id', 'id:asc', 'id:desc', 'command', 'command:asc', 'command:desc', 'status', 'status:asc', 'status:desc', 'started', 'started:asc', 'started:desc', 'finished', 'finished:asc', 'finished:desc']] | None = None, page: int | None = None, per_page: int | None = None) ActionsPageResult[source]

Returns a paginated list of Actions for a Zone.

See https://docs.hetzner.cloud/reference/cloud#zones-list-zones

Parameters:
  • status – Filter the Actions by status.

  • sort – Sort Actions by field and direction.

  • page – Page number to get.

  • per_page – Maximum number of Actions returned per page.

get_rrset(name: str, type: Literal['A', 'AAAA', 'CAA', 'CNAME', 'DS', 'HINFO', 'HTTPS', 'MX', 'NS', 'PTR', 'RP', 'SOA', 'SRV', 'SVCB', 'TLSA', 'TXT']) BoundZoneRRSet[source]

Returns a single ZoneRRSet from the Zone.

See https://docs.hetzner.cloud/reference/cloud#zone-rrsets-get-an-rrset

Parameters:
  • name – Name of the RRSet.

  • type – Type of the RRSet.

get_rrset_all(*, name: str | None = None, type: list[Literal['A', 'AAAA', 'CAA', 'CNAME', 'DS', 'HINFO', 'HTTPS', 'MX', 'NS', 'PTR', 'RP', 'SOA', 'SRV', 'SVCB', 'TLSA', 'TXT']] | None = None, label_selector: str | None = None, sort: list[str] | None = None) list[BoundZoneRRSet][source]

Returns all ZoneRRSet in the Zone.

See https://docs.hetzner.cloud/reference/cloud#zone-rrsets-list-rrsets

Parameters:
  • name – Filter resources by their name. The response will only contain the resources matching exactly the specified name.

  • type – Filter resources by their type. The response will only contain the resources matching exactly the specified type.

  • label_selector – Filter resources by labels. The response will only contain resources matching the label selector.

  • sort – Sort resources by field and direction.

get_rrset_list(*, name: str | None = None, type: list[Literal['A', 'AAAA', 'CAA', 'CNAME', 'DS', 'HINFO', 'HTTPS', 'MX', 'NS', 'PTR', 'RP', 'SOA', 'SRV', 'SVCB', 'TLSA', 'TXT']] | None = None, label_selector: str | None = None, sort: list[str] | None = None, page: int | None = None, per_page: int | None = None) ZoneRRSetsPageResult[source]

Returns all ZoneRRSet in the Zone for a specific page.

See https://docs.hetzner.cloud/reference/cloud#zone-rrsets-list-rrsets

Parameters:
  • name – Filter resources by their name. The response will only contain the resources matching exactly the specified name.

  • type – Filter resources by their type. The response will only contain the resources matching exactly the specified type.

  • label_selector – Filter resources by labels. The response will only contain resources matching the label selector.

  • sort – Sort resources by field and direction.

  • page – Page number to return.

  • per_page – Maximum number of entries returned per page.

import_zonefile(zonefile: str) BoundAction[source]

Imports a zone file, replacing all resource record sets (ZoneRRSet).

See https://docs.hetzner.cloud/reference/cloud#zone-actions-import-a-zone-file

Parameters:

zonefile – Zone file to import.

model

alias of Zone

remove_rrset_records(rrset: ZoneRRSet | BoundZoneRRSet, records: list[ZoneRecord]) BoundAction[source]

Removes records from a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-remove-records-from-an-rrset

Parameters:
  • rrset – RRSet to update.

  • records – Records to remove from the RRSet.

set_rrset_records(rrset: ZoneRRSet | BoundZoneRRSet, records: list[ZoneRecord]) BoundAction[source]

Sets the records of a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-set-records-of-an-rrset

Parameters:
  • rrset – RRSet to update.

  • records – Records to set in the RRSet.

update(*, labels: dict[str, str] | None = None) BoundZone[source]

Updates the Zone.

See https://docs.hetzner.cloud/reference/cloud#zones-update-a-zone

Parameters:

labels – User-defined labels (key/value pairs) for the Resource.

update_rrset(rrset: ZoneRRSet | BoundZoneRRSet, *, labels: dict[str, str] | None = None) BoundZoneRRSet[source]

Updates a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrsets-update-an-rrset

Parameters:
  • rrset – RRSet to update.

  • labels – User-defined labels (key/value pairs) for the Resource.

update_rrset_records(rrset: ZoneRRSet | BoundZoneRRSet, records: list[ZoneRecord]) BoundAction[source]

Updates records in a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-update-records-of-an-rrset

Parameters:
  • rrset – RRSet to update.

  • records – Records to update in the RRSet.

class BoundZoneRRSet(client: ZonesClient, data: dict[str, Any], complete: bool = True)[source]
add_rrset_records(records: list[ZoneRecord], ttl: int | None = None) BoundAction[source]

Adds records to the ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-add-records-to-an-rrset

Parameters:
  • records – Records to add to the RRSet.

  • ttl – Time To Live (TTL) of the RRSet.

change_rrset_protection(*, change: bool | None = None) BoundAction[source]

Changes the protection of the ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-change-an-rrsets-protection

Parameters:

change – Prevent the Zone from being changed (deletion and updates).

change_rrset_ttl(ttl: int | None) BoundAction[source]

Changes the TTL of the ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-change-an-rrsets-ttl

Parameters:

change – Time To Live (TTL) of the RRSet.

delete_rrset() DeleteZoneRRSetResponse[source]

Deletes the ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrsets-delete-an-rrset

model

alias of ZoneRRSet

remove_rrset_records(records: list[ZoneRecord]) BoundAction[source]

Removes records from the ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-remove-records-from-an-rrset

Parameters:

records – Records to remove from the RRSet.

set_rrset_records(records: list[ZoneRecord]) BoundAction[source]

Sets the records of the ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-set-records-of-an-rrset

Parameters:

records – Records to set in the RRSet.

update_rrset(*, labels: dict[str, str] | None = None) BoundZoneRRSet[source]

Updates the ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrsets-update-an-rrset

Parameters:

labels – User-defined labels (key/value pairs) for the Resource.

update_rrset_records(records: list[ZoneRecord]) BoundAction[source]

Updates records in a ZoneRRSet.

See https://docs.hetzner.cloud/reference/cloud#zone-rrset-actions-update-records-of-an-rrset

Parameters:

records – Records to update in the RRSet.

class Zone(id: int | None = None, name: str | None = None, created: str | None = None, mode: Literal['primary', 'secondary'] | None = None, ttl: int | None = None, labels: dict[str, str] | None = None, protection: ZoneProtection | None = None, status: Literal['ok', 'updating', 'error'] | None = None, record_count: int | None = None, registrar: Literal['hetzner', 'other', 'unknown'] | None = None, primary_nameservers: list[ZonePrimaryNameserver] | None = None, authoritative_nameservers: ZoneAuthoritativeNameservers | None = None)[source]

Zone Domain.

See https://docs.hetzner.cloud/reference/cloud#zones.

MODE_PRIMARY = 'primary'

Zone in primary mode, resource record sets (RRSets) and resource records (RRs) are managed via the Cloud API or Cloud Console.

MODE_SECONDARY = 'secondary'

Zone in secondary mode, Hetzner’s nameservers query RRSets and RRs from given primary nameservers via AXFR.

STATUS_ERROR = 'error'

The Zone could not be published to the authoritative nameservers.

STATUS_OK = 'ok'

The Zone is pushed to the authoritative nameservers.

STATUS_UPDATING = 'updating'

The Zone is currently being published to the authoritative nameservers.

class ZoneAuthoritativeNameservers(assigned: list[str] | None = None, delegated: list[str] | None = None, delegation_last_check: str | None = None, delegation_status: Literal['valid', 'partially-valid', 'invalid', 'lame', 'unregistered', 'unknown'] | None = None)[source]

Zone Authoritative Nameservers Domain.

class ZonePrimaryNameserver(address: str, port: int | None = None, tsig_algorithm: Literal['hmac-md5', 'hmac-sha1', 'hmac-sha256'] | None = None, tsig_key: str | None = None)[source]

Zone Primary Nameserver Domain.

TSIG_ALGORITHM_HMAC_MD5 = 'hmac-md5'

Transaction signature (TSIG) algorithm used to generate the TSIG key.

TSIG_ALGORITHM_HMAC_SHA1 = 'hmac-sha1'

Transaction signature (TSIG) algorithm used to generate the TSIG key.

TSIG_ALGORITHM_HMAC_SHA256 = 'hmac-sha256'

Transaction signature (TSIG) algorithm used to generate the TSIG key.

to_payload() dict[str, Any][source]

Generates the request payload from this domain object.

class ZoneRecord(value: str, comment: str | None = None)[source]

Zone Record Domain.

to_payload() dict[str, Any][source]

Generates the request payload from this domain object.

class ZoneRRSet(name: str | None = None, type: ZoneRRSetType | None = None, ttl: int | None = None, labels: dict[str, str] | None = None, protection: ZoneRRSetProtection | None = None, records: list[ZoneRecord] | None = None, id: str | None = None, zone: BoundZone | Zone | None = None)[source]

Zone RRSet Domain.

See https://docs.hetzner.cloud/reference/cloud#zone-rrsets

to_payload() dict[str, Any][source]

Generates the request payload from this domain object.

class CreateZoneResponse(zone: BoundZone, action: BoundAction)[source]

Create Zone Response Domain.