Skip to main content
REST API

Full DNS control via REST API

Manage zones, records, DNSSEC, and webhooks programmatically. Integrate with your deployment pipelines, Terraform, or any language with an HTTP client.

Base URL

api.airfreeclouds.com/v1

Authentication

Bearer API key

Rate limit

1,000 req / min

Examples

Common API operations

All requests use JSON. Responses include an id and timestamps on every resource.

GET/v1/dns/zonesList zones

Request

curl -X GET https://api.airfreeclouds.com/v1/dns/zones \
  -H "Authorization: Bearer ac_live_xxxxxxxxxxxxxxxxxxxx"

Response

{
  "zones": [
    { "id": "zone_abc123", "name": "example.com", "status": "active", "records": 12 },
    { "id": "zone_def456", "name": "example.io",  "status": "active", "records": 8  }
  ],
  "total": 2
}
POST/v1/dns/zones/{zone_id}/recordsCreate A record

Request

curl -X POST https://api.airfreeclouds.com/v1/dns/zones/zone_abc123/records \
  -H "Authorization: Bearer ac_live_xxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "A",
    "name": "www",
    "content": "203.0.113.42",
    "ttl": 300
  }'

Response

{
  "id": "rec_xyz789",
  "type": "A",
  "name": "www.example.com",
  "content": "203.0.113.42",
  "ttl": 300,
  "created_at": "2026-07-18T10:00:00Z"
}
PATCH/v1/dns/zones/{zone_id}/records/{record_id}Update record

Request

curl -X PATCH https://api.airfreeclouds.com/v1/dns/zones/zone_abc123/records/rec_xyz789 \
  -H "Authorization: Bearer ac_live_xxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "content": "203.0.113.99",
    "ttl": 60
  }'

Response

{
  "id": "rec_xyz789",
  "type": "A",
  "name": "www.example.com",
  "content": "203.0.113.99",
  "ttl": 60,
  "updated_at": "2026-07-18T10:05:00Z"
}
DELETE/v1/dns/zones/{zone_id}/records/{record_id}Delete record

Request

curl -X DELETE https://api.airfreeclouds.com/v1/dns/zones/zone_abc123/records/rec_xyz789 \
  -H "Authorization: Bearer ac_live_xxxxxxxxxxxxxxxxxxxx"

Response

{
  "deleted": true,
  "id": "rec_xyz789"
}

SDKs & tools

Use with your favourite tools

REST API

OpenAPI 3 — /dns/apiAvailable

CLI (airfree-dns)

single-file, zero-dependencyBeta

Terraform provider

airfree/airfreeBeta

Client SDKs (Node / Python / Go)

generated from OpenAPIPlanned

Webhooks

Real-time DNS change notifications

Register a webhook URL and receive a POST request whenever a record is created, updated, or deleted in any of your zones. Payloads are signed with HMAC-SHA256.

{
  "event": "dns.record.updated",
  "zone": "example.com",
  "record": {
    "id": "rec_xyz789",
    "type": "A",
    "name": "www.example.com",
    "content": "203.0.113.99"
  },
  "timestamp": "2026-07-18T10:05:00Z"
}

Start building

Create a free account to get your API key and access the full DNS API today.