TERG S.A. API danych produktów

API danych produktów udostępnia dane w formacie SOAP. Usługi sieciowa są opisane za pomocą plików WSDL, które są dostępne pod adresami:

Kliknij odpowiedni link aby wyświetlić WSDL w przeglądarce lub skopiuj go i użyj w programie do analizy WSDL.

Dodatkowo udostępniamy także dokumentację serwisu, która jest generowana na podstawie pliku WSDL i umieszczonych w nim komentarzy:

Aby ułatwić wdrożenie, dostępne są trzy wywołania specjalne, które umożliwiają przetestowanie komunikacji z serwisem, poczynając od poziomu tekstowego przez prosty XML do pełnego formatu SOAP.

  • http://api.mediaexpert.pl/?q=test: Zwraca dwuznakowy ciąg OK w trybie tekstowym.
  • http://api.mediaexpert.pl/?q=ws/test: Zwraca element <test>OK</test> w trybie XML
  • http://api.mediaexpert.pl/?q=ws [POST: metoda testGet]: Zwraca w trybie XML odpowiedź OK sformatowaną zgodnie ze standardem SOAP. Poniżej przykład kodu wywołania w języku PHP:
    $client = new SoapClient("http://api.mediaexpert.pl/?q=ws/wsdl", $options);
    $testResponse = $client->testGet();
    echo $testResponse->testValue;

    W przypadku serwera testowego, parametr $options powinien zawierać podaną nazwę użytkownika do autoryzacji HTTP i hasło.

Dostępny jest również system testów adhoc. Wywołanie adresu:

spowoduje wyświetlenie listy dostępnych metod i parametrów ich wywołania. Szczegółowy opis parametrów i zwracanej odpowiedzi znajduje się w dokumentacji on-line.
Przykładowe wywołanie: zwróci w wyniku odpowiedź formie czytelnej dla użytkownika.

Błędy krytyczne zwracane są poprzez obiekt SOAPFault z kodem HTTP ustawionym na 500 zgodnie ze standardem SOAP. W razie potrzeby można wymusić użycie kodu 200 za pomocą ustawienia parametru http200 na true. Obiekt zawiera zawsze element faultcode wskazujący na przyczynę powstania błędu.".

Błędy niekrytyczne zwracane są poprzez status wykonania operacji (np. dataStatus), który jest elementem każdej struktury danych zwracanej przez API. Status wykonania jest ustawiany na 0 w przypadku poprawnego wykonania operacji lub wartość większą od zera (1) w razie zaistnienia problemów.
Jeśli status jest niezerowy, zwracany jest także element statusMessage, który zawiera opis sytuacji przeznaczony do wyświetlenia użytkownikowi, np. 'Nieprawidłowy identyfikator produktu'. W przypadku operacji typu update, element statusMessage jest zwracany również przy zerowym statusie, jako potwierdzenie, np. 'Dane ... zostały zapisane'.