internetee-registry/doc/epp-examples.md
2015-06-08 18:25:42 +03:00

343 KiB

EPP REQUEST - RESPONSE EXAMPLES

GENERATED AT: 2015-06-08 15:20:44 UTC
EXAMPLE COUNT: 164


REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5792553688</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command fails if request xml is missing

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0"/>
    </create>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2003">
      <msg lang="en">Required parameter missing: create &gt; create &gt; postalInfo &gt; name [name]</msg>
    </result>
    <result code="2003">
      <msg lang="en">Required parameter missing: create &gt; create &gt; postalInfo &gt; addr &gt; street [street]</msg>
    </result>
    <result code="2003">
      <msg lang="en">Required parameter missing: create &gt; create &gt; postalInfo &gt; addr &gt; city [city]</msg>
    </result>
    <result code="2003">
      <msg lang="en">Required parameter missing: create &gt; create &gt; postalInfo &gt; addr &gt; pc [pc]</msg>
    </result>
    <result code="2003">
      <msg lang="en">Required parameter missing: create &gt; create &gt; postalInfo &gt; addr &gt; cc [cc]</msg>
    </result>
    <result code="2003">
      <msg lang="en">Required parameter missing: create &gt; create &gt; voice [voice]</msg>
    </result>
    <result code="2003">
      <msg lang="en">Required parameter missing: create &gt; create &gt; email [email]</msg>
    </result>
    <result code="2003">
      <msg lang="en">Required parameter missing: extension &gt; extdata &gt; ident [ident]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7686161003</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command successfully creates a contact

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:F7E38588</id>
        <crDate>2015-06-08T15:20:46Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7810505697</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="birthday" cc="US">1990-22-12</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:6D0173D0</id>
        <crDate>2015-06-08T15:20:46Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9651645726</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command successfully adds registrar

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:40C4BDB5</id>
        <crDate>2015-06-08T15:20:46Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4292487529</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command returns result data upon success

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:2BB6348E</id>
        <crDate>2015-06-08T15:20:46Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0879770197</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command should add registrar prefix for code when missing

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>abc12345</contact:id>
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:ABC12345</id>
        <crDate>2015-06-08T15:20:46Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2161464402</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command should add registrar prefix for code when missing

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>abc:ABC:12345</contact:id>
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:ABC:ABC:12345</id>
        <crDate>2015-06-08T15:20:46Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8987468710</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command should not allow spaces in custom code

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>abc 123</contact:id>
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2005">
      <msg lang="en">is invalid [code]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7364239221</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command should not saves ident type with wrong country code

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="birthday" cc="WRONG">1990-22-12</eis:ident>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2005">
      <msg lang="en">Ident country code is not valid, should be in ISO_3166-1 alpha 2 format [ident]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0928596414</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command should add registrar prefix for code when legacy prefix present

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>CID:FIRST0:abc:ABC:NEW:12345</contact:id>
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:CID:FIRST0:ABC:ABC:NEW:12345</id>
        <crDate>2015-06-08T15:20:46Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5772088055</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command should not remove suffix CID

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>CID:FIRST0:abc:CID:ABC:NEW:12345</contact:id>
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:CID:FIRST0:ABC:CID:ABC:NEW:12345</id>
        <crDate>2015-06-08T15:20:46Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2911683580</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command should not add registrar prefix for code when prefix present

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>FIRST0:abc22</contact:id>
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:ABC22</id>
        <crDate>2015-06-08T15:20:46Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7623981239</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command should add registrar prefix for code does not match exactly to prefix

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>cid2:first0:abc:ABC:11111</contact:id>
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:CID2:FIRST0:ABC:ABC:11111</id>
        <crDate>2015-06-08T15:20:46Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8041241239</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command should ignore custom code when only contact prefix given

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>CID:FIRST0</contact:id>
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:CID:FIRST0</id>
        <crDate>2015-06-08T15:20:46Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4579412690</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command should generate server id when id is empty

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:A9EE5890</id>
        <crDate>2015-06-08T15:20:46Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8612634468</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command should generate server id when id is empty

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:0932F08A</id>
        <crDate>2015-06-08T15:20:47Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0387727819</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command should return parameter value policy error for org

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:org>should not save</contact:org>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Parameter value policy error. Org must be blank: postalInfo &gt; org [org]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4887387187</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user create command should return parameter value policy error for fax

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:postalInfo>
          <contact:name>John Doe</contact:name>
          <contact:addr>
            <contact:street>123 Example</contact:street>
            <contact:city>Tallinn</contact:city>
            <contact:pc>123456</contact:pc>
            <contact:cc>EE</contact:cc>
          </contact:addr>
        </contact:postalInfo>
        <contact:voice>+372.1234567</contact:voice>
        <contact:fax>should not save</contact:fax>
        <contact:email>test@example.example</contact:email>
      </contact:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Parameter value policy error. Fax must be blank: fax [fax]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6987004711</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command fails if request is invalid

REQUEST:

<?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"/>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2003">
      <msg lang="en">Required parameter missing: add, rem or chg</msg>
    </result>
    <result code="2003">
      <msg lang="en">Required parameter missing: update &gt; update &gt; id [id]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2437844545</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command returns error if obj doesnt exist

REQUEST:

<?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>not-exists</contact:id>
        <contact:chg>
          <contact:postalInfo>
            <contact:name>John Doe Edited</contact:name>
          </contact:postalInfo>
          <contact:voice>+372.7654321</contact:voice>
          <contact:email>edited@example.example</contact:email>
          <contact:authInfo>
            <contact:pw>password</contact:pw>
          </contact:authInfo>
        </contact:chg>
      </contact:update>
    </update>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2303">
      <msg lang="en">Object does not exist</msg>
      <value>
        <id>NOT-EXISTS</id>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1257834702</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command is succesful

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:chg>
          <contact:postalInfo>
            <contact:name>John Doe Edited</contact:name>
          </contact:postalInfo>
          <contact:voice>+372.7654321</contact:voice>
          <contact:email>edited@example.example</contact:email>
          <contact:authInfo>
            <contact:pw>password</contact:pw>
          </contact:authInfo>
        </contact:chg>
      </contact:update>
    </update>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:SH8013</id>
        <crDate>2015-06-08T15:20:47Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2483059828</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command is succesful for own contact without password

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:chg>
          <contact:postalInfo>
            <contact:name>John Doe Edited</contact:name>
          </contact:postalInfo>
        </contact:chg>
      </contact:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:SH8013</id>
        <crDate>2015-06-08T15:20:47Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1085610891</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should update other contact with correct password

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9052291594</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:chg>
          <contact:postalInfo>
            <contact:name>John Doe Edited</contact:name>
          </contact:postalInfo>
          <contact:voice>+372.7654321</contact:voice>
          <contact:email>edited@example.example</contact:email>
          <contact:authInfo>
            <contact:pw>password</contact:pw>
          </contact:authInfo>
        </contact:chg>
      </contact:update>
    </update>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:SH8013</id>
        <crDate>2015-06-08T15:20:47Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4857980359</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4402114193</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should not update other contact without password

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8143531224</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:chg>
          <contact:postalInfo>
            <contact:name>John Doe Edited</contact:name>
          </contact:postalInfo>
        </contact:chg>
      </contact:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2201">
      <msg lang="en">Authorization error</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4832618807</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2945736060</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command returns phone and email error

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:chg>
          <contact:postalInfo>
            <contact:name>John Doe Edited</contact:name>
          </contact:postalInfo>
          <contact:voice>123213</contact:voice>
          <contact:email>wrong</contact:email>
          <contact:authInfo>
            <contact:pw>password</contact:pw>
          </contact:authInfo>
        </contact:chg>
      </contact:update>
    </update>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2005">
      <msg lang="en">Phone nr is invalid [phone]</msg>
    </result>
    <result code="2005">
      <msg lang="en">Email is invalid [email]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5538295397</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should not update code with custom string

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:chg>
          <contact:postalInfo>
            <contact:name>John Doe Edited</contact:name>
          </contact:postalInfo>
          <contact:voice>+372.7654321</contact:voice>
          <contact:email>edited@example.example</contact:email>
          <contact:authInfo>
            <contact:pw>password</contact:pw>
          </contact:authInfo>
          <contact:id>notpossibletoupdate</contact:id>
        </contact:chg>
      </contact:update>
    </update>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2303">
      <msg lang="en">Object does not exist</msg>
      <value>
        <id>FIRST0:SH8013NOTPOSSIBLETOUPDATE</id>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9301701925</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should update ident

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:chg>
          <contact:postalInfo>
            <contact:name>John Doe Edited</contact:name>
          </contact:postalInfo>
          <contact:voice>+372.7654321</contact:voice>
          <contact:email>edited@example.example</contact:email>
          <contact:authInfo>
            <contact:pw>password</contact:pw>
          </contact:authInfo>
        </contact:chg>
      </contact:update>
    </update>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="birthday" cc="US">1990-22-12</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:SH8013</id>
        <crDate>2015-06-08T15:20:47Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9047193979</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should return parameter value policy errror for org update

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:chg>
          <contact:postalInfo>
            <contact:name>John Doe Edited</contact:name>
            <contact:org>should not save</contact:org>
          </contact:postalInfo>
          <contact:voice>+372.7654321</contact:voice>
          <contact:email>edited@example.example</contact:email>
          <contact:authInfo>
            <contact:pw>password</contact:pw>
          </contact:authInfo>
        </contact:chg>
      </contact:update>
    </update>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Parameter value policy error. Org must be blank: postalInfo &gt; org [org]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2807823166</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should return parameter value policy errror for fax update

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:chg>
          <contact:postalInfo>
            <contact:name>John Doe Edited</contact:name>
          </contact:postalInfo>
          <contact:voice>+372.7654321</contact:voice>
          <contact:fax>should not save</contact:fax>
          <contact:email>edited@example.example</contact:email>
          <contact:authInfo>
            <contact:pw>password</contact:pw>
          </contact:authInfo>
        </contact:chg>
      </contact:update>
    </update>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Parameter value policy error. Fax must be blank: fax [fax]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8439596827</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command does not allow to edit statuses if policy forbids it

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:add>
          <contact:status s="clientHold" lang="en">Payment overdue.</contact:status>
          <contact:status s="clientUpdateProhibited"/>
        </contact:add>
      </contact:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Parameter value policy error. Client-side object status management not supported: status [status]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5754085243</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should add value voice value

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:chg>
          <contact:voice>+372.11111111</contact:voice>
          <contact:authInfo>
            <contact:pw>password</contact:pw>
          </contact:authInfo>
        </contact:chg>
      </contact:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:SH8013</id>
        <crDate>2015-06-08T15:20:47Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2830619100</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should return error when add attributes phone value is empty

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:chg>
          <contact:voice/>
          <contact:email>example@example.ee</contact:email>
          <contact:authInfo>
            <contact:pw>password</contact:pw>
          </contact:authInfo>
        </contact:chg>
      </contact:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2003">
      <msg lang="en">Required parameter missing - phone [phone]</msg>
    </result>
    <result code="2005">
      <msg lang="en">Phone nr is invalid [phone]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8579877896</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should honor chg value over add value when both changes same attribute

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:add>
          <contact:voice>+372.11111111111</contact:voice>
        </contact:add>
        <contact:chg>
          <contact:voice>+372.222222222222</contact:voice>
          <contact:authInfo>
            <contact:pw>password</contact:pw>
          </contact:authInfo>
        </contact:chg>
      </contact:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:SH8013</id>
        <crDate>2015-06-08T15:20:47Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4473061427</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should not allow to remove required voice attribute

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:chg>
          <contact:voice/>
          <contact:authInfo>
            <contact:pw>password</contact:pw>
          </contact:authInfo>
        </contact:chg>
      </contact:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2003">
      <msg lang="en">Required parameter missing - phone [phone]</msg>
    </result>
    <result code="2005">
      <msg lang="en">Phone nr is invalid [phone]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2027193914</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should not allow to remove required attribute

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
        <contact:rem>
          <contact:voice>+372.7654321</contact:voice>
        </contact:rem>
      </contact:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2003">
      <msg lang="en">Required parameter missing - phone [phone]</msg>
    </result>
    <result code="2005">
      <msg lang="en">Phone nr is invalid [phone]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4745289889</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should honor add over rem

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
        <contact:rem>
          <contact:voice>not important</contact:voice>
        </contact:rem>
        <contact:add>
          <contact:voice>+372.3333333</contact:voice>
        </contact:add>
      </contact:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:SH8013</id>
        <crDate>2015-06-08T15:20:47Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3358663361</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should honor chg over rem

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
        <contact:rem>
          <contact:voice>not important</contact:voice>
        </contact:rem>
        <contact:chg>
          <contact:voice>+372.44444444</contact:voice>
        </contact:chg>
      </contact:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:SH8013</id>
        <crDate>2015-06-08T15:20:47Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6212291677</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should honor chg over rem and add

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
        <contact:chg>
          <contact:voice>+372.666666</contact:voice>
        </contact:chg>
        <contact:add>
          <contact:voice>+372.555555</contact:voice>
        </contact:add>
        <contact:rem>
          <contact:voice>not important</contact:voice>
        </contact:rem>
      </contact:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:SH8013</id>
        <crDate>2015-06-08T15:20:47Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2768682423</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should not remove password

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
        <contact:rem>
          <contact:authInfo>
            <contact:pw>password</contact:pw>
          </contact:authInfo>
        </contact:rem>
      </contact:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <id>FIRST0:SH8013</id>
        <crDate>2015-06-08T15:20:47Z</crDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4687422586</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should return general policy error when removing org

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
        <contact:rem>
          <contact:postalInfo>
            <contact:org>not important</contact:org>
          </contact:postalInfo>
        </contact:rem>
      </contact:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Parameter value policy error. Org must be blank: postalInfo &gt; org [org]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8170313033</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user update command should return error when removing street

