DNS

Turn hosted DNS, or DNSSEC on a hosted zone, on or off

PUT
/v1/domains/{id}/dns

Hosts this domain's DNS with us, or hands it back. Turning it on creates the zone at the registrar and points the domain at the registrar's DNS nameservers, keeping the ones it had so turning it off can put them back. Turning it off puts the domain on the nameservers you send, or the ones it had before hosting, or the registrar's own - and gives the zone up: the records stored here go with it, and so does any DNSSEC signing. Hosted DNS is included with the domain and costs nothing. Asking for the state it is already in changes nothing. dnssec signs or unsigns a zone already hosted with us: we manage the keys and any rollover, and only on or off is ever asked for. Give hosted, dnssec, or both.

Authorization

apiKey
headerAuthorizationBearer <token>

An API key from the Developers page. rhq_test_ keys reach the sandbox, rhq_live_ keys the live side.

Path Parameters

id*string

Request Body

application/json
  1. body
hosted?boolean

True hosts the zone with us; false hands DNS back

nameservers?array<>

Where to point the domain when turning hosting off. Left out, it goes back to the nameservers it had before hosting, or the registrar's own

Items2 <= items <= 6
dnssec?boolean

Signs or unsigns a zone already hosted with us

Response Body

Success

application/json
  1. response

Success

id*string
domain*string
status*string

pending: not yet finished at the registrar. pending_validation: registered and billed, held behind contact validation. active: registered and working. expired: past its expiry date, still renewable. redemption: past the renewal window, only a restore can save it. needs_reconciliation: the last registrar call is unknown. transferred_out: moved away to another registrar; no longer ours to renew or change. deleted: the registration was given up at the registrar and is no longer yours

Value in"pending""pending_validation""active""expired""redemption""needs_reconciliation""transferred_out""deleted"
customerId*|

The customer this was bought for, if any

unitPrice*integer

Price per year, in minor units

Range0 <= value
customerPrice*|

A unit price fixed for the customer on this item alone, in their list's currency. It beats their contract and list. Null when there is none

paidTotal*integer

Everything charged for this domain so far, in minor units

Range0 <= value
registeredAt*string
Formatdate-time
expiresAt*string

When the registration ends. While status is pending or needs_reconciliation this is only our estimate from the period ordered: the registrar's own date replaces it once the order finishes

Formatdate-time
nameservers*array<>

Where the domain's DNS is served from

customNameservers*boolean

False while the domain is on the registrar's own nameservers

contact*|

The registrant, or null until you set one

contacts*

The administrative, technical and billing contacts. null means the same as the registrant

locked*boolean

Whether transfers away from us are refused

suspended*boolean

Whether the domain is on hold at the registrar: it does not resolve, but it is still registered and still renews

privacy*boolean

Whether WHOIS privacy is on for this domain

privacyPrice*|

What you pay per year for privacy while it is on, in minor units. Null when privacy is off

autoRenew*boolean

Whether this domain renews itself from your wallet shortly before it expires

dns*

Hosted DNS and DNSSEC for this domain. Every field is always there

actor*|

Who placed this order

curl -X PUT "https://example.com/v1/domains/dom_01K6XJ4Q8ZT3M9R5V2B7WDHNCA/dns" \  -H "Content-Type: application/json" \  -d '{}'
{  "id": "dom_01K6XJ4Q8ZT3M9R5V2B7WDHNCA",  "domain": "northwind-telecom.com",  "status": "pending",  "customerId": "cus_01K6XJ4Q8ZT3M9R5V2B7WDHNCA",  "unitPrice": 1440,  "customerPrice": null,  "paidTotal": 1440,  "registeredAt": "2026-10-07T11:04:31.000Z",  "expiresAt": "2027-10-07T11:04:31.000Z",  "nameservers": [    "ns1.example-dns.com"  ],  "customNameservers": true,  "contact": {    "name": "Jo Bloggs",    "organization": "Northwind Telecom",    "email": "[email protected]",    "phone": "+1 415 555 0132",    "address": "1 Market Street",    "city": "San Francisco",    "state": "CA",    "postalCode": "94105",    "country": "US",    "validation": "pending"  },  "contacts": {    "admin": null,    "tech": null,    "billing": null  },  "locked": true,  "suspended": true,  "privacy": true,  "privacyPrice": null,  "autoRenew": true,  "dns": {    "supported": true,    "hosted": true,    "dnssecSupported": true,    "signed": true,    "dsRecords": [      {        "keyTag": 0,        "algorithm": 0,        "digestType": 0,        "digest": "49FCE7"      }    ],    "keys": [      {        "flags": 256,        "algorithm": 0,        "publicKey": "string"      }    ]  },  "actor": {    "kind": "user",    "label": "string"  }}