Rabaty i promocje
Dowiedz się, jak zarządzać dostępnymi rabatami i promocjami przez API Allegro.
Rabat na duże zamówienie
Rabat na duże zamówienie dla transakcji B2B (firma - firma) to rabat procentowy, którego wysokość zależy od wartości pojedynczego zamówienia. Rabatem zostaną objęte wszystkie twoje oferty.
Dodaj rabat
Aby utworzyć rabat na duże zamówienie, skorzystaj z POST /sale/loyalty/promotions i określ progi wartościowe pojedynczego zamówienia oraz przypadający dla nich rabat procentowy. Możesz utworzyć tylko jeden rabat na duże zamówienie.
Przykładowy request:
curl -X POST \
‘https://api.allegro.pl/sale/loyalty/promotions' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}' \
-d '{
"benefits": [
{
"specification": {
"type": "LARGE_ORDER_DISCOUNT", // typ promocji (lista dostępnych wartości znajduje się w dokumentacji zasobu)
"thresholds": [ // progi rabatowe
{
"orderValue": {
"lowerBound": {
"amount": "1000.00", // wartość zamówienia
"currency": "PLN"
}
},
"discount": {
"percentage": "5" // wysokość rabatu (%)
}
},
{
"orderValue": {
"lowerBound": {
"amount": "1500.00",
"currency": "PLN"
}
},
"discount": {
"percentage": "8"
}
}
]
}
}
],
"offerCriteria": [
{
"type": "ALL_OFFERS" // rabatem zostaną objęte wszystkie oferty
}
]
}'
W odpowiedzi otrzymasz identyfikator utworzonego rabatu.
Przykładowy response:
{
"id": "ba01f101-c9ef-4e5d-a88f-efb721bdbb9a", // identyfikator rabatu
"createdAt": "2020-10-27T06:31:29.36Z", // data utworzenia
"benefits": [
{
"specification": {
"thresholds": [
{
"orderValue": {
"lowerBound": {
"amount": "1000.00",
"currency": "PLN"
}
},
"discount": {
"percentage": "5"
}
},
{
"orderValue": {
"lowerBound": {
"amount": "1500.00",
"currency": "PLN"
}
},
"discount": {
"percentage": "8"
}
}
],
"type": "LARGE_ORDER_DISCOUNT"
}
}
],
"offerCriteria": [
{
"type": "ALL_OFFERS"
}
]
"status": "ACTIVE"
}
Pobierz dostępne rabaty
GET /sale/loyalty/promotions zwraca listę wszystkich utworzonych na twoim koncie promocji. Aby otrzymać wyłącznie identyfikator rabatu na duże zamówienie, skorzystaj z filtra "promotionType=LARGE_DISCOUNT_ORDER".
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/sale/loyalty/promotions?promotionType=LARGE_DISCOUNT_ORDER' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}'
Przykładowy response:
{
"promotions": [
{
"id": "ba01f101-c9ef-4e5d-a88f-efb721bdbb9a", // identyfikator rabatu
"createdAt": "2020-10-27T06:31:29.36Z", // data utworzenia
"benefits": [
{
"specification": {
"thresholds": [
{
"orderValue": {
"lowerBound": {
"amount": "1000.00",
"currency": "PLN"
}
},
"discount": {
"percentage": "5"
}
},
{
"orderValue": {
"lowerBound": {
"amount": "1500.00",
"currency": "PLN"
}
},
"discount": {
"percentage": "8"
}
}
],
"type": "LARGE_ORDER_DISCOUNT"
}
}
],
"offerCriteria": [
{
"type": "ALL_OFFERS"
}
],
"status": "ACTIVE"
}
],
"totalCount": 1
}
Pobierz informacje o rabacie
Jeżeli chcesz pobrać szczegółowe informacje o rabacie na duże zamówienie, użyj GET /sale/loyalty/promotions/{promotionId}.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/sale/loyalty/promotions/ba01f101-c9ef-4e5d-a88f-efb721bdbb9a' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}'
Przykładowy response:
{
"id": "ba01f101-c9ef-4e5d-a88f-efb721bdbb9a", // identyfikator rabatu
"createdAt": "2020-10-27T06:31:29.36Z", // data utworzenia
"benefits": [
{
"specification": {
"thresholds": [ // progi rabatowe
{
"orderValue": {
"lowerBound": {
"amount": "1000.00", // wartość zamówienia
"currency": "PLN"
}
},
"discount": {
"percentage": "5" // wysokość rabatu (%)
}
},
{
"orderValue": {
"lowerBound": {
"amount": "1500.00",
"currency": "PLN"
}
},
"discount": {
"percentage": "8"
}
}
],
"type": "LARGE_ORDER_DISCOUNT",
}
}
],
"offerCriteria": [
{
"type": "ALL_OFFERS" // rabatem objęte są wszystkie twoje oferty
}
],
"status": "ACTIVE"
}
Edytuj progi rabatowe
Dla rabatu na duże zamówienie udostępniliśmy opcję edycji progów wartościowych zamówienia oraz wysokości przyznanego rabatu. Skorzystaj z PUT /sale/loyalty/promotions/{promotionId}, aby zmienić ustawienia rabatu.
Przykładowy request:
curl -X PUT \
'https://api.allegro.pl/sale/loyalty/promotions/ba01f101-c9ef-4e5d-a88f-efb721bdbb9a' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}' \
-d '{
"id": "ba01f101-c9ef-4e5d-a88f-efb721bdbb9a",
"benefits": [
{
"specification": {
"type": "LARGE_ORDER_DISCOUNT",
"thresholds": [
{
"orderValue": {
"lowerBound": {
"amount": "2000.00",
"currency": "PLN"
}
},
"discount": {
"percentage": "10"
}
},
{
"orderValue": {
"lowerBound": {
"amount": "3000.00",
"currency": "PLN"
}
},
"discount": {
"percentage": "15"
}
}
]
}
}
],
"offerCriteria": [
{
"type": "ALL_OFFERS"
}
]
}'
Usuń rabat
Aby usunąć rabat na duże zamówienie, skorzystaj z DELETE /sale/loyalty/promotions/{promotionId}. Operacja ta usunie rabat ze wszystkich twoich ofert - jej czas wykonania zależy od liczby ofert, które posiadasz.
Przykładowy request:
curl -X DELETE \
‘https://api.allegro.pl/sale/loyalty/promotions/ba01f101-c9ef-4e5d-a88f-efb721bdbb9a' \
-H ‘Accept: application/vnd.allegro.public.v1+json’ \
-H ‘Authorization: Bearer {token}’
Przykładowy response:
status 204 No Content
Cenniki hurtowe
Dzięki cennikom hurtowym zaoferujesz rabat dla transakcji B2B (firma - firma). Będzie to rabat procentowy, którego wysokość zależy od liczby zakupionych przedmiotów w ofercie.
Dodaj cennik hurtowy
Aby utworzyć cennik hurtowy, skorzystaj z POST /sale/loyalty/promotions i określ progi ilościowe oraz przypadający dla nich rabat procentowy.
Przykładowy request:
curl -X POST \
'https://api.allegro.pl/sale/loyalty/promotions' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}' \
-d '{
"benefits": [
{
"specification": {
"type": "WHOLESALE_PRICE_LIST", // typ promocji (lista dostępnych wartości znajduje się w dokumentacji zasobu)
"name": "Cennik hurtowy nr 1", // nazwa cennika
"thresholds": [ // progi rabatowe
{
"quantity": { // minimalna liczba zakupionych przedmiotów
"lowerBound": 5
},
"discount": { // wysokość rabatu (%)
"percentage": "5"
}
},
{
"quantity": {
"lowerBound": 10
},
"discount": {
"percentage": "8"
}
}
]
}
}
],
"offerCriteria": [
{
"type": "OFFERS_ASSIGNED_EXTERNALLY" // oferty przypiszesz za pomocą PUT /sale/offer-modification-commands/{commandId}
}
]
}'
W odpowiedzi otrzymasz identyfikator utworzonego cennika.
Przykładowy response:
{
"id": "9de4be5d-9c60-48aa-8711-363625c9d793", // identyfikator cennika
"createdAt": "2020-08-13T06:08:06.011Z", // data utworzenia
"benefits": [
{
"specification": {
"name": "Cennik hurtowy nr 1",
"thresholds": [
{
"quantity": {
"lowerBound": 5
},
"discount": {
"percentage": "5"
}
},
{
"quantity": {
"lowerBound": 10
},
"discount": {
"percentage": "8"
}
}
],
"type": "WHOLESALE_PRICE_LIST"
}
}
],
"offerCriteria": [
{
"type": "OFFERS_ASSIGNED_EXTERNALLY"
}
],
"status": "ACTIVE"
}
Przypisz oferty do cennika
Cennik hurtowy przypiszesz do wybranych ofert za pomocą zasobu do grupowych zmian w ofercie - PUT /sale/offer-modification-commands/{commandId}.
Przykładowy request:
curl -X PUT \
'https://api.allegro.pl/sale/offer-modification-commands/daccd266-fa5e-4a6b-a10b-d24836c411e1' \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-d '{
"modification": {
"discounts": { // typ zmiany
"wholesalePriceList": {
"id": "9de4be5d-9c60-48aa-8711-363625c9d793" // identyfikator cennika
}
}
},
"offerCriteria": [
{
"offers": [
{
"id": "9292002929" // identyfikator oferty
},
{
"id": "9876543210"
}
],
"type": "CONTAINS_OFFERS"
}
]
}'
Cennik hurtowy dodasz do pojedynczej oferty podczas wystawiania (POST /sale/product-offers) lub edycji oferty (PATCH /sale/product-offers/{offerId}) przekazując jego identyfikator w polu wholesalePriceList.id w sekcji discounts.
…
"discounts": {
"wholesalePriceList": {
"id": "5637592a-0a24-4771-b527-d89b2767d821"
}
},
…
Jeżeli chcesz usunąć powiązanie ofert z wybranym cennikiem hurtowym, to jako identyfikator cennika podaj wartość null.
Przykładowy request:
curl -X PUT \
'https://api.allegro.pl/sale/offer-modification-commands/daccd266-fa5e-4a6b-a10b-d24836c411e1' \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-d '{
"modification": {
"discounts": {
"wholesalePriceList": {
"id": null
}
}
},
"offerCriteria": [
{
"offers": [
{
"id": "9292002929"
},
{
"id": "9876543210"
}
],
"type": "CONTAINS_OFFERS"
}
]
}'
Pobierz dostępne cenniki
GET /sale/loyalty/promotions zwraca listę wszystkich utworzonych na twoim koncie promocji. Aby otrzymać wyłącznie listę cenników hurtowych, skorzystaj z filtra "promotionType=WHOLESALE_PRICE_LIST".
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/sale/loyalty/promotions?promotionType=WHOLESALE_PRICE_LIST' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}'
Przykładowy response:
{
"promotions": [
{
"id": "9de4be5d-9c60-48aa-8711-363625c9d793", // identyfikator cennika
"createdAt": "2020-08-13T06:08:06.011Z", // data utworzenia
"benefits": [
{
"specification": {
"name": "Cennik hurtowy nr 1", // nazwa cennika
"thresholds": [ // progi rabatowe
{
"quantity": { // minimalna ilość zakupionych przedmiotów
"lowerBound": 5
},
"discount": { // wysokość rabatu (%)
"percentage": "5"
}
},
{
"quantity": {
"lowerBound": 10
},
"discount": {
"percentage": "8"
}
}
],
"type": "WHOLESALE_PRICE_LIST"
}
}
],
"offerCriteria": [
{
"type": "OFFERS_ASSIGNED_EXTERNALLY"
}
],
"status": "ACTIVE"
},
{
"id": "8d389509-18ac-4d66-957a-0124b26864fb",
"createdAt": "2020-08-13T06:03:32.649Z",
"benefits": [
{
"specification": {
"name": "Cennik hurtowy nr 2",
"thresholds": [
{
"quantity": {
"lowerBound": 20
},
"discount": {
"percentage": "5"
}
},
{
"quantity": {
"lowerBound": 40
},
"discount": {
"percentage": "10"
}
},
{
"quantity": {
"lowerBound": 60
},
"discount": {
"percentage": "15"
}
}
],
"type": "WHOLESALE_PRICE_LIST"
}
}
],
"offerCriteria": [
{
"type": "OFFERS_ASSIGNED_EXTERNALLY"
}
],
"status": "ACTIVE"
}
],
"totalCount": 2
}
Pobierz informacje o cenniku
Jeżeli chcesz pobrać szczegółowe informacje o wybranym cenniku, użyj GET /sale/loyalty/promotions/{promotionId}.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/sale/loyalty/promotions/9de4be5d-9c60-48aa-8711-363625c9d793' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}'
Przykładowy response:
{
"id": "9de4be5d-9c60-48aa-8711-363625c9d793", // identyfikator cennika
"createdAt": "2020-08-13T06:08:06.011Z", // data utworzenia
"benefits": [
{
"specification": {
"name": "Cennik hurtowy nr 1", // nazwa cennika
"thresholds": [ // progi rabatowe
{
"quantity": { // minimalna liczba zakupionych przedmiotów
"lowerBound": 5
},
"discount": { // wysokość rabatu (%)
"percentage": "5"
}
},
{
"quantity": {
"lowerBound": 10
},
"discount": {
"percentage": "8"
}
}
],
"type": "WHOLESALE_PRICE_LIST"
}
}
],
"offerCriteria": [
{
"type": "OFFERS_ASSIGNED_EXTERNALLY"
}
],
"status": "ACTIVE"
}
Edytuj cennik
Dla cenników hurtowych udostępniliśmy opcję ich edycji. Skorzystaj z PUT /sale/loyalty/promotions/{promotionId}, aby zmienić ustawienia cennika.
Przykładowy request:
curl -X PUT \
'https://api.allegro.pl/sale/loyalty/promotions/9de4be5d-9c60-48aa-8711-363625c9d793' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}' \
-d '{
"id": "9de4be5d-9c60-48aa-8711-363625c9d793",
"benefits": [
{
"specification": {
"name": "Cennik hurtowy nr 1",
"thresholds": [
{
"quantity": {
"lowerBound": 10
},
"discount": {
"percentage": "10"
}
},
{
"quantity": {
"lowerBound": 20
},
"discount": {
"percentage": "20"
}
}
],
"type": "WHOLESALE_PRICE_LIST"
}
}
],
"offerCriteria": [
{
"type": "OFFERS_ASSIGNED_EXTERNALLY"
}
],
"status": "ACTIVE"
}’
Usuń cennik
Aby usunąć cennik hurtowy, skorzystaj z DELETE /sale/loyalty/promotions/{promotionId}. Operacja ta jednocześnie odepnie cennik od wszystkich powiązanych ofert.
Przykładowy request:
curl -X DELETE \
'https://api.allegro.pl/sale/loyalty/promotions/9de4be5d-9c60-48aa-8711-363625c9d793' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}'
Przykładowy response:
status 204 No Content
Rabaty ilościowe
Dzięki rabatom ilościowym możesz zaoferować kupującym rabat na kolejną sztukę, przy zakupie określonej liczby sztuk na jednej bądź wielu ofertach. Więcej na ten temat znajdziesz tutaj.
Dodaj rabat ilościowy
Za pomocą POST /sale/loyalty/promotions dodasz nowy rabat ilościowy. Musisz być zautoryzowany jako sprzedawca, który wystawił te oferty.
Przykładowy request:
curl -X POST \
'https://api.allegro.pl/sale/loyalty/promotions' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}' \
-d '{
"benefits": [{ // wymagane, określa jakie benefity otrzyma kupujący
"specification": {
"type": "UNIT_PERCENTAGE_DISCOUNT", // wymagane, typ benefitu, obecnie dostępne są dwie wartości UNIT_PERCENTAGE_DISCOUNT (określa procentowy rabat jaki otrzyma kupujący na daną sztukę produktu); ORDER_FIXED_DISCOUNT (określa kwotę, o jaką chcesz obniżyć wartość zestawu. Na tej podstawie wyliczymy jego cenę.)
"configuration": {
"percentage": "30" // wymagane, podaj o jaki procent chcesz obniżyć wartość zestawu. Na tej podstawie wyliczymy jego cenę. Minimalna wartość rabatu to 15%, a maksymalna 100%.
},
"trigger": {
"forEachQuantity": "3", // wymagane, podaj co który przedmiot ma podlegać obniżce. Rabat ilościowy dodasz tylko na co 2, 3, 4 bądź 5 sztukę
"discountedNumber": "1" // wymagane, obecnie jest dostępna tylko jedna wartość 1
}
}
}],
"offerCriteria": [{
"type": "CONTAINS_OFFERS", // wymagane, obecnie dostępna jest jedna wartość CONTAINS_OFFERS (określa jakie oferty wchodzą w skład zestawu)
"offers": [{ // wymagane, oferty, które wchodzą w skład zestawu, bądź rabatu ilościowego
"id": "6205628150" // wymagane, identyfikator oferty. Rabatu ilościowego nie dodasz do ofert ze strefy okazji. Jeśli chcesz dodać rabat ilościowy na jednej ofercie podaj tutaj id jednej wybranej oferty. Jeśli podasz wiele id ofert ustawisz rabat ilościowy na wielu ofertach.
},
{
"id": "6205628489"
},
{
"id": "6205628082"
},
{
"id": "6205628361"
}]
}]
}'
Przykładowy response:
{
"id": "1ec57865-7e15-46f2-b70a-27ea857dd21c", // identyfikator utworzonego rabatu, użyj go w zasobach GET, DELETE jako {promotionId}
"createdAt": "2018-10-08T09:28:28.951Z",
"benefits": [
{
"specification": {
"configuration": {
"percentage": "30" // procentowy rabat jaki otrzyma kupujący na daną sztukę produktu
},
"trigger": {
"forEachQuantity": 3, // co który przedmiot ma podlegać obniżce
"discountedNumber": 1
},
"type": "UNIT_PERCENTAGE_DISCOUNT"
}
}
],
"offerCriteria": [
{
"offers": [
{
"id": "6205628150", // numer oferty, która wchodzi w skład rabatu ilościowego na wielu ofertach
"quantity": null, // pole używane dla zestawów ofert - liczba sztuk danej oferty wchodząca w skład zestawu
"promotionEntryPoint": null // pole używane dla zestawów ofert - określ, czy na stronie tej oferty mamy wyświetlać zestaw
},
{
"id": "6205628489",
"quantity": null,
"promotionEntryPoint": null
},
{
"id": "6205628150",
"quantity": null,
"promotionEntryPoint": null
},
{
"id": "6205628082",
"quantity": null,
"promotionEntryPoint": null
},
{
"id": "6205628361",
"quantity": null,
"promotionEntryPoint": null
}]
"type": "CONTAINS_OFFERS"
}
],
"status": "ACTIVE",
"campaigns": null
}
Pobierz dostępne rabaty ilościowe
Za pomocą GET /sale/loyalty/promotions pobierzesz informacje o swoich promocjach. Aby wyfiltrować dostępne rabaty skorzystaj z dostępnych opcji:
- MULTIPACK - rabaty ilościowe na pojedynczej ofercie,
- CROSSMULTIPACK - rabat ilościowy na wielu ofertach.
Poniżej przykłady wywołań filtrów:
- wyszukaj informacje o rabatach ilościowych na pojedynczej ofercie: GET /sale/loyalty/promotions?promotionType=MULTIPACK;
- wyszukaj informacje o promocjach przypisanych do danej oferty: GET /sale/loyalty/promotions?offer.id={offerId}.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/sale/loyalty/promotions' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}'
Przykładowy response:
{
"promotions": [
{
"id": "1ec57865-7e15-46f2-b70a-27ea857dd21c", // identyfikator utworzonego rabatu, użyj go w zasobach GET, DELETE jako {promotionId}
"createdAt": "2018-10-08T09:28:28.951Z",
"benefits": [
{
"specification": {
"configuration": {
"percentage": "30"
},
"trigger": {
"forEachQuantity": 3,
"discountedNumber": 1
},
"type": "UNIT_PERCENTAGE_DISCOUNT"
}
}
],
"offerCriteria": [
{
"offers": [
{
"id": "6205628150",
"quantity": null,
"promotionEntryPoint": null
},
{
"id": "6205628489",
"quantity": null,
"promotionEntryPoint": null
},
{
"id": "6205628150",
"quantity": null,
"promotionEntryPoint": null
},
{
"id": "6205628082",
"quantity": null,
"promotionEntryPoint": null
},
{
"id": "6205628361",
"quantity": null,
"promotionEntryPoint": null
}]
"type": "CONTAINS_OFFERS"
}
],
"status": "ACTIVE",
"campaigns": null
}
{
"id": "3329980c-e0d4-11e8-9f32-f2801f1b9fd1",
"createdAt": "2018-10-08T08:28:28.951Z",
"benefits": [
{
"specification": {
"configuration": {
"percentage": "50"
},
"trigger": {
"forEachQuantity": 3,
"discountedNumber": 1
},
"type": "UNIT_PERCENTAGE_DISCOUNT"
}
}
],
"offerCriteria": [
{
"offers": [
{
"id": "6205628154",
"quantity": null,
"promotionEntryPoint": null
},
{
"id": "6205627489",
"quantity": null,
"promotionEntryPoint": null
},
{
"id": "6205626150",
"quantity": null,
"promotionEntryPoint": null
},
{
"id": "6205628762",
"quantity": null,
"promotionEntryPoint": null
},
{
"id": "6205628337",
"quantity": null,
"promotionEntryPoint": null
}]
"type": "CONTAINS_OFFERS"
}
],
"status": "ACTIVE",
"campaigns": null
}
],
"totalCount": 2
}
Pobierz informacje o rabacie ilościowym
Za pomocą GET /sale/loyalty/promotions/{promotionId} pobierzesz informacje o danej promocji z rabatem ilościowym, w ramach jednego {promotionId}. Musisz być zautoryzowany jako sprzedawca, który dodał tą promocję.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/sale/loyalty/promotions/{promotionId}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}'
Przykładowy response:
{
"id": "1ec57865-7e15-46f2-b70a-27ea857dd21c", // identyfikator utworzonego rabatu, użyj go w zasobach GET, DELETE jako {promotionId}
"createdAt": "2018-10-08T09:28:28.951Z",
"benefits": [
{
"specification": {
"configuration": {
"percentage": "30"
},
"trigger": {
"forEachQuantity": 3,
"discountedNumber": 1
},
"type": "UNIT_PERCENTAGE_DISCOUNT"
}
}
],
"offerCriteria": [
{
"offers": [
{
"id": "6205628150",
"quantity": null,
"promotionEntryPoint": null
},
{
"id": "6205628489",
"quantity": null,
"promotionEntryPoint": null
},
{
"id": "6205628150",
"quantity": null,
"promotionEntryPoint": null
},
{
"id": "6205628082",
"quantity": null,
"promotionEntryPoint": null
},
{
"id": "6205628361",
"quantity": null,
"promotionEntryPoint": null
}]
"type": "CONTAINS_OFFERS"
}
],
"status": "ACTIVE",
"campaigns": null
}
Usuń rabat ilościowy
Za pomocą DELETE /sale/loyalty/promotions/{promotionId} usuniesz wybrany rabat ilościowy.
Przykładowy request:
curl -X DELETE \
'https://api.allegro.pl/sale/loyalty/promotions/{promotionId}' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}'
Przykładowy response:
status 204 No Content
Zestawy ofert
Zestawy ofert to połączenie kilku ofert, które możesz sprzedawać w obniżonej cenie. W ten sposób uatrakcyjnisz swoją ofertę i zachęcisz kupujących do większych zakupów.
Utwórz zestaw ofert
Za pomocą POST /sale/bundles utworzysz nowy zestaw ofert. Zestaw musi się składać minimalnie z 2 ofert, a maksymalnie z 9 ofert. Obecnie zestawy obsługujemy tylko w domenie allegro-pl. Jeśli nie chcesz ustawiać rabatu w zestawie, to w tablicy discounts przekaż null lub pustą tablicę.
Przykładowy request:
curl -X POST \
'https://api.allegro.pl/sale/bundles' \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-d '{
"offers": [ // oferty w zestawie
{
"id": "7775426410", // identyfikator oferty
"requiredQuantity": 1, // wymagana liczba sztuk przedmiotu z oferty w zestawie
"entryPoint": true // czy zestaw będzie widoczny na stronie wskazanej oferty
},
{
"id": "7775426419",
"requiredQuantity": 2,
"entryPoint": false
}
],
"discounts": [ // zniżki związane z zestawem
{
"marketplace": { // identyfikator serwisu
"id": "allegro-pl"
},
"amount": "100.00", // kwota rabatu
"currency": "PLN" // waluta
}
]
}'
Przykładowy response:
{
"id": "56b28455-f51e-4caf-b1f2-254a50a9dd36", // identyfikator zestawu
"offers": [ // oferty w zestawie
{
"id": "7775426410", // identyfikator oferty
"requiredQuantity": 1, // wymagana liczba sztuk przedmiotu z oferty w zestawie
"entryPoint": true // czy zestaw będzie widoczny na stronie wskazanej oferty
},
{
"id": "7775426419",
"requiredQuantity": 2,
"entryPoint": false
}
],
"publication": [ // status publikacji zestawu w serwisach
{
"marketplace": { // identyfikator serwisu
"id": "allegro-pl"
},
"status": "ACTIVE" // status zestawu, dostępne wartości: ACTIVE, SUSPENDED
}
],
"discounts": [ // zniżki związane z zestawem
{
"marketplace": { // identyfikator serwisu
"id": "allegro-pl"
},
"amount": "100.00", // kwota rabatu
"currency": "PLN" // waluta
}
],
"createdAt": "2024-09-27T07:56:16.137Z", // data utworzenia zestawu
"createdBy": "USER" // informacja, kto utworzył zestaw, dostępne wartości: USER, ALLEGRO
}
Pobierz listę zestawów ofert
Za pomocą GET /sale/bundles pobierzesz listę zestawów ofert zautoryzowanego użytkownika.
Aby dostosować listę do swoich potrzeb, możesz skorzystać z parametrów:
- limit - maksymalna liczba zestawów na liście, max 5000;
- offer.id - pozwala filtrować zestawy zawierające ofertę o podanym id;
- page.id - identyfikator kolejnej strony listy prezentującej zestawy ofert.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/sale/bundles' \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json'
Przykładowy response:
{
"bundles": [ // lista zestawów
{
"id": "56b28455-f51e-4caf-b1f2-254a50a9dd36", // identyfikator zestawu
"offers": [ // oferty w zestawie
{
"id": "7775426410", // identyfikator oferty
"requiredQuantity": 1, // wymagana liczba sztuk przedmiotu z oferty w zestawie
"entryPoint": true // czy zestaw będzie widoczny na stronie wskazanej oferty
},
{
"id": "7775426419",
"requiredQuantity": 2,
"entryPoint": false
}
],
"publication": [ // status publikacji zestawu w serwisach
{
"marketplace": { // identyfikator serwisu
"id": "allegro-pl"
},
"status": "ACTIVE" // status zestawu, dostępne wartości: ACTIVE, SUSPENDED
}
],
"discounts": [ // zniżki związane z zestawem
{
"marketplace": { // identyfikator serwisu
"id": "allegro-pl"
},
"amount": "100.00", // kwota rabatu
"currency": "PLN" // waluta
}
],
"createdAt": "2024-09-27T07:56:16.137Z", // data utworzenia zestawu
"createdBy": "USER" // informacja, kto utworzył zestaw, dostępne wartości: USER, ALLEGRO
},
{
"id": "5af902a9-3fbb-4fdb-bece-4a08c0a7556a",
"offers": [
{
"id": "7775430795",
"requiredQuantity": 1,
"entryPoint": true
},
{
"id": "7775430797",
"requiredQuantity": 2,
"entryPoint": true
}
],
"publication": [
{
"marketplace": {
"id": "allegro-pl"
},
"status": "SUSPENDED"
}
],
"discounts": [],
"createdAt": "2024-09-25T17:56:52.992Z",
"createdBy": "USER"
}
],
"nextPage": { // identyfikator kolejnej strony
"id": "MjAyNC0wOS0yNVQxNzo1Njo1Mi45OTJa"
}
}
Pobierz szczegóły wybranego zestawu
Skorzystaj z GET /sale/bundles/{bundleId}, aby pobrać szczegóły wybranego zestawu ofert.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/sale/bundles/56b28455-f51e-4caf-b1f2-254a50a9dd36' \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json'
Przykładowy response:
{
"id": "56b28455-f51e-4caf-b1f2-254a50a9dd36", // identyfikator zestawu
"offers": [ // oferty w zestawie
{
"id": "7775426410", // identyfikator oferty
"requiredQuantity": 1, // wymagana liczba sztuk przedmiotu z oferty w zestawie
"entryPoint": true // czy zestaw będzie widoczny na stronie wskazanej oferty
},
{
"id": "7775426419",
"requiredQuantity": 2,
"entryPoint": false
}
],
"publication": [ // status publikacji zestawu w serwisach
{
"marketplace": { // identyfikator serwisu
"id": "allegro-pl"
},
"status": "ACTIVE" // status zestawu, dostępne wartości: ACTIVE, SUSPENDED
}
],
"discounts": [ // zniżki związane z zestawem
{
"marketplace": { // identyfikator serwisu
"id": "allegro-pl"
},
"amount": "100.00", // kwota rabatu
"currency": "PLN" // waluta
}
],
"createdAt": "2024-09-27T07:56:16.137Z", // data utworzenia zestawu
"createdBy": "USER" // informacja, kto utworzył zestaw, dostępne wartości: USER, ALLEGRO
}
Usuń wybrany zestaw
Za pomocą DELETE /sale/bundles/{bundleId} usuniesz wybrany zestaw ofert.
Przykładowy request:
curl -X DELETE \
'https://api.allegro.pl/sale/bundles/56b28455-f51e-4caf-b1f2-254a50a9dd36' \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json'
Przykładowy response:
status 204 No Content
Zmień rabat przypisany do wybranego zestawu
Skorzystaj z PUT /sale/bundles/{bundleId}/discount, aby zmienić rabat w wybranym zestawie ofert. Spowoduje to zastąpienie aktualnie ustawionych rabatów dla wszystkich rynków, więc niezmienione rabaty również muszą być określone w żądaniu. W przypadku, gdy rabat dla wybranego serwisu nie zostanie określony w żądaniu, zostanie on usunięty.
Przykładowy request:
curl -X PUT \
'https://api.allegro.pl/sale/bundles/56b28455-f51e-4caf-b1f2-254a50a9dd36/discount' \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-d '{
"discounts": [ /// zniżki związane z zestawem
{
"marketplace": { // identyfikator serwisu
"id": "allegro-pl"
},
"amount": "50.00", // kwota rabatu
"currency": "PLN" // waluta
}
]
}'
Przykładowy response:
{
"id": "56b28455-f51e-4caf-b1f2-254a50a9dd36",
"offers": [
{
"id": "7775426410",
"requiredQuantity": 1,
"entryPoint": true
},
{
"id": "7775426419",
"requiredQuantity": 2,
"entryPoint": false
}
],
"publication": [
{
"marketplace": {
"id": "allegro-pl"
},
"status": "ACTIVE"
}
],
"discounts": [
{
"marketplace": {
"id": "allegro-pl"
},
"amount": "50.00",
"currency": "PLN"
}
],
"createdAt": "2024-09-27T07:56:16.137Z",
"createdBy": "USER"
}
Lista zasobów
Pełną dokumentację zasobów w postaci pliku swagger.yaml znajdziesz tu.
Lista zasobów podstawowych opisanych w poradniku:
- POST /sale/loyalty/promotions - dodaj rabat na duże zamówienie, cennik hurtowy, rabat ilościowy lub promocyjny zestaw ofert
- GET /sale/loyalty/promotions/{promotionId} - pobierz szczegółowe informacje o rabacie na duże zamówienie, cenniku hurtowym, rabacie ilościowym lub promocyjnym zestawie ofert
- PUT /sale/loyalty/promotions/{promotionId} - zmień ustawienia rabatu na duże zamówienie lub cennika hurtowego
- PUT /sale/offer-modification-commands/{commandId} - przypisz grupowo cennik hurtowy do ofert
- DELETE /sale/loyalty/promotions/{promotionId} - usuń rabat na duże zamówienie, cennik hurtowy, rabat ilościowy lub promocyjny zestaw ofert
- POST /sale/bundles - utwórz zestaw ofert
- GET /sale/bundles/{bundleId} - pobierz szczegóły wybranego zestawu ofert
- DELETE /sale/bundles/{bundleId} - usuń wybrany zestaw ofert
- PUT /sale/bundles/{bundleId}/discount - zmień rabat dla wybranego zestawu ofert
Lista zasobów wspierających opisanych w poradniku:
- GET /sale/loyalty/promotions - pobierz listę rabatów i promocji
- GET /sale/bundles - pobierz listę zestawów ofert