OrderingDomain
You can order a domain name using the Ordering API. The ordering process should have the following steps. You need to create an order, create an account or set an existing account to use with the order, add a product, add service to the product, add attributes to the service and finally you need to validate the order, get a quote and submit the order. The general process is documented in the Ordering API.
When creating a product, you need to use the product offering (specification) associated with the domain product, e.g.
{ "offering": "http://coreapi01.ote.chicago.hostway:8100/productSpecifications/core.plan.dnr.only/offerings/USD-12" }
When adding a service to the product you need to use service specification associated with domain name registration:
{ "name": "ng-test-fitnesse-20130412-0840.com", "serviceSpecification": "http://coreapi01.ote.chicago.hostway:8100/serviceSpecifications/core.dnr.com", "billingCycle": 12 }
Finally, the service needs to have attributes such as domain contacts, nameservers, registration term, etc.:
Register .com
{ "domainName": "ng-test-fitnesse-20130412-0840.com", "operation": "register", "term": 1, "authInfo" : "mysecret", "nameservers" : [ "ns1.test.com", "ns2.test.com" ], "contactInfo" : { "registrant": { "type": "registrant", "firstName": "John", "lastName": "Doe", "company": "ACME Inc.", "street1": "123 First Str.", "city": "Chicago", "zipOrPostal": "34567", "stateOrProvince": "IL", "countryCode": "US", "email1": "john.doe@test.com", "phone1": "+1.312.456789098" }, "administrative": { "type": "administrative", ... }, "billing": { "type": "billing", ... }, "technical": { "type": "technical", ... } } }
Register .us
{ "domainName": "ng-test-fitnesse-20130412-0840.us", "operation": "register", "term": 1, "authInfo" : "mysecret", "nameservers" : [ "ns1.test.com", "ns2.test.com" ], "extraParams": [{"name": "us_nexus", "value": "C11"}, {"name": "us_purpose", "value": "P1"}], "contactInfo" : { "registrant": { "type": "registrant", "firstName": "John", "lastName": "Doe", "company": "ACME Inc.", "street1": "123 First Str.", "city": "Chicago", "zipOrPostal": "34567", "stateOrProvince": "IL", "countryCode": "US", "email1": "john.doe@test.com", "phone1": "+1.312.456789098" }, "administrative": { "type": "administrative", ... }, "billing": { "type": "billing", ... }, "technical": { "type": "technical", ... } } }
Service Attributes
- domainName - string
- The domain name
- operation - string
- "register" to register a domain
- term - integer
- The registration term (period) in years
- authInfo - string
- Authentication info, currently not supported
- nameservers - list of strings
- Domain name servers (DNS) for the domain
- extraParams - list of extra params (optional)
- List of additional parameters required for some TLDs. Each parameter is an object with "name" and "value" fields. For example, .us registration requires the fields "us_nexus" which can be one of the following [C11, C12, C21, C31, C32] - see What are Domain Name Application Purpose Codes? and "us_purpose" which can be one of [P1, P2, P3, P4, P5] - see What do the Nexus Codes mean? You can find more information on extra parameters in the GET /domains/tlds/{tld}/extparams documentation.
- company - string (optional)
- The company or organization name
- firstName - string
- The first name of the contact person
- lastName - string
- The last name of the contact person
- street1 - string
- The street address
- street2 - string (optional)
- The second line of the street address (if any)
- city - string
- The city
- countryCode - string
- The international 2-letter country code
- stateOrProvince - string
- The state or province. For US states use the 2-letter state code
- zipOrPostal - string
- The postal code
- email1 - string
- The e-mail address of the contact person
- phone1 - string
- The phone number of the contact person in valid E.164 format, e.g. +1.3209270625
See also