REQUEST:

<?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>FIRST0:SH8013</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
        <contact:rem>
          <contact:postalInfo>
            <contact:name>not important</contact:name>
          </contact:postalInfo>
        </contact:rem>
      </contact:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2003">
      <msg lang="en">Required parameter missing - name [name]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8645260874</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user delete command fails if request is invalid

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <delete>
      <contact:delete xmlns:contact="urn:ietf:params:xml:ns:contact-1.0"/>
    </delete>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2003">
      <msg lang="en">Required parameter missing: delete &gt; delete &gt; id [id]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0822177291</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user delete command returns error if obj doesnt exist

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <delete>
      <contact:delete xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>not-exists</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
      </contact:delete>
    </delete>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2303">
      <msg lang="en">Object does not exist</msg>
      <value>
        <id>NOT-EXISTS</id>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8498605334</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user delete command deletes contact

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <delete>
      <contact:delete xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>FIRST0:SH838052443</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
      </contact:delete>
    </delete>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0417253600</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user delete command deletes own contact even with wrong password

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <delete>
      <contact:delete xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>FIRST0:SH447925934</contact:id>
        <contact:authInfo>
          <contact:pw>wrong password</contact:pw>
        </contact:authInfo>
      </contact:delete>
    </delete>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1788503667</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user delete command deletes own contact even without password

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <delete>
      <contact:delete xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>FIRST0:SH289926485</contact:id>
      </contact:delete>
    </delete>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2196901801</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user delete command fails if contact has associated domain

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <delete>
      <contact:delete xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>FIRST0:SH497877116</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
      </contact:delete>
    </delete>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2305">
      <msg lang="en">Object association prohibits operation [domains]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5665195542</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user delete command should delete when not owner but with correct password

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6182330582</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <delete>
      <contact:delete xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>FIRST0:SH109118979</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
      </contact:delete>
    </delete>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9193416865</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0955836800</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user delete command should not delete when not owner without password

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2678737785</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <delete>
      <contact:delete xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>FIRST0:SH9047704510</contact:id>
      </contact:delete>
    </delete>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2201">
      <msg lang="en">Authorization error</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7473253255</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3820803869</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user delete command should not delete when not owner with wrong password

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0991648509</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <delete>
      <contact:delete xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>FIRST0:SH9284274711</contact:id>
        <contact:authInfo>
          <contact:pw>wrong password</contact:pw>
        </contact:authInfo>
      </contact:delete>
    </delete>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:ident type="priv" cc="EE">37605030299</eis:ident>
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2201">
      <msg lang="en">Authorization error</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7454527057</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9526124356</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user check command fails if request is invalid

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <check>
      <contact:check xmlns:contact="urn:ietf:params:xml:ns:contact-1.0"/>
    </check>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2003">
      <msg lang="en">Required parameter missing: check &gt; check &gt; id [id]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3948097567</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user check command returns info about contact availability

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
      <command>
        <check>
          <contact:check xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
            <contact:id>FIXED:CHECK-1234</contact:id>
            <contact:id>check-4321</contact:id>
          </contact:check>
        </check>
        <clTRID>ABC-12345</clTRID>
      </command>
    </epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <chkData>
        <cd>
          <id avail="0">FIXED:CHECK-1234</id>
          <reason>in use</reason>
        </cd>
        <cd>
          <id avail="1">check-4321</id>
        </cd>
      </chkData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3703851843</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user check command should support legacy CID farmat

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
      <command>
        <check>
          <contact:check xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
            <contact:id>FIXED:CHECK-LEGACY</contact:id>
            <contact:id>CID:FIXED:CHECK-LEGACY</contact:id>
          </contact:check>
        </check>
        <clTRID>ABC-12345</clTRID>
      </command>
    </epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <chkData>
        <cd>
          <id avail="0">FIXED:CHECK-LEGACY</id>
          <reason>in use</reason>
        </cd>
        <cd>
          <id avail="1">CID:FIXED:CHECK-LEGACY</id>
        </cd>
      </chkData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9027628001</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user info command fails if request invalid

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <contact:info xmlns:contact="urn:ietf:params:xml:ns:contact-1.0"/>
    </info>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2003">
      <msg lang="en">Required parameter missing: info &gt; info &gt; id [id]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3959573631</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user info command returns error when object does not exist

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <contact:info xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>no-contact</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
      </contact:info>
    </info>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2303">
      <msg lang="en">Object does not exist</msg>
      <value>
        <id>NO-CONTACT</id>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5706545423</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user info command return info about contact

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <contact:info xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>FIXED:INFO-4444</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
      </contact:info>
    </info>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <infData>
        <id>FIXED:INFO-4444</id>
        <roid>EIS-29</roid>
        <status s="ok"/>
        <postalInfo type="int">
          <name>Johnny Awesome</name>
          <addr>
            <street>Short street 11</street>
            <city>Tallinn</city>
            <sp/>
            <pc>11111</pc>
            <cc>EE</cc>
          </addr>
        </postalInfo>
        <voice>+372.12345678</voice>
        <email>rigoberto_waters@bartoletti.info</email>
        <clID>fixed registrar</clID>
        <crID>TEST-CREATOR</crID>
        <crDate>2015-06-08T15:20:50Z</crDate>
        <authInfo>
          <pw>password</pw>
        </authInfo>
      </infData>
    </resData>
    <extension>
      <extdata>
        <ident type="priv" cc="EE">37605030299</ident>
      </extdata>
    </extension>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6512724823</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user info command should add legacy CID format as append

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <contact:info xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>FIXED:CID:FIXED:INFO-5555</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
      </contact:info>
    </info>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <infData>
        <id>FIXED:CID:FIXED:INFO-5555</id>
        <roid>EIS-30</roid>
        <status s="ok"/>
        <postalInfo type="int">
          <name>Johnny Awesome</name>
          <addr>
            <street>Short street 11</street>
            <city>Tallinn</city>
            <sp/>
            <pc>11111</pc>
            <cc>EE</cc>
          </addr>
        </postalInfo>
        <voice>+372.12345678</voice>
        <email>rigoberto_waters@bartoletti.info</email>
        <clID>fixed registrar</clID>
        <crID>TEST-CREATOR</crID>
        <crDate>2015-06-08T15:20:50Z</crDate>
        <authInfo>
          <pw>password</pw>
        </authInfo>
      </infData>
    </resData>
    <extension>
      <extdata>
        <ident type="priv" cc="EE">37605030299</ident>
      </extdata>
    </extension>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9303464868</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user info command should return ident in extension

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <contact:info xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>FIRST0:INFO-IDENT</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
      </contact:info>
    </info>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <infData>
        <id>FIRST0:INFO-IDENT</id>
        <roid>EIS-31</roid>
        <status s="ok"/>
        <postalInfo type="int">
          <name>Johnny Awesome</name>
          <addr>
            <street>Short street 11</street>
            <city>Tallinn</city>
            <sp/>
            <pc>11111</pc>
            <cc>EE</cc>
          </addr>
        </postalInfo>
        <voice>+372.12345678</voice>
        <email>rigoberto_waters@bartoletti.info</email>
        <clID>registrar1</clID>
        <crID>TEST-CREATOR</crID>
        <crDate>2015-06-08T15:20:50Z</crDate>
        <authInfo>
          <pw>password</pw>
        </authInfo>
      </infData>
    </resData>
    <extension>
      <extdata>
        <ident type="priv" cc="EE">37605030299</ident>
      </extdata>
    </extension>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1551564799</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user info command returns no authorization error for wrong password when registrant

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <contact:info xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>FIRST0:SH686854180</contact:id>
        <contact:authInfo>
          <contact:pw>wrong-pw</contact:pw>
        </contact:authInfo>
      </contact:info>
    </info>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <infData>
        <id>FIRST0:SH686854180</id>
        <roid>EIS-1</roid>
        <status s="ok"/>
        <postalInfo type="int">
          <name>Miss Brook Rippin0</name>
          <addr>
            <street>Short street 11</street>
            <city>Tallinn</city>
            <sp/>
            <pc>11111</pc>
            <cc>EE</cc>
          </addr>
        </postalInfo>
        <voice>+372.12345678</voice>
        <email>rigoberto_waters@bartoletti.info</email>
        <clID>registrar1</clID>
        <crID>TEST-CREATOR</crID>
        <crDate>2015-06-08T15:20:45Z</crDate>
        <authInfo>
          <pw>password</pw>
        </authInfo>
      </infData>
    </resData>
    <extension>
      <extdata>
        <ident type="priv" cc="EE">37605030299</ident>
      </extdata>
    </extension>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3694096004</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user info command should honor new contact code format

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <contact:info xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>FIXED:TEST:CUSTOM:CODE</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
      </contact:info>
    </info>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <infData>
        <id>FIXED:TEST:CUSTOM:CODE</id>
        <roid>EIS-32</roid>
        <status s="ok"/>
        <postalInfo type="int">
          <name>Theresa Gerlach Jr.15</name>
          <addr>
            <street>Short street 11</street>
            <city>Tallinn</city>
            <sp/>
            <pc>11111</pc>
            <cc>EE</cc>
          </addr>
        </postalInfo>
        <voice>+372.12345678</voice>
        <email>rigoberto_waters@bartoletti.info</email>
        <clID>fixed registrar</clID>
        <crID>TEST-CREATOR</crID>
        <crDate>2015-06-08T15:20:50Z</crDate>
        <authInfo>
          <pw>password</pw>
        </authInfo>
      </infData>
    </resData>
    <extension>
      <extdata>
        <ident type="priv" cc="EE">37605030299</ident>
      </extdata>
    </extension>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3654564485</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user info command returns no authorization error for wrong user but correct password

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7478373545</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <contact:info xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>FIRST0:SH686854180</contact:id>
        <contact:authInfo>
          <contact:pw>password</contact:pw>
        </contact:authInfo>
      </contact:info>
    </info>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <infData>
        <id>FIRST0:SH686854180</id>
        <roid>EIS-1</roid>
        <status s="ok"/>
        <postalInfo type="int">
          <name>Miss Brook Rippin0</name>
          <addr>
            <street>Short street 11</street>
            <city>Tallinn</city>
            <sp/>
            <pc>11111</pc>
            <cc>EE</cc>
          </addr>
        </postalInfo>
        <voice>+372.12345678</voice>
        <email>rigoberto_waters@bartoletti.info</email>
        <clID>registrar1</clID>
        <crID>TEST-CREATOR</crID>
        <crDate>2015-06-08T15:20:45Z</crDate>
        <authInfo>
          <pw>password</pw>
        </authInfo>
      </infData>
    </resData>
    <extension>
      <extdata>
        <ident type="priv" cc="EE">37605030299</ident>
      </extdata>
    </extension>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1838580842</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6062685126</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user info command returns authorization error for wrong user and wrong password

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2696120125</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <contact:info xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>FIRST0:SH686854180</contact:id>
        <contact:authInfo>
          <contact:pw>wrong-pw</contact:pw>
        </contact:authInfo>
      </contact:info>
    </info>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2201">
      <msg lang="en">Authorization error</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7330846624</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0048399504</svTRID>
    </trID>
  </response>
