Domains

Set Contacts

Updates WHOIS contact information for a domain. This includes the registrant, administrative, technical, and billing contacts. All contact objects must be complete — partial updates are not supported. You should fetch the existing contact data first (e.g., via GetDomain and modify only the values you wish to change. This call replaces all four contact sets at once.

Contact Verification

When registrant contact information is updated, validation may be triggered if the new contact information has not been previously validated. This validation is required by ICANN for all TLDs except country-code TLDs (ccTLDs). This validation involves sending an email to the provided address, prompting the recipient to click a link to verify their email address.

post/core/v1/domains/{domainName}:setContacts

Path parameters

domainNamestring required
Example:example.com

DomainName is the domain name to set the contacts for.

Request body

contactsContactsRequest — unresolved $ref

Response

A successful response with updated domain contact information.

domainNamestring required

The punycode-encoded value of the domain name.

createDatestring date-time required

The date and time when the domain was created at the registry.

expireDatestring date-time required

The date and time when the domain will expire.

autorenewEnabledboolean required

Indicates whether the domain is set to renew automatically before expiration.

lockedboolean required

Indicates if the domain is transfer locked, preventing transfers to another registrar.

locksstring[]

List of all registry locking statuses currently applied to the domain. Use this to see which locks are active (e.g. clientTransferProhibited, clientHold). Empty when the domain has no locks applied.

transferLockExpiresAtstring date-time

When present, the domain has an active ICANN-mandated transfer lock (new registration, transfer-in, or material registrant contact change) that blocks client unlock via the API until this time. When omitted, there is no active policy transfer lock with a known expiry — the domain may still be locked (locked: true) due to a voluntary user lock. Does not represent RegistrarLock, AccountLock, verification holds, trademark-claim locks, or admin TransferLock with no expiry date.

privacyEnabledboolean required

Indicates if Whois Privacy is enabled for this domain.

nameserversstring[] required

The list of nameservers assigned to this domain. If unspecified, it defaults to the account's default nameservers.

renewalPricenumber double

The cost to renew the domain. This may be required for the RenewDomain operation.

Example response

{
  "domainName": "example.com",
  "createDate": "2023-01-15T14:30:00Z",
  "expireDate": "2025-01-15T14:30:00Z",
  "autorenewEnabled": true,
  "locked": true,
  "locks": [
    "clientTransferProhibited",
    "clientHold"
  ],
  "transferLockExpiresAt": "2023-03-16T14:30:00Z",
  "privacyEnabled": true,
  "contacts": {
    "admin": {
      "firstName": "John",
      "lastName": "Doe",
      "companyName": "Example Inc.",
      "address1": "123 Main Street",
      "address2": "Suite 400",
      "city": "New York",
      "state": "NY",
      "zip": "10001",
      "country": "US",
      "email": "john.doe@example.com",
      "phone": "+15551234567",
      "fax": "+15557654321",
      "isVerified": true,
      "verificationId": 12345
    },
    "billing": {
      "firstName": "John",
      "lastName": "Doe",
      "companyName": "Example Inc.",
      "address1": "123 Main Street",
      "address2": "Suite 400",
      "city": "New York",
      "state": "NY",
      "zip": "10001",
      "country": "US",
      "email": "john.doe@example.com",
      "phone": "+15551234567",
      "fax": "+15557654321",
      "isVerified": true,
      "verificationId": 12345
    },
    "registrant": {
      "firstName": "John",
      "lastName": "Doe",
      "companyName": "Example Inc.",
      "address1": "123 Main Street",
      "address2": "Suite 400",
      "city": "New York",
      "state": "NY",
      "zip": "10001",
      "country": "US",
      "email": "john.doe@example.com",
      "phone": "+15551234567",
      "fax": "+15557654321",
      "isVerified": true,
      "verificationId": 12345
    },
    "tech": {
      "firstName": "John",
      "lastName": "Doe",
      "companyName": "Example Inc.",
      "address1": "123 Main Street",
      "address2": "Suite 400",
      "city": "New York",
      "state": "NY",
      "zip": "10001",
      "country": "US",
      "email": "john.doe@example.com",
      "phone": "+15551234567",
      "fax": "+15557654321",
      "isVerified": true,
      "verificationId": 12345
    }
  },
  "nameservers": [
    "ns1.example.com",
    "ns2.example.com"
  ],
  "renewalPrice": 12.99
}

Changes