Skip to content

Reassign

Purpose

Reassign the Domain Name Record to a new Holder.

Authority

Only the Managing AR of a Domain Name Record can submit a Reassign Domain Request.

A Reassign Domain Request cannot be executed on a domain under clientHold status.

Result

The Reassign process is comprised of two Registration Actions: Delete Domain and Create Domain –executed one after the other as a single atomic Registration Action,ensuring that no other Create Domain Requests for the Domain are processed in between.

Upon the completion of the Reassign Domain Request, a new Domain Name Record is created, with the submitting AR as the Managing AR, for one Registration Period starting the date the reassignment is processed.

IMPORTANT – no information is inherited from the previous Domain Name Record. Where continuity of operation of the Domain Name is required, the DNS Information blocks from the previous Domain Name Record MUST be specifically included in the Reassign Request.

Code Example

The Reassign request is very similar to the Create Domain Request. The difference is in the tags identifying the request type (namely, the <update> and <reassign> tags).

Reassign Domain Request Example

<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
xmlns:isocil="http://www.isoc.org.il/xml/epp/isocil-1.0"
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
xmlns:domainrequest="http://www.isoc.org.il/xml/epp/isocil-domainrequest-1.0"
xmlns:contact="urn:ietf:params:xml:ns:contact-1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd
http://www.isoc.org.il/xml/epp/isocil-1.0 isocil-1.0.xsd
urn:ietf:params:xml:ns:domain-1.0 domain-1.0.xsd
http://www.isoc.org.il/xml/epp/isocil-domainrequest-1.0 isocil-domainrequest-1.0.xsd
urn:ietf:params:xml:ns:contact-1.0 contact-1.0.xsd">
    <command>
        <update>
            <domain:reassign>
                <domain:name>example.co.il</domain:name>
                <domain:ns>
                    <domain:hostAttr>
                        <domain:hostName>ns.hostingcompany.co.il</domain:hostName>
                    </domain:hostAttr>
                    <domain:hostAttr>
                        <domain:hostName>ns.example.co.il</domain:hostName>
                        <domain:hostAddr ip="v4">193.168.0.1</domain:hostAddr>
                        <domain:hostAddr ip="v6">::b:0:1</domain:hostAddr>
                    </domain:hostAttr>
                </domain:ns>
                <domain:registrant>NEW1</domain:registrant>
                <domain:contact type="admin">MH16016-IL</domain:contact>
                <domain:contact type="tech">NEW2</domain:contact>
                <domain:contact type="zone">MH16016-IL</domain:contact>
                <domain:locktransfer>true</domain:locktransfer>
                <domain:period unit="y">2</domain:period>
            </domain:reassign>
        </update>
        <extension>
            <isocil:ext>
                <isocil:create>
                    <isocil:contact>
                        <contact:id>NEW1</contact:id>
                        <contact:type>registrant</contact:type>
                        <contact:postalInfo type="int">
                            <contact:name>Israel Israeli LTD</contact:name>
                            <contact:isOrganization>true</contact:isOrganization>
                            <contact:organizationId>512345679</contact:organizationId>
                            <contact:addr>
                                <contact:street>12 Herzel St. </contact:street>
                                <contact:city>Jerusalem</contact:city>
                                <contact:sp> </contact:sp>
                                <contact:pc>3324</contact:pc>
                                <contact:cc>IL</contact:cc>
                            </contact:addr>
                        </contact:postalInfo>
                        <contact:voice>+972 2 3512811</contact:voice>
                        <contact:fax>+972 2 3512811</contact:fax>
                        <contact:email>[email protected]</contact:email>
                    </isocil:contact>
                    <isocil:contact>
                        <contact:id>NEW2</contact:id>
                        <contact:type>domain</contact:type>
                        <contact:postalInfo type="int">
                            <contact:name>Israel Israeli</contact:name>
                            <contact:org>Some Company Ltd.</contact:org>
                            <contact:addr>
                                <contact:street>12 Herzl St.</contact:street>
                                <contact:city>Beer Sheva</contact:city>
                                <contact:sp>IL</contact:sp>
                                <contact:pc>12345378</contact:pc>
                                <contact:cc>IL</contact:cc>
                            </contact:addr>
                        </contact:postalInfo>
                        <contact:voice>+1 4 3560890</contact:voice>
                        <contact:fax>+1 8 3567789</contact:fax>
                        <contact:email>[email protected]</contact:email>
                    </isocil:contact>
                </isocil:create>
            </isocil:ext>
            <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
                <secDNS:dsData>
                    <secDNS:keyTag>25845</secDNS:keyTag>
                    <secDNS:alg>8</secDNS:alg>
                    <secDNS:digestType>2</secDNS:digestType>
                    <secDNS:digest>1D368C0FDFBC6F1E28...A75C110F84C3</secDNS:digest>
                </secDNS:dsData>
            </secDNS:create>
        </extension>
        <clTRID>AB-1971</clTRID>
    </command>
