API Guide

Revision History


This document describes the Dreamscape Reseller System API, which can be used for managing domain names and products under the reseller's account.

The content of the document is targeted at developers interested in creating or improving reseller websites. This document assumes that you are familiar with the web server SOAP (Simple Object Access Protocol), and that you understand the registration process for domain names and products.

The aim of this document is to describe the various operations available through this API. Included with this document are several example code packs detailing select operations (mainly those required to complete the domain and product registration sequence). Each operation is documented with the following:

Version Description
1.0

Dreamscape Reseller System API reference; initial version.

1.1

IsEligibleForRenewal added to TransferCheckResponse object.

GetDomainPriceList packet was added.

GetContactIdentifierList packet was added.

Environment Differences was added.

1.2 Secure Socket Layer enforced
1.3

DomainDNSUpdate packet was added

Price was added to AvailabilityItem object for domains

IsPremium was added to AvailabilityItem object for domains

Premium was added to DomainCreate, DomainRenew and TransferStart

2.0

DomainDNSAdd packet was added

DomainDNSRemove packet was added

ProductCreate packet was added

ProductRenew packet was added

ProductDelete packet was added

ProductInfo packet was added

ListServerOperatingSystem object was added

GetPlanDetails object was added

ListPlanDetails object was added

Management of CAA, SRV, TXT, WEBFWD, MAILFWD DNS records

Management of domain privacy

Returning currency code and renewal price in DomainCheck method

2.1

Added possibility to specify username and/or password in the ContactCreate and ContactUpdate methods

Returning username in ContactDetails object

Returning CheckingError property in DomainCheck method with indication of error's nature

Management of .AU domains

Overview

Introduction


This application interacts with the Reseller System using SOAP 1.2 over HTTP. Reseller applications using this API can perform operations to achieve, for example, the following:

Groups of API operations:

Although this API works in conjunction with the Reseller System, all communications and notifications are the responsibility of the reseller.

Message Format


The term "insert API namespace here" should be replaced with the appropriate namespace from List of Namespaces. See Obtaining API Details for details on obtaining the API Key.

Request
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="insert API namespace here">
	<env:Header>
		<ns1:Authenticate> 
			<AuthenticateRequest>
				<ResellerID>2644</ResellerID>
				<APIKey>f35a2bc72dfdc2aae569a0c7370bd7f5</APIKey> 
			</AuthenticateRequest>
		</ns1:Authenticate> 
	</env:Header> 
	<env:Body>
		... 
	</env:Body>
</env:Envelope>
Response
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="insert API namespace here">
	<env:Header>
		<ns1:AuthenticateResponse>
			<return xsi:type="ns1:AuthenticateResponse">
				<APIResponse>
					<APIRequestDate>2016-01-30 12:05:23 +0800 </APIRequestDate> 
					<APIResponseDate>2016-01-30 12:05:23 +0800 </APIResponseDate>
					<Success>true</Success> 
				</APIResponse>
			</return> 
		</ns1:AuthenticateResponse>
	</env:Header> 
	<env:Body>
		... 
	</env:Body>
</env:Envelope>

List of Namespaces

Namespace WSDL Environment
https://soap.secureapi.com.au/API-2.1 https://soap.secureapi.com.au/wsdl/API-2.1.wsdl Production
https://soap-test.secureapi.com.au/API-2.1 https://soap-test.secureapi.com.au/wsdl/API-2.1.wsdl Testing

Sample Code

Environment Differences

To help resellers implement the API, Dreamscape provides a testing environment setup almost identical to the production environment. There are three main differences between the environments:

Authentication

Obtaining API Details

You can retrieve your API Key in the Reseller Console by going to Account Settings > API & WHMCS > API Setup.

From this screen you can also update the Notification URL. Simply enter the address of the script that will handle the transfer notifications and click Update.

Authenticate

This operation validates the reseller's ID and API key combination.

Note: This should be sent for all requests in the Header part of the SOAP request.

AuthenticateRequest object

Element Name Description
ResellerID

The unique ID of the reseller.

Example:

  • R2644
  • 2644
APIKey

A unique 32 character key.

Example:

  • f35a2bc72dfdc2aae569a0c7370bd7f5

AuthenticateResponse object

Element Name Description
Success A Boolean. True if the Reseller ID and API Key are valid, or an array of Error objects. See the Error item for more information.

Example: Validate the reseller's ID and API key.

Request
<ns1:Authenticate> 
	<AuthenticateRequest>
		<ResellerID>2644</ResellerID>
		<APIKey>f35a2bc72dfdc2aae569a0c7370bd7f5</APIKey>
	</AuthenticateRequest>
</ns1:Authenticate>
Response
<ns1:AuthenticateResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-27 17:29:01 +0800</APIRequestDate> 
		<APIResponseDate>2016-01-27 17:29:01 +0800</APIResponseDate> 
		<Success>true</Success>
	</APIResponse> 
</ns1:AuthenticateResponse>

Contacts

The Reseller API provides functionality to create and maintain contact objects for use with domain management. Permissions may apply on some operations (e.g. ContactUpdate may only be used on contacts owned by the reseller).

Operation Description
ContactCheck Checks the existence of a contact identifier.
ContactInfo Retrieves the contact information.
ContactCreate Creates a contact object.
ContactUpdate Updates an existing contact object.
ContactCloneToRegistrant Creates a registrant object from a contact object.
GetContactIdentifierList Retrieves a list of contact identifiers.

Contacts are used in the domain registration process. There are four types of contacts, all of which are required to successfully create a domain with the API:

The ContactCreate operation is used to create the Admin, Billing, and Tech contacts for a domain. The registrant is created with ContactCloneToRegistrant. The reason for this is that Registrant contacts are treated differently; as they are considered the owner of the domain, they can only be changed by performing a change of ownership.

ContactCheck


This operation is used to check if a unique contact identifier exists. Contact identifiers are generated by the ContactCreate and ContactCloneToRegistrant operations. This operation is useful to ensure that a previously generated contact identifier still exists.

ContactCheckRequest object

Element Name Description
ContactIdentifier

A unique contact identifier.

Examples:

  • C-000406831-SN
  • R-001049873-SN

ContactCheckResponse object

Element Name Description
AvailabilityList

An array of AvailabilityItem objects. See the AvailabilityItem item for more information.

Attributes:

  • ArraySize - the number of objects in the array.

Example: Checking the availability of C-002668228-SN

Request
<ns1:ContactCheck> 
	<ContactCheckRequest>
		<ContactIdentifier>C-002668228-SN</ContactIdentifier> 
	</ContactCheckRequest>
</ns1:ContactCheck>
Response
<ns1:ContactCheckResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-24 12:38:46 +0800</APIRequestDate> 
		<APIResponseDate>2016-01-24 12:38:46 +0800</APIResponseDate> 
		<AvailabilityList ArraySize="1">
			<item xsi:type="ns1:AvailabilityItem"> 
				<Item>C-002668228-SN</Item> 
				<Available>true</Available>
			</item> 
		</AvailabilityList>
	</APIResponse> 
</ns1:ContactCheckResponse>

ContactInfo

This operation will retrieve all of the details attached to the specified contact.

Note: In order to successfully complete this operation, the ContactIdentifier must belong to the reseller.

ContactInfoRequest object

Element Name Description
ContactIdentifier

A unique contact identifier.

Examples:

  • C-000406831-SN
  • R-001049873-SN

ContactInfoResponse object

Element Name Description
ContactDetails

See ContactDetails for more information

Attributes:

  • ArraySize - the number of objects in the array.

Example: Retrieve the details of contact C-002668228-SN

Request
<ns1:ContactInfo> 
	<ContactInfoRequest>
		<ContactIdentifier>C-002668288-SN</ContactIdentifier> 
	</ContactInfoRequest>
</ns1:ContactInfo>
Response
<ns1:ContactInfoResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-24 12:41:03 +0800</APIRequestDate> 
		<APIResponseDate>2016-01-24 12:41:03 +0800</APIResponseDate> 
		<ContactDetails>
			<ContactIdentifier>C-002668288-SN</ContactIdentifier> 
			<FirstName>John</FirstName> 
			<LastName>Smith</LastName>
			<Address>123 Example Street</Address> 
			<City>Testville</City>
			<Country>AU</Country>
			<State>WA</State>
			<PostCode>6000</PostCode> 
			<CountryCode>61</CountryCode> 
			<Phone>912345678</Phone>
			<Mobile>0412345678</Mobile> 
			<Email>[email protected]</Email> 
			<AccountType>business</AccountType> 
			<BusinessName>John Smith & Associates</BusinessName>
			<BusinessNumberType>ABN</BusinessNumberType>
			<BusinessNumber>94 071 296 878</BusinessNumber>
			<Username>api_2668288</Username>
		</ContactDetails>
	</APIResponse> 
</ns1:ContactInfoResponse>

ContactCreate

This operation creates a contact under the reseller's account. This contact can then be used to create domain objects.

ContactCreateRequest object

Element Name Description
FirstName The contact's first name.
LastName The contact's last name.
Address The number/street portion of the contact's address.
City The city portion of the contact's address.
Country

The 2 letter country code of the contact's address.

Example:

  • AU
  • US
  • NZ
State The state portion of the contact's address.
PostCode The post code portion of the contact's address.
CountryCode The 2 digit country calling code of the contact's phone/mobile number.
Phone The contact's phone number.
Mobile The contact's mobile number.
Email The contact's email address.
AccountType

The account type.

Options:

  • Personal
  • Business
BusinessName The contact's business name (if account type is business).
BusinessNumberType The contact's business number type (if account type is business). See Accepted Business Number Types for more information.
BusinessNumber The contact's business number (if account type is business).
Username The contact's username. If not specified, the username will be automatically generated in the form api_<contact ID>. It must be between 8 and 64 characters long. Allowed characters: a-z, 0-9, _, -, ., @.
Password The contact's password. If not specified, the random password will be generated. It must be at least 8 valid characters, contain alphabetic characters (in upper and lower case), digits, and special characters.

ContactCreateResponse object

Element Name Description
ContactDetails

See ContactDetails for more information

Attributes:

  • ArraySize - the number of objects in the array.

Example: Create a new contact.

Request
<ns1:ContactCreate> 
	<ContactCreateRequest>
		<FirstName>John</FirstName> 
		<LastName>Smith</LastName>
		<Address>123 Example Street</Address> 
		<City>Testville</City>
		<Country>AU</Country>
		<State>WA</State>
		<PostCode>6000</PostCode> 
		<CountryCode>61</CountryCode> 
		<Phone>912345678</Phone>
		<Mobile>0412345678</Mobile> 
		<Email>[email protected]</Email> 
		<AccountType>business</AccountType> 
		<BusinessName>John Smith & Associates</BusinessName> 
		<BusinessNumberType>ABN</BusinessNumberType> 
		<BusinessNumber>94 071 296 878</BusinessNumber>
		<Username>john_smith</Username>
		<Password>S2BEJmX2aPtzUywp</Password>
	</ContactCreateRequest> 
