Domain API Reference

This reference guide is intended to help you access and utilize our Domain API. We provide details for formatting your requests, our basic API structure, how responses will be returned, and a guide for response codes.
Take note that certain operations can update the settings for your domains without the standard error checking native to the same operations made through our web interface. Therefore, please only make use of the API if you are comfortable using such a system.
We have an environment that can be used for testing API operations called the "sandbox". To receive a sandbox API account for testing, please contact us and we will get right back to you with your sandbox API credentials.
Request Formatting
All requests made to the API should use the following standard format:
https://www.namesilo.com/api/OPERATION?version=VERSION&type=TYPE&key=YOURAPIKEY
More information on each part of the standard request is as follows:
  • https: All requests to the API must utilize https.
  • OPERATION: To be replaced by the name of the specific operation you would like to execute.
  • VERSION: To be replaced by the API version you would like to use. The current version is "1".
  • TYPE: To be replaced by the format you would like to receive returned. The only current option is "xml".
  • YOURAPIKEY: To be replaced by your unique API key. Visit the API Manager page within your account for details.
Standard Response Format
All API responses will be returned in a standard format. Here is an example:
<namesilo>
	<request>
		<operation>OPERATION</operation>
		<ip>YOUR IP</ip>
	</request>
	<reply>
		<code>RESPONSE CODE</code>
		<detail>RESPONSE DETAIL</detail>
	</reply>
</namesilo>

Register a Domain

Register a new domain name for the specified number of years and with the specified attributes.

*You must have at least one verified credit card or adequate account funds to utilize these commands
Sample Request Request Parameters
  • Required
    • domain: The domain you want to register
    • years: The number of years for which you would like to register the domain (must be a number between 1-10)
  • Optional
    • payment_id: The ID number for the verified credit card to use for the transaction. If you do not specify a payment_id, we will attempt to process the transaction using your account funds.
    • private: Whether or not you want the registration to utilize our free WHOIS privacy service. Use "1" for private, and "0" for not private. If not supplied, the domain will be registered without privacy.
    • auto_renew: Whether or not you want the domain to auto-renew upon its expiration. Use "1" to auto-renew, and "0" not to auto-renew. If not supplied, the domain will be set to auto-renew.
    • portfolio: The encoded name of the portfolio to assign the domain to upon registration. If the portfolio name is not currently in use, our system will automatically create the portfolio and assign the domain to it.
    • ns1-13: You can provide up to 13 nameservers to use for the domain registration. If you do not provide any nameservers, or any of the checks below do not pass, our default nameservers will be used.
      • Must provide at least 2 nameservers
      • All provided nameservers must already exist at the requisite registry. If not all nameservers exist, you will receive a 301 response indicating that the domain was registered, but our nameservers were used.
    • coupon: The coupon code to apply to this order
    • Passing Contact Information: You can optionally pass the following fields to use for the WHOIS contact information (registrant, administrative, billing and technical) for the domain.
      • Notes
        • If you do not pass a value for ALL of the required fields, anything you do pass for contact information will be ignored and your default account contact profile will be used
        • If there is a problem with any of the data you provide, you will receive a response code of 302 indicating a successful domain registration, but that your account's default contact profile was used (you can configure your account to reject orders with invalid contact information via the Reseller Manager page in your account.).
        • All values must be encoded.
        • Character limits for each field are in parentheses.
      • Required Fields
        • fn: First Name (32)
        • ln: Last Name (32)
        • ad: Mailing Address (128)
        • cy: Mailing City (64)
        • st: Mailing State/Province/Territory (64)
        • zp: Mailing Zip/Postal Code (16)
        • ct: Mailing Country (4)
        • em: Email Address (128)
        • ph: Phone Number (32)
          • If country is US or CA, the phone number should be exactly 10 numbers
          • Country dialing code SHOULD NOT be passed for any countries
      • Optional Fields
        • cp: Company (64)
        • ad2: Mailing Address 2 (128)
        • fx: Fax (32)
          • If country is US or CA, the phone number should be exactly 10 numbers
          • Country dialing code SHOULD NOT be passed for any countries
      • .US Required Fields
      • .CA Domains: You must use one of the two following options when registering .ca domains:
        • You can specify a contact ID (see "Passing Contact ID" section below) so long as that contact ID is already setup with the requisite .ca information and is set as an Individual legal type.
        • If you do not pass a contact ID, you must have a "Default .ca Profile" in place to register .ca domains via the API. You can create your Default .ca Profile on the Profile Manager page in your account.
    • Passing Contact ID: You may alternatively pass the internal NameSilo contact profile ID. You can get this value by running a getAccountContacts command.
      • Notes
        • If you do not pass a valid contact ID, you will receive a response code of 302 indicating a successful domain registration, but that your account's default contact profile was used (you can configure your account to reject orders with invalid contact information via the Reseller Manager page in your account.).
      • Required Field
        • contact_id: The contact profile ID to assign to this domain
Response
<namesilo>
	<request>
		<operation>registerDomain</operation>
		<ip>55.555.55.55</ip>
	</request>
	<reply>
		<code>300</code>
		<detail>success</detail>
		<message>Your domain registration was successfully processed.</message>
		<domain>namesilo.com</domain>
		<order_amount>7.77</order_amount>
	</reply>
</namesilo>
Response Codes
The standard response codes can be found below. Keep in mind that specific codes are used in support of each operation. More information can be found following the operation details contained within this document.

101HTTPS not used
102No version specified
103Invalid API version
104No type specified
105Invalid API type
106No operation specified
107Invalid API operation
108Missing parameters for the specified operation
109No API key specified
110Invalid API key
111Invalid User
112API not available to Sub-Accounts
113This API account cannot be accessed from your IP
114Invalid Domain Syntax
115Central Registry Not Responding - try again later
116Invalid sandbox account
117The provided credit card profile either does not exist, or is not associated with your account
118The provided credit card profile has not been verified
119Insufficient account funds for requested transaction
120API key must be passed as a GET
200Domain is not active, or does not belong to this user
201Internal system error
210General error (details provided in response)
250Domain is already set to AutoRenew - No update made.
251Domain is already set not to AutoRenew - No update made.
252Domain is already Locked - No update made.
253Domain is already Unlocked - No update made.
254NameServer update cannot be made. (details provided in response)
255Domain is already Private - No update made.
256Domain is already Not Private - No update made.
261Domain processing error (details provided in response)
262This domain is already active within our system and therefore cannot be processed.
263Invalid number of years, or no years provided.
264Domain cannot be renewed for specified number of years (details provided in response)
265Domain cannot be transferred at this time (details provided in response)
266No domain transfer exists for this user for this domain
267Invalid domain name, or we do not support the provided extension/TLD.
280DNS modification error
300Successful API operation
301Successful registration, but not all provided hosts were valid resulting in our nameservers being used
302Successful order, but there was an error with the contact information provided so your account default contact profile was used (you can configure your account to reject orders with invalid contact information via the Reseller Manager page in your account.)
400Existing API request is still processing - request will need to be re-submitted