EPP Index

From Openprovider API documentation

(Difference between revisions)
Jump to: navigation, search
Line 2: Line 2:
==Introduction==
==Introduction==
 +
*The EPP interface is built for domains only. For all other products, the general Openprovider API should be used. Also note that the EPP interface of Openprovider uses the general Openprovider API for processing the commands. As a result, the EPP interface will be slower than the API interface. If you have no specific reason for using the EPP interface, we advise using the API interface instead.
 +
===Reference to RFCs===
===Reference to RFCs===
To do
To do
Line 7: Line 9:
===Differences===
===Differences===
To do: differences between RFCs and Openprovider implementation
To do: differences between RFCs and Openprovider implementation
-
* Cookies are used to keep a session alive. After the ''login'' command, the server returns a cookie ''session_id'' which must be used in all following requests to the server until closing the session
+
* Cookies are used to keep a session alive. After the ''login'' command, the server returns a cookie ''session_id'' which must be used in all following requests to the server until closing the session
===Example===
===Example===
Line 19: Line 21:
   <hello/>                                                                                   
   <hello/>                                                                                   
  </epp>
  </epp>
 +
;Response:
;Response:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
Line 55: Line 58:
  </epp>
  </epp>
-
====Login====
+
===Login===
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-
xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
+
  xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">
-
<command>
+
  <command>
-
<login>
+
    <login>
-
<clID>opdrs4</clID>
+
      <clID>opdrs4</clID>
-
<pw>opdrs4</pw>
+
      <pw>opdrs4</pw>
-
<options>
+
      <options>
-
<version>1.0</version>
+
        <version>1.0</version>
-
<lang>en</lang>
+
        <lang>en</lang>
-
</options>
+
      </options>
-
<svcs>
+
      <svcs>
-
<objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
+
        <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:contact-1.0</objURI>
-
<svcExtension>
+
        <svcExtension>
-
<extURI>urn:ietf:params:xml:ns:rgp-1.0</extURI>
+
          <extURI>urn:ietf:params:xml:ns:rgp-1.0</extURI>
-
<extURI>http://www.openprovider.nl/epp/xml/opprov-1.0</extURI>
+
          <extURI>http://www.openprovider.nl/epp/xml/opprov-1.0</extURI>
-
</svcExtension>
+
        </svcExtension>
-
</svcs>
+
      </svcs>
-
</login>
+
    </login>
-
<clTRID>ABC-12345</clTRID>
+
    <clTRID>ABC-12345</clTRID>
-
</command>
+
  </command>
  </epp>
  </epp>
-
 
-
<b>- Also searver returns cookie <font color=red>'''session_id'''</font> that <font color=red>'''must be used''' with all requests to server</font> till session close request.</b>
 
-
-
 
;Response:
;Response:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
-
<response>
+
  <response>
-
<result code="1000">
+
    <result code="1000">
-
<msg>Command completed successfully</msg>
+
      <msg>Command completed successfully</msg>
-
</result>
+
    </result>
-
<trID>
+
    <trID>
-
<clTRID>ABC-12345</clTRID>
+
      <clTRID>ABC-12345</clTRID>
-
<svTRID>41E31A2F-1B6A-4BFA-AE07-00A4DE8FCC0C</svTRID>
+
      <svTRID>41E31A2F-1B6A-4BFA-AE07-00A4DE8FCC0C</svTRID>
-
</trID>
+
    </trID>
-
</response>
+
  </response>
  </epp>
  </epp>
-
====Logout====
+
Together with the response, the server returns a cookie ''session_id'' which must be used in all following requests to the server until closing the session
 +
 
 +
===Logout===
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
-
<command>
+
  <command>
-
<logout/>
+
    <logout/>
-
<clTRID>83EE2B34-2385-11DE-9267-8000000019CE</clTRID>
+
    <clTRID>83EE2B34-2385-11DE-9267-8000000019CE</clTRID>
-
</command>
+
  </command>
  </epp>
  </epp>
 +
;Response:
;Response:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
-
<response>
+
  <response>
-
<result code="1500">
+
    <result code="1500">
-
<msg>Command completed successfully; ending session</msg>
+
      <msg>Command completed successfully; ending session</msg>
-
</result>
+
    </result>
-
<trID>
+
    <trID>
-
<clTRID>83EE2B34-2385-11DE-9267-8000000019CE</clTRID>
+
      <clTRID>83EE2B34-2385-11DE-9267-8000000019CE</clTRID>
-
<svTRID>180372ED-5E05-4718-8A73-40B37AE37D62</svTRID>
+
      <svTRID>180372ED-5E05-4718-8A73-40B37AE37D62</svTRID>
-
</trID>
+
    </trID>
-
</response>
+
  </response>
  </epp>
  </epp>
-
===Domain===
+
==Domain==
-
====Check====
+
===Check===
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
-
<command>
+
  <command>
-
<check>
+
    <check>
-
<domain:check xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
+
      <domain:check xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
-
<domain:name>example.net</domain:name>
+
        <domain:name>example.net</domain:name>
-
<domain:name>example.org</domain:name>
+
        <domain:name>example.org</domain:name>
-
</domain:check>
+
      </domain:check>
-
</check>
+
    </check>
-
<clTRID>C68D3D5A-2F3C-11DE-8EF9-80000000DC4F</clTRID>
+
    <clTRID>C68D3D5A-2F3C-11DE-8EF9-80000000DC4F</clTRID>
-
</command>
+
  </command>
  </epp>
  </epp>
;Response:
;Response:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
-
<response>
+
  <response>
-
<result code="1000">
+
    <result code="1000">
-
<msg>Command completed successfully</msg>
+
      <msg>Command completed successfully</msg>
-
</result>
+
    </result>
-
<resData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
+
    <resData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
-
<domain:chkData>
+
      <domain:chkData>
-
<domain:cd>
+
        <domain:cd>
-
<domain:name avail="1">example.net</domain:name>
+
          <domain:name avail="1">example.net</domain:name>
-
</domain:cd>
+
        </domain:cd>
-
<domain:cd>
+
        <domain:cd>
-
<domain:name avail="0">example.org</domain:name>
+
          <domain:name avail="0">example.org</domain:name>
-
<domain:reason>Domain name not available</domain:reason>
+
          <domain:reason>Domain name not available</domain:reason>
-
</domain:cd>
+
        </domain:cd>
-
</domain:chkData>
+
      </domain:chkData>
-
</resData>
+
    </resData>
-
<trID>
+
    <trID>
-
<clTRID>C68D3D5A-2F3C-11DE-8EF9-80000000DC4F</clTRID>
+
      <clTRID>C68D3D5A-2F3C-11DE-8EF9-80000000DC4F</clTRID>
-
<svTRID>B3E22269-EE9E-4E32-82C0-54C02400E396</svTRID>
+
      <svTRID>B3E22269-EE9E-4E32-82C0-54C02400E396</svTRID>
-
</trID>
+
    </trID>
-
</response>
+
  </response>
  </epp>
  </epp>
-
====Create====
+
===Create===
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
-
<command>
+
  <command>
-
<create>
+
    <create>
-
<domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
+
      <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
-
<domain:name>qwerqwer-50055d5e2870d.nl</domain:name>
+
        <domain:name>qwerqwer-50055d5e2870d.nl</domain:name>
-
<domain:period unit="y">1</domain:period>
+
        <domain:period unit="y">1</domain:period>
-
<domain:ns>
+
        <domain:ns>