</epp>

EPP Contact with valid user info command returns no authorization error for wrong user and no password

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4144569877</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <contact:info xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
        <contact:id>FIRST0:SH686854180</contact:id>
        <contact:authInfo>
          <contact:pw/>
        </contact:authInfo>
      </contact:info>
    </info>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <infData>
        <id>FIRST0:SH686854180</id>
        <roid>EIS-1</roid>
        <status s="ok"/>
        <postalInfo type="int">
          <name>Miss Brook Rippin0</name>
        </postalInfo>
        <clID>registrar1</clID>
        <crID>TEST-CREATOR</crID>
        <crDate>2015-06-08T15:20:45Z</crDate>
      </infData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0023572021</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0929041121</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3372742123</svTRID>
    </trID>
  </response>
</epp>

EPP Domain returns error if contact does not exists

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example92231307700596839.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:CITIZEN_1234</domain:contact>
        <domain:contact type="tech">sh1111</domain:contact>
        <domain:contact type="tech">sh2222</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2303">
      <msg lang="en">Contact was not found</msg>
      <value>
        <contact>sh1111</contact>
      </value>
    </result>
    <result code="2303">
      <msg lang="en">Contact was not found</msg>
      <value>
        <contact>sh2222</contact>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0055530270</svTRID>
    </trID>
  </response>
</epp>

