Hetzner Zones API

A Zone represents a [Domain Name System (DNS) zone](https://wikipedia.org/wiki/DNS_zone) managed by Hetzner authoritative nameservers. Please see [Hetzner Docs](https://docs.hetzner.com/dns-console/dns/general/dns-overview#the-difference-between-domain-and-zone) for the difference between zones and domains. This API supports all zone names with [well-known public suffixes](https://publicsuffix.org/) (e.g. `.de`, `.com`, `.co.uk`). Subdomains are not supported. Zone Modes This API supports two types of zone modes. - In _primary_ mode, resource record sets ([RRSets](#tag/zone-rrsets)) and resource records (RRs) are managed via the Cloud API or Hetzner Console. - In _secondary_ mode, Hetzner's nameservers query [RRSets](#tag/zone-rrsets) and RRs from given primary nameservers via [AXFR](https://en.wikipedia.org/wiki/DNS_zone_transfer). The zone mode cannot be changed, the zone must be deleted and re-created with a new mode. ### SOA Serial For zones in primary mode, Hetzner automatically increases the `SOA` record serial number. As convention, a `YYYYMMDDnn` format with incrementing `nn` is used. Zone file import This API supports importing a zone file in BIND (RFC [1034](https://datatracker.ietf.org/doc/html/rfc1034)/[1035](https://datatracker.ietf.org/doc/html/rfc1035)) format. Importing a zone file is only applicable for [Zones](#tag/zones) in primary mode. During an import: - An `$ORIGIN` directive may be present, it must match the [Zone](#tag/zones)'s name with an ending dot - A `$TTL` directive may be present, it is used as new default [Zone](#tag/zones) Time To Live (TTL) - Only `IN` (internet) class records are allowed - The assigned authoritative Hetzner nameservers must be present as `NS` records - A `SOA` record must be present - Comments for individual records are imported, comments on their own lines are discarded Zone file example: ```dns $ORIGIN example.com. $TTL 3600 @ IN SOA hydrogen.ns.hetzner.com. dns.hetzner.com. 2024010100 86400 10800 3600000 3600 @ IN 10800 NS hydrogen.ns.hetzner.com. ; Some comment. @ IN 10800 NS oxygen.ns.hetzner.com. @ IN 10800 NS helium.ns.hetzner.de. ```

Operations 6

GET /zones List Zones #
POST /zones Create a Zone #
GET /zones/{id_or_name} Get a Zone #
PUT /zones/{id_or_name} Update a Zone #
DELETE /zones/{id_or_name} Delete a Zone #
GET /zones/{id_or_name}/zonefile Export a Zone file #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/hetzner-zones-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

hetzner-zones-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Hetzner Cloud Zones API
  version: 1.0.0
  x-summary: 'Manage Hetzner Cloud services and resources linked to them, such as Floating IPs, Volumes and Load Balancers.

    '
  description: '# Overview


    This is the official documentation for the Hetzner Cloud API.'
servers:
- url: https://api.hetzner.cloud/v1
security:
- APIToken: []
tags:


# --- truncated at 32 KB (143 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/hetzner/refs/heads/main/openapi/hetzner-zones-api-openapi.yml