-
<domain:hostAttr>
+
          <domain:hostAttr>
-
<domain:hostName>asdfasdfasdf1.df</domain:hostName>
+
            <domain:hostName>asdfasdfasdf1.df</domain:hostName>
-
<domain:hostAddr ip="v6">2607:f0d0:1002:51::4</domain:hostAddr>
+
            <domain:hostAddr ip="v6">2607:f0d0:1002:51::4</domain:hostAddr>
-
</domain:hostAttr>
+
          </domain:hostAttr>
-
<domain:hostAttr>
+
          <domain:hostAttr>
-
<domain:hostName>asdfasdfasdf2.df</domain:hostName>
+
            <domain:hostName>asdfasdfasdf2.df</domain:hostName>
-
<domain:hostAddr ip="v4">123.123.123.123</domain:hostAddr>
+
            <domain:hostAddr ip="v4">123.123.123.123</domain:hostAddr>
-
</domain:hostAttr>
+
          </domain:hostAttr>
-
</domain:ns>
+
        </domain:ns>
-
<domain:registrant>FL902041-RU</domain:registrant>
+
        <domain:registrant>FL902041-RU</domain:registrant>
-
<domain:contact type="admin">FL902041-RU</domain:contact>
+
        <domain:contact type="admin">FL902041-RU</domain:contact>
-
<domain:contact type="tech">FL902041-RU</domain:contact>
+
        <domain:contact type="tech">FL902041-RU</domain:contact>
-
<domain:authInfo>
+
        <domain:authInfo>
-
<domain:pw/>
+
          <domain:pw/>
-
</domain:authInfo>
+
        </domain:authInfo>
-
</domain:create>
+
      </domain:create>
-
</create>
+
    </create>
-
<extension>
+
    <extension>
-
<op:ext xmlns:op="http://www.openprovider.nl/epp/xml/opprov-1.0">
+
      <op:ext xmlns:op="http://www.openprovider.nl/epp/xml/opprov-1.0">
-
<op:create>
+
        <op:create>
-
<op:domain>
+
          <op:domain>
-
<op:promoCode>PROMO2</op:promoCode>
+
            <op:promoCode>PROMO2</op:promoCode>
-
<op:useDomicile>false</op:useDomicile>
+
            <op:useDomicile>false</op:useDomicile>
-
<op:nsGroup>dns-openprovider</op:nsGroup>
+
            <op:nsGroup>dns-openprovider</op:nsGroup>
-
<op:comments>any comment here</op:comments>
+
            <op:comments>any comment here</op:comments>
-
<op:autorenew>default</op:autorenew>
+
            <op:autorenew>default</op:autorenew>
-
<op:nsTemplateId>123</op:nsTemplateId>
+
            <op:nsTemplateId>123</op:nsTemplateId>
-
<op:nsTemplateName>TemplateForReseller165264</op:nsTemplateName>
+
            <op:nsTemplateName>TemplateForReseller165264</op:nsTemplateName>
-
</op:domain>
+
          </op:domain>
-
</op:create>
+
        </op:create>
-
</op:ext>
+
      </op:ext>
-
</extension>
+
    </extension>
-
<clTRID>3F169D90-411F-11DE-84A7-80000000274B</clTRID>
+
    <clTRID>3F169D90-411F-11DE-84A7-80000000274B</clTRID>
-
</command>
+
  </command>
  </epp>
  </epp>
-
* <b><font color=red><domain:pw/> parameter is NOT used</font> but required by EPP protocol, leave it blank</b>
+
* ''<domain:pw>'' parameter is required by the EPP protocol, but is ignored by Openprovider
-
* '''<domain:contact type="billing"/>''' is not supported  
+
* ''<domain:contact type="billing"/>'' is not supported  
;Response:
;Response:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
-
<response>
+
  <response>
-
<result code="1000">
+
    <result code="1000">
-
<msg>Command completed successfully</msg>
+
      <msg>Command completed successfully</msg>
-
</result>
+
    </result>
-
<resData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
+
    <resData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
-
<domain:creData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
+
      <domain:creData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
-
<domain:name>qwerqwer-50055d5e2870d.nl</domain:name>
+
        <domain:name>qwerqwer-50055d5e2870d.nl</domain:name>
-
<domain:crDate>2012-07-17T14:41:03.0Z</domain:crDate>
+
        <domain:crDate>2012-07-17T14:41:03.0Z</domain:crDate>
-
<domain:exDate>2012-07-29T14:41:03.0Z</domain:exDate>
+
        <domain:exDate>2012-07-29T14:41:03.0Z</domain:exDate>
-
</domain:creData>
+
      </domain:creData>
-
</resData>
+
    </resData>
-
<trID>
+
    <trID>
-
<clTRID>3F169D90-411F-11DE-84A7-80000000274B</clTRID>
+
      <clTRID>3F169D90-411F-11DE-84A7-80000000274B</clTRID>
-
<svTRID>6CEB9B8B-63CE-4925-BB69-C4BF89012266</svTRID>
+
      <svTRID>6CEB9B8B-63CE-4925-BB69-C4BF89012266</svTRID>
-
</trID>
+
    </trID>
-
</response>
+
  </response>
  </epp>
  </epp>
-
*'''<contact:postalInfo> <font color=red>type</font>''' attribute restricted to only one status:
+
===Delete===
-
**'''type = "int"''' (internationalized form)
+
-
*'''<font color=red><contact:pw/> </font> element''' is NOT used but required by EPP protocol, leave it blank
+
-
*'''<font color=red><contact:disclose/> </font> element''' is NOT supported
+
-
 
+
-
====Delete====
+
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
-
<command>
+
  <command>
-
<delete>
+
    <delete>
-
<domain:delete xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
+
      <domain:delete xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
-
<domain:name>example50.com</domain:name>
+
        <domain:name>example50.com</domain:name>
-
</domain:delete>
+
      </domain:delete>
-
</delete>
+
    </delete>
-
<clTRID>734ABADA-3015-11DE-A6A7-800000008EDE</clTRID>
+
    <clTRID>734ABADA-3015-11DE-A6A7-800000008EDE</clTRID>
-
</command>
+
  </command>
  </epp>
  </epp>
;Response:
;Response:
-
 
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
-
  <eppxmlns="urn:ietf:params:xml:ns:epp-1.0">
+
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
-
<response>
+
  <response>
-
<resultcode="1000">
+
    <resultcode="1000">
-
<msg>Command completed successfully</msg>
+
      <msg>Command completed successfully</msg>
-
</result>
+
    </result>
-
<trID>
+
    <trID>
-
<clTRID>734ABADA-3015-11DE-A6A7-800000008EDE</clTRID>
+
      <clTRID>734ABADA-3015-11DE-A6A7-800000008EDE</clTRID>
-
<svTRID>77FC94EA-3015-11DE-9878-8D01B5F06CC6</svTRID>
+
      <svTRID>77FC94EA-3015-11DE-9878-8D01B5F06CC6</svTRID>
-
</trID>
+
    </trID>
-
</response>
+
  </response>
  </epp>
  </epp>