EPP Domain validates required parameters

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>test.ee</domain:name>
      </domain:create>
    </create>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2003">
      <msg lang="en">Required parameter missing: create &gt; create &gt; ns [ns]</msg>
    </result>
    <result code="2003">
      <msg lang="en">Required parameter missing: create &gt; create &gt; registrant [registrant]</msg>
    </result>
    <result code="2003">
      <msg lang="en">Required parameter missing: create &gt; create &gt; ns &gt; hostAttr [host_attr]</msg>
    </result>
    <result code="2003">
      <msg lang="en">Required parameter missing: extension &gt; extdata &gt; legalDocument [legal_document]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8914683562</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant creates a domain

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example4020299480830435.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <name>example4020299480830435.ee</name>
        <crDate>2015-06-08T15:20:51Z</crDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9725177044</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example68541116648789025.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <name>example68541116648789025.ee</name>
        <crDate>2015-06-08T15:20:51Z</crDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8955691837</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant validates nameserver ipv4 when in same zone as domain

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example92203286262205960.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example92203286262205960.ee</domain:hostName>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example92203286262205960.ee</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">IPv4 is missing [ipv4]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5649976991</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant does not create domain longer than 63 punicode characters

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>äääääääääääääääääääääääääääääääääääääääääääääääääääääääääääääää.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2005">
      <msg lang="en">Domain name is too long (maximum is 63 characters) [name_puny]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4430795448</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant does not create reserved domain

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>1162.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2302">
      <msg lang="en">Domain name is reserved or restricted [name_dirty]</msg>
      <value>
        <name>1162.ee</name>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9581470236</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant does not create domain without contacts and registrant

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example55229588015878529.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2003">
      <msg lang="en">Required parameter missing: create &gt; create &gt; registrant [registrant]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2540611478</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant does not create domain without nameservers

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example49021690369031614.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2003">
      <msg lang="en">Required parameter missing: create &gt; create &gt; ns [ns]</msg>
    </result>
    <result code="2003">
      <msg lang="en">Required parameter missing: create &gt; create &gt; ns &gt; hostAttr [host_attr]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5805959778</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant does not create domain with too many nameservers

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example13214562691589121.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns0.example.net</domain:hostName>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns3.example.net</domain:hostName>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns4.example.net</domain:hostName>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns5.example.net</domain:hostName>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns6.example.net</domain:hostName>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns7.example.net</domain:hostName>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns8.example.net</domain:hostName>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns9.example.net</domain:hostName>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns10.example.net</domain:hostName>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns11.example.net</domain:hostName>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns12.example.net</domain:hostName>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns13.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2004">
      <msg lang="en">Nameservers count must be between 2-11 [nameservers]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7981207337</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant returns error when invalid nameservers are present

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example43860224356619074.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>invalid1-</domain:hostName>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>-invalid2</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2005">
      <msg lang="en">Hostname is invalid [hostname]</msg>
      <value>
        <hostAttr>invalid1-</hostAttr>
      </value>
    </result>
    <result code="2005">
      <msg lang="en">Hostname is invalid [hostname]</msg>
      <value>
        <hostAttr>-invalid2</hostAttr>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0049127782</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant checks hostAttr presence

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example42608831074749596.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostObj>ns1.example.ee</domain:hostObj>
          <domain:hostObj>ns2.example.ee</domain:hostObj>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2003">
      <msg lang="en">Required parameter missing: create &gt; create &gt; ns &gt; hostAttr [host_attr]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1259300010</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant creates domain with nameservers with ips

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example63537718478643282.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <name>example63537718478643282.ee</name>
        <crDate>2015-06-08T15:20:52Z</crDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9238706539</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant returns error when nameserver has invalid ips

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example50509555387371748.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2.invalid</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
            <domain:hostAddr ip="v6">invalid_ipv6</domain:hostAddr>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:create>
    </create>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2005">
      <msg lang="en">IPv4 is invalid [ipv4]</msg>
      <value>
        <hostAddr>192.0.2.2.invalid</hostAddr>
      </value>
    </result>
    <result code="2005">
      <msg lang="en">IPv6 is invalid [ipv6]</msg>
      <value>
        <hostAddr>INVALID_IPV6</hostAddr>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9049083960</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant creates a domain with period in days

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example58154003222656878.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <name>example58154003222656878.ee</name>
        <crDate>2015-06-08T15:20:52Z</crDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9260763340</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant does not create a domain with invalid period

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example93408744022251404.ee</domain:name>
        <domain:period unit="d">367</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2004">
      <msg lang="en">Period must add up to 1, 2 or 3 years [period]</msg>
      <value>
        <period>367</period>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8573393191</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant creates a domain with multiple dnskeys

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example333697414638741.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>3</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
        <secDNS:keyData>
          <secDNS:flags>0</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
        </secDNS:keyData>
        <secDNS:keyData>
          <secDNS:flags>256</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>254</secDNS:alg>
          <secDNS:pubKey>841936717ae427ace63c28d04918569a841936717ae427ace63c28d0</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <name>example333697414638741.ee</name>
        <crDate>2015-06-08T15:20:52Z</crDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8584867594</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant does not create a domain when dnskeys are invalid

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example83258992170092961.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>250</secDNS:flags>
          <secDNS:protocol>4</secDNS:protocol>
          <secDNS:alg>9</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
        <secDNS:keyData>
          <secDNS:flags>1</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>10</secDNS:alg>
          <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
        </secDNS:keyData>
        <secDNS:keyData>
          <secDNS:flags>256</secDNS:flags>
          <secDNS:protocol>5</secDNS:protocol>
          <secDNS:alg>254</secDNS:alg>
          <secDNS:pubKey/>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2005">
      <msg lang="en">Valid algorithms are: 3, 5, 6, 7, 8, 252, 253, 254, 255 [alg]</msg>
      <value>
        <alg>9</alg>
      </value>
    </result>
    <result code="2005">
      <msg lang="en">Valid protocols are: 3 [protocol]</msg>
      <value>
        <protocol>4</protocol>
      </value>
    </result>
    <result code="2005">
      <msg lang="en">Valid flags are: 0, 256, 257 [flags]</msg>
      <value>
        <flags>250</flags>
      </value>
    </result>
    <result code="2005">
      <msg lang="en">Valid algorithms are: 3, 5, 6, 7, 8, 252, 253, 254, 255 [alg]</msg>
      <value>
        <alg>10</alg>
      </value>
    </result>
    <result code="2005">
      <msg lang="en">Valid flags are: 0, 256, 257 [flags]</msg>
      <value>
        <flags>1</flags>
      </value>
    </result>
    <result code="2306">
      <msg lang="en">Public key is missing [public_key]</msg>
    </result>
    <result code="2005">
      <msg lang="en">Valid protocols are: 3 [protocol]</msg>
      <value>
        <protocol>5</protocol>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2824973405</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant does not create a domain with two identical dnskeys

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example25899695517663333.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>3</secDNS:alg>
          <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
        </secDNS:keyData>
        <secDNS:keyData>
          <secDNS:flags>0</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2302">
      <msg lang="en">Public key already exists [public_key]</msg>
      <value>
        <pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</pubKey>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1084744449</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant validated dnskeys count

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example59966568351525275.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>3</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
        <secDNS:keyData>
          <secDNS:flags>0</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2004">
      <msg lang="en">DNS keys count must be between 0-1 [dnskeys]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0261366566</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant creates domain with ds data

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example25731249117149391.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:dsData>
          <secDNS:keyTag>12345</secDNS:keyTag>
          <secDNS:alg>3</secDNS:alg>
          <secDNS:digestType>1</secDNS:digestType>
          <secDNS:digest>49FD46E6C4B45C55D4AC</secDNS:digest>
        </secDNS:dsData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <name>example25731249117149391.ee</name>
        <crDate>2015-06-08T15:20:53Z</crDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4530828310</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant creates domain with ds data with key

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example82908292286710247.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:dsData>
          <secDNS:keyTag>12345</secDNS:keyTag>
          <secDNS:alg>3</secDNS:alg>
          <secDNS:digestType>1</secDNS:digestType>
          <secDNS:digest>49FD46E6C4B45C55D4AC</secDNS:digest>
          <secDNS:keyData>
            <secDNS:flags>0</secDNS:flags>
            <secDNS:protocol>3</secDNS:protocol>
            <secDNS:alg>5</secDNS:alg>
            <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
          </secDNS:keyData>
        </secDNS:dsData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <name>example82908292286710247.ee</name>
        <crDate>2015-06-08T15:20:53Z</crDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6889582088</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant prohibits dsData

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example28570712130587542.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:dsData>
          <secDNS:keyTag>12345</secDNS:keyTag>
          <secDNS:alg>3</secDNS:alg>
          <secDNS:digestType>1</secDNS:digestType>
          <secDNS:digest>49FD46E6C4B45C55D4AC</secDNS:digest>
          <secDNS:keyData>
            <secDNS:flags>0</secDNS:flags>
            <secDNS:protocol>3</secDNS:protocol>
            <secDNS:alg>5</secDNS:alg>
            <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
          </secDNS:keyData>
        </secDNS:dsData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">dsData object is not allowed</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9416839691</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant prohibits keyData

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example77764826228400750.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>0</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">keyData object is not allowed</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3492615397</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with citizen as a registrant prohibits dsData and keyData when they exists together

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example40436363917471433.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
        <domain:contact type="tech">FIXED:SH801333</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:dsData>
          <secDNS:keyTag>12345</secDNS:keyTag>
          <secDNS:alg>3</secDNS:alg>
          <secDNS:digestType>1</secDNS:digestType>
          <secDNS:digest>49FD46E6C4B45C55D4AC</secDNS:digest>
        </secDNS:dsData>
        <secDNS:keyData>
          <secDNS:flags>0</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Mutually exclusive parameters: extension &gt; create &gt; keyData, extension &gt; create &gt; dsData</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6705513196</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with juridical persion as a registrant creates a domain with contacts

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example35234610527071725.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:JURIDICAL_1234</domain:registrant>
        <domain:contact type="admin">FIXED:SH8013</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <creData>
        <name>example35234610527071725.ee</name>
        <crDate>2015-06-08T15:20:53Z</crDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </creData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7214297696</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with juridical persion as a registrant does not create a domain without admin contact

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example95625801462394004.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:JURIDICAL_1234</domain:registrant>
        <domain:contact type="tech">FIXED:SH8013</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2004">
      <msg lang="en">Admin contacts count must be between 1-10 [admin_domain_contacts]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7923513742</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with juridical persion as a registrant cannot assign juridical person as admin contact

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example51475133351293038.ee</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>ns1.example.net</domain:hostName>
            <domain:hostAddr ip="v4">192.0.2.2</domain:hostAddr>
            <domain:hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>ns2.example.net</domain:hostName>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FIXED:JURIDICAL_1234</domain:registrant>
        <domain:contact type="admin">FIXED:JURIDICAL_1234</domain:contact>
      </domain:create>
    </create>
    <extension>
      <secDNS:create xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:keyData>
          <secDNS:flags>257</secDNS:flags>
          <secDNS:protocol>3</secDNS:protocol>
          <secDNS:alg>5</secDNS:alg>
          <secDNS:pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</secDNS:pubKey>
        </secDNS:keyData>
      </secDNS:create>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Admin contact can be private person only</msg>
      <value>
        <contact>FIXED:JURIDICAL_1234</contact>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9809471638</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain transfers a domain

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1007701280</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain1.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">2ed6c739f0777c882d366a45bbca8dfc</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <trnData>
        <name>domain1.ee</name>
        <trStatus>serverApproved</trStatus>
        <reID>REGDOMAIN2</reID>
        <reDate>2015-06-08T15:20:54Z</reDate>
        <acID>REGDOMAIN1</acID>
        <acDate>2015-06-08T15:20:54Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5931455157</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9929017458</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="req"/>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1301">
      <msg>Command completed successfully; ack to dequeue</msg>
    </result>
    <msgQ count="1" id="1">
      <qDate>2015-06-08T15:20:54Z</qDate>
      <msg>Domain transfer was approved, associated contacts are: ["REGDOMAIN2:20F0AD4B", "REGDOMAIN2:F2557E5E"]</msg>
    </msgQ>
    <resData>
      <trnData>
        <name>domain1.ee</name>
        <trStatus>serverApproved</trStatus>
        <reID>REGDOMAIN2</reID>
        <reDate>2015-06-08T15:20:54Z</reDate>
        <acID>REGDOMAIN1</acID>
        <acDate>2015-06-08T15:20:54Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1486536116</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain1.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">04a7d4519f18efe34f47c0aa41af5428</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <trnData>
        <name>domain1.ee</name>
        <trStatus>pending</trStatus>
        <reID>REGDOMAIN1</reID>
        <reDate>2015-06-08T15:20:54Z</reDate>
        <acID>REGDOMAIN2</acID>
        <acDate>2015-06-08T16:20:54Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5036541162</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain1.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">04a7d4519f18efe34f47c0aa41af5428</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <trnData>
        <name>domain1.ee</name>
        <trStatus>pending</trStatus>
        <reID>REGDOMAIN1</reID>
        <reDate>2015-06-08T15:20:54Z</reDate>
        <acID>REGDOMAIN2</acID>
        <acDate>2015-06-08T16:20:54Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6696728415</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9312014055</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="req"/>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1301">
      <msg>Command completed successfully; ack to dequeue</msg>
    </result>
    <msgQ count="1" id="2">
      <qDate>2015-06-08T15:20:54Z</qDate>
      <msg>Transfer requested.</msg>
    </msgQ>
    <resData>
      <trnData>
        <name>domain1.ee</name>
        <trStatus>pending</trStatus>
        <reID>REGDOMAIN1</reID>
        <reDate>2015-06-08T15:20:54Z</reDate>
        <acID>REGDOMAIN2</acID>
        <acDate>2015-06-08T16:20:54Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0332382236</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7540459085</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0714707548</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="ack" msgID="2"/>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <msgQ count="0" id="2"/>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2829620748</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6343470773</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0691436864</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain2.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">c9730b2a823fb6224a0c985ae901898f</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <trnData>
        <name>domain2.ee</name>
        <trStatus>pending</trStatus>
        <reID>REGDOMAIN2</reID>
        <reDate>2015-06-08T15:20:55Z</reDate>
        <acID>REGDOMAIN1</acID>
        <acDate>2015-06-08T16:20:55Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6184813837</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3973953319</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4736405081</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain2.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">c9730b2a823fb6224a0c985ae901898f</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <trnData>
        <name>domain2.ee</name>
        <trStatus>pending</trStatus>
        <reID>REGDOMAIN2</reID>
        <reDate>2015-06-08T15:20:55Z</reDate>
        <acID>REGDOMAIN1</acID>
        <acDate>2015-06-08T16:20:55Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5436321061</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9539656972</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4875435765</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain3.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">b1841556dfc846d87fc685a28a904170</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <trnData>
        <name>domain3.ee</name>
        <trStatus>serverApproved</trStatus>
        <reID>REGDOMAIN2</reID>
        <reDate>2015-06-08T15:20:56Z</reDate>
        <acID>REGDOMAIN1</acID>
        <acDate>2015-06-08T15:20:56Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2566320984</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8091278063</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain transfers domain with contacts

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7202677400</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain4.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">69ef8f64c62662587dce166e840b6acc</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <trnData>
        <name>domain4.ee</name>
        <trStatus>serverApproved</trStatus>
        <reID>REGDOMAIN2</reID>
        <reDate>2015-06-08T15:20:56Z</reDate>
        <acID>REGDOMAIN1</acID>
        <acDate>2015-06-08T15:20:56Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5135881939</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6469478550</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain transfers domain when registrant has more domains

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1953363571</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain5.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">9af0798b7bdeed9016b1361e79ec98b9</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <trnData>
        <name>domain5.ee</name>
        <trStatus>serverApproved</trStatus>
        <reID>REGDOMAIN2</reID>
        <reDate>2015-06-08T15:20:57Z</reDate>
        <acID>REGDOMAIN1</acID>
        <acDate>2015-06-08T15:20:57Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9065921272</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5514959052</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain transfers domain when registrant is admin or tech contact on some other domain

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5357898525</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain8.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">bf34fd4ef6d562ea510741a526e4f5ae</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <trnData>
        <name>domain8.ee</name>
        <trStatus>serverApproved</trStatus>
        <reID>REGDOMAIN2</reID>
        <reDate>2015-06-08T15:20:57Z</reDate>
        <acID>REGDOMAIN1</acID>
        <acDate>2015-06-08T15:20:57Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8726034053</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1717330028</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain transfers domain when domain contacts are some other domain contacts

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6714230642</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain9.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">0b3f0e6f5b5c55e03a358a7f857d5c74</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <trnData>
        <name>domain9.ee</name>
        <trStatus>serverApproved</trStatus>
        <reID>REGDOMAIN2</reID>
        <reDate>2015-06-08T15:20:58Z</reDate>
        <acID>REGDOMAIN1</acID>
        <acDate>2015-06-08T15:20:58Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6112400904</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2617823419</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain transfers domain when multiple domain contacts are some other domain contacts

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1180312591</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain11.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">9e9fc75dcc7891617edb845dde02795d</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <trnData>
        <name>domain11.ee</name>
        <trStatus>serverApproved</trStatus>
        <reID>REGDOMAIN2</reID>
        <reDate>2015-06-08T15:20:58Z</reDate>
        <acID>REGDOMAIN1</acID>
        <acDate>2015-06-08T15:20:58Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5955172939</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3665512447</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain transfers domain and references exsisting registrant to domain contacts

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7493033652</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain14.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">1741b96341f0df8221e9fe0ba5a74f47</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <trnData>
        <name>domain14.ee</name>
        <trStatus>serverApproved</trStatus>
        <reID>REGDOMAIN2</reID>
        <reDate>2015-06-08T15:20:59Z</reDate>
        <acID>REGDOMAIN1</acID>
        <acDate>2015-06-08T15:20:59Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4543598398</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5178371551</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain does not transfer contacts if they are already under new registrar

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0660114359</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain15.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">6c7d912db89c31e7ac702234ec48814a</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <trnData>
        <name>domain15.ee</name>
        <trStatus>serverApproved</trStatus>
        <reID>REGDOMAIN2</reID>
        <reDate>2015-06-08T15:20:59Z</reDate>
        <acID>REGDOMAIN1</acID>
        <acDate>2015-06-08T15:20:59Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2544923836</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2045407045</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain should not creates transfer without password

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5957445553</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain16.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">98oiewslkfkd</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2201">
      <msg lang="en">Authorization error</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1184722183</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4226885236</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain approves the transfer request

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="approve">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain17.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">bcb7c06abfe0eec3f3ab9d06083f2f0f</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <trnData>
        <name>domain17.ee</name>
        <trStatus>clientApproved</trStatus>
        <reID>REGDOMAIN2</reID>
        <reDate>2015-06-08T15:21:00Z</reDate>
        <acID>REGDOMAIN1</acID>
        <acDate>2015-06-08T15:21:00Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3743367853</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain rejects a domain transfer

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5240031764</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="reject">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain18.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">d7bba8344cfbc1071516c5e6e886ab8f</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2304">
      <msg lang="en">Transfer can be rejected only by current registrar</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7795906716</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9696432132</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="reject">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain18.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">d7bba8344cfbc1071516c5e6e886ab8f</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <trnData>
        <name>domain18.ee</name>
        <trStatus>clientRejected</trStatus>
        <reID>REGDOMAIN2</reID>
        <reDate>2015-06-08T15:21:00Z</reDate>
        <acID>REGDOMAIN1</acID>
        <acDate>2015-06-08T15:21:00Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1514729281</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain prohibits wrong registrar from approving transfer

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0957729186</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="approve">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain19.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">99383fa4d9892ce0dc88bd3dbcca1713</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2304">
      <msg lang="en">Transfer can be approved only by current domain registrar</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7746692635</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5716581478</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain does not transfer with invalid pw

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain20.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">test</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2201">
      <msg lang="en">Authorization error</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0284059379</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain ignores transfer wha registrant registrar requests transfer

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain21.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">fa66b5e2eb80ad44a71c167dc2731970</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2002">
      <msg lang="en">Domain already belongs to the querying registrar</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1384906992</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain returns an error for incorrect op attribute

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="bla">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example72016253321808153.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">98oiewslkfkd</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Attribute is invalid: op</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9573122944</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain creates new pw after successful transfer

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9573898930</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain22.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">72bd65f122ff5dc80bda6f107498e11e</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <trnData>
        <name>domain22.ee</name>
        <trStatus>serverApproved</trStatus>
        <reID>REGDOMAIN2</reID>
        <reDate>2015-06-08T15:21:01Z</reDate>
        <acID>REGDOMAIN1</acID>
        <acDate>2015-06-08T15:21:01Z</acDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </trnData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9179354793</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="query">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain22.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">72bd65f122ff5dc80bda6f107498e11e</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2201">
      <msg lang="en">Authorization error</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5712870270</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2982226002</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain should get an error when there is no pending transfer

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <transfer op="approve">
      <domain:transfer xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain23.ee</domain:name>
        <domain:authInfo>
          <domain:pw roid="citizen_1234-REP">3d432383d4f88571fcb46e5e02c3667e</domain:pw>
        </domain:authInfo>
      </domain:transfer>
    </transfer>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2303">
      <msg lang="en">Pending transfer was not found</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2577999787</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain should update right away without update pending status

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain24.ee</domain:name>
        <domain:chg>
          <domain:registrant verified="yes">FIXED:CITIZEN_1234</domain:registrant>
        </domain:chg>
      </domain:update>
    </update>
    <extension>
      <secDNS:update xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1"/>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6132676538</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain updates a domain

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain25.ee</domain:name>
        <domain:chg>
          <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        </domain:chg>
      </domain:update>
    </update>
    <extension>
      <secDNS:update xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1"/>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1001">
      <msg>Command completed successfully; action pending</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8305166740</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain should not return action pending when changes are invalid

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain26.ee</domain:name>
        <domain:rem>
          <domain:ns>
            <domain:hostAttr>
              <domain:hostName>ns.jaskolskiboyer80.ee</domain:hostName>
            </domain:hostAttr>
            <domain:hostAttr>
              <domain:hostName>ns.wilkinsonfritsch79.ee</domain:hostName>
            </domain:hostAttr>
            <domain:hostAttr>
              <domain:hostName>ns.kunze78.ee</domain:hostName>
            </domain:hostAttr>
          </domain:ns>
        </domain:rem>
        <domain:chg>
          <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        </domain:chg>
      </domain:update>
    </update>
    <extension>
      <secDNS:update xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1"/>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2004">
      <msg lang="en">Nameservers count must be between 2-11 [nameservers]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0997303264</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain should not return action pending when domain itself is already invaid

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain27.ee</domain:name>
        <domain:chg>
          <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        </domain:chg>
      </domain:update>
    </update>
    <extension>
      <secDNS:update xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1"/>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2004">
      <msg lang="en">Nameservers count must be between 2-11 [nameservers]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2467744366</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain should not allow any update when status pending update

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain28.ee</domain:name>
        <domain:chg>
          <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        </domain:chg>
      </domain:update>
    </update>
    <extension>
      <secDNS:update xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1"/>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2304">
      <msg lang="en">Object status prohibits operation</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3490666828</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain updates domain and adds objects

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain29.ee</domain:name>
        <domain:add>
          <domain:ns>
            <domain:hostAttr>
              <domain:hostName>ns1.example.com</domain:hostName>
            </domain:hostAttr>
            <domain:hostAttr>
              <domain:hostName>ns2.example.com</domain:hostName>
            </domain:hostAttr>
          </domain:ns>
          <domain:contact type="tech">FIXED:MAK21</domain:contact>
          <domain:status s="clientHold" lang="en">Payment overdue.</domain:status>
          <domain:status s="clientUpdateProhibited"/>
        </domain:add>
      </domain:update>
    </update>
    <extension>
      <secDNS:update xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:add>
          <secDNS:keyData>
            <secDNS:flags>0</secDNS:flags>
            <secDNS:protocol>3</secDNS:protocol>
            <secDNS:alg>5</secDNS:alg>
            <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
          </secDNS:keyData>
          <secDNS:keyData>
            <secDNS:flags>256</secDNS:flags>
            <secDNS:protocol>3</secDNS:protocol>
            <secDNS:alg>254</secDNS:alg>
            <secDNS:pubKey>841936717ae427ace63c28d04918569a841936717ae427ace63c28d0</secDNS:pubKey>
          </secDNS:keyData>
        </secDNS:add>
      </secDNS:update>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2303">
      <msg lang="en">Contact was not found</msg>
      <value>
        <contact>FIXED:MAK21</contact>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2920591231</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain29.ee</domain:name>
        <domain:add>
          <domain:ns>
            <domain:hostAttr>
              <domain:hostName>ns1.example.com</domain:hostName>
            </domain:hostAttr>
            <domain:hostAttr>
              <domain:hostName>ns2.example.com</domain:hostName>
            </domain:hostAttr>
          </domain:ns>
          <domain:contact type="tech">FIXED:MAK21</domain:contact>
          <domain:status s="clientHold" lang="en">Payment overdue.</domain:status>
          <domain:status s="clientUpdateProhibited"/>
        </domain:add>
      </domain:update>
    </update>
    <extension>
      <secDNS:update xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:add>
          <secDNS:keyData>
            <secDNS:flags>0</secDNS:flags>
            <secDNS:protocol>3</secDNS:protocol>
            <secDNS:alg>5</secDNS:alg>
            <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
          </secDNS:keyData>
          <secDNS:keyData>
            <secDNS:flags>256</secDNS:flags>
            <secDNS:protocol>3</secDNS:protocol>
            <secDNS:alg>254</secDNS:alg>
            <secDNS:pubKey>841936717ae427ace63c28d04918569a841936717ae427ace63c28d0</secDNS:pubKey>
          </secDNS:keyData>
        </secDNS:add>
      </secDNS:update>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7243711640</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain29.ee</domain:name>
        <domain:add>
          <domain:ns>
            <domain:hostAttr>
              <domain:hostName>ns1.example.com</domain:hostName>
            </domain:hostAttr>
            <domain:hostAttr>
              <domain:hostName>ns2.example.com</domain:hostName>
            </domain:hostAttr>
          </domain:ns>
          <domain:contact type="tech">FIXED:MAK21</domain:contact>
          <domain:status s="clientHold" lang="en">Payment overdue.</domain:status>
          <domain:status s="clientUpdateProhibited"/>
        </domain:add>
      </domain:update>
    </update>
    <extension>
      <secDNS:update xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:add>
          <secDNS:keyData>
            <secDNS:flags>0</secDNS:flags>
            <secDNS:protocol>3</secDNS:protocol>
            <secDNS:alg>5</secDNS:alg>
            <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
          </secDNS:keyData>
          <secDNS:keyData>
            <secDNS:flags>256</secDNS:flags>
            <secDNS:protocol>3</secDNS:protocol>
            <secDNS:alg>254</secDNS:alg>
            <secDNS:pubKey>841936717ae427ace63c28d04918569a841936717ae427ace63c28d0</secDNS:pubKey>
          </secDNS:keyData>
        </secDNS:add>
      </secDNS:update>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2302">
      <msg lang="en">Nameserver already exists on this domain [hostname]</msg>
      <value>
        <hostAttr>ns2.example.com</hostAttr>
      </value>
    </result>
    <result code="2302">
      <msg lang="en">Nameserver already exists on this domain [hostname]</msg>
      <value>
        <hostAttr>ns1.example.com</hostAttr>
      </value>
    </result>
    <result code="2302">
      <msg lang="en">Contact already exists on this domain [contact_code_cache]</msg>
      <value>
        <contact>FIXED:MAK21</contact>
      </value>
    </result>
    <result code="2302">
      <msg lang="en">Status already exists on this domain [value]</msg>
      <value>
        <status>clientUpdateProhibited</status>
      </value>
    </result>
    <result code="2302">
      <msg lang="en">Status already exists on this domain [value]</msg>
      <value>
        <status>clientHold</status>
      </value>
    </result>
    <result code="2302">
      <msg lang="en">Public key already exists [public_key]</msg>
      <value>
        <pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</pubKey>
      </value>
    </result>
    <result code="2302">
      <msg lang="en">Public key already exists [public_key]</msg>
      <value>
        <pubKey>841936717ae427ace63c28d04918569a841936717ae427ace63c28d0</pubKey>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8779473072</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain updates domain with registrant change what triggers action pending

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain30.ee</domain:name>
        <domain:add>
          <domain:ns>
            <domain:hostAttr>
              <domain:hostName>ns1.example.com</domain:hostName>
            </domain:hostAttr>
            <domain:hostAttr>
              <domain:hostName>ns2.example.com</domain:hostName>
            </domain:hostAttr>
          </domain:ns>
          <domain:contact type="tech">FIXED:PENDINGMAK21</domain:contact>
          <domain:status s="clientHold" lang="en">Payment overdue.</domain:status>
          <domain:status s="clientUpdateProhibited"/>
        </domain:add>
        <domain:chg>
          <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        </domain:chg>
      </domain:update>
    </update>
    <extension>
      <secDNS:update xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:add>
          <secDNS:keyData>
            <secDNS:flags>0</secDNS:flags>
            <secDNS:protocol>3</secDNS:protocol>
            <secDNS:alg>5</secDNS:alg>
            <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
          </secDNS:keyData>
          <secDNS:keyData>
            <secDNS:flags>256</secDNS:flags>
            <secDNS:protocol>3</secDNS:protocol>
            <secDNS:alg>254</secDNS:alg>
            <secDNS:pubKey>841936717ae427ace63c28d04918569a841936717ae427ace63c28d0</secDNS:pubKey>
          </secDNS:keyData>
        </secDNS:add>
      </secDNS:update>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2303">
      <msg lang="en">Contact was not found</msg>
      <value>
        <contact>FIXED:PENDINGMAK21</contact>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0431973761</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain30.ee</domain:name>
        <domain:add>
          <domain:ns>
            <domain:hostAttr>
              <domain:hostName>ns1.example.com</domain:hostName>
            </domain:hostAttr>
            <domain:hostAttr>
              <domain:hostName>ns2.example.com</domain:hostName>
            </domain:hostAttr>
          </domain:ns>
          <domain:contact type="tech">FIXED:PENDINGMAK21</domain:contact>
          <domain:status s="clientHold" lang="en">Payment overdue.</domain:status>
          <domain:status s="clientUpdateProhibited"/>
        </domain:add>
        <domain:chg>
          <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        </domain:chg>
      </domain:update>
    </update>
    <extension>
      <secDNS:update xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:add>
          <secDNS:keyData>
            <secDNS:flags>0</secDNS:flags>
            <secDNS:protocol>3</secDNS:protocol>
            <secDNS:alg>5</secDNS:alg>
            <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
          </secDNS:keyData>
          <secDNS:keyData>
            <secDNS:flags>256</secDNS:flags>
            <secDNS:protocol>3</secDNS:protocol>
            <secDNS:alg>254</secDNS:alg>
            <secDNS:pubKey>841936717ae427ace63c28d04918569a841936717ae427ace63c28d0</secDNS:pubKey>
          </secDNS:keyData>
        </secDNS:add>
      </secDNS:update>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1001">
      <msg>Command completed successfully; action pending</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7879816683</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain does not allow to edit statuses if policy forbids it

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain31.ee</domain:name>
        <domain:add>
          <domain:status s="clientHold" lang="en">Payment overdue.</domain:status>
          <domain:status s="clientUpdateProhibited"/>
        </domain:add>
      </domain:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Parameter value policy error. Client-side object status management not supported: status [status]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8060582754</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain updates a domain and removes objects

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain32.ee</domain:name>
        <domain:add>
          <domain:ns>
            <domain:hostAttr>
              <domain:hostName>ns1.example.com</domain:hostName>
            </domain:hostAttr>
            <domain:hostAttr>
              <domain:hostName>ns2.example.com</domain:hostName>
            </domain:hostAttr>
          </domain:ns>
          <domain:contact type="tech">FIXED:CITIZEN_1234</domain:contact>
          <domain:status s="clientHold" lang="en">Payment overdue.</domain:status>
          <domain:status s="clientUpdateProhibited"/>
        </domain:add>
      </domain:update>
    </update>
    <extension>
      <secDNS:update xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:add>
          <secDNS:keyData>
            <secDNS:flags>0</secDNS:flags>
            <secDNS:protocol>3</secDNS:protocol>
            <secDNS:alg>5</secDNS:alg>
            <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
          </secDNS:keyData>
          <secDNS:keyData>
            <secDNS:flags>256</secDNS:flags>
            <secDNS:protocol>3</secDNS:protocol>
            <secDNS:alg>254</secDNS:alg>
            <secDNS:pubKey>841936717ae427ace63c28d04918569a841936717ae427ace63c28d0</secDNS:pubKey>
          </secDNS:keyData>
        </secDNS:add>
      </secDNS:update>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2522481306</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain32.ee</domain:name>
        <domain:rem>
          <domain:ns>
            <domain:hostAttr>
              <domain:hostName>ns1.example.com</domain:hostName>
            </domain:hostAttr>
          </domain:ns>
          <domain:contact type="tech">FIXED:CITIZEN_1234</domain:contact>
          <domain:status s="clientHold"/>
        </domain:rem>
      </domain:update>
    </update>
    <extension>
      <secDNS:update xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:rem>
          <secDNS:keyData>
            <secDNS:flags>256</secDNS:flags>
            <secDNS:protocol>3</secDNS:protocol>
            <secDNS:alg>254</secDNS:alg>
            <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
          </secDNS:keyData>
        </secDNS:rem>
      </secDNS:update>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2256375060</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain32.ee</domain:name>
        <domain:rem>
          <domain:ns>
            <domain:hostAttr>
              <domain:hostName>ns1.example.com</domain:hostName>
            </domain:hostAttr>
          </domain:ns>
          <domain:contact type="tech">FIXED:CITIZEN_1234</domain:contact>
          <domain:status s="clientHold"/>
        </domain:rem>
      </domain:update>
    </update>
    <extension>
      <secDNS:update xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1">
        <secDNS:rem>
          <secDNS:keyData>
            <secDNS:flags>256</secDNS:flags>
            <secDNS:protocol>3</secDNS:protocol>
            <secDNS:alg>254</secDNS:alg>
            <secDNS:pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</secDNS:pubKey>
          </secDNS:keyData>
        </secDNS:rem>
      </secDNS:update>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2303">
      <msg lang="en">Nameserver was not found</msg>
      <value>
        <hostAttr>ns1.example.com</hostAttr>
      </value>
    </result>
    <result code="2303">
      <msg lang="en">Contact was not found</msg>
      <value>
        <contact>FIXED:CITIZEN_1234</contact>
      </value>
    </result>
    <result code="2303">
      <msg lang="en">Status was not found</msg>
      <value>
        <status>clientHold</status>
      </value>
    </result>
    <result code="2303">
      <msg lang="en">DS was not found</msg>
      <value>
        <publicKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</publicKey>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5698273149</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain does not remove server statuses

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain33.ee</domain:name>
        <domain:rem>
          <domain:status s="serverHold"/>
        </domain:rem>
      </domain:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2303">
      <msg lang="en">Status was not found</msg>
      <value>
        <status>serverHold</status>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8800564768</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain does not add duplicate objects to domain

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain34.ee</domain:name>
        <domain:add>
          <domain:ns>
            <domain:hostAttr>
              <domain:hostName>ns.haley99.ee</domain:hostName>
            </domain:hostAttr>
          </domain:ns>
          <domain:contact type="admin">FIXED:SH2981345479</domain:contact>
        </domain:add>
      </domain:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0338092233</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain34.ee</domain:name>
        <domain:add>
          <domain:ns>
            <domain:hostAttr>
              <domain:hostName>ns.haley99.ee</domain:hostName>
            </domain:hostAttr>
          </domain:ns>
          <domain:contact type="admin">FIXED:SH2981345479</domain:contact>
        </domain:add>
      </domain:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2302">
      <msg lang="en">Nameserver already exists on this domain [hostname]</msg>
      <value>
        <hostAttr>ns.haley99.ee</hostAttr>
      </value>
    </result>
    <result code="2302">
      <msg lang="en">Contact already exists on this domain [contact_code_cache]</msg>
      <value>
        <contact>FIXED:SH2981345479</contact>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6214899309</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain35.ee</domain:name>
        <domain:chg>
          <domain:registrant>FIXED:CITIZEN_1234</domain:registrant>
        </domain:chg>
      </domain:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2003">
      <msg lang="en">Required parameter missing: extension &gt; extdata &gt; legalDocument [legal_document]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3378153085</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain does not assign invalid status to domain

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain36.ee</domain:name>
        <domain:add>
          <domain:status s="invalidStatus"/>
        </domain:add>
      </domain:update>
    </update>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2303">
      <msg lang="en">Status was not found</msg>
      <value>
        <status>invalidStatus</status>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8417122681</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain renews a domain

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <renew>
      <domain:renew xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain37.ee</domain:name>
        <domain:curExpDate>2016-06-08</domain:curExpDate>
        <domain:period unit="y">1</domain:period>
      </domain:renew>
    </renew>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <renData>
        <name>domain37.ee</name>
        <exDate>2017-06-08T00:00:00Z</exDate>
      </renData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6816618650</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain returns an error when given and current exp dates do not match

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <renew>
      <domain:renew xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain38.ee</domain:name>
        <domain:curExpDate>2200-08-07</domain:curExpDate>
        <domain:period unit="y">1</domain:period>
      </domain:renew>
    </renew>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Given and current expire dates do not match</msg>
      <value>
        <curExpDate>2200-08-07</curExpDate>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6439780167</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain returns an error when period is invalid

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <renew>
      <domain:renew xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain39.ee</domain:name>
        <domain:curExpDate>2016-06-08</domain:curExpDate>
        <domain:period unit="y">4</domain:period>
      </domain:renew>
    </renew>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2004">
      <msg lang="en">Period must add up to 1, 2 or 3 years [period]</msg>
      <value>
        <period>4</period>
      </value>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9998022215</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain does not renew foreign domain

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1020170288</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <renew>
      <domain:renew xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain40.ee</domain:name>
        <domain:curExpDate>2016-06-08</domain:curExpDate>
        <domain:period unit="y">1</domain:period>
      </domain:renew>
    </renew>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2201">
      <msg lang="en">Authorization error</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0988765876</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2388170587</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain returns domain info

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <domain:info xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name hosts="all">domain41.ee</domain:name>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:info>
    </info>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <infData>
        <name>domain41.ee</name>
        <roid>EIS-49</roid>
        <status s="clientHold">Payment overdue.</status>
        <registrant>FIXED:REGISTRANT7651570639</registrant>
        <contact type="tech">FIXED:SH0834297496</contact>
        <contact type="admin">FIXED:SH8999816095</contact>
        <ns>
          <hostAttr>
            <hostName>ns.armstrong123.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
          </hostAttr>
          <hostAttr>
            <hostName>ns.jacobi124.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
          </hostAttr>
          <hostAttr>
            <hostName>ns.tillman125.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
          </hostAttr>
          <hostAttr>
            <hostName>ns1.example.com</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
            <hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</hostAddr>
          </hostAttr>
        </ns>
        <clID>registrar1</clID>
        <crDate>2015-06-08T15:21:05Z</crDate>
        <upDate>2015-06-08T15:21:06Z</upDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
        <authInfo>
          <pw>998ae0749d17abfcea025ac0c76fe83a</pw>
        </authInfo>
      </infData>
    </resData>
    <extension>
      <infData>
        <dsData>
          <keyTag>123</keyTag>
          <alg>3</alg>
          <digestType>1</digestType>
          <digest>0D85A305D22FCB355BBE29AE9809363D697B64782B9CC73AE349350F8C2AE4BB</digest>
          <keyData>
            <flags>257</flags>
            <protocol>3</protocol>
            <alg>3</alg>
            <pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</pubKey>
          </keyData>
        </dsData>
        <dsData>
          <keyTag>123</keyTag>
          <alg>3</alg>
          <digestType>1</digestType>
          <digest>0D85A305D22FCB355BBE29AE9809363D697B64782B9CC73AE349350F8C2AE4BB</digest>
          <keyData>
            <flags>0</flags>
            <protocol>3</protocol>
            <alg>5</alg>
            <pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</pubKey>
          </keyData>
        </dsData>
      </infData>
    </extension>
    <trID>
      <svTRID>ccReg-2108787193</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <domain:info xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name hosts="all">domain41.ee</domain:name>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:info>
    </info>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <infData>
        <name>domain41.ee</name>
        <roid>EIS-49</roid>
        <status s="clientHold">Payment overdue.</status>
        <registrant>FIXED:REGISTRANT7651570639</registrant>
        <contact type="tech">FIXED:SH0834297496</contact>
        <contact type="admin">FIXED:SH8999816095</contact>
        <ns>
          <hostAttr>
            <hostName>ns.armstrong123.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
          </hostAttr>
          <hostAttr>
            <hostName>ns.jacobi124.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
          </hostAttr>
          <hostAttr>
            <hostName>ns.tillman125.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
          </hostAttr>
          <hostAttr>
            <hostName>ns1.example.com</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
            <hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</hostAddr>
          </hostAttr>
        </ns>
        <clID>registrar1</clID>
        <crDate>2015-06-08T15:21:05Z</crDate>
        <upDate>2015-06-08T15:21:06Z</upDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
        <authInfo>
          <pw>998ae0749d17abfcea025ac0c76fe83a</pw>
        </authInfo>
      </infData>
    </resData>
    <extension>
      <infData>
        <dsData>
          <keyTag>123</keyTag>
          <alg>3</alg>
          <digestType>1</digestType>
          <digest>0D85A305D22FCB355BBE29AE9809363D697B64782B9CC73AE349350F8C2AE4BB</digest>
          <keyData>
            <flags>257</flags>
            <protocol>3</protocol>
            <alg>3</alg>
            <pubKey>AwEAAddt2AkLfYGKgiEZB5SmIF8EvrjxNMH6HtxWEA4RJ9Ao6LCWheg8</pubKey>
          </keyData>
        </dsData>
        <dsData>
          <keyTag>123</keyTag>
          <alg>3</alg>
          <digestType>1</digestType>
          <digest>0D85A305D22FCB355BBE29AE9809363D697B64782B9CC73AE349350F8C2AE4BB</digest>
          <keyData>
            <flags>0</flags>
            <protocol>3</protocol>
            <alg>5</alg>
            <pubKey>700b97b591ed27ec2590d19f06f88bba700b97b591ed27ec2590d19f</pubKey>
          </keyData>
        </dsData>
      </infData>
    </extension>
    <trID>
      <svTRID>ccReg-6066216605</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain returns domain info with different nameservers

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <domain:info xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name hosts="invalid">domain42.ee</domain:name>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:info>
    </info>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Attribute is invalid: hosts</msg>
    </result>
    <trID>
      <svTRID>ccReg-8544263119</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <domain:info xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name hosts="sub">domain42.ee</domain:name>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:info>
    </info>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <infData>
        <name>domain42.ee</name>
        <roid>EIS-50</roid>
        <status s="ok"/>
        <registrant>FIXED:REGISTRANT7449267040</registrant>
        <contact type="tech">FIXED:SH2935483198</contact>
        <contact type="admin">FIXED:SH2651999597</contact>
        <ns>
          <hostAttr>
            <hostName>ns1.domain42.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
            <hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</hostAddr>
          </hostAttr>
          <hostAttr>
            <hostName>ns2.domain42.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
            <hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</hostAddr>
          </hostAttr>
        </ns>
        <clID>registrar1</clID>
        <crDate>2015-06-08T15:21:06Z</crDate>
        <upDate>2015-06-08T15:21:06Z</upDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
        <authInfo>
          <pw>ffd6a5a63e1781f220c32d50a93bbd94</pw>
        </authInfo>
      </infData>
    </resData>
    <trID>
      <svTRID>ccReg-0763936439</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <domain:info xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name hosts="del">domain42.ee</domain:name>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:info>
    </info>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <infData>
        <name>domain42.ee</name>
        <roid>EIS-50</roid>
        <status s="ok"/>
        <registrant>FIXED:REGISTRANT7449267040</registrant>
        <contact type="tech">FIXED:SH2935483198</contact>
        <contact type="admin">FIXED:SH2651999597</contact>
        <ns>
          <hostAttr>
            <hostName>ns3.test.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
            <hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</hostAddr>
          </hostAttr>
        </ns>
        <clID>registrar1</clID>
        <crDate>2015-06-08T15:21:06Z</crDate>
        <upDate>2015-06-08T15:21:06Z</upDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
        <authInfo>
          <pw>ffd6a5a63e1781f220c32d50a93bbd94</pw>
        </authInfo>
      </infData>
    </resData>
    <trID>
      <svTRID>ccReg-8474966646</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <domain:info xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name hosts="none">domain42.ee</domain:name>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:info>
    </info>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <infData>
        <name>domain42.ee</name>
        <roid>EIS-50</roid>
        <status s="ok"/>
        <registrant>FIXED:REGISTRANT7449267040</registrant>
        <contact type="tech">FIXED:SH2935483198</contact>
        <contact type="admin">FIXED:SH2651999597</contact>
        <clID>registrar1</clID>
        <crDate>2015-06-08T15:21:06Z</crDate>
        <upDate>2015-06-08T15:21:06Z</upDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
        <authInfo>
          <pw>ffd6a5a63e1781f220c32d50a93bbd94</pw>
        </authInfo>
      </infData>
    </resData>
    <trID>
      <svTRID>ccReg-5075549479</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <domain:info xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name hosts="all">domain42.ee</domain:name>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:info>
    </info>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <infData>
        <name>domain42.ee</name>
        <roid>EIS-50</roid>
        <status s="ok"/>
        <registrant>FIXED:REGISTRANT7449267040</registrant>
        <contact type="tech">FIXED:SH2935483198</contact>
        <contact type="admin">FIXED:SH2651999597</contact>
        <ns>
          <hostAttr>
            <hostName>ns1.domain42.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
            <hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</hostAddr>
          </hostAttr>
          <hostAttr>
            <hostName>ns2.domain42.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
            <hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</hostAddr>
          </hostAttr>
          <hostAttr>
            <hostName>ns3.test.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
            <hostAddr ip="v6">1080:0:0:0:8:800:200C:417A</hostAddr>
          </hostAttr>
        </ns>
        <clID>registrar1</clID>
        <crDate>2015-06-08T15:21:06Z</crDate>
        <upDate>2015-06-08T15:21:06Z</upDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
        <authInfo>
          <pw>ffd6a5a63e1781f220c32d50a93bbd94</pw>
        </authInfo>
      </infData>
    </resData>
    <trID>
      <svTRID>ccReg-8314005401</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain returns error when domain can not be found

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <domain:info xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name hosts="all">test.ee</domain:name>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:info>
    </info>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2303">
      <msg lang="en">Domain not found</msg>
      <value>
        <name>test.ee</name>
      </value>
    </result>
    <trID>
      <svTRID>ccReg-5127764955</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain sets ok status by default

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <domain:info xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name hosts="all">domain43.ee</domain:name>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:info>
    </info>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <infData>
        <name>domain43.ee</name>
        <roid>EIS-51</roid>
        <status s="ok"/>
        <registrant>FIXED:REGISTRANT6779403441</registrant>
        <contact type="tech">FIXED:SH48958512100</contact>
        <contact type="admin">FIXED:SH4940338899</contact>
        <ns>
          <hostAttr>
            <hostName>ns.cummerata129.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
          </hostAttr>
          <hostAttr>
            <hostName>ns.dickens130.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
          </hostAttr>
          <hostAttr>
            <hostName>ns.grimeswalsh131.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
          </hostAttr>
        </ns>
        <clID>registrar1</clID>
        <crDate>2015-06-08T15:21:06Z</crDate>
        <upDate>2015-06-08T15:21:06Z</upDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
        <authInfo>
          <pw>ca880a7a8024a18e247a06f58ef5cc48</pw>
        </authInfo>
      </infData>
    </resData>
    <trID>
      <svTRID>ccReg-0756889275</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain can not see other registrar domains with invalid password

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0385762565</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <domain:info xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name hosts="all">domain44.ee</domain:name>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:info>
    </info>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2201">
      <msg lang="en">Authorization error</msg>
    </result>
    <trID>
      <svTRID>ccReg-2827221934</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3874111143</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain can see other registrar domains without password

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0330326798</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <domain:info xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name hosts="all">domain45.ee</domain:name>
      </domain:info>
    </info>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <infData>
        <name>domain45.ee</name>
        <roid>EIS-53</roid>
        <status s="ok"/>
        <registrant>FIXED:REGISTRANT2347391943</registrant>
        <contact type="tech">FIXED:SH40231257104</contact>
        <contact type="admin">FIXED:SH73485187103</contact>
        <ns>
          <hostAttr>
            <hostName>ns.beer135.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
          </hostAttr>
          <hostAttr>
            <hostName>ns.torp136.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
          </hostAttr>
          <hostAttr>
            <hostName>ns.volkman137.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
          </hostAttr>
        </ns>
        <clID>registrar1</clID>
        <crDate>2015-06-08T15:21:07Z</crDate>
        <upDate>2015-06-08T15:21:07Z</upDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
      </infData>
    </resData>
    <trID>
      <svTRID>ccReg-2388852720</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5054156078</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain can see other registrar domains with correct password

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0298558154</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <domain:info xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name hosts="all">domain46.ee</domain:name>
        <domain:authInfo>
          <domain:pw>bf1ad7a9e4402825d7de887ca7556169</domain:pw>
        </domain:authInfo>
      </domain:info>
    </info>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <infData>
        <name>domain46.ee</name>
        <roid>EIS-54</roid>
        <status s="ok"/>
        <registrant>FIXED:REGISTRANT2605608744</registrant>
        <contact type="tech">FIXED:SH86247809106</contact>
        <contact type="admin">FIXED:SH23680732105</contact>
        <ns>
          <hostAttr>
            <hostName>ns.hand138.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
          </hostAttr>
          <hostAttr>
            <hostName>ns.kiehnemard139.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
          </hostAttr>
          <hostAttr>
            <hostName>ns.hintz140.ee</hostName>
            <hostAddr ip="v4">192.168.1.1</hostAddr>
          </hostAttr>
        </ns>
        <clID>registrar1</clID>
        <crDate>2015-06-08T15:21:07Z</crDate>
        <upDate>2015-06-08T15:21:07Z</upDate>
        <exDate>2016-06-08T00:00:00Z</exDate>
        <authInfo>
          <pw>bf1ad7a9e4402825d7de887ca7556169</pw>
        </authInfo>
      </infData>
    </resData>
    <trID>
      <svTRID>ccReg-3176041821</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8239433518</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain deletes domain

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <delete>
      <domain:delete xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain47.ee</domain:name>
      </domain:delete>
    </delete>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1001">
      <msg>Command completed successfully; action pending</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4850158414</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain does not delete domain with specific status

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <delete>
      <domain:delete xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain48.ee</domain:name>
      </domain:delete>
    </delete>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2304">
      <msg lang="en">Domain status prohibits operation</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4434185707</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain does not delete domain with pending delete

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <delete>
      <domain:delete xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain49.ee</domain:name>
      </domain:delete>
    </delete>
    <extension>
      <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
        <eis:legalDocument type="pdf">dGVzdCBmYWlsCg==</eis:legalDocument>
      </eis:extdata>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2304">
      <msg lang="en">Object status prohibits operation</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-8623312066</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <delete>
      <domain:delete xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example.ee</domain:name>
      </domain:delete>
    </delete>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2003">
      <msg lang="en">Required parameter missing: extension &gt; extdata &gt; legalDocument [legal_document]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2140727461</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain checks a domain

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <check>
      <domain:check xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>one.ee</domain:name>
      </domain:check>
    </check>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <chkData>
        <cd>
          <name avail="1">one.ee</name>
        </cd>
      </chkData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7208701915</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <check>
      <domain:check xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>domain50.ee</domain:name>
      </domain:check>
    </check>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <chkData>
        <cd>
          <name avail="0">domain50.ee</name>
          <reason>in use</reason>
        </cd>
      </chkData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4478610591</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain checks multiple domains

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <check>
      <domain:check xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>one.ee</domain:name>
        <domain:name>two.ee</domain:name>
        <domain:name>three.ee</domain:name>
      </domain:check>
    </check>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <chkData>
        <cd>
          <name avail="1">one.ee</name>
        </cd>
        <cd>
          <name avail="1">two.ee</name>
        </cd>
        <cd>
          <name avail="1">three.ee</name>
        </cd>
      </chkData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4923110430</svTRID>
    </trID>
  </response>
