System eDokumenty udostępnia API (Application Programming Interface) dzięki któremu jesteśmy w stanie przeprowadzać podstawowe czynności bez konieczności logowania do systemu.
Usługa jest zabezpieczona rozszerzeniem WSSecurity protokołu SOAP i wymaga podania w nagłówkach wywołania XML nazwy użytkownika i hasła.
Hasło i użytkownik to specjalne dane, które należy wprowadzić do pliku config.inc pod kluczami
define('EDOK_API_LOGIN', 'edok_api_user'); define('EDOK_API_PASSWORD', 'edok_api_pass');
wartości stałych w powyższym przykładzie są tylko danymi prezentacyjnymi i nie powinno się ich używać nigdzie indziej.
Stałe te mogą mieć dowolne wartości ważne jednak aby te same wartości podać przy wywołaniu usługi SOAP. Nagłówek SOAP powinien wyglądać
<wsse:Security xmlns:wsse=”http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd” soapenv:mustUnderstand=”0”> <wsse:UsernameToken> <wsse:Username Type=”http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken”>edok_api_user</wsse:Username> <wsse:Password Type=”http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText”>edok_api_pass</wsse:Password> </wsse:UsernameToken> </wsse :Security>
Dodatkowo w nagłówku należy przesłać wartość jednostki
$header = new SoapHeader('eDokumentyAPI', 'entity_symbol', 'symbol jednostki');
Usługa jest dostępna pod adresem:
http://{host}:{port}/apps/edokumenty/classes/eDokumentyApi/EDokApiServer.php
Opcjonalnie od wersji 0.9.8 usługa jest dostępna pod skróconym adresem:
http://{host}:{port}/eDokumentyApi.php
Wartość {host} oraz {port} należy zamienić odpowiednimi wartościami zgodnymi z konfiguracją serwera instalacyjnego systemu eDokumenty.