</epp>

Reassign Domain Request Tags Legend

  • <domain:reassign>: Defines that the desired Registration Action is Reassign Domain, where:

    • <domain:name>: Defines the Domain Name to be created.
    • <domain:ns>: Defines a DNS Information block, where <domain:hostAttr> defines the details of one DNS server:
      • <domain:hostName> - contains the DNS server's host name.
      • <domain:hostAddr> - contains the DNS server's IP address. The <domain: hostAddr> tag attribute ip – defines the IP version, which is one of the following:
        • "v4" – for IPV4 address
        • "v6" – for IPV6 address. More information can be found at RFC5732.
    • <domain:registrant>: Contains the Reference Label to the Extension Block, where the Registrant's details are listed.
    • <domain:contact>: Contains either an already existing Contact Object Handle (managed by the submitting AR), or a Reference Label to the Extension Block where a new contact's details are listed.

      The <domain:contact> tag attribute "type" – defines the Contact's Role, which is one of the following:

      • "admin" – Administrative Contact.
      • "tech" – Technical Contact.
      • "zone" – Zone Contact.
    • <domain:locktransfer>: Controlling the Lock Transfer option (see Lock Transfer Option).

    • <domain:period>: The registration period requested, up to and including the Maximal Registration Period, expressed in Registration Units.
  • <isocil:ext>: Defines the IL Extension Block.

  • <isocil:contact>: A Contact Object creation block.

    • <contact:id>: Contains a Reference Label declared in the Standard EPP Block.
    • <contact:type>: Contains one of the following:
      • "registrant" – to indicate that the details are of the Registrant (a Domain Name Record Attribute). This one is mandatory.
      • "domain" – to indicate that the details are of a Contact Object.
    • <contact:isOrganization>: Only for registrant contact type Indicating if the registrant contact for the domain is an organization or not - true/false
    • <contact:organizationId>: If the registrant is an organization, a valid organization ID must be provided. Should be omitted or left blank, if the registrant contact is not an organization.
    • <contact:postalInfo>: Contains a block defining the Contact's details. The Tag attribute type="int" should be included as specified in the example.

    • <contact:name>: Contains the Contact's full name. In case of a person, name and surname separated by a space. In case of a legal-entity, e.g, a company, the company's full name, including appropriate suffix, e.g., "Ltd." – separated by spaces.

    • <contact:org>: Contains the Contact's organization. Only(!) for domain contact type
    • <contact:addr>: A block containing the postal information associated with the Contact:

      • <contact:street> - Contains the street and number of the Contact's address.
      • <contact:city> - Contact's city.
      • <contact:sp> - Contact's State/Province.
      • <contact:pc> - Contact's postal code.
      • <contact:cc> - Contact's two-letter country code, according to ISO-3166.
    • <contact:voice>: Contact's telephone number, in the following format: +[country code] [area code] [phone number].

    • <contact:fax>: Contact's facsimile number, in +[country code] [area code] [phone number].
    • <contact:email>: Contact's direct mail address.
  • <secDNS:create>: A DNSSEC object creation block.

    • <secDNS:dsData>: Contains all Delegation Signer (DS) record elements of the domain. DNS name must be defined. Information about the DS resource record can be found at RFC4034 section 5.1. For detailed requirements please check Appendix D
      • <secDNS:keyTag> - The key tag of the DNSKEY RR referred to by the DS record.
      • <secDNS:alg> - The algorithm number of the DNSKEY RR referred to by the DS record.
      • <secDNS:digestType> - The Digest Type field identifies the algorithm used to construct the digest.
      • <secDNS:digest> - The DS record refers to a DNSKEY RR by including a digest of that DNSKEY RR.
      • <secDNS:keyData> - OPTIONAL. DNSKEY info. Information about the DNSKEY resource record can be found at RFC4034 section 2.1.
        • <secDNS:flags> - Zone Key flag.
        • <secDNS:protocol> - Protocol field. MUST be 3.
        • <secDNS:alg> - Algorithm use to determine the format of the Public Key field.
        • <secDNS:pubKey> - The Public Key Field holds the public key material.