</epp>

EPP Domain with valid domain checks invalid format domain

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <check>
      <domain:check xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>one.ee</domain:name>
        <domain:name>notcorrectdomain</domain:name>
      </domain:check>
    </check>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <chkData>
        <cd>
          <name avail="1">one.ee</name>
        </cd>
        <cd>
          <name avail="0">notcorrectdomain</name>
          <reason>invalid format</reason>
        </cd>
      </chkData>
    </resData>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-9541016561</svTRID>
    </trID>
  </response>
</epp>

EPP Helper in context of Domain generates valid transfer xml

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7232961025</svTRID>
    </trID>
  </response>
</epp>

EPP Keyrelay makes a keyrelay request

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1" xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xmlns:ext="urn:ietf:params:xml:ns:keyrelay-1.0">
  <command>
    <ext:keyrelay>
      <ext:name>domain51.ee</ext:name>
      <ext:keyData>
        <secDNS:flags>256</secDNS:flags>
        <secDNS:protocol>3</secDNS:protocol>
        <secDNS:alg>8</secDNS:alg>
        <secDNS:pubKey>cmlraXN0aGViZXN0</secDNS:pubKey>
      </ext:keyData>
      <ext:authInfo>
        <domain:pw>c3c2eca5fb2dc6f57ae27ae7d839eb42</domain:pw>
      </ext:authInfo>
      <ext:expiry>
        <ext:relative>P1M13D</ext:relative>
      </ext:expiry>
    </ext:keyrelay>
    <ext:clTRID>1433776868</ext:clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2307">
      <msg lang="en">Unimplemented object service</msg>
      <value>
        <name>domain51.ee</name>
      </value>
    </result>
    <trID>
      <clTRID>1433776868</clTRID>
      <svTRID>ccReg-8628098112</svTRID>
    </trID>
  </response>
