EPP Index
From Openprovider API documentation
Contents |
EPP interface specifications
Introduction
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>
- Also searver returns cookie session_id that must be used with all requests to server till session close request. -
- 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>
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 NOT used but required by EPP protocol, leave it blank
- <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>
- <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"> <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"?> <eppxmlns="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 (V)
- 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 (V)
- 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 (V)
- 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 (V)
- 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 (V)
- 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>