Support

Register and Renew Domains

View as Markdown
GET
/v1/domains/agreements

Authorization

bearerAuth
AuthorizationBearer <token>

Personal Access Token (PAT). Generate one from the developer dashboard. Pass as: Authorization: Bearer .

In: header

Query Parameters

tlds*array<string>

list of TLDs whose legal agreements are to be retrieved

v1-privacy*boolean

Whether or not privacy has been requested

forTransfer?boolean

Whether or not domain tranfer has been requested

Header Parameters

X-Market-Id?string

Unique identifier of the Market used to retrieve/translate Legal Agreements

Formatbcp-47
Default"en-US"

Response Body

curl -X GET "https://example.com/v1/domains/agreements?tlds=string&v1-privacy=true"
[  {    "agreementKey": "string",    "content": "string",    "title": "string",    "url": "string"  }]
POST
/v1/domains/purchase

Authorization

bearerAuth
AuthorizationBearer <token>

Personal Access Token (PAT). Generate one from the developer dashboard. Pass as: Authorization: Bearer .

In: header

Header Parameters

X-Shopper-Id?string

Shopper ID which owns the domain. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account.

Request Body

An instance document expected to match the JSON schema returned by ./schema/{tld}

Response Body

curl -X POST "https://example.com/v1/domains/purchase" \  -H "Content-Type: application/json" \  -d '{    "consent": {      "agreedAt": "string",      "agreedBy": "string",      "agreementKeys": [        "string"      ]    },    "domain": "string"  }'
{  "currency": "USD",  "itemCount": 0,  "orderId": 0,  "total": 0}
GET
/v1/domains/purchase/schema/{tld}

Authorization

bearerAuth
AuthorizationBearer <token>

Personal Access Token (PAT). Generate one from the developer dashboard. Pass as: Authorization: Bearer .

In: header

Path Parameters

tld*string

The Top-Level Domain whose schema should be retrieved

Response Body

curl -X GET "https://example.com/v1/domains/purchase/schema/string"
{  "id": "string",  "models": [    {}  ],  "properties": [    {      "defaultValue": "string",      "format": "string",      "items": [        {          "format": "string",          "pattern": "string",          "type": "string"        }      ],      "maxItems": 0,      "maximum": 0,      "minItems": 0,      "minimum": 0,      "pattern": "string",      "required": true,      "type": "string"    }  ],  "required": [    "string"  ],  "type": "object"}
POST
/v1/domains/purchase/validate

Authorization

bearerAuth
AuthorizationBearer <token>

Personal Access Token (PAT). Generate one from the developer dashboard. Pass as: Authorization: Bearer .

In: header

Request Body

An instance document expected to match the JSON schema returned by ./schema/{tld}

Response Body

curl -X POST "https://example.com/v1/domains/purchase/validate" \  -H "Content-Type: application/json" \  -d '{    "consent": {      "agreedAt": "string",      "agreedBy": "string",      "agreementKeys": [        "string"      ]    },    "domain": "string"  }'
Empty
GET
/v1/domains/tlds

Authorization

bearerAuth
AuthorizationBearer <token>

Personal Access Token (PAT). Generate one from the developer dashboard. Pass as: Authorization: Bearer .

In: header

Response Body

curl -X GET "https://example.com/v1/domains/tlds"
[  {    "name": "string",    "type": "COUNTRY_CODE"  }]
POST
/v1/domains/{domain}/renew

Authorization

bearerAuth
AuthorizationBearer <token>

Personal Access Token (PAT). Generate one from the developer dashboard. Pass as: Authorization: Bearer .

In: header

Path Parameters

domain*string

Domain to renew

Header Parameters

X-Shopper-Id?string

Shopper ID which owns the domain. NOTE: This is only required if you are a Reseller managing a domain purchased outside the scope of your reseller account.

Request Body

Options for renewing existing Domain

Response Body

curl -X POST "https://example.com/v1/domains/string/renew" \  -H "Content-Type: application/json" \  -d '{}'
{  "currency": "USD",  "itemCount": 0,  "orderId": 0,  "total": 0}

Agent & Automation Notes

Scopesdomains.domain:read, domains.domain:create, domains.domain:delete, domains.domain:update, domains.contact:update, domains.dns:update, domains.transfer:execute
Rate limit60 req/min per credential
On failureGET operations are safe to retry. PUT/PATCH DNS are idempotent by shape. POST purchase is NOT idempotent — verify state before retrying.

Last updated on

How is this guide?