</epp>

EPP Keyrelay returns an error when parameters are missing

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1" xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xmlns:ext="urn:ietf:params:xml:ns:keyrelay-1.0">
  <command>
    <ext:keyrelay>
      <ext:name>domain51.ee</ext:name>
      <ext:keyData>
        <secDNS:protocol>3</secDNS:protocol>
        <secDNS:alg>8</secDNS:alg>
        <secDNS:pubKey>cmlraXN0aGViZXN0</secDNS:pubKey>
      </ext:keyData>
      <ext:authInfo>
        <domain:pw>c3c2eca5fb2dc6f57ae27ae7d839eb42</domain:pw>
      </ext:authInfo>
      <ext:expiry>
        <ext:relative>Invalid Expiry</ext:relative>
      </ext:expiry>
    </ext:keyrelay>
    <ext:clTRID>1433776868</ext:clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2003">
      <msg lang="en">Required parameter missing: keyrelay &gt; keyData &gt; flags [flags]</msg>
    </result>
    <result code="2005">
      <msg lang="en">Expiry relative must be compatible to ISO 8601</msg>
      <value>
        <relative>Invalid Expiry</relative>
      </value>
    </result>
    <trID>
      <clTRID>1433776868</clTRID>
      <svTRID>ccReg-6413573414</svTRID>
    </trID>
  </response>
