Track&Trace SOAP¶
Podstawy¶
Track&Trace¶
Śledzenie przesyłki jest możliwe na podstawie numeru paczki GLS albo własnego numeru referencyjnego nadawcy.
Poszczególne metody zostały opisane w dalszej części tej dokumentacji.
Web Service¶
GLS korzysta z protokołu SOAP w wersji 1.1. Podstawowa komunikacja odbywa się przez HTTP lub HTTPS. Poszczególne metody odpytywania o status przesyłki są udostępniane w postaci pliku WSDL (Web Services Description Language).
Metody¶
Dostępne są trzy metody służące do określenia statusu przesyłki.
Dwa parametry — username oraz password — są wymagane. W zwracanym strumieniu elementy ErrorCode oraz ErrorDscr wskazują, czy zapytanie do usługi zakończyło się powodzeniem, czy zwrócono informację o błędzie.
Tak wygląda pozytywna odpowiedź:
Tak może wyglądać komunikat błędu, np. przy nieprawidłowym logowaniu:
Pełna lista wszystkich kodów (błędów) znajduje się w dalszej części dokumentacji.
GetTuDetail¶
Ta metoda zwraca szczegółowe informacje o przesyłce na podstawie numeru paczki GLS — parametr RefValue — bez cyfry kontrolnej.
Za pomocą parametrów ParamCode (LangCode) oraz ParamValue można
przełączyć język wyników wyszukiwania (DE = niemiecki, EN = angielski).
GetTuDetail Struktura żądania¶
Typowy strumień zapytania do usługi ma następującą strukturę, gdzie ? jest
symbolem zastępczym dla przekazywanej wartości:
| Linia | Treść XML | Opcjonalne |
|---|---|---|
| 1 | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:trac="http://gls-group.eu/Tracking/"> |
|
| 2 | <soapenv:Header/> |
|
| 3 | <soapenv:Body> |
|
| 4 | <trac:TuDetailsRequest> |
|
| 5 | <trac:RefValue>?</trac:RefValue> |
|
| 6 | <Credentials><UserName>?</UserName><Password>?</Password></Credentials> |
|
| 7 | <trac:Parameters><trac:ParamCode>?</trac:ParamCode><trac:ParamValue>?</trac:ParamValue></trac:Parameters> |
X |
| 8 | </trac:TuDetailsRequest> |
|
| 9 | </soapenv:Body> |
|
| 10 | </soapenv:Envelope> |
GetTuDetail Przykład żądania¶
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:trac="http://gls-group.eu/Tracking/">
<soapenv:Header/>
<soapenv:Body>
<trac:TuDetailsRequest>
<trac:RefValue>55123456789</trac:RefValue>
<trac:Credentials>
<trac:UserName>2760123456</trac:UserName>
<trac:Password>Rght355Xh</trac:Password>
</trac:Credentials>
<!--Zero or more repetitions:-->
<trac:Parameters>
<trac:ParamCode>LangCode</trac:ParamCode>
<trac:ParamValue>EN</trac:ParamValue>
</trac:Parameters>
</trac:TuDetailsRequest>
</soapenv:Body>
</soapenv:Envelope>
GetTuDetail Parametry odpowiedzi¶
Dla przejrzystości opisano tylko najważniejsze parametry strumienia odpowiedzi. Pozostałe parametry są w większości samo-opisujące się.
| Treść XML (z przykładowymi wartościami) | Komentarz |
|---|---|
<TuNo>55123456789</TuNo> |
Numer paczki (Tu = Transport unit) |
<DeliveryDateTime><Year>2012</Year><Month>2</Month><Day>17</Day><Hour>7</Hour><Minut>44</Minut></DeliveryDateTime> |
Data i godzina doręczenia |
<CustomerReference><ReferenceValue>10129729</ReferenceValue></CustomerReference> |
Własny numer referencyjny klienta |
<TuWeight>10.5</TuWeight> |
Waga paczki |
<History><Date>...</Date><LocationCode>DE 330</LocationCode><LocationName>Braunschweig</LocationName><CountryName>Germany</CountryName><Code>3.0</Code><Desc>Delivered</Desc>[…] |
Historia paczki, tj. poszczególne etapy, przez które przesyłka przeszła w systemie GLS. Najnowszy status jest na pierwszym miejscu. LocationCode = magazyn GLS wraz z miastem i krajem. Code = kod statusu, Desc = opis kodu statusu. |
<Signature>MUSTERMANN</Signature> |
Podpis odbiorcy |
Podsumowanie:
- Wyszukiwanie na podstawie numeru paczki GLS bez cyfry kontrolnej (jedenaście cyfr)
- Zwracane są pełne szczegóły przesyłki
GetTuList¶
Ta metoda zwraca informacje o paczkach z zadanego okresu — DateFrom – DateTo. Zawiera najnowszy status paczek w sieci GLS.
Parametr RefValue umożliwia wyszukiwanie również na podstawie numeru paczki GLS (bez cyfry kontrolnej). Za pomocą parametru CustomRef możliwe jest wyszukiwanie na podstawie własnego numeru referencyjnego klienta.
GetTuList Struktura żądania¶
Typowy strumień zapytania do usługi ma następującą strukturę, gdzie ? jest
symbolem zastępczym dla przekazywanej wartości:
| Linia | Treść XML | Opcjonalne |
|---|---|---|
| 1 | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:trac="http://gls-group.eu/Tracking/"> |
|
| 2 | <soapenv:Header/> |
|
| 3 | <soapenv:Body> |
|
| 4 | <trac:TuListRequest> |
|
| 5 | <trac:RefValue>?</trac:RefValue> |
X |
<trac:DateFrom><trac:Year>?</trac:Year><trac:Month>?</trac:Month><trac:Day>?</trac:Day><trac:Hour>?</trac:Hour><trac:Minut>?</trac:Minut></trac:DateFrom> |
||
<trac:DateTo><trac:Year>?</trac:Year><trac:Month>?</trac:Month><trac:Day>?</trac:Day><trac:Hour>?</trac:Hour><trac:Minut>?</trac:Minut></trac:DateTo> |
||
<trac:CustomRef>?</trac:CustomRef> |
X | |
<trac:Credentials><trac:UserName>?</trac:UserName><trac:Password>?</trac:Password></trac:Credentials> |
||
<trac:Parameters><trac:ParamCode>?</trac:ParamCode><trac:ParamValue>?</trac:ParamValue></trac:Parameters> |
X / X | |
| 6 | </trac:TuListRequest> |
|
| 7 | </soapenv:Body> |
|
| 8 | </soapenv:Envelope> |
GetTuList Przykład żądania¶
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:trac="http://gls-group.eu/Tracking/">
<soapenv:Header/>
<soapenv:Body>
<trac:TuListRequest>
<trac:DateFrom>
<trac:Year>2012</trac:Year>
<trac:Month>2</trac:Month>
<trac:Day>22</trac:Day>
<trac:Hour>0</trac:Hour>
<trac:Minut>0</trac:Minut>
</trac:DateFrom>
<trac:DateTo>
<trac:Year>2012</trac:Year>
<trac:Month>2</trac:Month>
<trac:Day>22</trac:Day>
<trac:Hour>23</trac:Hour>
<trac:Minut>30</trac:Minut>
</trac:DateTo>
<trac:Credentials>
<trac:UserName>2760123456</trac:UserName>
<trac:Password>Rght355Xh</trac:Password>
</trac:Credentials>
<trac:Parameters>
<trac:ParamCode>LangCode</trac:ParamCode>
<trac:ParamValue>EN</trac:ParamValue>
</trac:Parameters>
</trac:TuListRequest>
</soapenv:Body>
</soapenv:Envelope>
GetTuList Parametry odpowiedzi¶
Dla przejrzystości opisano tylko najważniejsze parametry strumienia odpowiedzi. Pozostałe parametry są w większości samo-opisujące się.
| Treść XML (z przykładowymi wartościami) | Komentarz |
|---|---|
<RefNo>33352168990</RefNo> |
Numer paczki |
<InitialDateTime><Year>2012</Year><Month>2</Month><Day>17</Day><Hour>8</Hour><Minut>45</Minut></InitialDateTime> |
Data pierwszego statusu w systemie GLS |
<CurrentStatus>Delivered</CurrentStatus> |
Najnowszy status paczki w systemie GLS |
Podsumowanie:
- Wyszukiwanie paczki (paczek) w zadanym okresie czasu
- Wyszukiwanie na podstawie numeru paczki GLS bez cyfry kontrolnej (jedenaście cyfr)
- Wyszukiwanie na podstawie własnego numeru referencyjnego klienta
GetTuPOD*¶
Ta metoda zwraca zakodowany obraz „potwierdzenia doręczenia” (proof of delivery), czyli podpis odbiorcy.
*Uwaga: ze względu na ograniczenia prawne ta metoda nie jest dostępna we wszystkich krajach GLS (np. we Francji).
GetTuPOD Struktura żądania¶
Typowy strumień zapytania do usługi ma następującą strukturę, gdzie ? jest
symbolem zastępczym dla przekazywanej wartości:
| Linia | Treść XML | Opcjonalne |
|---|---|---|
| 1 | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:trac="http://gls-group.eu/Tracking/"> |
|
| 2 | <soapenv:Header/> |
|
| 3 | <soapenv:Body> |
|
| 4 | <trac:TuPODRequest> |
|
| 5 | <Credentials><UserName>?</UserName><Password>?</Password></Credentials> |
|
| 6 | <trac:RefValue>?</trac:RefValue> |
|
| 7 | <trac:Parameters><trac:ParamCode>?</trac:ParamCode><trac:ParamValue>?</trac:ParamValue></trac:Parameters> |
X / X |
</trac:TuPODRequest> |
||
| 8 | </soapenv:Body> |
|
| 9 | </soapenv:Envelope> |
GetTuPOD Parametry odpowiedzi¶
Dla przejrzystości opisano tylko najważniejsze parametry strumienia odpowiedzi. Pozostałe parametry są w większości samo-opisujące się.
| Treść XML (z przykładowymi wartościami) | Komentarz |
|---|---|
<TuPODResponse xmlns="http://gls-group.eu/Tracking/"> |
|
<ExitCode><ErrorCode>Value</ErrorCode><ErrorDscr>Value</ErrorDscr></ExitCode> |
|
<PODFileName>Name of image</PODFileName> |
|
<PODFile>Binary data in base 64</PODFile> |
Dane obrazu podpisu zakodowane w Base64 |
</TuPODResponse> |
Podsumowanie:
- Zwraca podpis odbiorcy
Kody błędów i opis¶
Przegląd¶
Za pomocą elementów ErrorCode oraz ErrorDscr usługa zwraca do systemu ERP nadawcy ewentualne komunikaty o błędach.
Kody¶
| Kod błędu | Opis błędu | Komentarz |
|---|---|---|
| 0 | OK | Brak błędu |
| 502 | Authentication error | Uwierzytelnienie nie powiodło się (np. błędne dane logowania) |
| 998 | No data found | Na podstawie użytych parametrów system nie znalazł żadnych danych |