Wysyłam z Allegro to narzędzie, które ułatwia zarządzanie przesyłkami w Allegro. Sprzedawcy mogą utworzyć w nim i wydrukować etykiety oraz zamówić odbiór paczek przez przewoźników ze wskazanego adresu.
Ważne! Zanim skorzystasz z API Wysyłam z Allegro, aktywuj swoje konto na stronie:
- https://wysylam.allegro.pl (środowisko produkcyjne),
- https://wysylam.allegro.pl.allegrosandbox.pl (środowisko testowe).
Zmiany konfiguracyjne, które wprowadzisz na GUI wymagają odczekania kilku minut, aby ich rezultat był widoczny w API.
Jak pobrać listę usług dostawy
Skorzystaj z GET /parcel-management/delivery-services, aby pobrać listę usług dostawy dostępnych dla zautoryzowanego użytkownika. W odpowiedzi zwrócimy dostępne usługi dostawy zdefiniowane na koncie użytkownika, w tym:
identyfikator usługi dostawy,
nazwę usługi dostawy,
identyfikator przewoźnika,
usługi dodatkowe w ramach danej usługi dostawy.
Identyfikator przekaż, gdy będziesz tworzyć nową paczkę.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/parcel-management/delivery-services’ \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json'
Przykładowy response:
{
"deliveryServices": [
{
"id": 8490564, -- ID usług dostawy
"service": "DPD", -- wyróżnik usługi dostawy
"name": "Allegro DPD", -- nazwa usług dostawy
"carrierId": "DPD", -- identyfikator przewoźnika
"additionalServices": { -- dostępne usługi dodatkowe w ramach
danej usługi dostawy
"cashOnDelivery": {
"available": true,
"expressAvailable": true
},
"options": [ -- dodatkowe opcje dostawy
{
"name": "guarantee0930", -- nazwa opcji dostawy
"description": "Delivery up to -- opis opcji dostawy
9:30 / 10:30 (depending on location)"
}
]
},
"owner": "ALLEGRO" -- właściciel umowy z
przewoźnikiem, dostępne wartości
to ALLEGRO lub CLIENT
}
]}
Jak utworzyć nową paczkę
Pamiętaj, że wybrana przez kupującego metoda dostawy ma wpływ na to, jaką usługę dostawy możesz wybrać dla danego zamówienia. Usługa dostawy odpowiada umowom podpisanym przez ciebie lub przez Allegro z firmą przewozową.
Poniższa tabela przedstawia dostępne możliwości, typ umowy (własna lub Allegro) sprawdzisz w polu owner w odpowiedzi dla GET /parcel-management/delivery-services.
Metoda dostawy wybrana przez kupującego | Dozwolona umowa własna (usługa dostawy) | Dozwolona umowa Allegro (usługa dostawy) |
---|---|---|
Allegro Kurier DPD | dowolna | Allegro DPD |
Allegro Kurier DPD pobranie | dowolna | Allegro DPD |
Allegro Kurier UPS (do 10 kg) | dowolna | Allegro UPS do 10 kg |
Allegro Pocztex Kurier 48 | dowolna | Allegro Poczta |
Allegro Pocztex Kurier 48 pobranie | dowolna | Allegro Poczta |
Allegro Punkty Poczta, Żabka, Orlen, Ruch | dowolna | Allegro Poczta |
Allegro Przesyłka polecona | dowolna | Allegro Poczta |
Allegro Paczkomaty 24⁄7 InPost | dowolna | Allegro Inpost* |
wszystkie pozostałe | dowolna | - |
*Umowa Allegro Inpost wymaga dodania w ustawieniach Wysyłam z Allegro umowy własnej i wybrania opcji “Używaj oferty dla sprzedawców Allegro”.
Aby utworzyć nową paczkę, skorzystaj z PUT /parcel-management/parcel-create-commands/{commandId}. Jako commandId przekaż numer UUID - wygeneruj go automatycznie we własnym zakresie. Pamiętaj, aby dla każdej nowej przesyłki, którą tworzysz, użyć nowego numeru UUID.
Kliknij, żeby zobaczyć przykładowy request:
curl -X PUT \
'https://api.allegro.pl/parcel-management/parcel-create-commands/14d3b9c4-ca3b-4e37-89c0-6f6cac24a02e’ \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-d
‘{
"serviceId": 8490564, -- wymagane, ID usługi dostawy, pobierzesz je
za pomocą GET /parcels/delivery-services
"receiver": { -- dane odbiorcy
"address": {
"street": "Testowa 172", -- ulica i numer budynku
"postCode": "61-132", -- kod pocztowy
"city": "Poznań", -- miasto
"countryCode": "PL" -- kod kraju zgodny ze
standardem ISO 3166-1 alpha-2
},
"email": "hamu7udk3p+17454c1b6@allegromail.pl", -- wymagany, adres e-mail. Musisz
przekazać prawidłowy maskowany adres e-mail
wygenerowany przez Allegro.
"name": "Jan Kowalski", -- imię i nazwisko
"company": "Allegro.pl sp. z o.o.", -- nazwa firmy
"phone": "500600700", -- numer telefonu
"pointId": "1234567" -- wymagane, jeśli adresem odbiorczym jest
punkt odbioru. ID punktu odbioru, pobierzesz
z danych zamówienia za pomocą GET /order/checkout-forms
},
"pickup": { -- wymagane, dane nadawcy
"address": { -- informacje o adresie odbioru
"street": "Testowa 8", -- ulica wraz z numerem budynku
"postCode": "10-200", -- kod pocztowy
"city": "Warszawa", -- miasto
"countryCode": "PL" -- kod kraju zgodny ze
standardem ISO 3166-1 alpha-2
},
"email": "email@mail.com",
"name": "Jan Kowalski",
"company": "Allegro.pl sp. z o.o.",
"phone": "500600700",
"pointId": "1234567"
},
"items": [ -- wymagane, informacje o paczkach.
Maksymalna liczba przesyłek dla
przewoźników to: 10 - DHL (oprócz palet),
DPD (oprócz kopert), GLS, INPOST_KURIER,
UPS (umowa własna), FEDEX; 5 - DHL (paleta);
1 - pozostali przewoźnicy.
{
"weight": { -- waga paczki
"value": 12,
"unit": "KILOGRAM"
},
"dimensions": { -- wymiary paczki
"height": { -- wysokość paczki
"value": 20,
"unit": "CENTIMETER"
},
"width": { -- szerokość paczki
"value": 20,
"unit": "CENTIMETER"
},
"depth": { -- głębokość paczki
"value": 20,
"unit": "CENTIMETER"
},
},
"type": "PACKAGE" -- wymagane (jeśli nie przekażesz pola
“type” na głównym poziomie), typ przesyłki
"description": "Car wheels.", -- opis zawartości paczki
"value": { -- deklarowana wartość paczki
"amount": "2.50",
"currency": "PLN"
}
}
],
"type": "PACKAGE", -- wymagane (jeśli nie przekażesz
pola type na poziomie sekcji items),
typ przesyłki
"label": { -- niewymagane, informacje na etykiecie
"sender": { -- informacje o nadawcy na etykiecie
"address": {
"street": "Testowa 8",
"postCode": "10-200",
"city": "Warszawa",
"countryCode": "PL",
"county": null -- niewymagane, uzupełnij tylko, jeśli
wysyłasz paczkę z Irlandii, USA lub Kanady
},
"email": "email@mail.com",
"name": "Jan Kowalski",
"company": "Allegro.pl sp. z o.o.",
"phone": "500600700"
},
"fileFormat": "PDF", -- format pliku etykiety
"referenceNumber": "abcd1234" -- zewnętrzny ID / sygnatura, który nadaje
sprzedający, dzięki któremu rozpozna przesyłkę w
swoim systemie
},
"additionalServices": { -- usługi dodatkowe. Dostępne są tylko te możliwości,
które otrzymałeś w odpowiedzi dla
GET /parcel-management/delivery-services
dla danej usługi dostawy
"cashOnDelivery": {
"value": {
"amount": "2.50",
"currency": "PLN"
},
"accountNumber": "12345678901234567890123456",
"name": "Jan Kowalski",
"express": false
},
"options": [
"guarantee0930"
]
}
}’
Informacje o walidacji pola “type”:
- jest wymagane tylko na jednym z poziomów (głównym lub w “items”),
- jeśli pola “type” są uzupełnione na dwóch poziomach, sprawdzimy czy wszystkie pola “type” na poziomie “items” mają taką samą wartość jak pole “type” na głównym poziomie. Jeśli nie, zwrócimy błąd.
Ważne! W odpowiedzi otrzymasz status 201 Created, pamiętaj jednak, że nie jest to równoznaczne z prawidłowym utworzeniem paczki. W nagłówku Retry-After zwrócimy informację o tym, za ile sekund możesz sprawdzić status zadania za pomocą GET parcel-management/parcel-create-commands/{commandId}.
Przykładowy response:
{
"id": "14d3b9c4-ca3b-4e37-89c0-6f6cac24a02e",
"input": {
"serviceId": 8490564,
"receiver": {
"address": {
"street": "Testowa 172",
"postCode": "61-132",
"city": "Poznań",
"countryCode": "PL"
},
"email": "hamu7udk3p+17454c1b6@allegromail.pl",
"name": "Jan Kowalski",
"company": "Allegro.pl sp. z o.o.",
"phone": "500600700",
"pointId": "1234567"
},
"pickup": {
"address": {
"street": "Testowa 8",
"postCode": "10-200",
"city": "Warszawa",
"countryCode": "PL"
},
"email": "email@mail.com",
"name": "Jan Kowalski",
"company": "Allegro.pl sp. z o.o.",
"phone": "500600700",
"pointId": "1234567"
},
"items": [
{
"weight": {
"value": 12,
"unit": "KILOGRAM"
},
"dimensions": {
"height": {
"value": 20,
"unit": "CENTIMETER"
},
"width": {
"value": 20,
"unit": "CENTIMETER"
},
"depth": {
"value": 20,
"unit": "CENTIMETER"
},
},
"description": "Car wheels.",
"value": {
"amount": "2.50",
"currency": "PLN"
}
"type": "PACKAGE"
}
],
"type": "PACKAGE",
"label": {
"sender": {
"address": {
"street": "Testowa 8",
"postCode": "10-200",
"city": "Warszawa",
"countryCode": "PL",
"county": null
},
"email": "email@mail.com",
"name": "Jan Kowalski",
"company": "Allegro.pl sp. z o.o.",
"phone": "500600700"
},
"fileFormat": "PDF",
"referenceNumber": "abcd1234"
},
"additionalServices": {
"cashOnDelivery": {
"value": {
"amount": "2.50",
"currency": "PLN"
},
"accountNumber": "12345678901234567890123456",
"name": "Jan Kowalski",
"express": false
},
"options": [
"guarantee0930"
]
}
}
}
Jak sprawdzić status utworzenia paczki
Za pomocą GET /parcel-management/parcel-create-commands/{commandId} sprawdzisz status utworzenia paczki. Jeśli zadanie nie zostało jeszcze ukończone, w odpowiedzi zwrócimy nagłówek Retry-After, w którym znajdziesz informację, za ile sekund możesz odpytać o status komendy.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/parcel-management/parcel-create-commands/14d3b9c4-ca3b-4e37-89c0-6f6cac24a02e’ \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json'
Przykładowy response:
{
"id": "14d3b9c4-ca3b-4e37-89c0-6f6cac24a02e", -- numer UUID żądania
"parcelId": "7739951", -- ID paczki
"status": "SUCCESS", -- status zadania, dostępne wartości to:
IN_PROGRESS (zadanie w trakcie
przetwarzania), SUCCESS (zadanie wykonane
prawidłowo), ERROR (wystąpił
błąd)
"errors": [] -- informacje o błędach
}
Przykładowy response, gdy nie przekażesz numeru budynku:
{
"id": "279b7e5a-640a-4c6b-82ae-99446a64bf52",
"parcelId": null,
"status": "ERROR",
"errors": [
{
"code": "VALIDATION_ERROR",
"message": "Brak numeru budynku",
"details": null,
"path": "receiver.street",
"userMessage": null
}
]
}
Przykładowy response, gdy przekażesz błędny numer telefonu:
{
"id": "610ea12b-6a5b-4ebe-9ed4-a387b6dcab7e",
"parcelId": null,
"status": "ERROR",
"errors": [
{
"code": "VALIDATION_ERROR",
"message": "Niepoprawny numer telefonu (może zawierać od 9 do 14 cyfr)",
"details": null,
"path": "receiver.phone",
"userMessage": null
}
]
}
Jak pobrać szczegółowe informacje o paczce
Aby pobrać szczegółowe dane paczki, użyj GET /parcel-management/parcels/{parcelId}. Jako parcelId przekaż identyfikator paczki, który otrzymasz w odpowiedzi dla GET /parcel-management/parcel-create-commands/{commandId}.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/parcel-management/parcels/7740851’ \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json'
Kliknij, żeby zobaczyć przykładowy response:
curl -X PUT \
'https://api.allegro.pl/parcel-management/parcel-create-commands/14d3b9c4-ca3b-4e37-89c0-6f6cac24a02e’ \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-d
‘{
"parcelId": "7740851", -- ID paczki
"serviceId": 8490564, -- ID usługi dostawy
"label": {
"sender": {
"name": "Jan Kowalski",
"company": "Allegro.pl sp. z o.o.",
"address": {
"street": "Testowa 10",
"postCode": "61-132",
"city": "POZNAŃ",
"county": null,
"countryCode": "PL"
},
"email": "email@mail.com",
"phone": "500600700"
},
"fileFormat": "PDF", -- format pliku etykiety
"referenceNumber": "abcd1234", -- zewnętrzny ID / sygnatura, który nadaje
sprzedający, dzięki któremu rozpozna przesyłkę
w swoim systemie
},
"receiver": { -- dane odbiorcy
"name": "Jan Kowalski",
"company": "Allegro.pl sp. z o.o.",
"address": {
"street": "Testowa 7",
"zipCode": "61-132",
"city": "POZNAŃ",
"county": null,
"countryCode": "PL"
},
"pointId": null,
"email": "sdasd@allegromail.pl",
"phone": "500600700"
},
"pickup": { -- dane nadawcy
"name": "Jan Kowalski",
"company": "Allegro.pl sp. z o.o.",
"address": {
"street": "Testowa 8",
"zipCode": "61-132",
"city": "POZNAŃ",
"county": null,
"countryCode": "PL"
},
"pointId": null,
"email": "email@mail.com",
"phone": "500600700"
},
"items": [ -- informacje o paczce
{
"waybill": "0000000767923Q", -- numer listu przewozowego
"weight": { -- waga paczki
"value": 20,
"unit": "KILOGRAM"
}, ,
"dimensions": { -- wymiary paczki
"height": { -- wysokość paczki
"value": 20,
"unit": "CENTIMETER"
},
"width": { -- szerokość paczki
"value": 20,
"unit": "CENTIMETER"
},
"depth": { -- głębokość paczki
"value": 20,
"unit": "CENTIMETER"
},
},
"description": "Car wheels.", -- opis zawartości paczki
"value": { -- deklarowana wartość paczki
"amount": "2.5",
"currency": "PLN"
},
"type": "PACKAGE" -- typ przesyłki
}
],
"type": "PACKAGE", -- typ przesyłki
"additionalServices": {}, -- informacje o ewentualnych usługach
dodatkowych
"state": null -- aktualny status paczki. Dostępne wartości
to: DRAFT (wystąpi, gdy utworzysz paczkę przez
GUI jako draft, a następnie przez API pobierzesz jej szczegóły),
CREATED (utworzona) i CANCELLED (anulowana)
}’
Jak anulować paczkę
Jeżeli utworzyłeś paczkę, ale np. nieprawidłowo wypełniłeś niektóre dane, możesz ją anulować za pomocą PUT /parcel-management/cancel-commands/{commandId}. W strukturze żądania przekaż parcelId wraz z ID paczki, którą chcesz usunąć.
Przykładowy request:
curl -X PUT \
'https://api.allegro.pl/parcel-management/parcel-cancel-commands/14d3b9c4-ca3b-4e37-89c0-6f6cac24a02e’ \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json'
-d ‘{
"parcelId": "7740818" -- ID paczki, którą chcesz usunąć
}’
Ważne! W odpowiedzi otrzymasz status 201 Created, pamiętaj jednak, że nie jest to równoznaczne z prawidłowym anulowaniem paczki. W nagłówku Retry-After, zwrócimy informację o tym, za ile sekund możesz sprawdzić status za pomocą GET /parcel-management/parcel-cancel-commands/{commandId}. Status SUCCESS nie gwarantuje, że wysyłka paczki została anulowana, np. nie możesz anulować paczki odebranej przez kuriera lub nadanej w paczkomacie.
Przykładowy response:
{
"id": "14d3b9c4-ca3b-4e37-89c0-6f6cac24a02e",
"input": {
"parcelId": "7740818"
}
}
Jak sprawdzić status anulowania paczki
Za pomocą GET /parcel-management/parcel-cancel-commands/{commandId} sprawdzisz status anulowania paczki. Jeśli zadanie nie zostało jeszcze ukończone, w odpowiedzi zwrócimy nagłówek Retry-After, w którym znajdziesz informację, za ile sekund możesz sprawdzić status komendy.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/parcel-management/parcel-cancel-commands/7832d3ff-9dd8-4473-9f4a-ebdeb0b73261’ \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json'
Przykładowy response:
{
"id": "7832d3ff-9dd8-4473-9f4a-ebdeb0b73261", -- numer UUID żądania
"status": "SUCCESS", -- status zadania, dostępne
wartości to: IN_PROGRESS (zadanie w
trakcie przetwarzania),
SUCCESS (nie gwarantuje, że wysyłka
paczki została anulowana, np. nie
możesz anulować paczki odebranej
przez kuriera lub nadanej w
paczkomacie), ERROR
(wystąpił błąd)
"errors": [] -- informacje o błędach
}
Jak sprawdzić proponowaną datę odbioru paczek przez kuriera
Aby otrzymać propozycje dat i godzin odbioru paczek przez kuriera, skorzystaj z GET /parcel-management/pickup-date-proposals. W żądaniu przekaż parametry:
- parcelId - wymagany, ID paczki, który zwróciliśmy w odpowiedzi dla GET parcel-management/create-commands/{commandId}. Możesz przekazać maksymalnie 100 ID paczek, np. parcelId=7740851&parcelId=7740818. Dla każdej paczki zwrócimy osobny zakres dat;
- readyDate - niewymagany, data, kiedy paczki będą gotowe do odbioru. Datę przekaż w formacie YYYY-MM-DD, np. 2020-07-10.
W odpowiedzi, w tablicy proposals, otrzymasz zbiór paczek z proponowaną datą odbioru i zakresem godzinowym. Wybrany termin przekażesz w kolejnym kroku, gdy będziesz zamawiać odbiór paczek przez kuriera.
Ważne! Kurier Pocztex nie obsługuje odbiorów przesyłek, możesz jedynie nadać paczkę w punkcie. W tym przypadku w odpowiedzi zwrócimy pustą tablicę.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/parcel-management/pickup-date-proposals?parcelId=7740851&parcelId=7740818&readyDate=2020-07-08’ \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json'
Kliknij, żeby zobaczyć przykładowy response:
{
"parcelsProposals": [
{
"parcelId": "7740818", -- ID paczki
"proposals": [ -- propozycje dat i godzin odbioru paczek przez
kuriera
{
"date": "2020-07-08", -- data
"minTime": "10:00", -- najwcześniejsza godzina odbioru
"maxTime": "14:00" -- najpóźniejsza godzina odbioru
},
{
"date": "2020-07-08",
"minTime": "12:00",
"maxTime": "14:00"
},
{
"date": "2020-07-08",
"minTime": "14:00",
"maxTime": "16:00"
},
{
"date": "2020-07-08",
"minTime": "15:00",
"maxTime": "17:00"
},
{
"date": "2020-07-08",
"minTime": "16:00",
"maxTime": "18:00"
}
]
},
{
"parcelId": "7740851",
"proposals": [
{
"date": "2020-07-08",
"minTime": "10:00",
"maxTime": "14:00"
},
{
"date": "2020-07-08",
"minTime": "12:00",
"maxTime": "14:00"
},
{
"date": "2020-07-08",
"minTime": "14:00",
"maxTime": "16:00"
},
{
"date": "2020-07-08",
"minTime": "15:00",
"maxTime": "17:00"
},
{
"date": "2020-07-08",
"minTime": "16:00",
"maxTime": "18:00"
}
]
}
]
}
Jak zamówić odbiór paczek przez kuriera
Skorzystaj z PUT /parcel-management/parcel-pickup-request-commands/{commandId}, aby zamówić odbiór przesyłek przez kuriera. Jako commandId przekaż numer UUID - wygeneruj go automatycznie we własnym zakresie. Pamiętaj, aby przy każdym nowym żądaniu, użyć nowego numeru UUID.
Ważne! Dla przewoźników InPost, Poczta Polska, RUCH i GLS nie możesz wybrać daty podjazdu kuriera. W tych przypadkach nie przekazuj w żądaniu pola pickupDate.
Przykładowy request:
curl -X PUT \
'https://api.allegro.pl/parcel-management/parcel-pickup-request-commands/deb2238a-f7ac-4e12-89c9-537583143203’ \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-d ‘{
"parcelIds": [ -- tablica z identyfikatorami paczek do odbioru przez
kuriera
"7740851",
"7740818"
],
"pickupDate": { -- informacje o dacie i zakresie godzinowym odbioru
paczek. Przekaż tutaj dokładnie te same wartości,
które otrzymałeś w odpowiedzi dla
GET /parcel-management/pickup-date-proposals
"date": "2020-05-01", -- data odbioru
"minTime": "10:00", -- najwcześniejsza godzina odbioru
"maxTime": "14:00" -- najpóźniejsza godzina odbioru
}
}’
Ważne! W odpowiedzi otrzymasz status 201 Created, pamiętaj jednak, że nie jest to równoznaczne z prawidłowym utworzeniem zamówienia odbioru paczek. W nagłówku Retry-After, zwrócimy informację o tym, za ile sekund możesz sprawdzić status za pomocą GET /parcel-management/parcel-pickup-request-commands{commandId}.
Przykładowy response:
{
"parcelIds": [
"7740851",
"7740818"
],
"pickupDate": {
"date": "2020-05-01",
"minTime": "10:00",
"maxTime": "14:00"
}
}
Jak sprawdzić status zamówienia odbioru paczek
Za pomocą GET /parcel-management/parcel-pickup-request-commands/{commandId} sprawdź status zamówienia odbioru paczek. Jeśli zadanie nie zostało jeszcze ukończone, w odpowiedzi zwrócimy nagłówek Retry-After, w którym znajdziesz informację, za ile sekund możesz sprawdzić status komendy.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/parcel-management/parcel-pickup-request-commands/deb2238a-f7ac-4e12-89c9-537583143203’ \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json'
Przykładowy response:
{
"id": "deb2238a-f7ac-4e12-89c9-537583143203", -- numer UUID żądania
"status": "SUCCESS", -- status zadania, dostępne wartości to:
IN_PROGRESS (zadanie w trakcie
przetwarzania), SUCCESS (zadanie
wykonane prawidłowo),
PARTIAL_SUCCESS (zwrócimy, gdy
część zamówień utworzymy prawidłowo,
a dla części zwrócimy błąd), ERROR
(wystąpił błąd)
"errors": [] -- informacje o błędach
}
Jak utworzyć etykietę na paczkę
Za pomocą GET /parcel-management/parcels/label utworzysz etykietę, którą następnie sprzedawca umieści na paczce. W żądaniu, dla parametrów:
- parcelId - wymagane, przekaż ID paczki.
- pageFromat - niewymagane, format strony. Przekaż wartość “A4” lub “A6”. Dotyczy tylko plików w formacie PDF.
W odpowiedzi otrzymasz plik PDF, EPL lub ZPL (w zależności od wybranego formatu na etapie tworzenia paczki), który musisz zapisać na dysku. Pamiętaj, aby prawidłowo przekazać nagłówek Accept.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/parcel-management/parcels/label?parcelId=7740851&pageFormat=A4’
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/pdf' \ // lub text/plain
-H ‘Content-Type: application/pdf' // lub text/plain
Przykładowy response:
Status 200 OK
Jak pobrać protokół nadania przesyłek
Za pomocą GET /parcel-management/parcels/protocol pobierzesz protokoły nadania przesyłek. W żądaniu, dla parametrów parcelId, przekaż ID paczek, np. parcelId=1233&parcelId=1234. W odpowiedzi otrzymasz plik w formacie PDF, który musisz zapisać na dysku. Dokument wygenerujemy w dwóch kopiach - po jednej dla sprzedawcy i kuriera. Pamiętaj, aby prawidłowo przekazać nagłówek Accept.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/parcel-management/protocol?parcelId=7740851&parcelId=7740818’ \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/pdf' \
-H ‘Content-Type: application/pdf'
Przykładowy response:
Status 200 OK
Lista zasobów
Pełną dokumentację zasobów w postaci pliku swagger.yaml znajdziesz tu.
Lista zasobów podstawowych opisanych w poradniku:
- GET /parcel-management/delivery-services - pobierz listę dostępnych usług dostawy
- PUT /parcel-management/parcel-create-commands/{commandId} - utwórz nową paczkę
- GET parcel-management/parcel-create-commands/{commandId} - sprawdź status utworzenia paczki
- GET /parcel-management/parcels/{parcelId} - pobierz szczegółowe dane paczki
- PUT /parcel-management/cancel-commands/{commandId} - anuluj paczkę
- GET /parcel-management/parcel-cancel-commands/{commandId} - sprawdź status anulowania paczki
- GET /parcel-management/pickup-date-proposals - pobierz propozycje dat i godzin odbioru paczek przez kuriera
- PUT /parcel-management/parcel-pickup-request-commands/{commandId} - zamów odbiór paczek przez kuriera
- GET /parcel-management/parcel-pickup-request-commands{commandId} - sprawdź status zamówienia odbioru paczek
- GET /parcel-management/parcels/label - pobierz etykiety
- GET /parcel-management/parcels/protocol - pobierz protokoły nadania