</epp>

EPP Keyrelay returns an error on invalid relative expiry

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1" xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xmlns:ext="urn:ietf:params:xml:ns:keyrelay-1.0">
  <command>
    <ext:keyrelay>
      <ext:name>domain51.ee</ext:name>
      <ext:keyData>
        <secDNS:flags>256</secDNS:flags>
        <secDNS:protocol>3</secDNS:protocol>
        <secDNS:alg>8</secDNS:alg>
        <secDNS:pubKey>cmlraXN0aGViZXN0</secDNS:pubKey>
      </ext:keyData>
      <ext:authInfo>
        <domain:pw>c3c2eca5fb2dc6f57ae27ae7d839eb42</domain:pw>
      </ext:authInfo>
      <ext:expiry>
        <ext:relative>Invalid Expiry</ext:relative>
      </ext:expiry>
    </ext:keyrelay>
    <ext:clTRID>1433776868</ext:clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2005">
      <msg lang="en">Expiry relative must be compatible to ISO 8601</msg>
      <value>
        <relative>Invalid Expiry</relative>
      </value>
    </result>
    <trID>
      <clTRID>1433776868</clTRID>
      <svTRID>ccReg-6032734169</svTRID>
    </trID>
  </response>
</epp>

EPP Keyrelay returns an error on invalid absolute expiry

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1" xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xmlns:ext="urn:ietf:params:xml:ns:keyrelay-1.0">
  <command>
    <ext:keyrelay>
      <ext:name>domain51.ee</ext:name>
      <ext:keyData>
        <secDNS:flags>256</secDNS:flags>
        <secDNS:protocol>3</secDNS:protocol>
        <secDNS:alg>8</secDNS:alg>
        <secDNS:pubKey>cmlraXN0aGViZXN0</secDNS:pubKey>
      </ext:keyData>
      <ext:authInfo>
        <domain:pw>c3c2eca5fb2dc6f57ae27ae7d839eb42</domain:pw>
      </ext:authInfo>
      <ext:expiry>
        <ext:absolute>Invalid Absolute</ext:absolute>
      </ext:expiry>
    </ext:keyrelay>
    <ext:clTRID>1433776868</ext:clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2005">
      <msg lang="en">Expiry absolute must be compatible to ISO 8601</msg>
      <value>
        <absolute>Invalid Absolute</absolute>
      </value>
    </result>
    <trID>
      <clTRID>1433776868</clTRID>
      <svTRID>ccReg-3524096427</svTRID>
    </trID>
  </response>