</ns1:ContactCreate>
Response
<ns1:ContactCreateResponse> 
	<APIResponse>
	<APIRequestDate>2016-01-28 07:41:39 +0800</APIRequestDate> 
	<APIResponseDate>2016-01-28 07:41:39 +0800</APIResponseDate>    
	<ContactDetails>
		<ContactIdentifier>C-002668228-SN</ContactIdentifier> 
		<FirstName>John</FirstName> 
		<LastName>Smith</LastName>
		<Address>123 Example Street</Address> 
		<City>Testville</City>
		<Country>AU</Country>
		<State>WA</State>
		<PostCode>6000</PostCode> 
		<CountryCode>61</CountryCode> 
		<Phone>912345678</Phone>
		<Mobile>0412345678</Mobile> 
		<Email>[email protected]</Email> 
		<AccountType>business</AccountType> 
		<BusinessName>John Smith & Associates</BusinessName>
		<Mobile>0412345678</Mobile> 
		<Email>[email protected]</Email>  
		<AccountType>business</AccountType> 
		<BusinessName>John Smith & Associates</BusinessName> 
		<BusinessNumberType>ABN</BusinessNumberType> 
		<BusinessNumber>94 071 296 878</BusinessNumber>
		<Username>john_smith</Username>
	</ContactDetails> 
</APIResponse>

ContactUpdate

This operation will update the details attached to the specified contact identifier.

Note: In order to successfully complete this operation, the ContactIdentifier must belong to the reseller.

ContactUpdateRequest object

Element Name Description
ContactIdentifier

A unique contact identifier.

Example:

  • C-000406831-SN
  • R-001049873-SN
FirstName The contact's first name.
LastName The contact's last name.
Address The number/street portion of the contact's address.
City The city portion of the contact's address.
Country

The 2 letter country code of the contact's address.

Example:

  • AU
  • US
  • NZ
State The state portion of the contact's address.
PostCode The post code portion of the contact's address.
CountryCode The 2 digit country calling code of the contact's phone/mobile number.
Phone The contact's phone number.
Mobile The contact's mobile number.
Email The contact's email address.
AccountType

The account type.

Options:

  • Personal
  • Business
BusinessName The contact's business name (if account type is business).
BusinessNumberType The contact's business number type (if account type is business). See Accepted Business Number Types for more information.
BusinessNumber The contact's business number (if account type is business).
Username The contact's username. It must be between 8 and 64 characters long. Allowed characters: a-z, 0-9, _, -, ., @.
Password The contact's password. It must be at least 8 valid characters, contain alphabetic characters (in upper and lower case), digits, and special characters.

ContactUpdateResponse object

Element Name Description
ContactDetails

See ContactDetails for more information

Attributes:

  • ArraySize - the number of objects in the array.

Example: Update the details of contact C-002668228-SN, changing the account type to "business".

Request
<ns1:ContactUpdate> 
	<ContactUpdateRequest>
		<ContactIdentifier>C-002668228-SN</ContactIdentifier> 
		<FirstName>John</FirstName> 
		<LastName>Smith</LastName>
		<Address>123 Example Street</Address> 
		<City>Testville</City>
		<Country>AU</Country> 
		<State>WA</State> 
		<PostCode>6000</PostCode> 
		<CountryCode>61</CountryCode> 
		<Phone>912345678</Phone> 
		<Mobile>0412345678</Mobile> 
		<Email>[email protected]</Email> 
		<AccountType>business</AccountType>
		<Username>john_smith</Username>
		<Password>S2BEJmX2aPtzUywp</Password>
	</ContactUpdateRequest> 
</ns1:ContactUpdate>
Response
<ns1:ContactUpdateResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-28 07:41:41 +0800</APIRequestDate> 
		<APIResponseDate>2016-01-28 07:41:51 +0800</APIResponseDate> 
		<ContactDetails>
			<ContactIdentifier>C-002668228-SN</ContactIdentifier> 
			<FirstName>John</FirstName> 
			<LastName>Smith</LastName>
			<Address>123 Example Street</Address> 
			<City>Testville</City>
			<Country>AU</Country> 
			<State>WA</State> 
			<PostCode>6000</PostCode> 
			<CountryCode>61</CountryCode> 
			<Phone>912345678</Phone> 
			<Mobile>0412345678</Mobile>
			<Email>[email protected]</Email> 
			<AccountType>business</AccountType>
			<Username>john_smith</Username>
		</ContactDetails>
	</APIResponse>
</ns1:ContactUpdateResponse>

ContactCloneToRegistrant

This operation creates a registrant based on a contact.

Note: In order to successfully complete this operation, the ContactIdentifier must belong to the reseller.

ContactCloneToRegistrantRequest object

Element Name Description
ContactIdentifier

A unique contact identifier.

Example:

  • C-000406831-SN
  • R-001049873-SN

ContactCloneToRegistrantResponse object

Element Name Description
ContactDetails See ContactDetails for more information.

Example: Create a registrant contact from C-002668228-SN.

Request
<ns1:ContactCloneToRegistrant> 
	<ContactCloneToRegistrantRequest>
		<ContactIdentifier>C-002668228-SN</ContactIdentifier> 
	</ContactCloneToRegistrantRequest>
</ns1:ContactCloneToRegistrant>
Response
<ns1:ContactCloneToRegistrantResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-28 07:41:41 +0800</APIRequestDate>     
		<APIResponseDate>2016-01-28 07:41:41 +0800</APIResponseDate> 
		<ContactDetails>
			<ContactIdentifier>R-001035883-SN</ContactIdentifier> 
			<FirstName>John</FirstName> 
			<LastName>Smith</LastName>
			<Address>123 Example Street</Address> 
			<City>Testville</City>
			<Country>AU</Country> 
			<State>WA</State> 
			<PostCode>6000</PostCode> 
			<CountryCode>61</CountryCode> 
			<Phone>912345678</Phone> 
			<Email>[email protected]</Email> 
			<AccountType>personal</AccountType>
		</ContactDetails> 
	</APIResponse>
</ns1:ContactCloneToRegistrantResponse>

GetContactIdentifierList 1.1

This operation retrieves a list of contact identifiers belonging to the reseller.

Note: Registrant contacts are not returned as they are treated differently to admin, tech, and billing contacts.

GetContactIdentifierListRequest object

No elements or attributes.

GetContactIdentifierListResponse object

Element Name Description
ContactIdentifierList

An array of contact identifiers owned by the reseller.

Attributes:

  • ArraySize - The number of contact identifiers in the array.

Example: Pull a list of all contact identifiers owned by the reseller.

Request
<ns1:GetContactIdentifierList/>
Response
<ns1:GetContactIdentifierListResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-27 17:31:41 +0800</APIRequestDate> 
		<APIResponseDate>2016-01-27 17:31:42 +0800</APIResponseDate> 
		<ContactIdentifierList ArraySize="14">
			<item xsi:type="xsd:string">C-000777630-SN</item>
			<item xsi:type="xsd:string">C-000982867-SN</item>
			<item xsi:type="xsd:string">C-001140543-SN</item>
			... 
		</ContactIdentifierList>
	</APIResponse> 
</ns1:GetContactIdentifierListResponse>

Domains

The Reseller API provides functionality to create and maintain domain objects within the reseller's account. Permissions may apply on some operations (e.g. DomainUpdate may only be used on domains owned by the reseller). Please see the table below for a brief description of each operation.

Operation Description
DomainCheck Checks the existence of a domain name.
DomainInfo Retrieves the domain information.
DomainCreate Creates a domain object.
DomainUpdate Updates an existing domain object.
DomainDelete Deletes a domain object.
DomainRenew Renews a domain object.

DomainCheck

This operation will check the availability of a list of domain names.

DomainCheckRequest object

Element Name Description
DomainNames An array of domain names in string form.

DomainCheckResponse object

Element Name Description
AvailabilityList An array of AvailabilityItem objects. See AvailabilityItem for more information.

Example: Check the availability of several domain names.

Request
<ns1:DomainCheck> 
	<DomainCheckRequest>
		<DomainNames> 
			<item>domaininfo1486.com</item> 
			<item>domaininfo437.com.au</item> 
			...
		</DomainNames> 
	</DomainCheckRequest>
</ns1:DomainCheck>
Response
<ns1:DomainCheckResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-28 07:59:44 +0800</APIRequestDate> 
		<APIResponseDate>2016-01-28 07:59:46 +0800</APIResponseDate> 
		<AvailabilityList ArraySize="5">
			<item xsi:type="ns1:AvailabilityItem"> 
				<Item>domaininfo1486.com</Item> 
				<Available>true</Available>
				<Price>15</Price>
				<RenewPrice>15</RenewPrice>
				<CurrencyCode>AUD</CurrencyCode>
				<IsPremium>false</IsPremium>
				<Status>normal</Status>
				<CheckingError></CheckingError>
			</item>
			<item xsi:type="ns1:AvailabilityItem">
				<Item>domaininfo437.com.au</Item>
				<Available>false</Available> 
				<Price>15</Price>
				<RenewPrice>15</RenewPrice>
				<CurrencyCode>AUD</CurrencyCode>
				<IsPremium>false</IsPremium>
				<Status>normal</Status>
				<CheckingError>Domain name already registered.</CheckingError>
			</item>
			... 
		</AvailabilityList>
	</APIResponse> 
</ns1:DomainCheckResponse>

DomainInfo

This operation will retrieve all the details of the specified domain.

Note: In order to successfully complete this operation, the DomainName must belong to the reseller.

DomainInfoRequest object

Element Name Description
DomainName A domain name owned by the reseller.

DomainInfoResponse object

Element Name Description
DomainDetails See DomainDetails for more information.

Example: Retrieve the domain information for domaininfo001.com

Request
<ns1:DomainInfo> 
	<DomainInfoRequest>
		<DomainName>domaininfo001.com</DomainName> 
	</DomainInfoRequest>
