Changes to the DNS Check API and to webhooks, newest first, back to the first release of each.
Most changes don't need a new version. We add new endpoints, fields, optional parameters, and error codes to the current version as they're ready, and the same goes for new fields in the webhook envelope. If your code ignores fields it doesn't recognize, none of these will break it (see Compatibility).
A change that could break existing code, like removing or renaming a field or changing what one means, waits for a new version of the API. The same goes for webhooks: a breaking change to the envelope comes as a new envelope version, and your existing webhooks keep sending the version they have until you switch them. The one exception is abuse protection: we may add or change rate limits and similar safeguards without a new version.
November 14, 2026
API v2 released. Besides reading status, as API v1 does, it can:
- Create, change, and delete record groups and DNS records, with idempotency keys.
- Check DNS records on demand.
- Import and export zone files.
- Follow every status change through the event feed.
New webhooks send a version 2 envelope, the same object as an API v2 event, which identifies records by UUID. Webhooks added before this release keep sending version 1, and you can switch one by editing it. Webhook retries now also wait as long as an endpoint's Retry-After header asks.
API v1 stays available, read-only, for existing integrations. This release also changes API v1 in the following ways:
- As an alternative to the
api_keyquery parameter, API v1 now accepts the API key in anAuthorization: Bearer KEYheader, which keeps the key out of server logs and browser history. - API v1 requests now count against the same per-account, per-minute rate limit as API v2 requests, and requests over the limit return a
429with aRetry-Afterheader.
API v1 (Legacy) covers how to move to v2.
September 29, 2026
Webhooks released. A webhook sends a signed HTTPS request to a URL you choose when a monitored DNS record starts failing (dns_record.failing) or starts passing again (dns_record.passing), with a version 1 envelope or a message-only or plain-text payload. Each request is signed so your endpoint can verify it came from DNS Check, and failed deliveries are retried for 24 hours.
November 15, 2015
API v1 released. It reads the pass/fail status of your record groups and the DNS records in them, authenticated with an API key in the api_key query parameter.