</epp>

EPP Keyrelay does not allow both relative and absolute

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1" xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xmlns:ext="urn:ietf:params:xml:ns:keyrelay-1.0">
  <command>
    <ext:keyrelay>
      <ext:name>domain51.ee</ext:name>
      <ext:keyData>
        <secDNS:flags>256</secDNS:flags>
        <secDNS:protocol>3</secDNS:protocol>
        <secDNS:alg>8</secDNS:alg>
        <secDNS:pubKey>cmlraXN0aGViZXN0</secDNS:pubKey>
      </ext:keyData>
      <ext:authInfo>
        <domain:pw>c3c2eca5fb2dc6f57ae27ae7d839eb42</domain:pw>
      </ext:authInfo>
      <ext:expiry>
        <ext:relative>P1D</ext:relative>
        <ext:absolute>2014-12-23</ext:absolute>
      </ext:expiry>
    </ext:keyrelay>
    <ext:clTRID>1433776869</ext:clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Exactly one parameter required: keyrelay &gt; expiry &gt; relative OR keyrelay &gt; expiry &gt; absolute</msg>
    </result>
    <trID>
      <clTRID>1433776869</clTRID>
      <svTRID>ccReg-1882995843</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1" xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xmlns:ext="urn:ietf:params:xml:ns:keyrelay-1.0">
  <command>
    <ext:keyrelay>
      <ext:name>domain51.ee</ext:name>
      <ext:keyData>
        <secDNS:flags>256</secDNS:flags>
        <secDNS:protocol>3</secDNS:protocol>
        <secDNS:alg>8</secDNS:alg>
        <secDNS:pubKey>cmlraXN0aGViZXN0</secDNS:pubKey>
      </ext:keyData>
      <ext:authInfo>
        <domain:pw>c3c2eca5fb2dc6f57ae27ae7d839eb42</domain:pw>
      </ext:authInfo>
      <ext:expiry>
        <ext:relative>P1D</ext:relative>
      </ext:expiry>
    </ext:keyrelay>
    <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
      <eis:legalDocument type="pdf">JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp==</eis:legalDocument>
    </eis:extdata>
    <ext:clTRID>1433776869</ext:clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2307">
      <msg lang="en">Unimplemented object service</msg>
      <value>
        <name>domain51.ee</name>
      </value>
    </result>
    <trID>
      <clTRID>1433776869</clTRID>
      <svTRID>ccReg-6118606244</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1" xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xmlns:ext="urn:ietf:params:xml:ns:keyrelay-1.0">
  <command>
    <ext:keyrelay>
      <ext:name>domain51.ee</ext:name>
      <ext:keyData>
        <secDNS:flags>256</secDNS:flags>
        <secDNS:protocol>3</secDNS:protocol>
        <secDNS:alg>8</secDNS:alg>
        <secDNS:pubKey>cmlraXN0aGViZXN0</secDNS:pubKey>
      </ext:keyData>
      <ext:authInfo>
        <domain:pw>c3c2eca5fb2dc6f57ae27ae7d839eb42</domain:pw>
      </ext:authInfo>
      <ext:expiry>
        <ext:relative>P1D</ext:relative>
      </ext:expiry>
    </ext:keyrelay>
    <eis:extdata xmlns:eis="urn:ee:eis:xml:epp:eis-1.0">
      <eis:legalDocument type="jpg">JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0Zp==</eis:legalDocument>
    </eis:extdata>
    <ext:clTRID>1433776869</ext:clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Attribute is invalid: type</msg>
    </result>
    <trID>
      <clTRID>1433776869</clTRID>
      <svTRID>ccReg-0961292562</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7551627529</svTRID>
    </trID>
  </response>
</epp>

EPP Poll returns no messages in poll

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="req"/>
    <clTRID>1433776869</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1300">
      <msg>Command completed successfully; no messages</msg>
    </result>
    <trID>
      <clTRID>1433776869</clTRID>
      <svTRID>ccReg-7521642914</svTRID>
    </trID>
  </response>
</epp>

EPP Poll queues and dequeues messages

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-1890849875</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="req"/>
    <clTRID>1433776869</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1300">
      <msg>Command completed successfully; no messages</msg>
    </result>
    <trID>
      <clTRID>1433776869</clTRID>
      <svTRID>ccReg-4232834854</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0029864948</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="req"/>
    <clTRID>1433776869</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1301">
      <msg>Command completed successfully; ack to dequeue</msg>
    </result>
    <msgQ count="1" id="1">
      <qDate>2015-06-08T15:21:09Z</qDate>
      <msg>Balance low.</msg>
    </msgQ>
    <trID>
      <clTRID>1433776869</clTRID>
      <svTRID>ccReg-9384637788</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar2</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4771832665</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="ack" msgID="1"/>
    <clTRID>1433776869</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2303">
      <msg lang="en">Message was not found</msg>
      <value>
        <msgID>1</msgID>
      </value>
    </result>
    <trID>
      <clTRID>1433776869</clTRID>
      <svTRID>ccReg-6895181010</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>registrar1</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3093584401</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="ack" msgID="1"/>
    <clTRID>1433776869</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <msgQ count="0" id="1"/>
    <trID>
      <clTRID>1433776869</clTRID>
      <svTRID>ccReg-5968172050</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="ack" msgID="1"/>
    <clTRID>1433776869</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2303">
      <msg lang="en">Message was not found</msg>
      <value>
        <msgID>1</msgID>
      </value>
    </result>
    <trID>
      <clTRID>1433776869</clTRID>
      <svTRID>ccReg-7815627861</svTRID>
    </trID>
  </response>
</epp>

EPP Poll returns an error on incorrect op

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="bla"/>
    <clTRID>1433776869</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Attribute is invalid: op</msg>
    </result>
    <trID>
      <clTRID>1433776869</clTRID>
      <svTRID>ccReg-5663813076</svTRID>
    </trID>
  </response>
</epp>

EPP Poll dequeues multiple messages

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="req"/>
    <clTRID>1433776869</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1301">
      <msg>Command completed successfully; ack to dequeue</msg>
    </result>
    <msgQ count="3" id="4">
      <qDate>2015-06-08T15:21:09Z</qDate>
      <msg>Smth else.</msg>
    </msgQ>
    <trID>
      <clTRID>1433776869</clTRID>
      <svTRID>ccReg-9587463566</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="ack" msgID="4"/>
    <clTRID>1433776869</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <msgQ count="2" id="4"/>
    <trID>
      <clTRID>1433776869</clTRID>
      <svTRID>ccReg-5603445278</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="req"/>
    <clTRID>1433776869</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1301">
      <msg>Command completed successfully; ack to dequeue</msg>
    </result>
    <msgQ count="2" id="3">
      <qDate>2015-06-08T15:21:09Z</qDate>
      <msg>Something.</msg>
    </msgQ>
    <trID>
      <clTRID>1433776869</clTRID>
      <svTRID>ccReg-9521556048</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="ack" msgID="3"/>
    <clTRID>1433776870</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <msgQ count="1" id="3"/>
    <trID>
      <clTRID>1433776870</clTRID>
      <svTRID>ccReg-2074321942</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="req"/>
    <clTRID>1433776870</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1301">
      <msg>Command completed successfully; ack to dequeue</msg>
    </result>
    <msgQ count="1" id="2">
      <qDate>2015-06-08T15:21:09Z</qDate>
      <msg>Balance low.</msg>
    </msgQ>
    <trID>
      <clTRID>1433776870</clTRID>
      <svTRID>ccReg-2372562635</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="ack" msgID="2"/>
    <clTRID>1433776870</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <msgQ count="0" id="2"/>
    <trID>
      <clTRID>1433776870</clTRID>
      <svTRID>ccReg-4969206745</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <poll op="req"/>
    <clTRID>1433776870</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1300">
      <msg>Command completed successfully; no messages</msg>
    </result>
    <trID>
      <clTRID>1433776870</clTRID>
      <svTRID>ccReg-4261553495</svTRID>
    </trID>
  </response>
</epp>

EPP Session when not connected greets client upon connection

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-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">
  <greeting>
    <svID>EPP server (EIS)</svID>
    <svDate>2015-06-08T15:21:10Z</svDate>
    <svcMenu>
      <version>1.0</version>
      <lang>en</lang>
      <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
      <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
      <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
      <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
      <svcExtension>
        <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
        <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
      </svcExtension>
    </svcMenu>
    <dcp>
      <access>
        <all/>
      </access>
      <statement>
        <purpose>
          <admin/>
          <prov/>
        </purpose>
        <recipient>
          <public/>
        </recipient>
        <retention>
          <stated/>
        </retention>
      </statement>
    </dcp>
  </greeting>
</epp>

EPP Session when connected does not log in with invalid user

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>wrong-user</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2501">
      <msg>Authentication error; server closing connection</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6497463969</svTRID>
    </trID>
  </response>
</epp>

EPP Session when connected does not log in with inactive user

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>inactive-user</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2501">
      <msg>Authentication error; server closing connection</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3458000205</svTRID>
    </trID>
  </response>
</epp>

EPP Session when connected prohibits further actions unless logged in

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <info>
      <domain:info xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>test.ee</domain:name>
      </domain:info>
    </info>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2002">
      <msg lang="en">You need to login first.</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7254767643</svTRID>
    </trID>
  </response>
</epp>

EPP Session when connected should not have clTRID in response if client does not send it

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>wrong-user</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2501">
      <msg>Authentication error; server closing connection</msg>
    </result>
    <trID>
      <svTRID>ccReg-9657796463</svTRID>
    </trID>
  </response>
</epp>

EPP Session when connected with valid user logs in epp user

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>gitlab</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-6118097396</svTRID>
    </trID>
  </response>
</epp>

EPP Session when connected with valid user does not log in twice

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>gitlab</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-2211590441</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>gitlab</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2002">
      <msg lang="en">Already logged in. Use &lt;logout&gt; first.</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4897012504</svTRID>
    </trID>
  </response>
</epp>

EPP Session when connected with valid user logs out epp user

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>gitlab</clID>
      <pw>ghyt9e4fu</pw>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-5959477207</svTRID>
    </trID>
  </response>
</epp>

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <logout/>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1500">
      <msg>Command completed successfully; ending session</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-4973838373</svTRID>
    </trID>
  </response>
</epp>

EPP Session when connected with valid user changes password and logs in

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>gitlab</clID>
      <pw>ghyt9e4fu</pw>
      <newPW>abcdefg</newPW>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-3851613645</svTRID>
    </trID>
  </response>
</epp>

EPP Session when connected with valid user fails if new password is not valid

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>gitlab</clID>
      <pw>ghyt9e4fu</pw>
      <newPW/>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Password is missing [password]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-7164410427</svTRID>
    </trID>
  </response>
</epp>

EPP Session when connected with valid user fails if new password is not valid

REQUEST:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <login>
      <clID>gitlab</clID>
      <pw>ghyt9e4fu</pw>
      <newPW/>
      <options>
        <version>1.0</version>
        <lang>en</lang>
      </options>
      <svcs>
        <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:host-1.0</objURI>
        <objURI>urn:ietf:params:xml:ns:keyrelay-1.0</objURI>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:secDNS-1.1</extURI>
          <extURI>urn:ee:eis:xml:epp:eis-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>

RESPONSE:

<?xml version="1.0" encoding="UTF-8"?>
<epp schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
  <response>
    <result code="2306">
      <msg lang="en">Password is missing [password]</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>ccReg-0995233084</svTRID>
    </trID>
  </response>
</epp>