metaregistrar / php-epp-client

Object-oriented PHP EPP Client
https://www.metaregistrar.com/docs/
MIT License
210 stars 153 forks source link

Command syntax error on Ficora EPP create contact #343

Closed mtcnxd closed 7 months ago

mtcnxd commented 1 year ago

<?xml version="1.0" encoding="UTF-8" standalone="no"?>

1 5 1 John Doe HR Company name 2005-04-03T22:00:00.0Z 123423A123F 1234312-5 123 Example Dr. Suite 100 Suite 100 Dulles VA 20166-6503 US +358401231234 +04040as jdoe@example.com jdoe@example.com ABC-12345

<?xml version="1.0" encoding="utf-8"?>

Command syntax error ABC-12345 dzhrhx5
mtcnxd commented 1 year ago
<?xml version="1.0" encoding="utf-8"?>
<epp xmlns:host="urn:ietf:params:xml:ns:host-1.0" xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xmlns:contact="urn:ietf:params:xml:ns:contact-1.0" xmlns:obj="urn:ietf:params:xml:ns:obj-1.0" xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <response>
    <result code="2001">
      <msg>Command syntax error</msg>
    </result>
    <trID>
      <clTRID>ABC-12345</clTRID>
      <svTRID>dzhrhx5</svTRID>
    </trID>
  </response>
</epp>
DECEiFER commented 1 year ago

Creating a contact works for me on the latest version (running on PHP 8.1), but we're using it with .ie domains who use the Fury system by CIRA. I always get a 1000 successful response. So this is likely something to do with Ficora, so maybe debug it in steps to see what properties may be incorrect or missing. Otherwise the syntax looks fine to me. See my example below.

<?xml version="1.0" encoding="UTF-8"?>
<epp>
 <command>
   <create>
     <contact:create>
       <contact:id>ie-xxxxxxxxx</contact:id>
       <contact:postalInfo type="loc">
         <contact:name>Company name</contact:name>
         <contact:org>Company name</contact:org>
         <contact:addr>
           <contact:street>123 Example Dr.</contact:street>
           <contact:street>Suite 1000</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>+358.401231234</contact:voice>
       <contact:email>[jdoe@example.com](mailto:jdoe@example.com)</contact:email>
       <contact:authInfo>
         <contact:pw>xxxxxxxxxx</contact:pw>
       </contact:authInfo>
     </contact:create>
   </create>
   <extension>
     <fury:create xmlns:fury="urn:ietf:params:xml:ns:fury-2.0">
       <fury:properties>
         <fury:property>
           <fury:key>LANGUAGE</fury:key>
           <fury:value>EN</fury:value>
         </fury:property>
         <fury:property>
           <fury:key>IE_CONTACT_TYPE</fury:key>
           <fury:value>COM</fury:value>
         </fury:property>
         <fury:property>
           <fury:key>IE_CRO_NUMBER</fury:key>
           <fury:value>123456</fury:value>
         </fury:property>
       </fury:properties>
     </fury:create>
   </extension>
   <clTRID>xxxxxxxxxxxx</clTRID>
 </command>
</epp>
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns:host="urn:ietf:params:xml:ns:host-1.0" xmlns:fury="urn:ietf:params:xml:ns:fury-2.0" xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0" xmlns:idn="urn:ietf:params:xml:ns:idn-1.0" xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:fee="urn:ietf:params:xml:ns:fee-0.11" xmlns:contact="urn:ietf:params:xml:ns:contact-1.0" xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   <response>
       <result code="1000">
           <msg>Command completed successfully</msg>
       </result>
       <resData>
           <contact:creData>
               <contact:id>ie-xxxxxxxxx</contact:id>
               <contact:crDate>2022-10-10T14:59:09.396Z</contact:crDate>
           </contact:creData>
       </resData>
       <trID>
           <clTRID>xxxxxxxxxxxx</clTRID>
           <svTRID>CIRA-xxxxxxxxxxxx-xxxxxxxxxxxx</svTRID>
       </trID>
   </response>
</epp>

Another thing you can do is reach out to Ficora's API support/NOC team to ask them to check the logs at the date and time the request was sent for an exact reason. The .ie registry is very helpful in that regard.