Transfer domain to another Netim account



Request the internal transfer of a domain name from another Netim account to yours.

An internal transfer must be considered as a pull action to your account and not a push action to another one.

URL Parameters

  • {domain}

    Domain name to be registered.
    For IDN, you must provide the domain name as ACE string.


  • 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



  • 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”).

  • authID string (64)
    Autorisation code / EPP code (Optional, if applicable).
  • 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.

JSON example


Approval of the change

  • If the authorization code is omitted, confirmations will be requested by e-mail to the former account and the new reseller account.
  • If the authorization code is provided and is valid, the change is performed automatically.

Other information

  • Contact IDs must exist and belong the reseller.
  • 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 nameserver change. See structdomaintldinfo.HasZonecheck

Common language examples

	$ch = curl_init();
	$body = array(
		"idAdmin" => "CONTACT_ID",
		"idTech" => "CONTACT_ID",
		"idBilling" => "CONTACT_ID",
		"ns1" => "",
		"ns2" => "",
		"ns3" => "",
	curl_setopt($ch, CURLOPT_URL,"$domain/internal-transfer/");
	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_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;
public class Example {
	public static void main(String args[]) throws Exception {
		String sessionID = "12345678";
		String domain = "";
		String body = "{\"idAdmin\":\"CONTACT_ID\",\"idTech\":\"CONTACT_ID\",\"idBilling\":\"CONTACT_ID\",\"ns1\":\"\",\"ns2\":\"\",\"ns3\":\"\"}";
		HttpClient client = HttpClient.newHttpClient();
		HttpRequest request = HttpRequest.newBuilder()
			.uri(URI.create("" + domain + "/internal-tranfser/"))
			.method("POST", HttpRequest.BodyPublishers.ofString(body))
			.header("Content-Type", "application/json")
			.header("Accept-Language", "EN")
			.header("Authorization", "Bearer " + sessionID)
		HttpResponse response = client.send(request, HttpResponse.BodyHandlers.ofString());
		String result = response.body().toString();
import json
import requests
domain = ''
url = '' + domain + '/internal-transfer/'
sessionId = "1234567"
data = {
headers = {"Authorization": "Bearer " + sessionId, "Content-Type": "application/json"}
response =, headers=headers, data=json.dumps(data))
curl -X POST \
-H 'Autorization: Bearer b0f13a3c01d9cce2a9a44cd729f81c26=' \
-H 'content-type: application/json' \
-d '{"idAdmin":"CONTACT_ID","idTech":"CONTACT_ID","idBilling":"CONTACT_ID","ns1":"","ns2":"","ns3":""}'