</ns1:DomainInfo>
Response
<ns1:DomainInfoResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-28 07:59:45 +0800</APIRequestDate> 
		<APIResponseDate>2016-01-28 07:59:46 +0800</APIResponseDate>
		<DomainDetails>
			<DomainName>domaininfo001.com</DomainName> 
			<AuthKey>581d165d0a118f6K</AuthKey> 
			<Status>Registered</Status> 
			<LockStatus>Unlocked</LockStatus> 
			<Expiry>2013-01-16</Expiry> 
			<RegistrantContactIdentifier>R-000463066-SN</RegistrantContactIdentifier> 
			<AdminContactIdentifier>C-002668228-SN</AdminContactIdentifier> 
			<BillingContactIdentifier>C-002668228-SN</BillingContactIdentifier> 
			<TechContactIdentifier>C-002668228-SN</TechContactIdentifier> 
			<NameServers ArraySize="2">
				<item xsi:type="ns1:NameServer"> 
					<Host>ns1.parkme.com.au</Host> 
					<IP>203.170.87.1</IP>
				</item>
				<item xsi:type="ns1:NameServer">
					<Host>ns2.parkme.com.au</Host>
					<IP>203.170.87.2</IP>
				</item>
			</NameServers>
			<DNSRecords xsi:type="ns1:DNSRecords">
				<A enc:itemType="xsd:DNSARecord" enc:arraySize="4" xsi:type="ns1:ArrayOfDNSARecords">
					<item xsi:type="ns2:Map">
						<item>
							<key xsi:type="xsd:string">Id</key>
							<value xsi:type="xsd:string">41924813</value>
						</item>
						<item>
							<key xsi:type="xsd:string">Subdomain</key>
							<value xsi:type="xsd:string"/>
						</item>
						<item>
							<key xsi:type="xsd:string">Content</key>
							<value xsi:type="xsd:string">188.239.86.246</value>
						</item>
					</item>
				</A>
				<AAAA enc:itemType="xsd:DNSAAAARecord" enc:arraySize="1" xsi:type="ns1:ArrayOfDNSAAAARecords">
					<item xsi:type="ns2:Map">
						<item>
							<key xsi:type="xsd:string">Id</key>
							<value xsi:type="xsd:string">41924821</value>
						</item>
						<item>
							<key xsi:type="xsd:string">Subdomain</key>
							<value xsi:type="xsd:string"/>
						</item>
						<item>
							<key xsi:type="xsd:string">Content</key>
							<value xsi:type="xsd:string">2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d</value>
						</item>
					</item>
				</AAAA>
				...
			</DNSRecords>
			<Eligibility>
				<PolicyReason>2</PolicyReason>
				<BusinessType>State Government Entity</BusinessType>
				<BusinessName>SMITH, JOHN</BusinessName>
				<BusinessNumberType>ABN</BusinessNumberType>
				<BusinessNumber>32 790 228 959</BusinessNumber>
				<TradingName>STATE OF VICTORIA</TradingName>
				<TradingNumberType>ABN</TradingNumberType>
				<TradingNumber>32 790 228 959</TradingNumber>
			</Eligibility>
			<PrivateRegistration>false</PrivateRegistration>
			<PrivateRegistrationProductId></PrivateRegistrationProductId>
		</DomainDetails>
	</APIResponse> 
</ns1:DomainInfoResponse>

DomainCreate

This operation creates a domain under the reseller's account.

Note: Some TLDs are governed by individual policies and rules. As a result of this, the availability of a domain name does not guarantee that a registration will be successful.

DomainCreateRequest object

Element Name Description
DomainName The name of the domain.
RegistrantContactIdentifier The registrant contact identifier.
AdminContactIdentifier The admin contact identifier.
BillingContactIdentifier The billing contact identifier.
TechContactIdentifier The tech contact identifier.
RegistrationPeriod The period in years to register the domain for. Note: Some TLDs will not accept all RegistrationPeriod values.
NameServers An array of NameServer objects.
Eligibility Eligibility object. See Eligibility for more information.
Premium Set to true if the domain is premium. This information will be returned in a DomainCheck response.
PrivateRegistration Set to true if need to enable privacy.

DomainCreateResponse object

Element Name Description
DomainDetails See DomainDetails for more information.

Example: Create domaincreate001.com.au

Request
<ns1:DomainCreate> 
	<DomainCreateRequest>
		<DomainName>domaincreate001.com.au</DomainName> 				
		<RegistrantContactIdentifier>R-000463086-SN</RegistrantContactIdentifier> 
		<AdminContactIdentifier>C-002668228-SN</AdminContactIdentifier> 
		<BillingContactIdentifier>C-002668228-SN</BillingContactIdentifier> 
		<TechContactIdentifier>C-002668228-SN</TechContactIdentifier>
		<RegistrationPeriod>2</RegistrationPeriod>
		<NameServers>
			<item xsi:type="ns1:NameServer"> 
				<Host>ns1.parkme.com.au</Host> 
				<IP>203.170.87.1</IP>
			</item>
			<item xsi:type="ns1:NameServer">
				<Host>ns2.parkme.com.au</Host>
				<IP>203.170.87.2</IP> 
			</item>
		</NameServers>
		<Eligibility>
			<PolicyReason>2</PolicyReason>
			<BusinessType>State Government Entity</BusinessType>
			<BusinessName>SMITH, JOHN</BusinessName>
			<BusinessNumberType>ABN</BusinessNumberType>
			<BusinessNumber>32 790 228 959</BusinessNumber> 
			<TradingName>STATE OF VICTORIA</TradingName>
			<TradingNumberType>ABN</TradingNumberType>
			<TradingNumber>32 790 228 959</TradingNumber>
		</Eligibility> 
	</DomainCreateRequest>
