Contact management

The management of contacts via the EPP Gateway allows for easy checking,  creation, deleting, and updating of domain contact handles.

1. Check Contact availability

The EPP <contact:check> command is used to determine if a contact exists. It  provides a hint that allows a client to anticipate the success or failure of  provisioning, changing or deleting an object.

Command provide possibility to check single and/or multiple contact(s) within single request.

Command request contain following element:

  • <contact:id> – contact identifier to be checked. Registrar is able to provide multiple <contact:id> in a single request.

After successful command execution response will include all <contact:id> provided in request with attribute “avail” and value “0” or “1”. “0” mean that contact with such ID is already available and cannot be created, “1” mean that ID syntax is correct and available for registration.

 

2. Create Contact

The EPP <contact:create> command is supposed to be used to create Contact object.
Contact object is used to identify registrant, administrative, technical and/or billing contact for domain.

This command contain elements:

  • <contac:id> – unique identifier for the contact. If value is empty – ST Registry will generate new ID.
  • <contact:postalInfo> – one or two elements with address information. There is possibility to use element <contact:postalinfo> one of two types (or both) – “int” and/or “loc”. Usage of two elements of same type is disallowed.
    type=”int” – text only in Latin.
    type=”loc” – text on national language in UTF-8.
    <contact:postalInfo> include following subelements:

    • <contact:name> – name (obligatory element).
    • <contact:org> – organisation (optional).
    • <contact:addr> – address, contain of subelements:
      • <contact:street> – up to 3 string (optional).
      • <contact:city> – city (optional).
      • <contact:sp> – province (optional).
      • <contact:pc> – postal code (optional).
      • <contact:cc> – country code according to the ISO 3166.
  • <contact:voice> – telephone number (optional). Contact telephone number structure is derived from structures defined in [ITU.E164.2005].  Telephone numbers described in this mapping are character strings that MUST begin with a plus sign (“+”, ASCII value 0x002B), followed by a country code defined in [ITU.E164.2005], followed by a dot (“.”, ASCII value 0x002E), followed by a sequence of digits representing the telephone number.  An optional “x” attribute is provided to note telephone extension information.
  • <contact:fax> – fax number (optional). Fax number format requirements are identical to the <contact:voice>.
  • <contact:email> – email address (obligatory element).
  • <contact:authInfo><pw> – AuthInfo (also known as AuthCode or EPPCode). If element is empty then ST Registry will generate it automatically. Requirements for AuthInfo:
    • minimum length – 6 symbols
    • maximum length – 16 symbols
    • both upper and lower case should be used
    • should include digit(s)

 

 

3. Query Contact info

The EPP <contact:info> command is used to retrieve complete information about Contact object.

Command request contain following element:

  • <contact:id> – contact identifier to be checked. Registrar is able to provide multiple <contact:id> in a single request.

This command response contain elements:

  • <contac:id> – unique identifier for the contact. If value is empty – ST Registry will generate new ID.
  • <contact:postalInfo> – one or two elements with address information (“int” or “loc”.
    type=”int” – text only in Latin.
    type=”loc” – text on national language in UTF-8.
    <contact:postalInfo> include following subelements:

    • <contact:name> – name.
    • <contact:org> – organisation.
    • <contact:addr> – address, contain of subelements:
      • <contact:street> – up to 3 string.
      • <contact:city> – city.
      • <contact:sp> – province.
      • <contact:pc> – postal code.
      • <contact:cc> – country code according to the ISO 3166.
  • <contact:voice> – telephone number. Contact telephone number structure is derived from structures defined in [ITU.E164.2005].  Telephone numbers described in this mapping are character strings that MUST begin with a plus sign (“+”, ASCII value 0x002B), followed by a country code defined in [ITU.E164.2005], followed by a dot (“.”, ASCII value 0x002E), followed by a sequence of digits representing the telephone number.  An optional “x” attribute is provided to note telephone extension information.
  • <contact:fax> – fax number (optional). Fax number format is identical to the <contact:voice>.
  • <contact:email> – email address.
  • <contact:authInfo><pw> – AuthInfo (also known as AuthCode or EPPCode).

 

4. Update Contact

The EPP <contact:update> command is supposed to be used to update Contact object details. Only object sponsor/owner may update it.

This command contain elements:

  • <contac:id> – unique identifier for the contact. If value is empty – ST Registry will generate new ID.
  • <contact:add> – optional element. Contain of elements which should be added to the object.
  • <contact:rem> – optional element. Contain of elements which should be removed from the object.
  • <contact:chg> – optional element. Contain of elements which should be updated.

The EPP <contact:update> command should include at least one of element(s): <contact:add>, <contact:rem>, <contact:chg>

 

 

5. Delete Contact

The EPP <contact:delete> command is supposed to be used to delete Contact object. Only object sponsor/owner may delete it.

This command contain only one element:

  • <contac:id> – unique identifier for the contact. If value is empty – ST Registry will generate new ID.

If contact have a status “clientDeleteProhibited” or “serverDeleteProhibited” then <contact:delete> request will be rejected. Also, request will be rejected if contact is linked with another object in a Registry repository.

 

 

6. Response codes

To simplify initial integration process, instead of general error messages, ST Registry provide different response messages for same response code depending from exception which generated corresponding response code. Below you can find list of all possible response codes and their messages for contact related operations.

Response code Message
1000 Command completed successfully
2003 Missing contact id
2003 Missing contact:postalInfo:name
2003 Missing contact:postalInfo
2004 Abstract client and object identifier type minLength value=3, maxLength value=16
2005 Invalid contact:postalInfo:name; Name value length must be grater than 5 and do not start with special chars like dot, hyphen and comma
2005 Invalid contact:postalInfo:org; Organization value length must be grater than 2 and do not start with special chars like dot, hyphen and comma
2005 Invalid contact:postalInfo:addr:street; Street value length must be grater than 2 and do not start with special chars like dot, hyphen and comma
2005 Invalid contact:postalInfo:city; City value length must be grater than 1 and do not start with special chars like dot, hyphen and comma
2005 Invalid contact:postalInfo:sp; Province value length must be grater than 1 and do not start with special chars like dot, hyphen and comma
2005 Invalid contact:postalInfo:pc; Postal code value have invalid format
2005 Invalid contact:postalInfo:cc; Country code should be according to ISO 3166
2005 Phone format is +1.123456789 (+[country_code].[regional_code][phone_number])
2005 Email validation failed
2203 Operation not permitted; Contact object not in client repository
2302 Contact ID already exists
2303 contact:id does not exists
2305 Object association prohibits operation