Register new domain
Request a new domain registration.
URL Parameters
-
{domain}
Domain name to be registered.
For IDN, you must provide the domain name as ACE string.
Headers
-
Authorization
string
The Autorization header must start with “Bearer ” followed by the session ID.
Example:”Autorization: Bearer b0f13a3c01d9cce2a9a44cd729f81c26″ -
Content-type
string
Content type of the request
Only “application/json” is accepted
Body
REQUIRED
-
idOwner
string
(12)
ID of the owner contact (With “isOwner=1”).
-
idAdmin
string
(12)
ID of the administrative contact (With “isOwner=0”).
-
idTech
string
(12)
ID of the technical contact (With “isOwner=0”).
-
idBilling
string
(12)
ID of the billing contact (With “isOwner=0”).
-
duration
integer
Duration (in years).
OPTIONAL
-
ns1
string
(255)
Primary name server.
-
ns2
string
(255)
Secondary name server.
-
ns3
string
(255)
Secondary name server.
-
ns4
string
(255)
Secondary name server.
-
ns5
string
(255)
Secondary name server.
-
templateDNS
integer
Number of a DNS template.
JSON example
{
"idOwner":"HOLDER_ID",
"idAdmin":"CONTACT_ID",
"idTech":"CONTACT_ID",
"idBilling":"CONTACT_ID",
"ns1":"ns1.netim.net",
"ns2":"ns2.netim.net",
"ns3":"ns3.netim.net",
"duration":1
}
-
200OK
The request is processed and the result is returned in the body. -
4XX
- Contact IDs must exist and belong the reseller.
- idOwner must be a contact with isOwner=1
- idAdmin, idTech, idBilling must be contacts with isOwner=0 or be defined with the reseller ID
- According to the extension, allocation and semantic rules may apply. See relative information for the extension
- The minimal number of nameservers must match the requirements of the extension.
- A DNS test may be performed prior the registration. See structdomaintldinfo.HasZonecheck
- The duration must correspond to periods allowed by the extension. See structdomaintldinfo.PeriodCreate
- The templateDNS must belong to the reseller. (If provided, the template is used. If not provided, the default template defined in the reseller account is used.
If no default template is defined then NETIM’s template is used)
<?php $ch = curl_init(); $body = array( "idOwner" => "HOLDER_ID", "idAdmin" => "CONTACT_ID", "idTech" => "CONTACT_ID", "idBilling" => "CONTACT_ID", "ns1" => "ns1.netim.net", "ns2" => "ns2.netim.net", "ns3" => "ns3.netim.net", "duration" => 1, ); curl_setopt($ch, CURLOPT_URL,"https://rest.netim.com/1.0/domain/$domain"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST'); curl_setopt($ch, CURLOPT_HTTPHEADER, ["Authorization: Bearer $sessionID", "Content-type: application/json"]); curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($body)); $result = json_decode(curl_exec ($ch), true); $status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close ($ch);
import java.util.Base64; import java.net.URI; import java.net.http.HttpClient; import java.net.http.HttpRequest; import java.net.http.HttpResponse; public class Example { public static void main(String args[]) throws Exception { String sessionID = "12345678"; String domain = "example.com"; String body = "{\"idOwner\":\"HOLDER_ID\",\"idAdmin\":\"CONTACT_ID\",\"idTech\":\"CONTACT_ID\",\"idBilling\":\"CONTACT_ID\",\"ns1\":\"ns1.netim.net\",\"ns2\":\"ns2.netim.net\",\"ns3\":\"ns3.netim.net\",\"duration\":1}"; HttpClient client = HttpClient.newHttpClient(); HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://rest.netim.com/1.0/domain/" + domain)) .method("POST", HttpRequest.BodyPublishers.ofString(body)) .header("Content-Type", "application/json") .header("Accept-Language", "EN") .header("Authorization", "Bearer " + sessionID) .build(); HttpResponse response = client.send(request, HttpResponse.BodyHandlers.ofString()); String result = response.body().toString(); } }
#!/usr/bin/python3 import json import requests domain = 'example.com' url = 'https://rest.netim.com/1.0/domain/' + domain sessionId = "1234567" data = { "idOwner":"HOLDER_ID", "idAdmin":"CONTACT_ID", "idTech":"CONTACT_ID", "idBilling":"CONTACT_ID", "ns1":"ns1.netim.net", "ns2":"ns2.netim.net", "ns3":"ns3.netim.net", "duration":1 } headers = {"Authorization": "Bearer " + sessionId, "Content-Type": "application/json"} response = requests.post(url, headers=headers, data=json.dumps(data))
curl -X POST https://rest.netim.com/1.0/domain/example.com \ -H 'Autorization: Bearer b0f13a3c01d9cce2a9a44cd729f81c26=' \ -H 'content-type: application/json' \ -d '{"idOwner":"HOLDER_ID","idAdmin":"CONTACT_ID","idTech":"CONTACT_ID","idBilling":"CONTACT_ID","ns1":"ns1.netim.net","ns2":"ns2.netim.net","ns3":"ns3.netim.net","duration":1}'
Need an API client ?
Speed up your integration by using our API client for REST