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

Node.js / TypeScript

npm install @airfree/dns-sdkAvailable

Python

pip install airfree-dnsAvailable

Go

go get github.com/airfree/dnsAvailable

Terraform provider

hashicorp/airfreeclouds-dnsComing soon

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.