Records Reference
DNS record endpoints. All are nested under a specific domain ID. For the conceptual model, see Zones and Records. For task walkthroughs, see Managing Records.
Base path: /api/v1/domains/{domain_id}/records
Required permission: records:read, records:create, records:update, records:delete
GET /api/v1/domains/{domain_id}/records#
List records for a zone.
Query parameters:
| Param | Type | Notes |
|---|---|---|
type |
string | Filter by record type |
name |
string | Substring match |
include_system |
boolean | Include SOA and NS (default false) |
Response:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | |
POST /api/v1/domains/{domain_id}/records#
Create a record.
Request:
| Field | Type | Required | Notes |
|---|---|---|---|
name |
string | Yes | @ for apex, or relative hostname |
type |
string | Yes | Uppercase DNS type |
content |
string | Yes | Zone-file formatted content |
ttl |
integer | No | Defaults to zone's default_ttl |
disabled |
boolean | No | Default false |
Response: Created record.
GET /api/v1/domains/{domain_id}/records/{record_id}#
Get a specific record by ID.
PATCH /api/v1/domains/{domain_id}/records/{record_id}#
Update a record. Only content, ttl, and disabled are editable.
Request:
| Field | Type |
|---|---|
content |
string |
ttl |
integer |
disabled |
boolean |
Response: Updated record.
DELETE /api/v1/domains/{domain_id}/records/{record_id}#
Delete a record. Immediate and not recoverable.
Response: 204 No Content.
POST /api/v1/domains/{domain_id}/records/bulk#
Bulk create records.
Request:
1 2 3 4 5 6 7 | |
Response:
1 2 3 4 5 6 | |
See Bulk Operations for semantics.
POST /api/v1/domains/{domain_id}/records/bulk-delete#
Bulk delete records by ID.
Request:
1 | |
Response:
1 | |
POST /api/v1/domains/{domain_id}/records/search#
Search records by query string. Matches against name and content.
Request:
1 | |
Response: Same as list response shape.
GET /api/v1/domains/types#
List supported DNS record types with descriptions and example content. Public (no auth required).
Response:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | |
Schemas#
Record#
| Field | Type |
|---|---|
id |
string (UUID) |
name |
string — FQDN |
display_name |
string — relative to zone |
type |
string |
content |
string |
ttl |
integer |
disabled |
boolean |
domain_id |
string (UUID) |
created_at |
ISO 8601 timestamp |
Error codes#
| Status | Meaning |
|---|---|
400 |
Invalid content for the record type |
403 |
Caller lacks records:* permission on this domain |
404 |
Domain or record not found |
409 |
Duplicate record, or type conflicts (CNAME + A, DNAME coexistence) |
422 |
Schema validation failed |
Related#
- Managing Records — guide.
- Bulk Operations — bulk semantics.
- Import and Export — whole-zone operations.