Tags occurrence table

Tag Occurrences
(MIN-MAX)
Size + Remarks
<epp> 1
<command> 1
<update> 1
<domain:reassign> 1
<domain:name> 1 Domain name is mandatory, must be a domain owned by the requesting registrar. Must be in status 'ok'.
<domain:ns> 1
<domain:hostAttr> 0-13
<domain:hostname> Max length 255 characters. Must contain at least one dot . must have 2-10 characters after the last dot.
<domain:hostAddr> Obligatory when Glue record needed. IP Attribute must be either v4 or v6.
<domain:registrant> 1 Mandatory. Must be NEW1 with a contact extension block with NEW1 as id.
<domain:contact type="admin"> 1 Mandatory. Must either be a nic-handle of an existing contact, or NEW#, where # stands for a digit, with a contact extension block with the same number in NEW# as id. The same contact can be used for multiple contact types.
<domain:contact type="tech"> 1 Same rules as for "admin" contact
<domain:contact type="zone"> 1 Same rules as for "admin" contact
<domain:locktransfer> 0-1
<domain:period> 1 1-5 years
<extension> 1
<isocil:ext> 1
<isocil:create> 1
<isocil:contact> 1-4 Id must correlate the contact tag (NEW#). All subtags but: <contact:org> <contact:sp> <contact:voice> <contact:fax> are mandatory.
<contact:id> 1 Must be the same input as the relevant <domain:contact> tag.
<contact:type> registrant or domain. Registrant contact type obligatory.
<contact:name> 1 For domain contact type, name must contain at least 2 words, the first 2 of which must start with an English letter. For registrant contact type, name must contain at least two words and only english letters and spaces when type is ‘Personal‘ (isOrganiztion = false).
<contact:isOrganization> 0-1 true / false. true for organization, false for personal.
<contact:organizationId> 0-1 Must be empty if <contact:isOrganization> is false. Must be filled otherwise. Letters, digits, spaces or hyphens (-), minimum length 4 characters, max length 15 characters. If holder is Israeli, must contain digits only, start with 5 and pass the luhn algorithm.
<contact:org> 1 For domain contact type only. Total length may not exceed 100 characters. First character must be either a letter or a number. Last character must be a letter, number, space or one of these ./"(). Every character in between can be letter, number, space or one of these #@,./&"()-
<contact:addr> 1
<contact:street> 1 Mandatory. Total length may not exceed 255 characters. First character must be either a letter or a number. Last character must be a letter, number, space or one of these ./"(). Every character in between can be letter, number, space or one of these #@,./&"()-
<contact:city> 1 Mandatory. Total length may not exceed 100 characters. First character must be either a letter or a number. Last character must be a letter, number, space or one of these ./"(). Every character in between can be letter, number, space or one of these #@,./&"()-
<contact:sp> 1
<contact:pc> 1 If country code is IL, the postal code must be 5 or 7 digits long, and only digits. Otherwise, must be a string 2-15 characters long, with letters, numbers, space or dashes.
<contact:cc> 1 Must be a valid Alpha-2 country code (in accordance with ISO 3166)
<contact:voice> 1 Must be digits and spaces. Must start wih +. Must be split into 3 parts, seperated by spaces (country code, area code, phone number). Max length: Country code - 3; area code - 5; phone - 12. If country code is 972 (IL), area number length max is 2 ('151' & '153' area codes are also viable). 18 characters max.
<contact:fax> 1 Same rules as <contact:voice>
<contact:email> 1 Can't be empty for domain or holder contact types.
<secDNS:create> 1
<secDNS:dsData> 1-6 All subtags but: <secDNS:keyData> are mandatory. Full explenation on secDNS can be found on DS Specification
<secDNS:keyData> 1 All subtags are mandatory.
<clTRID> 1 Must start with 2 capital letters representing the registrar, followed by a hyphen (-) and a string of numbers. Must be unique per request. Total length may not exceed 30 characters.

Additional Response Data (<resData> block) in a SUCCESS message

The API Server's response upon the successful completion of a Reassign Domain same as Create Domain