POST · DNS zones & records
Create a DNS record
Create a DNS record
POST
/api/v1/dns/records
Description
Adds an A/aaaa/cname/mx/txt/ns/srv/caa record. Send @ or an empty string for the zone root, not the fqdn; put MX priority in priority, not in value. Returns the stored record with its id for later update_dns_record / delete_dns_record.
Body
Send as application/json.
| Name | Type | Description |
|---|---|---|
input
required
|
string |
A domain, email address, website URL, or Inleed service id — for example example.se, [email protected] or 42976. Resolved to the owning account automatically, and the resolved target is echoed back in the response. Up to 255 characters.
|
type
required
|
enum |
The record type. One of A, AAAA, CNAME, MX, TXT, NS, SRV, CAA.
|
name
required
|
string |
The record name (left-hand side). Send @ or an empty string for the zone root — not the full fqdn www.example.com.
|
value
required
|
string |
The record value: an IP for A/AAAA, a hostname for cname/ns (end it with . to stop the zone name being appended), the full text for TXT. Do not put MX priority here.
|
ttl
|
integer | Time-to-live in seconds (60–604800). Omit to use the zone default. Range 60–604800. |
priority
|
integer |
MX preference (0–65535, lower wins). Only for MX; it goes here, never inline in value. Range 0–65535.
|
Responses
A 200 response returns the shape shown in the rail.
Every non-2xx response is an RFC 7807 problem with a stable
code.
Commonly returned errors
The codes this operation reaches on its own path: the auth stack, its own validation and
ownership checks, and the transport. Not a closed set — a shared code from the
full registry can still surface. Each links to the code’s own page,
the same URL its type dereferences to.
400
401
No token was presented, or the token is revoked, expired or unknown.
403
The token lacks a required scope, or this account does not own the resource.
404
No such resource for this account.
422
Validation error
429
The rate limit for this token is exhausted. See `Retry-After`.
500
Something went wrong on our side. The failure is logged against `requestId`.