</ns1:DomainCreate>
Response
<ns1:DomainCreateResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-28 07:59:48 +0800</APIRequestDate> 
		<APIResponseDate>2016-01-28 07:59:49 +0800</APIResponseDate> 
		<DomainDetails>
			<DomainName>domaincreate001.com.au</DomainName> 
			<AuthKey>23dfe759bd9c604X{</AuthKey> 
			<Status>Registered</Status> 
			<LockStatus>Unlocked</LockStatus> 
			<Expiry>2012-01-27</Expiry> 
			<RegistrantContactIdentifier>R-000463086-SN</RegistrantContactIdentifier> 
			<AdminContactIdentifier>C-002668228-SN</AdminContactIdentifier> 
			<BillingContactIdentifier>C-002668228-SN</BillingContactIdentifier> 
			<TechContactIdentifier>C-002668228-SN</TechContactIdentifier> 
			<NameServers ArraySize="2">
				<item xsi:type="ns1:NameServer"> 
					<Host>ns1.parkme.com.au</Host> 
					<IP>203.170.87.1</IP>
				</item>
				<item xsi:type="ns1:NameServer">
					<Host>ns2.parkme.com.au</Host>
					<IP>203.170.87.2</IP> 
				</item>
			</NameServers>
			<DNSRecords xsi:type="ns1:DNSRecords">
				<A enc:itemType="xsd:DNSARecord" enc:arraySize="4" xsi:type="ns1:ArrayOfDNSARecords">
					<item xsi:type="ns2:Map">
						<item>
							<key xsi:type="xsd:string">Id</key>
							<value xsi:type="xsd:string">41924813</value>
						</item>
						<item>
							<key xsi:type="xsd:string">Subdomain</key>
							<value xsi:type="xsd:string"/>
						</item>
						<item>
							<key xsi:type="xsd:string">Content</key>
							<value xsi:type="xsd:string">188.239.86.246</value>
						</item>
					</item>
				</A>
				<AAAA enc:itemType="xsd:DNSAAAARecord" enc:arraySize="1" xsi:type="ns1:ArrayOfDNSAAAARecords">
					<item xsi:type="ns2:Map">
						<item>
							<key xsi:type="xsd:string">Id</key>
							<value xsi:type="xsd:string">41924821</value>
						</item>
						<item>
							<key xsi:type="xsd:string">Subdomain</key>
							<value xsi:type="xsd:string"/>
						</item>
						<item>
							<key xsi:type="xsd:string">Content</key>
							<value xsi:type="xsd:string">2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d</value>
						</item>
					</item>
				</AAAA>
				...
			</DNSRecords>
			<Eligibility>
				<PolicyReason>2</PolicyReason>
				<BusinessType>State Government Entity</BusinessType> 
				<BusinessName>SMITH, JOHN</BusinessName> 
				<BusinessNumberType>ABN</BusinessNumberType> 
				<BusinessNumber>32 790 228 959</BusinessNumber> 
				<TradingName>STATE OF VICTORIA</TradingName> 
				<TradingNumberType>ABN</TradingNumberType> 
				<TradingNumber>32 790 228 959</TradingNumber>
			</Eligibility>
			<PrivateRegistration>false</PrivateRegistration>
			<PrivateRegistrationProductId></PrivateRegistrationProductId>
		</DomainDetails>
	</APIResponse> 
</ns1:DomainCreateResponse>

DomainUpdate

This operation will update the details of a domain owned by the reseller.

Note: In order to successfully complete this operation, the DomainName must belong to the reseller.

DomainUpdateRequest object

Element Name Description
DomainName The name of the domain.
AdminContactIdentifier The admin contact identifier.
BillingContactIdentifier The billing contact identifier.
TechContactIdentifier The tech contact identifier.
NameServers An array of NameServer objects. See NameServer for more information.
LockStatus Whether to lock the domain from being transferred out. Possible values are Locked and Unlocked.
PrivateRegistration Change privacy status.

DomainUpdateResponse object

Element Name Description
DomainDetails See DomainDetails for more information.

Example: Update domaininfo1656.com.au

Request
<ns1:DomainUpdate> 
	<DomainUpdateRequest>
		<DomainName>domaininfo1656.com.au</DomainName> 
		<AdminContactIdentifier>C-000982919-SN</AdminContactIdentifier> 
		<BillingContactIdentifier>C-000982919-SN</BillingContactIdentifier> 
		<TechContactIdentifier>C-000982919-SN</TechContactIdentifier> 
		<NameServers ArraySize="2">
			<item xsi:type="ns1:NameServer"> 
				<Host>ns1.crazydomains.com.au</Host> 
				<IP>27.124.125.171</IP>
			</item>
			<item xsi:type="ns1:NameServer">
				<Host>ns2.crazydomains.com.au</Host>
				<IP>27.124.125.171</IP> 
			</item>
		</NameServers> 
		<LockStatus>Locked</LockStatus> 
		<PrivateRegistration>false</PrivateRegistration>
	</DomainUpdateRequest>
</ns1:DomainUpdate>
Response
<ns1:DomainUpdateResponse>
	<APIResponse>
		<APIRequestDate>2016-01-28 08:02:09 +0800</APIRequestDate> 
		<APIResponseDate>2016-01-28 08:02:13 +0800</APIResponseDate> 
		<DomainDetails>
			<DomainName>domaininfo1656.com.au</DomainName> 
			<AuthKey>23dfe759bd9c604X{</AuthKey> 
			<Status>Registered</Status> 
			<LockStatus>Locked</LockStatus> 
			<Expiry>2012-01-27</Expiry> 
			<RegistrantContactIdentifier>R-000463086-SN</RegistrantContactIdentifier> 
			<AdminContactIdentifier>C-000982919-SN</AdminContactIdentifier> 
			<BillingContactIdentifier>C-000982919-SN</BillingContactIdentifier> 
			<TechContactIdentifier>C-000982919-SN</TechContactIdentifier> 
			<NameServers ArraySize="2">
				<item xsi:type="ns1:NameServer"> 
					<Host>ns1.crazydomains.com.au</Host> 
					<IP>27.124.125.171</IP>
				</item>
				<item xsi:type="ns1:NameServer">
					<Host>ns2.crazydomains.com.au</Host>
					<IP>27.124.125.171</IP> 
				</item>
			</NameServers>
			<DNSRecords xsi:type="ns1:DNSRecords">
				<A enc:itemType="xsd:DNSARecord" enc:arraySize="4" xsi:type="ns1:ArrayOfDNSARecords">
					<item xsi:type="ns2:Map">
						<item>
							<key xsi:type="xsd:string">Id</key>
							<value xsi:type="xsd:string">41924813</value>
						</item>
						<item>
							<key xsi:type="xsd:string">Subdomain</key>
							<value xsi:type="xsd:string"/>
						</item>
						<item>
							<key xsi:type="xsd:string">Content</key>
							<value xsi:type="xsd:string">188.239.86.246</value>
						</item>
					</item>
				</A>
				<AAAA enc:itemType="xsd:DNSAAAARecord" enc:arraySize="1" xsi:type="ns1:ArrayOfDNSAAAARecords">
					<item xsi:type="ns2:Map">
						<item>
							<key xsi:type="xsd:string">Id</key>
							<value xsi:type="xsd:string">41924821</value>
						</item>
						<item>
							<key xsi:type="xsd:string">Subdomain</key>
							<value xsi:type="xsd:string"/>
						</item>
						<item>
							<key xsi:type="xsd:string">Content</key>
							<value xsi:type="xsd:string">2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d</value>
						</item>
					</item>
				</AAAA>
				...
			</DNSRecords>
			<Eligibility>
				<PolicyReason>2</PolicyReason>
				<BusinessType>State Government Entity</BusinessType> 
				<BusinessName>SMITH, JOHN</BusinessName> 
				<BusinessNumberType>ABN</BusinessNumberType> 
				<BusinessNumber>32 790 228 959</BusinessNumber> 
				<TradingName>STATE OF VICTORIA</TradingName> 
				<TradingNumberType>ABN</TradingNumberType> 
				<TradingNumber>32 790 228 959</TradingNumber>
			</Eligibility>
			<PrivateRegistration>false</PrivateRegistration>
			<PrivateRegistrationProductId></PrivateRegistrationProductId>
		</DomainDetails>
	</APIResponse> 
</ns1:DomainUpdateResponse>

DomainDelete

This operation deletes a domain name from the reseller's account.

Note: In order to successfully complete this operation, the DomainName must belong to the reseller.

DomainDeleteRequest object

Element Name Description
DomainName The name of the domain being deleted

DomainDeleteResponse object

Element Name Description
Success A Boolean. True on success, or an array of Error objects. See Error for more information.

Example: Delete domaindelete001.com

Request
<ns1:DomainDelete> 
	<DomainDeleteRequest>
		<DomainName>domaindelete001.com</DomainName>
	</DomainDeleteRequest>
</ns1:DomainDelete>
Response
<ns1:DomainDeleteResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-28 08:05:37 +0800</APIRequestDate> 
		<APIResponseDate>2016-01-28 08:05:37 +0800</APIResponseDate> 
		<Success>true</Success>
	</APIResponse> 
</ns1:DomainDeleteResponse>

DomainRenew

This operation will renew the domains registration, altering the expiry date.

Some TLDs are only available for renewal within certain periods (e.g. .au domain names can only be renewed within 90 days of expiring).

Note: In order to successfully complete this operation, the DomainName must belong to the reseller.

DomainRenewRequest object

Element Name Description
DomainName The name of the domain being renewed.
RenewalPeriod The period in years to renew the domain for. Note: Some TLDs will not accept all RenewalPeriod values.
Premium Set to true if the domain is premium. This information will be returned in a DomainCheck response.

DomainRenewResponse object

Element Name Description
DomainDetails See DomainDetails for more information.

Example: Renew domainrenew001.com

Request
<ns1:DomainRenew> 
	<DomainRenewRequest>
		<DomainName>domainrenew001.com</DomainName>
		<RenewalPeriod>2</RenewalPeriod> 
	</DomainRenewRequest>
</ns1:DomainRenew>
Response
<ns1:DomainRenewResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-28 08:04:54 +0800</APIRequestDate> 
		<APIResponseDate>2016-01-28 08:04:55 +0800</APIResponseDate> 
		<DomainDetails>
			<DomainName>domainrenew001.com</DomainName> 
			<AuthKey>23dfe759bd9c604X{</AuthKey> 
			<Status>Registered</Status> 
			<LockStatus>Unlocked</LockStatus> 
			<Expiry>2014-01-27</Expiry> 
			<RegistrantContactIdentifier>R-000463086-SN</RegistrantContactIdentifier> 
			<AdminContactIdentifier>C-000982919-SN</AdminContactIdentifier> 
			<BillingContactIdentifier>C-000982919-SN</BillingContactIdentifier> 
			<TechContactIdentifier>C-000982919-SN</TechContactIdentifier> 
			<NameServers ArraySize="2">
				<item xsi:type="ns1:NameServer"> 
					<Host>ns1.crazydomains.com.au</Host> 
					<IP>27.124.125.171</IP>
				</item>
				<item xsi:type="ns1:NameServer">
					<Host>ns2.crazydomains.com.au</Host>
					<IP>27.124.125.171</IP> 
				</item>
			</NameServers>
			<DNSRecords xsi:type="ns1:DNSRecords">
				<A enc:itemType="xsd:DNSARecord" enc:arraySize="4" xsi:type="ns1:ArrayOfDNSARecords">
					<item xsi:type="ns2:Map">
						<item>
							<key xsi:type="xsd:string">Id</key>
							<value xsi:type="xsd:string">41924813</value>
						</item>
						<item>
							<key xsi:type="xsd:string">Subdomain</key>
							<value xsi:type="xsd:string"/>
						</item>
						<item>
							<key xsi:type="xsd:string">Content</key>
							<value xsi:type="xsd:string">188.239.86.246</value>
						</item>
					</item>
				</A>
				<AAAA enc:itemType="xsd:DNSAAAARecord" enc:arraySize="1" xsi:type="ns1:ArrayOfDNSAAAARecords">
					<item xsi:type="ns2:Map">
						<item>
							<key xsi:type="xsd:string">Id</key>
							<value xsi:type="xsd:string">41924821</value>
						</item>
						<item>
							<key xsi:type="xsd:string">Subdomain</key>
							<value xsi:type="xsd:string"/>
						</item>
						<item>
							<key xsi:type="xsd:string">Content</key>
							<value xsi:type="xsd:string">2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d</value>
						</item>
					</item>
				</AAAA>
				...
			</DNSRecords>
			<Eligibility>
				<PolicyReason>2</PolicyReason>
				<BusinessType>State Government Entity</BusinessType> 
				<BusinessName>SMITH, JOHN</BusinessName> 
				<BusinessNumberType>ABN</BusinessNumberType> 
				<BusinessNumber>32 790 228 959</BusinessNumber> 
				<TradingName>STATE OF VICTORIA</TradingName> 
				<TradingNumberType>ABN</TradingNumberType> 
				<TradingNumber>32 790 228 959</TradingNumber>
			</Eligibility>
			<PrivateRegistration>false</PrivateRegistration>
			<PrivateRegistrationProductId></PrivateRegistrationProductId>
		</DomainDetails>
	</APIResponse> 
</ns1:DomainRenewResponse>

Hosts

The Reseller API provides functionality to create and maintain host objects for use with domain management and DNS. Permissions may apply on some operations (e.g. HostUpdate may only be used on hosts owned by the reseller).

Operation Description
HostInfo Retrieves the host information.
HostCreate Creates a host object.
HostUpdate Updates a host object.
HostDelete Deletes a host object.

HostInfo

This operation will retrieve the details of the specified host object.

Note: In order to successfully complete this operation, the DomainName must belong to the reseller.

HostInfoRequest object

Element Name Description
DomainName The name of the domain the Host belongs to.
Host The name of the host object.

HostInfoResponse object

Element Name Description
HostDetails See HostDetails for more information.

Example: Retrieve details of host ns1.hostinfo001.com

Request
<ns1:HostInfo> 
	<HostInfoRequest>
		<DomainName>hostinfo001.com</DomainName>
		<Host>ns1.hostinfo001.com</Host> 
	</HostInfoRequest>
</ns1:HostInfo>
Response
<ns1:HostInfoResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-28 08:26:49 +0800</APIRequestDate> 
		<APIResponseDate>2016-01-28 08:26:50 +0800</APIResponseDate>
		<HostDetails>
			<Host>ns1.hostinfo001.com</Host>
			<IP>203.170.87.1</IP> 
		</HostDetails>
	</APIResponse> 
</ns1:HostInfoResponse>

HostCreate

This operation creates a host object under the reseller's account.

Note: In order to successfully complete this operation, the DomainName must belong to the reseller.

HostCreateRequest object

Element Name Description
DomainName The name of the domain the Host will belong to.
Host The name of the host object.
IP The IP address to set on the host object.

HostCreateResponse object

Element Name Description
HostDetails See HostDetails for more information.

Example: Create the host ns2.hostcreate001.com

Request
<ns1:HostCreate> 
	<HostCreateRequest>
		<DomainName>hostcreate001.com</DomainName>
		<Host>ns2.hostcreate001.com</Host> 
		<IP>203.178.45.26</IP>
	</HostCreateRequest> 
</ns1:HostCreate>
Response
<ns1:HostCreateResponse>
	<APIResponse>
		<APIRequestDate>2016-01-28 08:25:34 +0800</APIRequestDate> 			
		<APIResponseDate>2016-01-28 08:25:36 +0800</APIResponseDate>
		<HostDetails> 
			<Host>ns2.hostcreate001.com</Host> 
			<IP>203.178.45.26</IP>
		</HostDetails> 
	</APIResponse>
</ns1:HostCreateResponse>

HostUpdate

This operation will update the details of a host object owned by the reseller.

Note: In order to successfully complete this operation, the DomainName must belong to the reseller.

HostUpdateRequest object

Element Name Description
DomainName The name of the domain the Host belongs to.
Host The name of the host object.
OldIP The IP address to remove from the host object.
NewIP The IP address to set on the host object.

HostUpdateResponse object

Element Name Description
HostDetails See HostDetails for more information.

Example: Update the host ns2.hostupdate001.com

Request
<ns1:HostUpdate> 
	<HostUpdateRequest>
		<DomainName>hostupdate001.com</DomainName>
		<Host>ns2.hostupdate001.com</Host> 
		<OldIP>203.178.45.26</OldIP>
		<NewIP>203.178.100.1</NewIP>
	</HostUpdateRequest> 
</ns1:HostUpdate>
Response
<ns1:HostUpdateResponse>
	<APIResponse>
		<APIRequestDate>2016-01-28 08:25:34 +0800</APIRequestDate> 			
		<APIResponseDate>2016-01-28 08:25:36 +0800</APIResponseDate>
		<HostDetails> 
			<Host>ns2.hostupdate001.com</Host> 
			<IP>203.178.100.1</IP>
		</HostDetails> 
	</APIResponse>
</ns1:HostUpdateResponse>

HostDelete

This operation will delete a host object from the reseller's account.

Note: In order to successfully complete this operation, the DomainName must belong to the reseller.

HostDeleteRequest object

Element Name Description
DomainName The name of the domain the host belongs to.
Host The name of the host object being deleted.

HostDeleteResponse object

Element Name Description
Success A Boolean. True if the domain was deleted, or an array of Error objects. See Error for more information.

Example: Delete the host ns1.hostdelete001.com.au

Request
<ns1:HostDelete> 
	<HostDeleteRequest>
		<DomainName>hostdelete001.com.au</DomainName>
		<Host>ns1.hostdelete001.com.au</Host> 
	</HostDeleteRequest>
</ns1:HostDelete>
Response
<ns1:HostDeleteResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-28 08:16:55 +0800</APIRequestDate> 			
		<APIResponseDate>2016-01-28 08:16:57 +0800</APIResponseDate> 		
		<Success>true</Success>
	</APIResponse> 
</ns1:HostDeleteResponse>

Transfers

The Reseller API provides functionality to transfer domain objects between Registrars. Permissions may apply on some operations (e.g. TransferCancel may only be used on transfers initiated by the reseller).

Operation Description
TransferCheck Checks if a domain name is transferrable.
TransferInfo Retrieves the transfer information.
TransferStart Starts the transfer of a domain name.
TransferCancel Cancels the transfer of a domain name.

TransferRegistrantDetails

This operation will return the domain registrant details.

TransferRegistrantDetailsRequest object

Element Name Description
DomainName The name of the domain for which needs to return the registrant details. Now direct .AU domains are supported only.

TransferRegistrantDetailsResponse object

Element Name Description
TransferRegistrantDetails See TransferRegistrantDetails for more information.

Example: Get the registrant details for apitransfer0001.au.

Request
<ns1:TransferRegistrantDetails> 
	<TransferRegistrantDetailsRequest>
		<DomainName>apitransfer0001.au</DomainName>
	</TransferRegistrantDetailsRequest>
</ns1:TransferRegistrantDetails>
Response
<ns1:TransferRegistrantDetailsResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-28 08:34:07 +0800</APIRequestDate>
		<APIResponseDate>2016-01-28 08:34:08 +0800</APIResponseDate> 
		<TransferRegistrantDetails>
			<DomainName>apitransfer0001.au</DomainName>
			<RegistrantEmail>[email protected]</RegistrantEmail>
			<RegistrantName>Registrant</RegistrantName>
		</TransferRegistrantDetails>
	</APIResponse> 
</ns1:TransferRegistrantDetailsResponse>

TransferCheck

This operation will verify if a domain is available for transfer to the resellers account.

TransferCheckRequest object

Element Name Description
DomainName The name of the domain being transferred.
AuthKey Optional. The domain's Auth Key.

TransferCheckResponse object

Element Name Description
Success A Boolean. True if the domain can be transferred, or an array of Error objects. See Error for more information.
IsEligibleForRenewal A Boolean. True if the domain can be renewed when it is transferred, false otherwise.

Example: Check if apitransfer0001.cc is transferrable.

Request
<ns1:TransferCheck> 
	<TransferCheckRequest>
		<DomainName>apitransfer0001.cc</DomainName>
		<AuthKey>1q2w3e4r</AuthKey> 
	</TransferCheckRequest>
</ns1:TransferCheck>
Response
<ns1:TransferCheckResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-28 08:34:07 +0800</APIRequestDate>
		<APIResponseDate>2016-01-28 08:34:08 +0800</APIResponseDate> 
		<Success>true</Success>
		<IsEligibleForRenewal>true</IsEligibleForRenewal>
	</APIResponse> 
</ns1:TransferCheckResponse>

TransferInfo

This operation will query a transfer and return its current status.

TransferInfoRequest object

Element Name Description
DomainName The name of the domain being transferred.
AuthKey The AuthKey (optional). Note: The syntax of a domain Auth Key can vary between TLDs.

TransferInfoResponse object

Element Name Description
TransferDetails See TransferDetails for more information.

Example: Query the transfer of apitransfer0001.cc

Request
<ns1:TransferInfo> 
	<TransferInfoRequest>
		<DomainName>apitransfer0001.cc</DomainName>
		<AuthKey>1q2w3e4r</AuthKey> 	
	</TransferInfoRequest>
</ns1:TransferInfo>
Response
<ns1:TransferInfoResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-28 08:34:29 +0800</APIRequestDate> 			
		<APIResponseDate>2016-01-28 08:34:30 +0800</APIResponseDate> 		
		<TransferDetails>
			<DomainName>apitransfer0001.cc</DomainName>
			<Status>Transfer Pending</Status> 
		</TransferDetails>
	</APIResponse> 
</ns1:TransferInfoResponse>

TransferStart

This operation will initiate the transfer of a domain name to the reseller's account. The TransferCheck operation should be called prior to this operation to ensure that the domain can be transferred.

TransferStartRequest object

Element Name Description
ContactIdentifier The unique identifier of the contact to attach the domain to.
DomainName The name of the domain to be transferred.
AuthKey The Auth Key (optional). Note: The syntax of a domain Auth Key can vary between TLDs.
RenewalPeriod The period in years to renew the domain for. Note: Some TLDs will not accept all RenewalPeriod values.
Premium Set to true if the domain is premium. This information will be returned in a DomainCheck response.

TransferStartResponse object

Element Name Description
TransferDetails See TransferDetails for more information.

Example: Initiate the transfer of apitransfer0002.cc

Request
<ns1:TransferStart> 
	<TransferStartRequest>
		<ContactIdentifier>C-000982920-SN</ContactIdentifier> 
		<DomainName>apitransfer0002.cc</DomainName> 
		<AuthKey>1q2w3e4r</AuthKey> 
		<RenewalPeriod>1</RenewalPeriod>
	</TransferStartRequest> 
</ns1:TransferStart>
Response
<ns1:TransferStartResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-28 08:35:20 +0800</APIRequestDate> 
		<APIResponseDate>2016-01-28 08:35:21 +0800</APIResponseDate>
		<TransferDetails>
			<DomainName>apitransfer0002.cc</DomainName>
			<Status>Pending Transfer</Status> 
		</TransferDetails>
	</APIResponse> 
</ns1:TransferStartResponse>

TransferCancel

This operation will cancel a transfer that has been initiated with TransferStart.

Note: In order to successfully complete this operation, the transfer must have been initiated by the reseller.

TransferCancelRequest object

Element Name Description
DomainName The name of the domain being transferred.
AuthKey The Auth Key (optional). Note: The syntax of a domain Auth Key can vary between TLDs.

TransferCancelResponse object

Element Name Description
Success A Boolean. True if the transfer was cancelled, or an array of Error objects. See Error for more information.

Example: Cancel the transfer of apitransfer0002.cc

Request
<ns1:TransferCancel> 
	<TransferCancelRequest>
		<DomainName>apitransfer0002.cc</DomainName>
		<AuthKey>1q2w3e4r</AuthKey> 
	</TransferCancelRequest>
</ns1:TransferCancel>
Response
<ns1:TransferCancelResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-28 08:35:31 +0800</APIRequestDate>
		<APIResponseDate>2016-01-28 08:35:32 +0800</APIResponseDate>
		<Success>true</Success>
	</APIResponse> 
</ns1:TransferCancelResponse>

DNS

The Reseller API provides functionality to add and remove some DNS records for domains in the reseller's account. Please see the table below for a brief description of each operation.

Operation Description
DomainDNSAdd Adds a DNS record to a domain.
DomainDNSUpdate Updates DNS records for a domain.
DomainDNSRemove Removes a DNS record from a domain.

DomainDNSAdd 2.0

This operation adds a list of DNS records to a domain under the reseller's account.

DomainDNSAddRequest object

Element Name Description
DomainName The name of the domain to add the record to.
Records

An array of record types to add. See DNSRecords for more information.

DomainDNSAddResponse object

Element Name Description
Success A Boolean. True if the DNS records were added, or an array of Error objects. See Error for more information.

Example: Add various DNS records to domain0001.com

Request
<ns1:DomainDNSAdd> 
	<DomainDNSAddRequest>
		<DomainName>domain0001.com</DomainName> 
		<Records>
			<A>
				<Subdomain>example</Subdomain>
				<Content>203.178.124.1</Content>
			</A>
			<A>
				<Subdomain>sub</Subdomain>
				<Content>203.178.124.2</Content>
			</A>
			<AAAA>
				<Subdomain>ip6</Subdomain>
				<Content>2001:0db8:85a3:0000:0000:8a2e:0370:7334</Content>
			</AAAA>
			<CNAME>
				<Subdomain>ftp</Subdomain>
				<Content>domain0001.com</Content>
			</CNAME>
			<MX>
				<Subdomain></Subdomain>
				<Content>mail.domain0001.com</Content>
				<Priority>10</Priority>
			</MX>
			<CAA>
				<Flag>0</Flag>
				<Tag>issue</Tag>
				<Value>comodoca.com</Value>
			</CAA>
			...
		</Records> 
	</DomainDNSAddRequest>
</ns1:DomainDNSAdd>
Response
<ns1:DomainDNSAddResponse> 
	<APIResponse>
		<APIRequestDate>2018-01-01 07:59:45 +0800</APIRequestDate> 
		<APIResponseDate>2018-01-01 07:59:46 +0800</APIResponseDate>
		<Success>true</Success>
	</APIResponse> 
</ns1:DomainDNSAddResponse>

DomainDNSUpdate 1.3

This operation updates DNS records for a domain under the reseller's account. Existing records will be deleted and replaced with the provided records.

DomainDNSUpdateRequest object

Element Name Description
DomainName The name of the domain to add the records to.
Records

An array of record types to add. See DNSRecords for more information.

DomainDNSUpdateResponse object

Element Name Description
Success A Boolean. True if the DNS records were added, or an array of Error objects. See Error for more information.

Example: Change various DNS records for domain0001.com

Request
<ns1:DomainDNSUpdate> 
	<DomainDNSUpdateRequest>
		<DomainName>domain0001.com</DomainName> 
		<Records>
			<A>
				<Subdomain>example</Subdomain>
				<Content>203.178.124.1</Content>
			</A>
			<A>
				<Subdomain>sub</Subdomain>
				<Content>203.178.124.2</Content>
			</A>
			<AAAA>
				<Subdomain>ip6</Subdomain>
				<Content>2001:0db8:85a3:0000:0000:8a2e:0370:7334</Content>
			</AAAA>
			<CNAME>
				<Subdomain>ftp</Subdomain>
				<Content>domain0001.com</Content>
			</CNAME>
			<MX>
				<Subdomain></Subdomain>
				<Content>mail.domain0001.com</Content>
				<Priority>10</Priority>
			</MX>
			<CAA>
				<Flag>0</Flag>
				<Tag>issue</Tag>
				<Value>comodoca.com</Value>
			</CAA>
			...
		</Records> 
	</DomainDNSUpdateRequest>
</ns1:DomainDNSUpdate>
Response
<ns1:DomainDNSUpdateResponse> 
	<APIResponse>
		<APIRequestDate>2018-01-01 07:59:45 +0800</APIRequestDate> 
		<APIResponseDate>2018-01-01 07:59:46 +0800</APIResponseDate>
		<Success>true</Success>
	</APIResponse> 
</ns1:DomainDNSUpdateResponse>

DomainDNSRemove 2.0

This operation will remove a DNS record.

DomainDNSRemoveRequest object

Element Name Description
DomainName The name of the domain to remove the record from.
RecordId The ID of the record. This can be retrieved with DomainInfo.

DomainDNSRemoveResponse object

Element Name Description
Success A Boolean. True if the DNS records were added, or an array of Error objects. See Error for more information.

Example: Remove record ID 41 from domain0001.com

Request
<ns1:DomainDNSRemove> 
	<DomainDNSRemoveRequest>
		<DomainName>domain0001.com</DomainName> 
		<RecordId>41</RecordId>
	</DomainDNSRemoveRequest>
</ns1:DomainDNSRemove>
Response
<ns1:DomainDNSRemoveResponse> 
	<APIResponse>
		<APIRequestDate>2018-01-01 07:59:45 +0800</APIRequestDate> 
		<APIResponseDate>2018-01-01 07:59:46 +0800</APIResponseDate>
		<Success>true</Success>
	</APIResponse> 
</ns1:DomainDNSRemoveResponse>

Products

The Reseller API provides functionality to create and maintain product objects within the reseller's account. Please see the table below for a brief description of each operation.

Operation Description
ProductCreate Creates a product object.
ProductRenew Renews a product object.
ProductDelete Deletes a product object.
ProductInfo Retrieves the product information.
ListServerOperatingSystem Retrieves list of operating system available for virtual servers
GetPlanDetails Retrieves details of a specific plan
ListPlanDetails Retrieves list of all available plans

ProductCreate 2.0

This operation creates a product under the reseller's account.

ProductCreateRequest object

Element Name Description
DomainName A domain name for the product.
For Wordpress Hosting it can be equal to free to use free domain name.
PlanId The plan ID of the product you want to create. See ListPlanDetails method.
MemberId The ID of the member this product belongs too.
Period The period in months to register the product for. NOTE: Allowed periods can vary per Plan ID.
Username Optional. The username for the product.
Password Optional. The password for the product.
SSLInformation Optional. Extra information used for SSL certificate creation. See SSLInformation for more information.
OperatingSystem Optional. Operation system used for Servers product.
You can get the list of OS by calling the ListServerOperatingSystem method. Use Name as the value for this field.
ServerLocation Optional. Server location used for Wordpress Hosting product.
Allowed values: au, uk.
PackageExistingDomain Optional. Only for Packages. Specify is the package for an existing domain or not.

ProductCreateResponse object

Element Name Description
ProductDetails See ProductDetails for more information.

Example: Create a Linux Hosting - Basic product for 12 months for domain productcreate001.com

Request
<ns1:ProductCreate> 
	<ProductCreateRequest>
		<DomainName>productcreate001.com</DomainName> 
		<PlanId>29</PlanId> 
		<MemberId>12345678</MemberId> 
		<Period>12</Period> 
	</ProductCreateRequest>
</ns1:ProductCreate>
Response
<ns1:ProductCreateResponse> 
	<APIResponse>
		<APIRequestDate>2018-01-01 07:59:45 +0800</APIRequestDate> 
		<APIResponseDate>2018-01-01 07:59:46 +0800</APIResponseDate>
		<ProductDetails>
			<ProductId>12345678</ProductId> 
			<PlanId>29</PlanId> 
			<ProductName>Linux Hosting - Basic</ProductName> 
			<DomainName>productcreate001.com</DomainName> 
			<Status>Pending Setup</Status> 
			<Expires>1</Expires> 							 
		</ProductDetails>
	</APIResponse> 
</ns1:ProductCreateResponse>

ProductRenew 2.0

This operation will renew the product, altering the expiry date.

ProductRenewRequest object

Element Name Description
ProductId A ID for the product you want to renew.
Period The period in months to renew the product for. NOTE: Allowed periods can vary per Plan ID

ProductRenewResponse object

Element Name Description
ProductDetails See ProductDetails for more information.

Example: Renew 5 Page Web Builder product for 24 months for product ID 12345678

Request
<ns1:ProductRenew> 
	<ProductRenewRequest>
		<ProductId>12345678</ProductId> 
		<Period>24</Period> 
	</ProductRenewRequest>
</ns1:ProductRenew>
Response
<ns1:ProductRenewResponse> 
	<APIResponse>
		<APIRequestDate>2018-01-01 07:59:45 +0800</APIRequestDate> 
		<APIResponseDate>2018-01-01 07:59:46 +0800</APIResponseDate>
		<ProductDetails>
			<ProductId>12345678</ProductId> 
			<PlanId>697</PlanId> 
			<ProductName>5 Page Website Builder</ProductName> 
			<DomainName>productcreate001.com</DomainName> 
			<Status>Pending Renewal</Status> 
			<Expires>1</Expires> 							 
			<Expiry>2020-01-01</Expiry> 							 
		</ProductDetails>
	</APIResponse> 
</ns1:ProductRenewResponse>

ProductDelete 2.0

This operation will delete the product.

ProductDeleteRequest object

Element Name Description
ProductId A ID for the product you want to delete.

ProductDeleteResponse object

Element Name Description
Success A Boolean. True on success, or an array or Error objects. See Error for more information.

Example: Delete product 12345678

Request
<ns1:ProductDelete> 
	<ProductDeleteRequest>
		<ProductId>12345678</ProductId>  
	</ProductDeleteRequest>
</ns1:ProductDelete>
Response
<ns1:ProductDeleteResponse> 
	<APIResponse>
		<APIRequestDate>2018-01-01 07:59:45 +0800</APIRequestDate> 
		<APIResponseDate>2018-01-01 07:59:46 +0800</APIResponseDate>
		<Success>true</ProductDetails>
	</APIResponse> 
</ns1:ProductDeleteResponse>

ProductInfo 2.0

This operation will retrieve all the details of a product. A Product ID can be specified to get a speicfic product, or you can enter in the domain name and Plan ID to pull a product that matches these

ProductInfoRequest object

Element Name Description
ProductId Optional. An ID for the product.
DomainName Optional. Domain Name of the product you want to get the details for.
PlanId Optional. The Plan ID of the product you want to get details for.
Username Optional. The username of the product you want to get details for.

ProductInfoResponse object

Element Name Description
ProductDetails See ProductDetails for more information.

Example: Get product info for a 5 Page Web Builder product with domain name testwebbuilder.com

Request
<ns1:ProductInfo> 
	<ProductInfoRequest>
		<DomainName>testwebbuilder.com</DomainName> 
		<PlanId>697</PlanId> 
	</ProductInfoRequest>
</ns1:ProductInfo>
Response
<ns1:ProductInfoResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-28 07:59:45 +0800</APIRequestDate> 
		<APIResponseDate>2016-01-28 07:59:46 +0800</APIResponseDate>
		<Success>true</Success>
	</APIResponse> 
</ns1:ProductInfoResponse>

ListServerOperatingSystem 2.0

Retrieves list of operating system available for virtual servers.

ListServerOperatingSystem object

Element Name Description
Family Optional.

ListServerOperatingSystem object

Element Name Description
OperatingSystemList List of OperatingSystem objects. See OperatingSystem for more information.

Example: Get list of all Linux operating systems

Request
<ns1:OperatingSystemList> 
	<OperatingSystemListRequest>
		<Family>Linux</Family> 
	</OperatingSystemListRequest>
</ns1:OperatingSystemList>
Response
<ns1:OperatingSystemListResponse> 
	<APIResponse>
		<APIRequestDate>2018-01-01 07:59:45 +0800</APIRequestDate> 
		<APIResponseDate>2018-01-01 07:59:46 +0800</APIResponseDate>
		<OperatingSystemList>
			<OperatingSystem>	
				<Family>Linux</Family>
				<Name>CentOS 6.9</Name>
			</OperatingSystem>
			<OperatingSystem>	
				<Family>Linux</Family>
				<Name>Ubuntu 14.04.1</Name>
			</OperatingSystem>			
		</OperatingSystemList>
	</APIResponse> 
</ns1:OperatingSystemListResponse>

GetPlanDetails 2.0

Retrieves details of a specific plan.

GetPlanDetailsRequest object

Element Name Description
PlanId The ID of the plan you want to lookup.

GetPlanDetailsResponse object

Element Name Description
PlanDetails See PlanDetails for more information.

Example: Get Plan details for Linux Server 50GB

Request
<ns1:GetPlanDetails> 
	<GetPlanDetailsRequest>
		<PlanId>117</PlanId> 
	</GetPlanDetailsRequest>
</ns1:GetPlanDetails>
Response
<ns1:GetPlanDetailsResponse> 
	<APIResponse>
		<APIRequestDate>2018-01-01 07:59:45 +0800</APIRequestDate> 
		<APIResponseDate>2018-01-01 07:59:46 +0800</APIResponseDate>
		<PlanDetails>
			<ID>117</ID>
			<Name>Linux Server 50GB</Name>
			<Type>Servers</Type>
		</PlanDetails>
	</APIResponse> 
</ns1:GetPlanDetailsResponse>

ListPlanDetails 2.0

Retrieves list of all available plans.

ListPlanDetailsRequest object

No elements or attributes.

ListPlanDetailsResponse object

Element Name Description
PlanDetailsList List of PlanDetails objects. See PlanDetails for more information.

Example: Get all available plans.

Request
<ns1:ListPlanDetails />
Response
<ns1:ListPlanDetailsResponse> 
	<APIResponse>
		<APIRequestDate>2018-01-01 07:59:45 +0800</APIRequestDate> 
		<APIResponseDate>2018-01-01 07:59:46 +0800</APIResponseDate>
			<PlanDetailsList>
				<PlanDetails>
					<ID>117</ID>
					<Name>Linux Server 50GB</Name>
					<Type>Servers</Type>
				</PlanDetails>
			</PlanDetailsList>
	</APIResponse> 
</ns1:ListPlanDetailsResponse>

Account Operations

The Reseller API provides several operations for the reseller's account.

Operation Description
GetBalance Retrieves the reseller's current balance.
GetDomainList Retrieves a list of the reseller's domains.
GetDomainPriceList Retrieves a price list for all TLDs available to the Reseller.

GetBalance

This operation simply returns the reseller's current balance represented as a monetary amount.

GetBalanceRequest object

No elements or attributes.

GetBalanceResponse object

Element Name Description
Balance

A string containing the reseller's current balance

Example:

  • $1,052.00 AUD

Example: Get the reseller's current balance.

Request
<ns1:GetBalance/>
Response
<ns1:GetBalanceResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-27 17:31:42 +0800</APIRequestDate> 			
		<APIResponseDate>2016-01-27 17:31:42 +0800</APIResponseDate> 		
		<Balance>$16.02 AUD</Balance> 
	</APIResponse> 
</ns1:GetBalanceResponse>

GetDomainList

This operation returns a list of domains currently owned by the reseller, as well as their status.

GetDomainListRequest object

No elements or attributes.

GetDomainListResponse object

Element Name Description
DomainList

An array of domains (with status) owned by the reseller.

Attributes:

  • ArraySize - The number of domains in the array.

Subelements:

  • DomainName - The domain name.
  • Status - The status of the domain.

Example: Pull a list of all domains owned by the reseller.

Request
<ns1:GetDomainList/>
Response
<ns1:GetDomainListResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-27 17:31:41 +0800</APIRequestDate> 
		<APIResponseDate>2016-01-27 17:31:42 +0800</APIResponseDate> 
		<DomainList ArraySize="14">
			<item xsi:type="ns1:DomainListItem">
				<DomainName>testdomain0001.com.au</DomainName> 
				<Status>Transfer In</Status>
			</item>
			<item xsi:type="ns1:DomainListItem">
				<DomainName>testdomain0002.com</DomainName>
				<Status>Registered</Status> 
			</item>
			... 
		</DomainList>
	</APIResponse> 
</ns1:GetDomainListResponse>

GetDomainPriceList 1.1

This operation returns a list of domain products available to the reseller, as well as their minimum registration period and cost price.

GetDomainPriceListRequest object

No elements or attributes.

GetDomainPriceListResponse object

Element Name Description
DomainPriceList

An array of domain products (with minimum registration period and cost price) available to the reseller.

Attributes:

  • ArraySize - The number of domain products in the array.

Subelements:

  • Product - The domain product name
  • MinimumPeriod - The minimum registration period in years
  • Price - The cost price of the product

Example: Pull a list of all domain products available to the reseller.

Request
<ns1:GetDomainPriceList/>
Response
<ns1:GetDomainPriceListResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-27 17:31:41 +0800</APIRequestDate> 
		<APIResponseDate>2016-01-27 17:31:42 +0800</APIResponseDate> 
		<DomainPriceList ArraySize="14">
			<item xsi:type="ns1:DomainPriceListItem">
				<Product>com.au</Product> 
				<MinimumPeriod>2</MinimumPeriod>
				<Price>9.5</Price>
			</item>
			<item xsi:type="ns1:DomainPriceListItem">
				<Product>com</Product> 
				<MinimumPeriod>1</MinimumPeriod>
				<Price>10</Price>
			</item>
			... 
		</DomainPriceList>
	</APIResponse> 
</ns1:GetDomainPriceListResponse>

Test Operations

The following operations can only be performed on the test server. They are purely to assist in testing the API functionality.

Operation Description
SendAPINotification Sends a transfer notification for the reseller to test their Notification URL script with
SpawnDomainsForTransfer Spawns a number of domains for the reseller to test transferring with

SendAPINotification

This operation is used for testing the transfer notification script (set up by the reseller). The API will send POST data to the URL supplied.

Note: This operation is only available on the testing server.

SendAPINotificationRequest object

Element Name Description
DomainName The domain name being transferred.
Action The transfer action being performed. See Notification Types for more information.
URL The absolute URL of the receiving script.

SendAPINotificationResponse object

Element Name Description
Success A Boolean. True if the message was sent successfully, or an array of Error objects. See Error for more information.

Example: Send a "Transfer Out Request" notification for transferexample0001.com

Request
<ns1:SendAPINotification> 
	<SendAPINotificationRequest>
		<DomainName>transferexample0001.com</DomainName>
		<Action>Transfer Out Request</Action>
		<URL>http://testdomain.com/notifications.php</URL>
	</SendAPINotificationRequest> 
</ns1:SendAPINotification>
Response
<ns1:SendAPINotificationResponse> 
	<APIResponse>
		<APIRequestDate>2016-01-27 17:31:42 +0800</APIRequestDate> 			
		<APIResponseDate>2016-01-27 17:31:43 +0800</APIResponseDate> 		
		<Success>true</Success>
	</APIResponse> 
</ns1:SendAPINotificationResponse>

SpawnDomainsForTransfer

This operation will create several domain names, which can be used by the reseller to test transfers before going live with their website.

Note: This operation is only available on the testing server.

SpawnDomainsForTransferRequest object

Element Name Description
TLD TLD of spawned domain names. Supported TLDs: com, au, com.au

SpawnDomainsForTransferResponse object

Element Name Description
SpawnedTransferList

An array of domains (with auth keys) NOT owned by the reseller.

Attributes

  • ArraySize - The number of domains in the array.

Subelements

  • DomainName - The domain name.
  • AuthKey - The auth key of the domain.

Example: Get a list of the domains spawned for the reseller.

Request
<ns1:SpawnDomainsForTransfer> 
	<SpawnDomainsForTransferRequest>
		<TLD>au</TLD>
	</SpawnDomainsForTransferRequest> 
</ns1:SpawnDomainsForTransfer>
Response
<ns1:SpawnDomainsForTransferResponse> 
	<APIResponse>
		<APIRequestDate>2016-02-11 10:24:43 +0800</APIRequestDate> 			
		<APIResponseDate>2016-02-11 10:24:44 +0800</APIResponseDate> 		
		<SpawnedTransferList arraySize="5">
			<item xsi:type="ns1:SpawnedTransferListItem">
				<DomainName>dc43315e0fb342ba.au</DomainName>
				<AuthKey>c559-f531aab</AuthKey>
			</item>
			<item xsi:type="ns1:SpawnedTransferListItem">
				<DomainName>909cfbee01a7cf39.au</DomainName>
				<AuthKey>fc4c-4137a75</AuthKey> 
			</item> 
			...
		</SpawnedTransferList> 
	</APIResponse>
</ns1:SpawnDomainsForTransferResponse>

Common Objects

AvailabilityItem

The AvailabilityItem object is common object used by the ContactCheck and DomainCheck operations, because of the similarities the element name of this object are ambiguous.

AvailabilityItem object

Element Name Description
Item

The item in question.

Example

  • domaincheck001.com
  • ns1.hostcheck001.com
  • C-004578399-SN
Available A Boolean. True if the Item does not exist, false otherwise.
Price The buy price of domain name. Only for domain availability check.
RenewPrice The renew price of domain name. Only for domain availability check.
CurrencyCode The currency code of domain price. Only for domain availability check.
IsPremium Indicates is domain premium or not. Only for domain availability check.
Status Carries additional information about the availability of the domain. Only for domain availability check.
Possible values:
  1. normal - default value for most cases.
  2. au_conflicted - a domain name is conflicting with domain names registed under other .AU TLDs. Needs to provide additional eligibility details: PriorityContactId, PriorityAuthInfo.
CheckingError Contains some details of error's nature if the Available property equals to false. Only for domain availability check.
Possible values:
  1. Domain name already registered.
  2. Domain name is not available for registration.
  3. Domain name is for resale.
  4. An issue occurred while searching. Please try again later.

ContactDetails

ContactDetails object

Element Name Description
ContactIdentifier

The unique identifier of the contact.

Example:

  • C-002668228­SN
  • R-000495812-SN
FirstName First name of the contact.
LastName Last name of the contact.
Address

The house number/street name of the contact's address.

Example:

  • 123 Example Street
City The city of the contact's address.
Country

The 2 letter country code of the contact's address.

Example:

  • AU
  • US
  • NZ
State The state of the contact's address.
PostCode The post code of the contact's address.
CountryCode The 2 digit country calling code of the contact's phone/mobile number.
Phone The contact's phone number (including area code).
Mobile The mobile number of the contact (optional).
Email The email address of the contact.
AccountType

The type of account.

Options

  • Personal
  • Business
BusinessName The contact's business name (optional).
BusinessNumberType The type of business number (optional). See Accepted Business Number Types for more information.
BusinessNumber The business' unique number (optional).
Username The contact's username.

DomainDetails

DomainDetails object

Element Name Description
DomainName The name of the domain.
AuthKey The Auth Key. Note: The syntax of a domain Auth Key can vary between TLDs.
Status The current status of the domain.
LockStatus

The current lock status of the domain.

Example:

  • Locked (domain cannot be transferred away)
  • Unlocked
Created The date of domain creation.
Expiry The expiry date of the domain.
RegistrantContactIdentifier The registrant contact identifier.
AdminContactIdentifier The admin contact identifier.
BillingContactIdentifier The billing contact identifier.
TechContactIdentifier The tech contact identifier.
NameServers An array of NameServer objects. See NameServer for more information.
Eligibility An Eligibility object. See Eligibility for more information. Note: Eligibility is only present on .au TLDs.
DNSRecords A list of DNS records. See DNSRecords for more information..
Price The price of the domain.
IsPremium Indicates if the domain is premium. These carry a higher price than standard domains.
PrivateRegistration Indicates is privacy enabled or not.
PrivateRegistrationProductId The Private Registration product ID if privacy is included for the domain.

DomainListItem

DomainListItem object

Element Name Description
DomainName The name of the domain.
Status * The current status of the domain.
Deleted * The date the domain was deleted
Expired * The date the domain expired.

* may or not may return, depending on the method used.

DomainPriceListItem

DomainPriceListItem object

Element Name Description
Product The TLD offered.
MinimumPeriod The minimum period that the domain can be registered for.
Price The price for the domain.

Eligibility

Eligibility object

.au, .com.au, .net.au, .org.au, .id.au, .asn.au

Eligibility applies to .AU domain registrations and is governed by auDA (The Australian Domain Name Administrator). For more information on Domain Name Eligibility policies see the following link: http://www.auda.org.au/policies/2012-04/

Element Name Description
PolicyReason The policy reason (1 or 2).
BusinessType The business type. See Accepted Business Types for more information.
BusinessName The business name.
BusinessNumberType The business number type. See Accepted Business Number Types for more information.
BusinessNumber The business number.
TradingName The trading name (optional).
TradingNumberType The trading number type (optional). See Accepted Trading Number Types for more information.
TradingNumber The trading number (optional).
PriorityContactId The priority contact ID. Only for .AU conflicted domains. Should be passed when the DomainCheck method returns the status au_conflicted.
PriorityAuthInfo The priority authentication information. Only for .AU conflicted domains. Should be passed when the DomainCheck method returns the status au_conflicted.

.sg

In order to register an .sg domain, the .sg domain administrator requires collect some additional information about your domain name eligibility. For more information on Domain Name Eligibility policies see the following link: https://sgnic.sg/domain-registration/sg-categories-rules

Element Name Description
LocalPresence Allowed values:
  • 1 - Registrar will act as an agent for .sg (recommended)
  • 2 - Registrant has a local presence for .sg, and fulfils the .sg eligibility criteria
RegistrantType The registrant type. Required if LocalPresence = 2. Allowed values:
  • I - Individual
  • O - Company
RegistrantName Registrant name. Must contain no more than 250 characters.
NricNumber NRIC number. Required if LocalPresence = 2 and RegistrantType = I.
Example: T1234567E
BusinessName Business name. Required if LocalPresence = 2 and RegistrantType = O. Must contain no more than 250 characters.
UenGstNumber UEN or GST number. Required if LocalPresence = 2 and RegistrantType = O.
Example: S12TS1253R

.com.sg

In order to register an .com.sg domain, the .com.sg domain administrator requires collect some additional information about your domain name eligibility. For more information on Domain Name Eligibility policies see the following link: https://sgnic.sg/domain-registration/sg-categories-rules

Element Name Description
LocalPresence Allowed values:
  • 1 - Registrar will act as an agent for .com.sg (recommended)
  • 2 - Registrant has a local presence for .com.sg, and fulfils the .com.sg eligibility criteria
RegistrantName Registrant name. Must contain no more than 250 characters.
BusinessName Business name. Must contain no more than 250 characters.
UenGstNumber UEN or GST number. Required if LocalPresence = 2.
Example: S12TS1253R
BusinessNumber Business number. Required if LocalPresence = 1. Must contain no more than 15 characters.

.org.sg

In order to register an .org.sg domain, the .org.sg domain administrator requires collect some additional information about your domain name eligibility. For more information on Domain Name Eligibility policies see the following link: https://sgnic.sg/domain-registration/sg-categories-rules

Element Name Description
RegistrantName Registrant name. Must contain no more than 250 characters.
BusinessName Business name. Must contain no more than 250 characters.
UenNumber UEN number.
Example: 123456789A

.edu.sg

In order to register an .edu.sg domain, the .edu.sg domain administrator requires collect some additional information about your domain name eligibility. For more information on Domain Name Eligibility policies see the following link: https://sgnic.sg/domain-registration/sg-categories-rules

Element Name Description
RegistrantName Registrant name. Must contain no more than 250 characters.
SchoolInstitutionName School institution name. Must contain no more than 250 characters.
UenNumber UEN number.
Example: 123456789A

.net.sg

In order to register an .net.sg domain, the .net.sg domain administrator requires collect some additional information about your domain name eligibility. For more information on Domain Name Eligibility policies see the following link: https://sgnic.sg/domain-registration/sg-categories-rules

Element Name Description
LicenseeName Licensee name. Must contain no more than 250 characters.
License Number License number. Must contain no more than 250 characters.
UenNumber UEN number.
Example: 123456789A

HostDetails

HostDetails object

Element Name Description
Host

The host name.

Example:

  • ns1.domainhost.com
IP

The IP address of the host.

Example:

  • 203.145.23.76

NameServer

NameServer object

Element Name Description
Host

The host name.

Example:

  • ns1.domainhost.com
IP

Optional. The IP address of the nameserver. It can contain only IPv4 address or both IPv4 and IPv6 addresses, separated by comma. If not specified, an attempt will be made to automatically determine the IP for the specified host based on information from our database.

Example:

  • 203.145.23.76

TransferRegistrantDetails

TransferRegistrantDetails object

Element Name Description
DomainName The name of the domain for which the details are returned.
RegistrantName Domain registrant's name.
RegistrantEmail Domain registrant's email.

TransferDetails

TransferDetails object

Element Name Description
DomainName The name of the domain being transferred.
Status

The status of the transfer.

Example:

  • Transfer Pending.
  • Transfer Not Found.

ProductDetails

ProductDetails object

Element Name Description
ProductId The ID for the product you want to delete.
PlanId The plan ID of the product you want to create.
ProductName The name of the product.
Status

The name status of the product.

Example:

  • Pending Setup
  • Registered
Expires If the product expires or not
Expiry The expiry date of the product

PlanDetails

PlanDetails object

Element Name Description
ID The ID for the plan.
Name The name of the plan.
Type The product type of the plan.

OperatingSystem

OperatingSystem object

Element Name Description
Family

The family of the operating system.

Example:

  • Linux
  • Windows
Name The name of the operating system.

SSLInformation

SSLInformation object

Element Name Description
HostedWith

If your web host is with Dreamscape or not.

CSR Optional. The CSR if web host is not with Dreamscape.
ServerSoftware Optional. The Server Software if web host is not with Dreamscape. See Accepted Server Software.

DNSRecords 1.3

The list of domain DNS records.

DNSRecords object

Element Name Description
A The list of A DNS records. See DNSARecord for more information.
AAAA The list of A DNS records. See DNSAAAARecord for more information.
CNAME The list of CNAME DNS records. See DNSCNAMERecord for more information.
MX The list of MX DNS records. See DNSMXRecord for more information.
CAA The list of CAA DNS records. See DNSCAARecord for more information.
SRV The list of SRV DNS records. See DNSSRVRecord for more information.
TXT The list of TXT DNS records. See DNSTXTRecord for more information.
WEBFWD The list of WEBFWD DNS records. See DNSWEBFWDRecord for more information.
MAILFWD The list of MAILFWD DNS records. See DNSMAILFWDRecord for more information.

DNSARecord 1.3

DNSARecord object

Element Name Description
Id The ID of record. Dispatched by the server.
Subdomain The subdomain of A record.
Content Valid IPv4 address.

DNSAAAARecord 1.3

DNSAAAARecord object

Element Name Description
Id The ID of record. Dispatched by the server.
Subdomain The subdomain of AAAA record.
Content Valid IPv6 address.

DNSCNAMERecord 1.3

DNSARecord object

Element Name Description
Id The ID of record. Dispatched by the server.
Subdomain The subdomain of CNAME record.
Content Valid hostname.

DNSMXRecord 1.3

DNSMXRecord object

Element Name Description
Id The ID of record. Dispatched by the server.
Subdomain The subdomain of MX record.
Content Valid hostname.
Priority The priority of MX record. One of: 1, 5, 10, 20, 30, 40, 50

DNSCAARecord 2.0

DNSCAARecord object

Element Name Description
Id The ID of record. Dispatched by the server.
Flag The flag of CAA record. One of: 0, 128
Tag The tag of CAA record. One of: issue, issuewild
Content Valid hostname.

DNSSRVRecord 2.0

DNSSRVRecord object

Element Name Description
Id The ID of record. Dispatched by the server.
Subdomain The subdomain of SRV record.
Priority A number in the range from 0 to 65535 inclusive.
Weight A number in the range from 0 to 65535 inclusive.
Port A number in the range from 0 to 65535 inclusive.
Target Valid hostname.

DNSTXTRecord 2.0

DNSTXTRecord object

Element Name Description
Id The ID of record. Dispatched by the server.
Subdomain The subdomain of TXT record.
Content Text in ASCII encoding. Maximum 1000 characters.

DNSWEBFWDRecord 2.0

DNSWEBFWDRecord object

Element Name Description
Id The ID of record. Dispatched by the server.
Subdomain The subdomain of WEBFWD record.
Content Valid redirect.
Cloak Enable/disable cloaking. If true the page will be opened in frame, otherwise a user will be redirected.

DNSMAILFWDRecord 2.0

DNSMAILFWDRecord object

Element Name Description
Id The ID of record. Dispatched by the server.
Email The username of email.
Content Valid forward email.

Error

Error object

Element Name Description
Item The field or parameter the error occurred on.
Message The error message.

Accepted Field Values

Accepted Business Types

Summary of accepted business types

Accepted Business And Trading Number Types

Summary of accepted business and trading number types

Accepted Server Software

Summary of accepted Server Software for SSL's

Notification Types

All notifications will only be sent if the Notification URL is set in the Reseller Console. In case of notification, an HTTP POST request is sent to the specified URL with the following data:

Field Type Description
domain_name string The domain name for which the action was performed.
action string The name of the Notification Type. See the list of all types in the table below.

List of Notification Types:

Type Description
Transfer Out Requested Another Registrar has request the transfer of a domain owned by the reseller.
Transfer In Rejected A domain being transferred to the reseller has been rejected by the current Registrar.
Transfer Out Cancelled The reseller, or a member of the reseller, has cancelled the transfer of a domain.
Transfer Out Completed A domain owned by the reseller has been successfully transferred to another Registrar.
Transfer In Completed A transfer requested by the reseller has been completed (the reseller is now the owner of the domain).