-
====Restore====
+
===Restore===
Openprovider implements [http://tools.ietf.org/html/rfc3915|Domain Registry Grace Period Mapping for the Extensible Provisioning Protocol (EPP)] partially for restoration procedure.
Openprovider implements [http://tools.ietf.org/html/rfc3915|Domain Registry Grace Period Mapping for the Extensible Provisioning Protocol (EPP)] partially for restoration procedure.
Line 295: Line 292:
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
-
<command>
+
  <command>
-
<update>
+
    <update>
-
<domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
+
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
-
<domain:name>qwerqwerqwer-502dfc0f8d861.nl</domain:name>
+
        <domain:name>qwerqwerqwer-502dfc0f8d861.nl</domain:name>
-
<domain:chg/>
+
        <domain:chg/>
-
</domain:update>
+
      </domain:update>
-
</update>
+
    </update>
-
<extension>
+
    <extension>
-
<rgp:update xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0">
+
      <rgp:update xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0">
-
<rgp:restore op="request"/>
+
        <rgp:restore op="request"/>
-
</rgp:update>
+
      </rgp:update>
-
</extension>
+
    </extension>
-
<clTRID>6A464E50-300A-11DE-B776-80000000AE6H</clTRID>
+
    <clTRID>6A464E50-300A-11DE-B776-80000000AE6H</clTRID>
-
</command>
+
  </command>
  </epp>
  </epp>
* '''<domain:add/>''', '''<domain:rem/>''', '''<domain:chg/>''' must not contain any elements in it.
* '''<domain:add/>''', '''<domain:rem/>''', '''<domain:chg/>''' must not contain any elements in it.
 +
;Reply:
;Reply:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
-
<response>
+
  <response>
-
<result code="1000">
+
    <result code="1000">
-
<msg>Command completed successfully</msg>
+
      <msg>Command completed successfully</msg>
-
</result>
+
    </result>
-
<trID>
+
    <trID>
-
<clTRID>6A464E50-300A-11DE-B776-80000000AE6H</clTRID>
+
      <clTRID>6A464E50-300A-11DE-B776-80000000AE6H</clTRID>
-
<svTRID>7A7534DB-F45F-4E70-84D5-ABA480A5D101</svTRID>
+
      <svTRID>7A7534DB-F45F-4E70-84D5-ABA480A5D101</svTRID>
-
</trID>
+
    </trID>
-
</response>
+
  </response>
  </epp>
  </epp>
-
====Info====
+
===Info===
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
Line 394: Line 392:
  </epp>
  </epp>
-
====Renew====
+
===Renew===
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
Line 433: Line 431:
  </epp>
  </epp>
-
====Transfer====
+
===Transfer===
-
=====Request Transfer=====
+
====Request Transfer====
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
Line 516: Line 514:
* '''serverCancelled''' the transfer is rejected or cancelled
* '''serverCancelled''' the transfer is rejected or cancelled
-
=====Cancel Transfer (not available)=====
+
====Cancel Transfer (not available)====
-
=====Approve Transfer=====
+
====Approve Transfer====
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
Line 544: Line 542:
  </response>
  </response>
  </epp>
  </epp>
-
=====Query Transfer Status=====
+
====Query Transfer Status====
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
Line 592: Line 590:
* '''serverCancelled''' the transfer is rejected or cancelled
* '''serverCancelled''' the transfer is rejected or cancelled
-
====Update====
+
===Update===
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
Line 657: Line 655:
* '''<font color=red><contact:pw/> </font> element''' is NOT used but required by EPP protocol, leave it blank
* '''<font color=red><contact:pw/> </font> element''' is NOT used but required by EPP protocol, leave it blank
-
===Contact===
+
==Contact==
-
====Check (V)====
+
===Check===
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
Line 696: Line 694:
  </epp>
  </epp>
-
====Create (V)====
+
===Create===
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
Line 789: Line 787:
'''<font color=red><contact:disclose/> </font> element''' is NOT supported
'''<font color=red><contact:disclose/> </font> element''' is NOT supported
-
====Delete (V)====
+
===Delete===
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
Line 816: Line 814:
  </epp>
  </epp>
-
====Info (V)====
+
===Info===
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
Line 910: Line 908:
* <font color=red>upDate</font>
* <font color=red>upDate</font>
-
====Transfer (not available)====
+
===Transfer (not available)===
-
====Update (V)====
+
===Update===
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
Line 998: Line 996:
'''<font color=red><contact:status/> </font> element''' and its attributes are NOT supported
'''<font color=red><contact:status/> </font> element''' and its attributes are NOT supported
-
===Host (not available)===
+
==Host (not available)==
-
===Poll (PU)===
+
==Poll (PU)==
-
====REQ====
+
===REQ===
-
=====Request=====
+
====Request====
  <?xml version="1.0" encoding="UTF-8"?>
  <?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">
  <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">
Line 1,011: Line 1,009:
  </epp>
  </epp>
-
=====Reply=====
+
====Reply====
Every reply message will contain a section '''<op:polData/>''' that includes the following required fields:
Every reply message will contain a section '''<op:polData/>''' that includes the following required fields:
* '''<op:action/>''' stands for action on the domain:
* '''<op:action/>''' stands for action on the domain:
Line 1,275: Line 1,273:
  </epp>
  </epp>
-
====ACK====
+
===ACK===
;Request:
;Request:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>

Revision as of 14:50, 29 August 2012

Contents

EPP interface specifications

Introduction

  • The EPP interface is built for domains only. For all other products, the general Openprovider API should be used. Also note that the EPP interface of Openprovider uses the general Openprovider API for processing the commands. As a result, the EPP interface will be slower than the API interface. If you have no specific reason for using the EPP interface, we advise using the API interface instead.

Reference to RFCs

To do

Differences

To do: differences between RFCs and Openprovider implementation

* Cookies are used to keep a session alive. After the login command, the server returns a cookie session_id which must be used in all following requests to the server until closing the session

Example

To do: link to a PHP example script

Session

Hello

Request
<?xml version="1.0" encoding="UTF-8"?>                                                   
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">                                              
  <hello/>                                                                                  
</epp>
Response
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <greeting>
    <svID>Openprovider EPP Server</svID>
    <svDate>2012-07-05T16:08:04Z</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>
      <svcExtension>
        <extURI>http://www.openprovider.nl/epp/xml/opprov-1.0</extURI>
      </svcExtension>
    </svcMenu>
    <dcp>
      <access>
        <all/>
      </access>
      <statement>
        <purpose>
          <admin/>
          <prov/>
        </purpose>
        <recipient>
          <ours/>
          <public/>
        </recipient>
        <retention>
          <stated/>
        </retention>
      </statement>
    </dcp>
  </greeting>
</epp>

Login

Request
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<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">
  <command>
    <login>
      <clID>opdrs4</clID>
      <pw>opdrs4</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>
        <svcExtension>
          <extURI>urn:ietf:params:xml:ns:rgp-1.0</extURI>
          <extURI>http://www.openprovider.nl/epp/xml/opprov-1.0</extURI>
        </svcExtension>
      </svcs>
    </login>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>
Response
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>41E31A2F-1B6A-4BFA-AE07-00A4DE8FCC0C</svTRID>
    </trID>
  </response>
</epp>

Together with the response, the server returns a cookie session_id which must be used in all following requests to the server until closing the session

Logout

Request
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <logout/>
    <clTRID>83EE2B34-2385-11DE-9267-8000000019CE</clTRID>
  </command>
</epp>
Response
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <response>
    <result code="1500">
      <msg>Command completed successfully; ending session</msg>
    </result>
    <trID>
      <clTRID>83EE2B34-2385-11DE-9267-8000000019CE</clTRID>
      <svTRID>180372ED-5E05-4718-8A73-40B37AE37D62</svTRID>
    </trID>
  </response>
</epp>

Domain

Check

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>example.net</domain:name>
        <domain:name>example.org</domain:name>
      </domain:check>
    </check>
    <clTRID>C68D3D5A-2F3C-11DE-8EF9-80000000DC4F</clTRID>
  </command>
</epp>
Response
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
      <domain:chkData>
        <domain:cd>
          <domain:name avail="1">example.net</domain:name>
        </domain:cd>
        <domain:cd>
          <domain:name avail="0">example.org</domain:name>
          <domain:reason>Domain name not available</domain:reason>
        </domain:cd>
      </domain:chkData>
    </resData>
    <trID>
      <clTRID>C68D3D5A-2F3C-11DE-8EF9-80000000DC4F</clTRID>
      <svTRID>B3E22269-EE9E-4E32-82C0-54C02400E396</svTRID>
    </trID>
  </response>
</epp>

Create

Request
<?xml version="1.0" encoding="UTF-8"?>
<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>qwerqwer-50055d5e2870d.nl</domain:name>
        <domain:period unit="y">1</domain:period>
        <domain:ns>
          <domain:hostAttr>
            <domain:hostName>asdfasdfasdf1.df</domain:hostName>
            <domain:hostAddr ip="v6">2607:f0d0:1002:51::4</domain:hostAddr>
          </domain:hostAttr>
          <domain:hostAttr>
            <domain:hostName>asdfasdfasdf2.df</domain:hostName>
            <domain:hostAddr ip="v4">123.123.123.123</domain:hostAddr>
          </domain:hostAttr>
        </domain:ns>
        <domain:registrant>FL902041-RU</domain:registrant>
        <domain:contact type="admin">FL902041-RU</domain:contact>
        <domain:contact type="tech">FL902041-RU</domain:contact>
        <domain:authInfo>
          <domain:pw/>
        </domain:authInfo>
      </domain:create>
    </create>
    <extension>
      <op:ext xmlns:op="http://www.openprovider.nl/epp/xml/opprov-1.0">
        <op:create>
          <op:domain>
            <op:promoCode>PROMO2</op:promoCode>
            <op:useDomicile>false</op:useDomicile>
            <op:nsGroup>dns-openprovider</op:nsGroup>
            <op:comments>any comment here</op:comments>
            <op:autorenew>default</op:autorenew>
            <op:nsTemplateId>123</op:nsTemplateId>
            <op:nsTemplateName>TemplateForReseller165264</op:nsTemplateName>
          </op:domain>
        </op:create>
      </op:ext>
    </extension>
    <clTRID>3F169D90-411F-11DE-84A7-80000000274B</clTRID>
  </command>
</epp>
  • <domain:pw> parameter is required by the EPP protocol, but is ignored by Openprovider
  • <domain:contact type="billing"/> is not supported
Response
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
      <domain:creData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>qwerqwer-50055d5e2870d.nl</domain:name>
        <domain:crDate>2012-07-17T14:41:03.0Z</domain:crDate>
        <domain:exDate>2012-07-29T14:41:03.0Z</domain:exDate>
      </domain:creData>
    </resData>
    <trID>
      <clTRID>3F169D90-411F-11DE-84A7-80000000274B</clTRID>
      <svTRID>6CEB9B8B-63CE-4925-BB69-C4BF89012266</svTRID>
    </trID>
  </response>
</epp>

Delete

Request
<?xml version="1.0" encoding="UTF-8"?>
<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>example50.com</domain:name>
      </domain:delete>
    </delete>
    <clTRID>734ABADA-3015-11DE-A6A7-800000008EDE</clTRID>
  </command>
</epp>
Response
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <response>
    <resultcode="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>734ABADA-3015-11DE-A6A7-800000008EDE</clTRID>
      <svTRID>77FC94EA-3015-11DE-9878-8D01B5F06CC6</svTRID>
    </trID>
  </response>
</epp>

Restore

Openprovider implements Registry Grace Period Mapping for the Extensible Provisioning Protocol (EPP) partially for restoration procedure.

EPP response message on Info command for deleted domains that can be still restored has additional extension section <rgp:infData/>:

<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1000">
<msg>Command completed successfully</msg>
</result>
<resData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
<domain:infData>
...
</domain:infData>
</resData>
<extension>
...
</op:ext>
<rgp:infData xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0">
<rgp:rgpStatus s="pendingDelete"/>
</rgp:infData>
</extension>
...
</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>qwerqwerqwer-502dfc0f8d861.nl</domain:name>
        <domain:chg/>
      </domain:update>
    </update>
    <extension>
      <rgp:update xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0">
        <rgp:restore op="request"/>
      </rgp:update>
    </extension>
    <clTRID>6A464E50-300A-11DE-B776-80000000AE6H</clTRID>
  </command>
</epp>
  • <domain:add/>, <domain:rem/>, <domain:chg/> must not contain any elements in it.
Reply
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>6A464E50-300A-11DE-B776-80000000AE6H</clTRID>
      <svTRID>7A7534DB-F45F-4E70-84D5-ABA480A5D101</svTRID>
    </trID>
  </response>
</epp>

Info

Request
<?xml version="1.0" encoding="UTF-8"?>
<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>example.com</domain:name>
</domain:info>
</info>
<clTRID>3F169D90-411F-11DE-84A7-80000000274B</clTRID>
</command>
</epp>
Reply
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1000">
<msg>Command completed successfully</msg>
</result>
<resData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
<domain:infData>
<domain:name>example.com</domain:name>
<domain:roid>762473_DOMAIN-OPENPROV</domain:roid>
<domain:status s="ok"/>
<domain:registrant>OT001234-NL</domain:registrant>
<domain:contact type="admin">OM901234-RU</domain:contact>
<domain:contact type="tech">DD01234-NL</domain:contact>
<domain:ns>
<domain:hostAttr>
<domain:hostName>ns1.example.nl</domain:hostName>
<domain:hostAddr ip="v4">123.123.123.123</domain:hostAddr>
</domain:hostAttr>
<domain:hostAttr>
<domain:hostName>ns2.example.nl</domain:hostName>
<domain:hostAddr ip="v4">234.234.234.234</domain:hostAddr>
</domain:hostAttr>
</domain:ns>
<domain:clID>user1</domain:clID>
<domain:crDate>2012-03-28T14:08:53.0Z</domain:crDate>
<domain:exDate>2013-03-28T12:08:54.0Z</domain:exDate>
<domain:authInfo>
<domain:pw>3f!lB;1ouw</domain:pw>
</domain:authInfo>
</domain:infData>
</resData>
<extension>
<op:ext xmlns:op="http://www.openprovider.nl/epp/xml/opprov-1.0">
<op:resData>
<op:infData>
<op:domain>
<op:isLocked>false</op:isLocked>
<op:reDate>2012-03-28T14:08:49.0Z</op:reDate>
<op:renewalDate>2013-03-28T12:08:54.0Z</op:renewalDate>
<op:canRenew>true</op:canRenew>
<op:autorenew>default</op:autorenew>
<op:useDomicile>false</op:useDomicile>
</op:domain>
</op:infData>
</op:resData>
</op:ext>
</extension>
<trID>
<clTRID>3F169D90-411F-11DE-84A7-80000000274B</clTRID>
<svTRID>CDAE7C10-A3D0-4EA7-B290-2E1A380A0690</svTRID>
</trID>
</response>
</epp>

Renew

Request
<?xml version="1.0" encoding="UTF-8"?>
<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>example.com</domain:name>
<domain:curExpDate>2012-02-18</domain:curExpDate>
<domain:period unit="y">1</domain:period>
</domain:renew>
</renew>
<clTRID>EF1F57D0-3013-11DE-8D9E-8000000041FC</clTRID>
</command>
</epp>
  • <domain:curExpDate/> is required by EPP protocol but not used by current version of Openprovider software
Response
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1000">
<msg>Command completed successfully</msg>
</result>
<resData>
<domain:renData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
<domain:name>example.com</domain:name>
<domain:exDate>2012-02-18T16:02:04.0Z</domain:exDate>
</domain:renData>
</resData>
<trID>
<clTRID>EF1F57D0-3013-11DE-8D9E-8000000041FC</clTRID>
<svTRID>F7F750BE-3014-11DE-A523-A02790CC78DB</svTRID>
</trID>
</response>
</epp>

Transfer

Request Transfer

Request
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
xmlns:op="http://www.openprovider.nl/epp/xml/opprov-1.0">
<command>
<transfer op="request">
<domain:transfer>
<domain:name>qwerqwer-501a507106c4a.se</domain:name>
<domain:authInfo>
<domain:pw>AUTHCODE</domain:pw>
</domain:authInfo>
</domain:transfer>
</transfer>
<extension>
<op:ext>
<op:transfer>
<op:domain>
<op:registrant>FL902042-RU</op:registrant>
<op:contact type="admin">FL902042-RU</op:contact>
<op:contact type="tech">FL902042-RU</op:contact>
<op:ns>
<domain:hostAttr>
<domain:hostName>asdfasdfasdf1.df</domain:hostName>
<domain:hostAddr ip="v6">2607:f0d0:1002:51::4</domain:hostAddr>
</domain:hostAttr>
<domain:hostAttr>
<domain:hostName>asdfasdfasdf2.df</domain:hostName>
<domain:hostAddr ip="v4">123.123.123.123</domain:hostAddr>
</domain:hostAttr>
</op:ns>
<op:autorenew>on</op:autorenew>
<op:nsGroup></op:nsGroup>
<op:useDomicile>1</op:useDomicile>
<op:comments>ANY COMMENT  HERE</op:comments>
<op:promoCode>PROMO CODE</op:promoCode>
<op:nsTemplateId>321321312</op:nsTemplateId>
<op:nsTemplateName>DnsTemplate33</op:nsTemplateName>
</op:domain>
</op:transfer>
</op:ext>
</extension>
<clTRID>EF1F57D0-3013-11DE-8D9E-8000000041FC</clTRID>
</command>
</epp>
Reply
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1000">
<msg>Command completed successfully</msg>
</result>
<resData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
<domain:trnData>
<domain:name>qwerqwer-502e0d06493e2.se</domain:name>
<domain:trStatus>pending</domain:trStatus>
<domain:reID>user1342172839</domain:reID>
<domain:reDate>2012-08-17T11:21:13.0Z</domain:reDate>
<domain:acID>UNSUPPORTED</domain:acID>
<domain:acDate>2012-08-17T11:21:13.0Z</domain:acDate>
<domain:exDate>2012-08-17T11:21:13.0Z</domain:exDate>
</domain:trnData>
</resData>
<trID>
<clTRID>EF1F57D0-3013-11DE-8D9E-8000000041FC</clTRID>
<svTRID>BE4FAFBF-177D-4632-9CE0-F5C02C4AAFB7</svTRID>
</trID>
</response>
</epp>

Not supported output values:

  • acID
  • acDate
  • exDate

trStatus restricted to three statuses:

  • serverApproved the transfer is approved
  • pending
  • serverCancelled the transfer is rejected or cancelled

Cancel Transfer (not available)

Approve Transfer

Request
<?xml version="1.0" encoding="UTF-8"?>
<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>qwerqwer-50055d5e2870d.nl</domain:name>
</domain:transfer>
</transfer>
<clTRID>EF1F57D0-3013-11DE-8D9E-8000000041FC</clTRID>
</command>
</epp>
Reply
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1000">
<msg>Command completed successfully</msg>
</result>
<trID>
<clTRID>EF1F57D0-3013-11DE-8D9E-8000000041FC</clTRID>
<svTRID>DCE0BD68-769B-4EA4-AFF1-CC40DFEC578D</svTRID>
</trID>
</response>
</epp>

Query Transfer Status

Request
<?xml version="1.0" encoding="UTF-8"?>
<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>qwerqwer-50055d5e2870d.nl</domain:name>
</domain:transfer>
</transfer>
<clTRID>EF1F57D0-3013-11DE-8D9E-8000000041FC</clTRID>
</command>
</epp>
Reply
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1000">
<msg>Command completed successfully</msg>
</result>
<resData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
<domain:trnData>
<domain:name>qwerqwer-50055d5e2870d.nl</domain:name>
<domain:trStatus>serverApproved</domain:trStatus>
<domain:reID>user1342172839</domain:reID>
<domain:reDate>2012-07-17T14:41:04.0Z</domain:reDate>
<domain:acID>UNSUPPORTED</domain:acID>
<domain:acDate>2012-07-17T14:41:21.0Z</domain:acDate>
<domain:exDate>2012-07-17T14:41:21.0Z</domain:exDate>
</domain:trnData>
</resData>
<trID>
<clTRID>EF1F57D0-3013-11DE-8D9E-8000000041FC</clTRID>
<svTRID>31ED84C0-CADA-45BA-87A1-85238465CF30</svTRID>
</trID>
</response>
</epp>

Not supported output values:

  • acID
  • acDate
  • exDate

trStatus restricted to three statuses:

  • serverApproved the transfer is approved
  • pending
  • serverCancelled the transfer is rejected or cancelled

Update

Request
<?xml version="1.0" encoding="UTF-8"?>
<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>qwerqwerqwer-4ff56c42439b1.nl</domain:name>
<domain:add>
<domain:ns>
<domain:hostObj>ns1.domaindiscount24.net</domain:hostObj>
</domain:ns>
<domain:contact type="tech">DD004372-NL</domain:contact>
<domain:status s="clientTransferProhibited"/>
</domain:add>
<domain:rem>
<domain:ns>
<domain:hostObj>asdfasdfasdf1.df</domain:hostObj>
</domain:ns>
<domain:contact type="tech">P-JID21</domain:contact>
<domain:status s="clientUpdateProhibited"/>
</domain:rem>
<domain:chg>
<domain:registrant>OT000288-NL</domain:registrant>
<domain:authInfo>
<domain:pw/>
</domain:authInfo>
</domain:chg>
</domain:update>
</update>
<extension>
<op:ext xmlns:op="http://www.openprovider.nl/epp/xml/opprov-1.0">
<op:update>
<op:domain>
<op:chg>
<op:autorenew>on</op:autorenew>
<op:useDomicile>true</op:useDomicile>
<op:comments>Test comment</op:comments>
<op:nsGroup>dns-openprovider</op:nsGroup>
<op:nsTemplateId>5808</op:nsTemplateId>
<op:resetAuthCode>true</op:resetAuthCode>
</op:chg>
</op:domain>
</op:update>
</op:ext>
</extension>
<clTRID>6A464E50-300A-11DE-B776-80000000AE6H</clTRID>
</command>
</epp>
Response
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1000">
<msg>Command completed successfully</msg>
</result>
<trID>
<clTRID>6A464E50-300A-11DE-B776-80000000AE6H</clTRID>
<svTRID>E4509728-38CC-462F-BF9C-D7AFDB5420DF</svTRID>
</trID>
</response>
</epp>
  • <contact:pw/> element is NOT used but required by EPP protocol, leave it blank

Contact

Check

Request
<?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">
<command>
<check>
<contact:check xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
<contact:id>IB000543-NL</contact:id>
<contact:id>IB000544-NL</contact:id>
</contact:check>
</check>
<clTRID>30F11A90-2FFB-11DE-ADDE-80000000D51D</clTRID>
</command>
</epp>
Response
<?xml -version="1.0" encoding="UTF-8"?>
<epp -xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1000">
<msg>Command completed successfully</msg>
</result>
<resData xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
<contact:chkData>
<contact:cd>
<contact:id avail="0">IB000543-NL</contact:id>
</contact:cd>
<contact:cd>
<contact:id avail="1">IB000544-NL</contact:id>
</contact:cd>
</contact:chkData>
</resData>
<trID>
<clTRID>30F11A90-2FFB-11DE-ADDE-80000000D51D</clTRID>
<svTRID>32C1BC3A-2FFB-11DE-B49B-B7731FA00EDE</svTRID>
</trID>
</response>
</epp>

Create

Request
<?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">
<command>
<create>
<contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:contact-1.0 contact-1.0.xsd">
<contact:id>sh8013</contact:id>
<contact:postalInfo type="int">
<contact:name>John Doe</contact:name>
<contact:addr>
<contact:street>123 Example Dr.</contact:street>
<contact:street>Block A</contact:street>
<contact:street>Suite 102</contact:street>
<contact:city>Dulles</contact:city>
<contact:sp>VA</contact:sp>
<contact:pc>20166-6503</contact:pc>
<contact:cc>NL</contact:cc>
</contact:addr>
</contact:postalInfo>
<contact:voice>+1.7035555555</contact:voice>
<contact:fax>+1.7035555556</contact:fax>
<contact:email>jdoe@example.com</contact:email>
<contact:authInfo>
<contact:pw/>
</contact:authInfo>
</contact:create>
</create>
<extension>
<op:ext xmlns:op="http://www.openprovider.nl/epp/xml/opprov-1.0">
<op:create>
<op:contact>
<op:vat>$#$#09507882B01</op:vat>
<op:comments>hello dfsf</op:comments>
<op:gender>male</op:gender>
<op:birthDate>1982-10-23</op:birthDate>
<op:birthCity>Novosibirsk</op:birthCity>
<op:birthCountry>RU</op:birthCountry>
<op:birthAddress>N-Dantchenko 139\1 - 32</op:birthAddress>
<op:birthState>Siberia</op:birthState>
<op:birthZipcode>630048</op:birthZipcode>
<op:companyRegistrationCity>Moscow</op:companyRegistrationCity>
<op:companyRegistrationNumber>123456</op:companyRegistrationNumber>
<op:companyRegistrationSubscriptionDate>2011-10-10</op:companyRegistrationSubscriptionDate>
<op:headquartersAddress>Novosibirsk, Grebenshikova 11\1 - 14</op:headquartersAddress>
<op:headquartersCity>Rotterdam</op:headquartersCity>
<op:headquartersCountry>NL</op:headquartersCountry>
<op:headquartersState>Zuid-Holland</op:headquartersState>
<op:headquartersZipcode>3014 GJ</op:headquartersZipcode>
<op:socialSecurityNumber>987642314</op:socialSecurityNumber>
<op:passportNumber>123987642314</op:passportNumber>
<op:cifNifNumber>1231123123</op:cifNifNumber>
<op:costCenter>111111</op:costCenter>
<op:costCategory>222222</op:costCategory>
<op:purchaseOrderNumber>33333333</op:purchaseOrderNumber>
<op:projectCode>4444</op:projectCode>
<op:internalReference>55555</op:internalReference>
</op:contact>
</op:create>
</op:ext>
</extension>
<clTRID>30FC8ABC-2FFE-11DE-9786-80000000A8C5</clTRID>
</command>
</epp> 
Response
<?xmlversion="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1000">
<msg>Command completed successfully</msg>
</result>
<resData>
<contact:creData xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
<contact:id>P-JMD24</contact:id>
<contact:crDate>2009-04-23T11:59:29.0Z</contact:crDate>
</contact:creData>
</resData>
<trID>
<clTRID>30FC8ABC-2FFE-11DE-9786-80000000A8C5</clTRID>
<svTRID>331E69A0-2FFE-11DE-B163-D0A51393EAB9</svTRID>
</trID>
</response>
</epp>


<contact:postalInfo> type attribute restricted to only one status:

  • type = "int" (internationalized form)

<contact:pw/> element is NOT used but required by EPP protocol, leave it blank

<contact:disclose/> element is NOT supported

Delete

Request
<?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">
<command>
<delete>
<contact:delete xmlns:contact="urn:ietf:params:xml:ns:contact-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:contact-1.0 contact-1.0.xsd">
<contact:id>P-JMD24</contact:id>
</contact:delete>
</delete>
<clTRID>FDB67388-2FFE-11DE-970B-80000000568C</clTRID>
</command>
</epp>
Response
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<resultcode="1000">
<msg>Command completed successfully</msg>
</result>
<trID>
<clTRID>FDB67388-2FFE-11DE-970B-80000000568C</clTRID>
<svTRID>29B5C6C2-3005-11DE-9BD1-C9EF1D79318A</svTRID>
</trID>
</response>
</epp>

Info

Request
<?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">
<command>
<info>
<contact:info xmlns:contact="urn:ietf:params:xml:ns:contact-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:contact-1.0 contact-1.0.xsd">
<contact:id>P-JMD24</contact:id>
</contact:info>
</info>
<clTRID>6662D288-2FFE-11DE-A0EB-80000000AAB4</clTRID>
</command>
</epp>
Response
<?xml version="1.0" -encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1000">
<msg>Command completed successfully</msg>
</result>
<resData>
<contact:infData xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
<contact:id>P-JMD24</contact:id>
<contact:roid>495726825335031_CONTACT-OPENPROV</contact:roid>
<contact:status s="ok"/>
<contact:postalInfo>
<contact:name>John Doe</contact:name>
<contact:org>Example Inc.</contact:org>
<contact:addr>
<contact:street>123 Example Dr.</contact:street>
<contact:street>Suite 100</contact:street>
<contact:city>Dulles</contact:city>
<contact:sp>VA</contact:sp>
<contact:pc>20166-6503</contact:pc>
<contact:cc>US</contact:cc>
</contact:addr>
</contact:postalInfo>
<contact:voice>+1.7035555555</contact:voice>
<contact:fax>+1.7035555556</contact:fax>
<contact:email>jdoe@example.com</contact:email>
<contact:clID>opdrs4</contact:clID>
<contact:crID>UNSUPPORTED</contact:crID>
<contact:crDate>2012-07-20T07:59:26.0Z</contact:crDate>
<contact:upID>opdrs4</contact:upID>
<contact:upDate>2012-07-20T07:59:26.0Z</contact:upDate>
</contact:infData>
</resData>
<extension>
<op:ext xmlns:op="http://www.openprovider.nl/epp/xml/opprov-1.0">
<op:resData>
<op:infData>
<op:contact>
<op:gender>male</op:gender>
<op:birthAddress>N-Dantchenko 139\1 - 32</op:birthAddress>
<op:birthCity>Novosibirsk</op:birthCity>
<op:birthCountry>RU</op:birthCountry>
<op:birthDate>1982-10-23</op:birthDate>
<op:birthState>Siberia</op:birthState>
<op:birthZipcode>630048</op:birthZipcode>
<op:cifNifNumber>1231123123</op:cifNifNumber>
<op:companyRegistrationCity>Moscow</op:companyRegistrationCity>
<op:companyRegistrationNumber>123456</op:companyRegistrationNumber>
<op:companyRegistrationSubscriptionDate>2011-10-10</op:companyRegistrationSubscriptionDate>
<op:costCategory>222222</op:costCategory>
<op:costCenter>111111</op:costCenter>
<op:headquartersAddress>Novosibirsk, Grebenshikova 11\1 - 14</op:headquartersAddress>
<op:headquartersCity>Rotterdam</op:headquartersCity>
<op:headquartersCountry>NL</op:headquartersCountry>
<op:headquartersState>Zuid-Holland</op:headquartersState>
<op:headquartersZipcode>3014 GJ</op:headquartersZipcode>
<op:internalReference>55555</op:internalReference>
<op:passportNumber>123987642314</op:passportNumber>
<op:projectCode>4444</op:projectCode>
<op:purchaseOrderNumber>33333333</op:purchaseOrderNumber>
<op:socialSecurityNumber>987642314</op:socialSecurityNumber>
</op:contact>
</op:infData>
</op:resData>
</op:ext>
</extension>
<trID>
<clTRID>6662D288-2FFE-11DE-A0EB-80000000AAB4</clTRID>
<svTRID>6BFBA8FA-2FFE-11DE-A1D9-ED9826062824</svTRID>
</trID>
</response>
</epp>


Not supported output values:

  • crID
  • crDate
  • upDate

Transfer (not available)

Update

Request
<?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">
<command>
<update>
<contact:update xmlns:contact="urn:ietf:params:xml:ns:contact-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:contact-1.0 contact-1.0.xsd">
<contact:id>P-JMD24</contact:id>
<contact:chg>
<contact:postalInfo type="int">
<contact:org/>
<contact:addr>
<contact:street>124 Example Dr.</contact:street>
<contact:street>Suite 200</contact:street>
<contact:city>Dulles</contact:city>
<contact:sp>VA</contact:sp>
<contact:pc>20166-6503</contact:pc>
<contact:cc>US</contact:cc>
</contact:addr>
</contact:postalInfo>
<contact:voice>+1.7034444444</contact:voice>
<contact:fax/>
</contact:chg>
</contact:update>
</update>
<extension>
<op:ext xmlns:op="http://www.openprovider.nl/epp/xml/opprov-1.0">
<op:update>
<op:contact>
<op:chg>
<op:vat>123245443</op:vat>
<op:comments>yohoho</op:comments>
<op:birthAddress>N-Dantchenko 139\1 - 32</op:birthAddress>
<op:birthCity>Novosibirsk</op:birthCity>
<op:birthCountry>RU</op:birthCountry>
<op:birthDate>1982-10-23</op:birthDate>
<op:birthState>Siberia</op:birthState>
<op:birthZipcode>630048</op:birthZipcode>
<op:cifNifNumber>1231123123</op:cifNifNumber>
<op:companyRegistrationCity>Moscow</op:companyRegistrationCity>
<op:companyRegistrationNumber>123456</op:companyRegistrationNumber>
<op:companyRegistrationSubscriptionDate>2011-10-10</op:companyRegistrationSubscriptionDate>
<op:costCategory>222222</op:costCategory>
<op:costCenter>111111</op:costCenter>
<op:headquartersAddress>Novosibirsk, Grebenshikova 11\1 - 14</op:headquartersAddress>
<op:headquartersCity>Rotterdam</op:headquartersCity>
<op:headquartersCountry>NL</op:headquartersCountry>
<op:headquartersState>Zuid-Holland</op:headquartersState>
<op:headquartersZipcode>3014 GJ</op:headquartersZipcode>
<op:internalReference>55555</op:internalReference>
<op:passportNumber>123987642314</op:passportNumber>
<op:projectCode>4444</op:projectCode>
<op:purchaseOrderNumber>33333333</op:purchaseOrderNumber>
<op:socialSecurityNumber>987642314</op:socialSecurityNumber>
</op:chg>
</op:contact>
</op:update>
</op:ext>
</extension>
<clTRID>C69B3942-2FFE-11DE-A4BB-8000000034E6</clTRID>
</command>
</epp>
Response
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1000">
<msg>Command completed successfully</msg>
</result>
<trID>
<clTRID>C69B3942-2FFE-11DE-A4BB-8000000034E6</clTRID>
<svTRID>D70E91A2-2FFE-11DE-9BEA-D9241CA305BD</svTRID>
</trID>
</response>
</epp>

<contact:postalInfo> type attribute restricted to only one status:

  • type = "int" (internationalized form)

<contact:pw/> element is NOT used but required by EPP protocol, leave it blank

<contact:disclose/> element is NOT supported

<contact:status/> element and its attributes are NOT supported

Host (not available)

Poll (PU)

REQ

Request

<?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">
<command>
<poll op="req"/>
<clTRID>96ABFF8A-2385-11DE-A5FC-8000000002DF</clTRID>
</command>
</epp>

Reply

Every reply message will contain a section <op:polData/> that includes the following required fields:

  • <op:action/> stands for action on the domain:
    • create - domain registration
    • trade - incoming trade of domain
    • outgoing_trade - outgoing trade of domain
    • transfer - incoming trade of domain
    • outgoing_transfer - outgoing trade of domain
    • delete - domain deletion
    • update - update domain's information
  • <op:status/> stands for a status of the operation:
    • complete - operation completed successfully
    • pending - operation in progress
    • onhold - server is waiting for operation issuer input
    • reject - operation is rejected by server or registry
    • error - operation failed because of errors
    • cancel - operation is cancelled by issuer

More information can be found in the optional elements:

  • <op:transaction/> - transaction alphabetic ID
  • <op:title/> - transaction title
  • <op:description/> - short transaction description
  • <op:registryMessage/> - registry message
  • <op:comments/> - can contain Openprovider's comments, advices, instructions
  • <op:attachment/> - attachment element(s) can contain any base64 encoded documents received from registry


Reply (CREATE)
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1301">
<msg>Command completed successfully; ack to dequeue</msg>
</result>
<msgQ count="1" id="129">
<qDate>2012-08-05T12:42:04.0Z</qDate>
<msg>TRANSACTION</msg>
</msgQ>
<resData>
<domain:creData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
<domain:name>example.com</domain:name>
<domain:crDate>2012-08-01T20:30:20.0Z</domain:crDate>
<domain:exDate>2013-08-31T20:40:20.0Z</domain:exDate>
</domain:creData>
</resData>
<extension>
<op:ext xmlns:op="http://www.openprovider.nl/epp/xml/opprov-1.0">
<op:resData>
<op:creData>
<op:domain>
<op:polData>
<op:action>ACTION</op:action>
<op:status>STATUS</op:status>
<op:transaction>TRANSACTION</op:transaction>
<op:title>MESSAGE TITLE</op:title>
<op:description>MESSAGE DESCRIPTION</op:description>
<op:registryMessage>REGISTRY MESSAGE</op:registryMessage>
<op:attachment>
<op:name>FILE NAME</op:name>
<op:body>BASE64 ENCODED FILE CONTENT</op:body>
</op:attachment>
</op:polData>
</op:domain>
</op:creData>
</op:resData>
</op:ext>
</extension>
<trID>
<clTRID>96ABFF8A-2385-11DE-A5FC-8000000002DF</clTRID>
<svTRID>D0D58AF1-E771-4D0E-8653-8B58ED909DE7</svTRID>
</trID>
</response>
</epp>
Reply (UPDATE/DELETE)
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1301">
<msg>Command completed successfully; ack to dequeue</msg>
</result>
<msgQ count="4" id="132">
<qDate>2012-08-05T12:42:06.0Z</qDate>
<msg>TRANSACTION</msg>
</msgQ>
<resData>
<domain:panData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
<domain:name paResult="0">example.nl</domain:name>
<domain:paTRID>
<clTRID>6A464E50-300A-11DE-B776-80000000AE6H</clTRID>
<svTRID>733582A7-1428-4F1C-8A02-CAEC83A58F8E</svTRID>
</domain:paTRID>
<domain:paDate>2012-08-05T12:42:05.0Z</domain:paDate>
</domain:panData>
</resData>
<extension>
<op:ext xmlns:op="http://www.openprovider.nl/epp/xml/opprov-1.0">
<op:resData>
<op:panData>
<op:domain>
<op:polData>
<op:action>ACTION</op:action>
<op:status>STATUS</op:status>
<op:transaction>TRANSACTION</op:transaction>
<op:title>MESSAGE TITLE</op:title>
<op:description>MESSAGE DESCRIPTION</op:description>
<op:registryMessage>REGISTRY MESSAGE</op:registryMessage>
<op:attachment>
<op:name>FILE NAME</op:name>
<op:body>BASE64 ENCODED FILE CONTENT</op:body>
</op:attachment>
</op:polData>
</op:domain>
</op:panData>
</op:resData>
</op:ext>
</extension>
<trID>
<clTRID>96ABFF8A-2385-11DE-A5FC-8000000002DF</clTRID>
<svTRID>09826A4F-4620-44CC-B73C-400D03FEAFC3</svTRID>
</trID>
</response>
</epp>
Reply (TRANSFER)
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1301">
<msg>Command completed successfully; ack to dequeue</msg>
</result>
<msgQ count="3" id="135">
<qDate>2012-08-05T14:44:40.0Z</qDate>
<msg>TRANSACTION</msg>
</msgQ>
<resData>
<domain:trnData>
<domain:name>example.nl</domain:name>
<domain:trStatus>serverCancelled</domain:trStatus>
<domain:reID>user1</domain:reID>
<domain:reDate>2012-09-01T20:30:20.0Z</domain:reDate>
<domain:acID>UNSUPPORTED</domain:acID>
<domain:acDate>2012-08-05T14:44:43.0Z</domain:acDate>
<domain:exDate>2013-10-31T20:40:20.0Z</domain:exDate>
</domain:trnData>
</resData>
<extension>
<op:ext xmlns:op="http://www.openprovider.nl/epp/xml/opprov-1.0">
<op:resData>
<op:trnData>
<op:domain>
<op:polData>
<op:action>ACTION</op:action>
<op:status>STATUS</op:status>
<op:transaction>TRANSACTION</op:transaction>
<op:title>MESSAGE TITLE</op:title>
<op:description>MESSAGE DESCRIPTION</op:description>
<op:registryMessage>REGISTRY MESSAGE</op:registryMessage>
<op:attachment>
<op:name>FILE NAME</op:name>
<op:body>BASE64 ENCODED FILE CONTENT</op:body>
</op:attachment>
</op:polData>
</op:domain>
</op:trnData>
</op:resData>
</op:ext>


Reply (TRADE)
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1301">
<msg>Command completed successfully; ack to dequeue</msg>
</result>
<msgQ count="3" id="131">
<qDate>2012-08-05T12:42:06.0Z</qDate>
<msg>TRANSACTION</msg>
</msgQ>
<extension>
<op:ext xmlns:op="http://www.openprovider.nl/epp/xml/opprov-1.0">
<op:resData>
<op:trdData>
<op:domain>
<op:name>example.nl</op:name>
<op:trStatus>pending</op:trStatus>
<op:reID>user1</op:reID>
<op:reDate>2012-08-01T20:30:20.0Z</op:reDate>
<op:acID>UNSUPPORTED</op:acID>
<op:acDate>2012-08-05T12:42:08.0Z</op:acDate>
<op:exDate>2013-10-31T20:40:20.0Z</op:exDate>
<op:polData>
<op:action>ACTION</op:action>
<op:status>STATUS</op:status>
<op:transaction>TRANSACTION</op:transaction>
<op:title>MESSAGE TITLE</op:title>
<op:description>MESSAGE DESCRIPTION</op:description>
<op:registryMessage>REGISTRY MESSAGE</op:registryMessage>
<op:attachment>
<op:name>FILE NAME</op:name>
<op:body>BASE64 ENCODED FILE CONTENT</op:body>
</op:attachment>
</op:polData>
</op:domain>
</op:trdData>
</op:resData>
</op:ext>
</extension>
<trID>
<clTRID>96ABFF8A-2385-11DE-A5FC-8000000002DF</clTRID>
<svTRID>F83DDF05-F54C-44DD-A55E-172CA7EE2819</svTRID>
</trID>
</response>
</epp>
Reply (OUTGOING TRANSFER/TRADE)
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1301">
<msg>Command completed successfully; ack to dequeue</msg>
</result>
<msgQ count="3" id="140">
<qDate>2012-08-05T14:57:14.0Z</qDate>
<msg>TRANSACTION</msg>
</msgQ>
<resData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
<domain:infData>
<domain:name>example.nl</domain:name>
<domain:roid>140_DOMAIN-OPENPROV</domain:roid>
<domain:status s="inactive"/>
<domain:clID>user1</domain:clID>
</domain:infData>
</resData>
<extension>
<op:ext xmlns:op="http://www.openprovider.nl/epp/xml/opprov-1.0">
<op:resData>
<op:infData>
<op:domain>
<op:polData>
<op:action>ACTION</op:action>
<op:status>STATUS</op:status>
<op:transaction>TRANSACTION</op:transaction>
<op:title>MESSAGE TITLE</op:title>
<op:description>MESSAGE DESCRIPTION</op:description>
<op:registryMessage>REGISTRY MESSAGE</op:registryMessage>
<op:attachment>
<op:name>FILE NAME</op:name>
<op:body>BASE64 ENCODED FILE CONTENT</op:body>
</op:attachment>
</op:polData>
</op:domain>
</op:infData>
</op:resData>
</op:ext>
</extension>
<trID>
<clTRID>96ABFF8A-2385-11DE-A5FC-8000000002DF</clTRID>
<svTRID>4C094AED-DC31-49D1-A462-AB68C5956C3E</svTRID>
</trID>
</response>
</epp>

ACK

Request
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<command>
<poll op="ack" msgID="71"/>
<clTRID>ABC-12346</clTRID>
</command>
</epp>
Reply (queue has messages)
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1000">
<msg>Command completed successfully</msg>
</result>
<msgQ count="1" id="70"/>
<trID>
<clTRID>ABC-12346</clTRID>
<svTRID>CBCEC8DB-F1B4-40DB-9B4D-E21EF4DCB2B6</svTRID>
</trID>
</response>
</epp>
Reply (queue empty)
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
<response>
<result code="1300">
<msg>Command completed successfully; no messages</msg>
</result>
<trID>
<clTRID>ABC-12346</clTRID>
<svTRID>4931F00A-F5DB-4709-A377-95C30F4CF4FF</svTRID>
</trID>
</response>
</epp>
Views
Personal tools