Nawiązanie połączenia

Przykład połączenia z użyciem kodu php:

class HRDConfig {
    public $uid = "__uid_partnera__";
    public $pass = "__zakodowane_nrCSP_i_haslo partnera__"; // np. "csp123haslo"
 
    const NS = "https://www.hrd.pl/partnerAPI/";
    const PARTNER = "https://www.hrd.pl/partnerAPI/Partner.php?wsdl";
    const DOMAIN = "https://www.hrd.pl/partnerAPI/Domain.php?wsdl";
    const CERTIFICATE = "https://www.hrd.pl/partnerAPI/Certificate.php?wsdl";
    const CLIENT = "https://www.hrd.pl/partnerAPI/Client.php?wsdl";
    const POLL = "https://www.hrd.pl/partnerAPI/Poll.php?wsdl";
    const INVOICE = "https://www.hrd.pl/partnerAPI/Invoice.php?wsdl";
}
 
ini_set("soap.wsdl_cache_enabled", "1"); //Włączenie pamięci cache dla plików wsdl
$soap = new SoapClient(HRDConfig::DOMAIN, array("encoding"=>"UTF-8", "exceptions" => true));
$soap->__setSoapHeaders(array(new SoapHeader(HRDConfig::NS, "AuthHeader", new HRDConfig())));

Przykładowa odpowiedź dla podania błędnych danych autoryzacyjnych:

{"status":false,"errorCode":"1032","error":"Auth Error"}

Po otrzymaniu odpowiedzi na wysłaną komendę w przypadku php należy dokonać jej konwersji na tablicę za pomocą funkcji json_decode().

$response = '{"status":true,"domains":{"hrd.pl":{"status":"0"}}}';
$result = json_decode($response);
echo var_dump($result);

Przy implementacjach w innych językach ważne jest wysłanie dodatkowego pola nagłówka AuthHeader z klasą HRDConfig zawierajacą uid i pass
uid: otrzymuje się w panelu po zalogowaniu pass: to zakodowane połączenie numeru CSP i hasła, np. (md5(‚cspxxxhaslo’)

Dodatkowy kod javy do kodu wygenerowanego z wsdl’a dla modulu Domain

DomainServiceLocator locator = new DomainServiceLocator();
DomainPortType conn = locator.getDomainPort();
 
SOAPHeaderElement header = new SOAPHeaderElement("https://www.hrd.pl/partnerAPI/", "AuthHeader");
SOAPElement node = header.addChildElement("uid");
node.addTextNode("__uid__");
node = header.addChildElement("pass");
node.addTextNode("__pass__");
((Stub) conn).setHeader(header);

Ważne uwagi

Standardem kodowania w API HRD jest utf-8. Wszelkie parametry oraz zwracane dane przekazywane są zgodnie z podanym formatowaniem.

Dla wszystkich komend jako pierwszy parametr zwracany jest status wykonania komendy – true lub false.

W przypadku, jeżeli oprócz powyższej informacji zwracane są również inne parametry, status wykonania komendy nie jest wymieniany w tabeli Zwracane dane.