System Status
System Status

Contact Operations

EPP Contact Create

Performing the Contact Create Request

1. The <contact:id> element in the unique identifier for the contact object. A registrar decides a contact's unique ID.

2. The <contact:postalInfo type="loc"> element. Within this element the localised contact information may be provided. Localised information may be in UTF8 format, representing the formal version of the information partaining to the locale of the contact.

3. The <contact:postalInfo type="int"> element. Within this element the internationalised contact information may be provided. Internationalised information must be in ASCII format, representing the internationally readable format of the contact information.

4. The <contact:name> element must contain the full name of the registrant.

5. The <contact:addr> element. Within this element, child elements will be included that specify address information about the registrant.

6. Within the <contact:addr> element, the following child elements must be populated with the relative registrant information: <contact:street>, an OPTIONAL secondary <contact:street> for the suburb, <contact:city>, OPTIONAL <contact:sp> to indicate the province, OPTONAL <contact:pc> to indicate the postal code, <contact:cc> to indicate the country code.

7. The <contact:voice> to indicate the telephone number of the registrant. The syntax for the value must be a "+" followed by the country dialing code such as "27" for South Africa, followed by a ".", followed by the rest of the digits in the number.

8. The <contact:fax> element. This tag is OPTIONAL as not all registrants have faxes.

9. The <contact:email> element to indicate the registrant's e-mail address.

10. The <contact:authInfo> element is not used by any ZA Namespace therefore it is not shown below.

11. The <contact:disclose> element is not used by any ZA Namespace therefore it is not shown below.

Possible Responses

The following are possible responses from our server.

1000: Contact Creation Successful

A response code of 1000 means that the contact object has been created and may be used.

2302: Contact Exists ID

A response code of 2302 means that the ID of the contact that you tried to create already exists in the database of the registry. Please change the element value.

2004: Internationalised contact address must only contain ascii characters

A response code of 2004 means that you have specified UTF8 characters within one or more the child elements. Please ensure the information provided in the element is all in ASCII.

Check Contact

The following section outlines the format of the EPP Contact Check request. The purpose of the Contact Check request is to identify if a contact object exists in the registry database or if it may be registered.

EPP Contact Check

Performing the Contact Check Request

  1. The check command will indicate if a contact object is currently reserved in a list.
  2. The check command will indicate that a contact object is available for registration if the requesting registrar has reserved the name.

Possible Responses

The following are possible responses from our server.

1000: Contact Check Command Completed Successfully

A response code of 1000 means that the Contact Check command was processed. The return message will indicate the availability of the contact object. To verify availability, the <contact:id> element must be reviewed. The attribute "avail" will indicate the availability of the contact. If the contact is available, the attribute will have a value of 1. If the contact object is not available, the attribute will have a value of 0. Results that have an avail attribute value of 0 will be followed by the <contact:reason> element which indicates why the contact object is not available.

EPP Contact Info

Performing the Contact Info Request

  1. As the Registrar of Record, all information regarding the contact object will be presented on request.
  2. All ZA Namespaces do not make use of the <contact:pw> or <contact:disclose> elements. This means that regardless of the requesting registrar, all the informaiton pertaining to a contact object will be returned on a successful request.

Possible Responses

The following are possible responses from our server.

1000: Contact Info Command Completed Successfully

A response code of 1000 means that the server has received and processed the request.

2303: Contact does not exist

A response code of 2303 means that the contact queried can not be identified in the registry database. Please review the <contact:id> element value.

EPP Contact Update

Performing the Contact Update Request

1. The <contact:id> element is the unique identification code for the contact that must be updated.

2. The <contact:update> element specifies to the server that an update command must be performed.

3. The <contact:chg> element specifies to the server that a change has to be applied to the contact.

4. The <contact:add> element specifies the statuses that must be applied to the contact.

5. The <contact:rem> element specifies the statuses that must be removed from the contact. Certain statuses may clash and have to be removed in specific order.

6. All associated information may be updated except for the <contact:id> element.

7. All ZA Namespaces do not make use of the <contact:disclose> element.

8. All updates to contact objects must include the <contact:cc> element.

9. All updated will send a notification email to the contact email address.

10. The update will only be executed at the end of a 5 day period.

Possible Responses

The following are possible responses from our server.

1001: Contact Update Pending

A response code of 1001 means that the update was successful and all changes will be applied at the end of the 5 day period.

2303: Contact does not exist

A response code of 2303 means that the contact you attempted to update does not exist in the database of the registry. Please ensure that the specified <contact:id> value is correct.

2004: Internationalised contact address must only contain ascii characters.

A response code of 2004 means that the <postalInfo type="int"> element was updated and the changed information contained UTF8 characters. Please review the provided information within the element to ensure only ASCII values are present.

2306: Contact address information Name and City elements cannot be empty

A response code of 2306 means that either the <contact:city> or <contact:name> elements were attempted to be updated with null values. Performing this type of update is against current policy. Please populate the required fields or omit the elements from the update.

2201: Requester != Contact Owner ID

A response code of 2201 means that the contact ID provided for the update is not registered by you, but rather belongs to another registrar. Please review the specified value in the <contact:id> element.

Example e-mail sent to registrant

The e-mail template is an example of what a contact will receive when an update is performed on their information.

Email Example

Dear Registrant,

