[1.7.3] Tracking przesyłki
Zasób Tracking
reprezentuje obiekt z informacjami o aktualnym stanie przesyłki w procesie logistycznym. Za jego pomocą można uzyskać informacje o utworzeniu przesyłki, ostatniej zmianie statusu czy też historii statusów.
Na tej stronie
Uwierzytelnianie
Zasób Tracking nie jest autoryzowany, nie jest wymagane podanie tokenu.
Struktura
Zasób Tracking
posiada następujące atrybuty:
| String | Numer przesyłki |
| String | Rodzaj przesyłki. Dostępne rodzaje opisane są na stronie https://dokumentacja-inpost.atlassian.net/wiki/spaces/PL/pages/11731062 |
| String | Rodzaj przesyłki. Dostępne rodzaje opisane są na stronie https://dokumentacja-inpost.atlassian.net/wiki/spaces/PL/pages/11731062 |
| Object | Dodatkowe atrybuty dla przesyłek paczkomatowych. |
| String | Status w jakim aktualnie znajduje się przesyłka. |
| DateTime | Data utworzenia przesyłki. |
| DateTime | Data ostatniej aktualizacji informacji o zmianie statusu. |
| Array | Tablica obiektów zawierające historię zmian statusów, posortowana chronologicznie w kolejności malejącej (ostatni status jest pierwszy na liście). |
| Array | Tablica przewidywanych statusów, przez które może przejść jeszcze określona przesyłka. |
Dodatkowe atrybuty dla przesyłek paczkomatowych custom_attributes
| String | Rozmiar przesyłki [A, B, C] |
| String | Nazwa paczkomatu odbiorczego. |
| Hash | Dodatkowe parametry paczkomatu odbiorczego. |
| String | Nazwa paczkomatu nadawczego. |
| Hash | Dodatkowe parametry paczkomatu nadawczego. |
Tablica obiektów zawierające historię zmian statusów, posortowana chronologicznie w kolejności malejącej (ostatni status jest pierwszy na liście) tracking_details
| String | Nazwa statusu |
| String | Symbol statusu |
| String | Nazwa agencji |
| String | Czas zmiany statusu |
Przykład zasobu Tracker
w formacie JSON:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
{
"tracking_number": "612345678901234567890123",
"type": "inpost_locker_standard",
"service": "inpost_locker_standard",
"status": "dispatched_by_sender",
"custom_attributes": {
"size": "A"
"target_point_id": "KRA000",
"target_machine_detail": {
"href": "https://api-pl-points.easypack24.net/v1/points/AAA000",
"name": "AAA000",
"opening_hours": "PN-PT 09:00-16:00",
"location_description": "Beta Agencja Usługowo-Finansowa",
"location": {
"latitude": 50.26899,
"longitude": 18.97812
},
"address": {
"line1": "ul.Reymonta 999",
"line2": "33-333 Kraków"
},
"type": [
"parcel_locker"
]
},
},
"tracking_details": [
{
"status": "dispatched_by_sender",
"origin_status": "NWP",
"agency": "Kraków",
"datetime": "2015-09-17T11:28:00.000+02:00"
},
{
"status": "confirmed",
"origin_status": "PPN",
"agency": null,
"datetime": "2015-09-17T10:28:00.000+02:00"
}
],
"expected_flow": [],
"created_at": "2015-09-17T08:00:00.000+02:00",
"updated_at": "2015-09-17T11:28:00.000+02:00",
} |
Historia przesyłki
Pobieranie informacji o zmianach statusów dla określonej przesyłki:
1
GET /v1/tracking/:tracking_number |
Przykład zapytania
1
curl -X GET https://api-shipx-pl.easypack24.net/v1/tracking/612345678901234567890123 -H 'content-type: application/json' |
Odpowiedź
Gdy podany numer przesyłki jest poprawny i zostały odnalezione informacje o przesyłce, serwer zwróci odpowiedź jak poniżej:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
HTTP/1.1 200 OK
Content-Type: application/json
{
"tracking_number": "612345678901234567890123",
"type": "inpost_locker_standard",
"service": "inpost_locker_standard",
"status": "dispatched_by_sender",
"custom_attributes": {
"size": "A"
"target_point_id": "KRA000",
"target_machine_detail": {
"href": "https://api-pl-points.easypack24.net/v1/points/AAA000",
"name": "AAA000",
"opening_hours": "PN-PT 09:00-16:00",
"location_description": "Beta Agencja Usługowo-Finansowa",
"location": {
"latitude": 50.26899,
"longitude": 18.97812
},
"address": {
"line1": "ul.Reymonta 999",
"line2": "33-333 Kraków"
},
"type": [
"parcel_locker"
]
},
},
"tracking_details": [
{
"status": "dispatched_by_sender",
"origin_status": "NWP",
"datetime": "2015-09-17T11:28:00.000+02:00"
},
{
"status": "confirmed",
"origin_status": "PPN",
"datetime": "2015-09-17T10:28:00.000+02:00"
}
],
"expected_flow": [],
"created_at": "2015-09-17T08:00:00.000+02:00",
"updated_at": "2015-09-17T11:28:00.000+02:00",
} |
Przykład odpowiedzi w sytuacji gdy informacje o przesyłce nie zostały odnalezione:
1
2
3
4
5
6
7
8
9
HTTP/1.1 404 Not Found
Content-Type: application/json
{
"status": 404,
"error": "resource_not_found",
"description": "Tracking information about 612345678901234567890123 InPost Locker shipment has not been found.",
"details": null
} |
Przykład odpowiedzi w sytuacji, gdy system nie był w stanie rozpoznać rodzaju przesyłki na podstawie podanego numeru:
1
2
3
4
5
6
7
8
HTTP/1.1 400 Bad Request
Content-Type: application/json
{
"status": 400,
"error": "uknown_tracking_number",
"message": "Cannot identify type of shipment by given tracking number (612345678901234567890123)",
"details": null
} |
Historia serwisu przesyłek
Paczki mieszane mogą zmieniać swój serwis w tracie procesu logistycznego.
Historię ostatniego serwisu paczki można przeglądać, odpytują poniższy zasób:
Przykład zapytania
1
curl -X GET https://api-shipx-pl.easypack24.net/v1/tracking/523000015802677003881245/service_history -H 'content-type: application/json' |
Przykład odpowiedzi
1
2
3
4
5
6
7
8
9
10
11
HTTP/1.1 200 OK
Content-Type: application/json
{
"href": "https://api-shipx-pl.easypack24.net/v1/shipments/120"
"id": "120"
"service_history": {
"last_service": "inpost_courier_standard",
"updated_at": "2017-10-27T12:39:02.125+02:00"
}
} |