Please be advised that the contact details for "John New Rant" have been updated as detailed below.

Should you have any queries in this regard, please contact your Registrar myRegistrar at
+27.115550912 or myRar@rar.co.za

Current Contact Information:
  ID:    JNR001 
  Phone:  +27.115551234
  Fax:    +86.5551234
  Email:  JNR@rantEmail.co.za

Current Contact Localized Postal Address:
  Name:    John Old Rant
  Street:  12 Old Place
  Street:  Old Street
  Street:  Old Town
  Org:    None
  City:    Registrant Ville
  Province: Gauteng
  Country: ZA
  Code:    90210

New Contact Information:
  ID:    JNR001 
  Phone:  +27.110003333
  Fax:    +27.119990000
  Email:  JNR@newRantEmail.co.za

New Contact Localized Postal Address:
  Name:    John New Rant
  Street:  21 New Place
  Street:  New Street
  Street:  New Town
  Org:    None
  City:    New Registrant Ville
  Province:Gauteng
  Country: ZA
  Code:    01209

Additional Information:
  Status:
    ok

Removing "loc" or "int" Postal Information

If a contact object contains both "loc" and "int" postal information type, either can be removed to no longer be shown as part of the contact postal information.

For the example below, the contact contains both types, and the "int" postal type will be removed.

Example

Contact info shows both types

 <epp:epp xmlns:epp="urn:ietf:params:xml:ns:epp-1.0" xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
  <epp:response>
    <epp:result code="1000">
      <epp:msg>Contact Info Command completed successfully</epp:msg>
    </epp:result>
    <epp:resData>
      <contact:infData>
        <contact:id>testRant</contact:id>
        <contact:roid>CTC_2F-COZA</contact:roid>
        <contact:status s="ok"/>
        <contact:postalInfo type="int">
          <contact:name>Int Name</contact:name>
          <contact:org>Example Organisation</contact:org>
          <contact:addr>
            <contact:street>Int Street</contact:street>
            <contact:street>Int Place</contact:street>
<contact:street>Int Area</contact:street>
            <contact:city>Int City</contact:city>
            <contact:sp>Int Province</contact:sp>
            <contact:pc>9999</contact:pc>
            <contact:cc>ZA</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:postalInfo type="loc">
          <contact:name>Local Name</contact:name>
          <contact:org/>
          <contact:addr>
            <contact:street>1 Fake Street</contact:street>
            <contact:street>12 Fake Place</contact:street>
            <contact:street>Fake Area</contact:street/>
            <contact:city>Registrant Ville</contact:city>
            <contact:sp>Rant Province</contact:sp>
            <contact:pc>9998</contact:pc>
            <contact:cc>ZA</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+27.113456789</contact:voice>
        <contact:fax>+27.119876543</contact:fax>
        <contact:email>example@example.com</contact:email>
        <contact:clID>myRar</contact:clID>
        <contact:crID>myRar</contact:crID>
        <contact:crDate>2012-06-11T09:24:15Z</contact:crDate>
        <contact:upID>myRar</contact:upID>
        <contact:upDate>2012-06-11T09:24:15Z</contact:upDate>
      </contact:infData>
    </epp:resData>
    <epp:trID>
      <epp:svTRID>DNS-EPP-137DBD6D649-56A04</epp:svTRID>
    </epp:trID>
  </epp:response>
</epp:epp>


To remove either type, perform a Contact Update Command to remove ALL current existing elements. For the example, the "int" type will be removed as follows.

NOTE: The <contact:name> and <contact:city> elements must be a single white-space. If they are not, the update will not be successful.

 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <contact:update
       xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>testRant</contact:id>
        <contact:chg>
          <contact:postalInfo type="int">
            <contact:name> </contact:name>
            <contact:org></contact:org>
            <contact:addr>
              <contact:street></contact:street>
              <contact:street></contact:street>
              <contact:street></contact:street>
              <contact:city> </contact:city>
              <contact:sp></contact:sp>
              <contact:pc></contact:pc>
              <contact:cc>ZA</contact:cc>
            </contact:addr>
          </contact:postalInfo>
        </contact:chg>
      </contact:update>
    </update>
  </command>
</epp>


From the above, the "int" type will be removed from the contact object and the "loc" type will always show when retrieving contact information.

EPP Contact Delete

Performing the Contact Delete Request

The <contact:id> must be populated with the unique ID of the associated contact object.

Possible Responses

The following are possible responses from our server.

1000: Contact Deletion Successful

A response code of 1000 means that the contact object has been successfully deleted from the registry database.

2303: Contact Does Not Exist

A response code of 2303 means that the contact object specified in element does not exist in the registry database. Please ensure that you have specified the correct contact ID.

2304: Contact ContactID Status Prohibits Deletion

A response code of 2304 means that the current set status on the contact object is prohibiting the deletion request from being executed. Please remove the status from the contact object by performing a Contact Update, and try again.

2305: Domain dependencies prohibit contact 'delete' operation

A response code of 2305 means that the contact object could not be deleted as it is currently linked to a domain name. Please perform a Domain Update to unlink the contact if needed.

2201: Contact 'ContactID' deletion failed, requester != owner

A response code of 2201 means that you requested the deletion of a contact object that does not belong to you. Please verify the <contact:id> element value specified.