allegro / allegro-api

Issue tracker and wiki for Allegro REST API
https://developer.allegro.pl/
217 stars 39 forks source link

Nadmiarowe pola podczas wystawiania i edycji oferty przy pomocy /sale/product-offers #9689

Closed tztztztz closed 3 months ago

tztztztz commented 3 months ago

Występuje problem:

Kiedy tworzymy ofertę najczęściej robimy to na podstawie istniejącej oferty traktując ją jako szablon, w którym podmieniamy tylko niektóre informacje takie jak opis, cena, czy identyfikator external.

Pomimo tego, podczas tworzenia oferty pojawiają się ostrzeżenia "metadata":{"unknownProperties":"publication, base, endedBy, endingAt"}, szczegóły niżej w przykładowym response.

Tak jakby pobrana z allegro oferta zawierała w sobie nadmiarowe pola, które potem powodują powstawanie błędów przy próbie stworzenia oferty na podstawie tych danych.

Czy dałoby się zrobić tak, aby dane oferty pobrane przez /sale/product-offers/{id} były pozbawione wad które generują potem ostrzeżenia?

PRZYKŁADOWY REQUEST:

{"name":"Kingdom` Rush: Elemental Uprising (edycja","productSet":[{"product":{"id":"a3dce24b-7d5d-48f1-aae4-57609e527408","publication":{"status":"LISTED"},"parameters":[{"id":"225693","name":"EAN (GTIN)","values":["5035225125271"],"valuesIds":null,"rangeValue":null},{"id":"249239","name":"Wydawca","values":["10 Chambers Collective"],"valuesIds":["249239_1655102"],"rangeValue":null},{"id":"249540","name":"Producent","values":["10 Chambers Collective"],"valuesIds":["249540_1661265"],"rangeValue":null},{"id":"234925","name":"Tytu\u0142","values":["F1 24 PL (PS5) + Bonus!"],"valuesIds":null,"rangeValue":null},{"id":"234569","name":"Platforma","values":["PlayStation 5 (PS5)"],"valuesIds":["234569_724014"],"rangeValue":null},{"id":"215890","name":"Wersja gry","values":["pude\u0142kowa"],"valuesIds":["215890_272094"],"rangeValue":null},{"id":"215894","name":"Granice wiekowe (PEGI)","values":["12"],"valuesIds":["215894_272174"],"rangeValue":null},{"id":"24628","name":"Wykorzystuje kontroler ruchu","values":["Tak"],"valuesIds":["24628_1"],"rangeValue":null},{"id":"216085","name":"Wersja j\u0119zykowa","values":["Angielska","Polska"],"valuesIds":["216085_2","216085_1"],"rangeValue":null},{"id":"247907","name":"Tematyka","values":["gry akcji"],"valuesIds":["247907_835373"],"rangeValue":null}],"name":"Kingdom Rush: Elemental Uprising (edycja angielska)","images":["https:\/\/new3.3kropki.pl\/img_p\/6\/6\/1\/0\/7\/9\/6\/0\/6661cf9fd7912_kingdom-rush-elemental-uprising-edycja-angielska.webp"]},"quantity":{"value":1},"responsiblePerson":null}],"parameters":[{"id":"11323","name":"Stan","values":["Nowy"],"valuesIds":["11323_1"],"rangeValue":null}],"afterSalesServices":{"impliedWarranty":{"id":"f0beaa4a-db75-4ade-9f4d-deae73af5c19"},"returnPolicy":{"id":"94839bc0-79fa-4c7b-8696-18420aa8e49d"},"warranty":{"id":"ca583305-bd29-46e2-939a-6ff0c81e9919"}},"payments":{"invoice":"VAT"},"sellingMode":{"format":"BUY_NOW","price":{"amount":"211.17","currency":"PLN"},"startingPrice":null,"minimalPrice":null},"stock":{"available":10,"unit":"UNIT"},"location":{"countryCode":"PL","province":"SLASKIE","city":"Bielsko-Bia\u0142a","postCode":"43-300"},"delivery":{"shippingRates":{"id":"5f5691a3-5595-4149-b789-f816c2b1c128"},"handlingTime":"PT24H","additionalInfo":null,"shipmentDate":null},"description":{"sections":[{"items":[{"type":"TEXT","content":"

Kingdom Rush: Elemental Uprising to samodzielna gra, b\u0119d\u0105ca kontynuacj\u0105 Kingdom Rush: Rift in Time. \u00a0 Jest to kooperacyjna gra planszowa typu tower-defence dla 1 do 4 graczy. Znajduje si\u0119 w niej 12 scenariuszy, kt\u00f3re mo\u017cna ogra\u0107 oddzielnie lub w ramach kampanii, gdzie gracze stawiaj\u0105 czo\u0142a r\u00f3\u017cnorodnym bossom i wykonuj\u0105 zadania specyficzne dla poszczeg\u00f3lnych bohater\u00f3w. \u00a0 W Elemental Uprising znajdziesz nowe postaci, tereny, przeciwnik\u00f3w oraz mo\u017cliwo\u015bci modyfikacji wie\u017c za pomoc\u0105 naklejek wielokrotnego u\u017cytku, co dodaje grze nowych wymiar\u00f3w taktycznych. Gracze mog\u0105 r\u00f3wnie\u017c wybiera\u0107 mi\u0119dzy r\u00f3\u017cnymi poziomami trudno\u015bci, a dla zaawansowanych dost\u0119pne s\u0105 nawet wyzwania na poziomie \u017celaznym! \u00a0 Uwaga! Gra jest dost\u0119pna w j\u0119zyku angielskim, ale wi\u0119kszo\u015b\u0107 komponent\u00f3w zawiera symbole i jest niezale\u017cna j\u0119zykowo. Na stronie wydawcy znajduje si\u0119 dost\u0119pna do pobrania polska instrukcja wraz z ksi\u0119g\u0105 scenariuszy, s\u0142owniczek oraz przewodnik Crossover guide do \u0142\u0105czenia gry z Kingdom Rush: Rift in Time.<\/p>"}]}]},"external":{"id":"491852"},"category":{"id":"82326"},"taxSettings":{"subject":"GOODS","exemption":null,"rates":[{"rate":"23.00","countryCode":"PL"},{"rate":"21.00","countryCode":"CZ"},{"rate":"20.00","countryCode":"SK"},{"rate":"27.00","countryCode":"HU"}]},"sizeTable":null,"discounts":{"wholesalePriceList":null},"contact":null,"fundraisingCampaign":null,"messageToSellerSettings":null,"attachments":[],"b2b":null,"additionalServices":null,"compatibilityList":null,"additionalMarketplaces":{"allegro-sk":{"sellingMode":null,"publication":{"state":"NOT_REQUESTED","refusalReasons":[]}},"allegro-cz":{"sellingMode":null,"publication":{"state":"NOT_REQUESTED","refusalReasons":[]}},"allegro-business-cz":{"sellingMode":null,"publication":{"state":"NOT_REQUESTED","refusalReasons":[]}}},"language":"pl-PL","publication":{"status":"INACTIVE","duration":null,"endedBy":null,"endingAt":null,"startingAt":null,"republish":false,"marketplaces":{"base":{"id":"allegro-pl"},"additional":[]}},"images":["https:\/\/a.allegroimg.allegrosandbox.pl\/original\/116bea\/3532d6ff4e199f9aa45d3f456125","https:\/\/a.allegroimg.allegrosandbox.pl\/original\/11f26b\/edd3591f4527b8903c6e17622cdc"]} 

PRZYKŁADOWY RESPONSE:

{"name":"Kingdom Rush: Elemental Uprising (edycja","productSet":[{"product":{"id":"a3dce24b-7d5d-48f1-aae4-57609e527408","publication":{"status":"LISTED"},"parameters":[{"id":"234925","name":"Tytuł","values":["F1 24 PL (PS5) + Bonus!"],"valuesIds":null,"rangeValue":null},{"id":"234569","name":"Platforma","values":["PlayStation 5 (PS5)"],"valuesIds":["234569_724014"],"rangeValue":null},{"id":"225693","name":"EAN (GTIN)","values":["5035225125271"],"valuesIds":null,"rangeValue":null},{"id":"249239","name":"Wydawca","values":["10 Chambers Collective"],"valuesIds":["249239_1655102"],"rangeValue":null},{"id":"249540","name":"Producent","values":["10 Chambers Collective"],"valuesIds":["249540_1661265"],"rangeValue":null},{"id":"215890","name":"Wersja gry","values":["pudełkowa"],"valuesIds":["215890_272094"],"rangeValue":null},{"id":"215894","name":"Granice wiekowe (PEGI)","values":["12"],"valuesIds":["215894_272174"],"rangeValue":null},{"id":"24628","name":"Wykorzystuje kontroler ruchu","values":["Tak"],"valuesIds":["24628_1"],"rangeValue":null},{"id":"216085","name":"Wersja językowa","values":["Angielska","Polska"],"valuesIds":["216085_2","216085_1"],"rangeValue":null},{"id":"247907","name":"Tematyka","values":["gry akcji"],"valuesIds":["247907_835373"],"rangeValue":null}]},"quantity":{"value":1},"responsiblePerson":null}],"parameters":[{"id":"11323","name":"Stan","values":["Nowy"],"valuesIds":["11323_1"],"rangeValue":null}],"images":["https://a.allegroimg.allegrosandbox.pl/original/116bea/3532d6ff4e199f9aa45d3f456125","https://a.allegroimg.allegrosandbox.pl/original/11f26b/edd3591f4527b8903c6e17622cdc"],"afterSalesServices":{"impliedWarranty":{"id":"f0beaa4a-db75-4ade-9f4d-deae73af5c19"},"returnPolicy":{"id":"94839bc0-79fa-4c7b-8696-18420aa8e49d"},"warranty":{"id":"ca583305-bd29-46e2-939a-6ff0c81e9919"}},"payments":{"invoice":"VAT"},"sellingMode":{"format":"BUY_NOW","price":{"amount":"211.17","currency":"PLN"},"startingPrice":null,"minimalPrice":null},"stock":{"available":10,"unit":"UNIT"},"location":{"countryCode":"PL","province":"SLASKIE","city":"Bielsko-Biała","postCode":"43-300"},"delivery":{"shippingRates":{"id":"5f5691a3-5595-4149-b789-f816c2b1c128"},"handlingTime":"PT24H","additionalInfo":null,"shipmentDate":null},"description":{"sections":[{"items":[{"type":"TEXT","content":"

Kingdom Rush: Elemental Uprising to samodzielna gra, będąca kontynuacją Kingdom Rush: Rift in Time.   Jest to kooperacyjna gra planszowa typu tower-defence dla 1 do 4 graczy. Znajduje się w niej 12 scenariuszy, które można ograć oddzielnie lub w ramach kampanii, gdzie gracze stawiają czoła różnorodnym bossom i wykonują zadania specyficzne dla poszczególnych bohaterów.   W Elemental Uprising znajdziesz nowe postaci, tereny, przeciwników oraz możliwości modyfikacji wież za pomocą naklejek wielokrotnego użytku, co dodaje grze nowych wymiarów taktycznych. Gracze mogą również wybierać między różnymi poziomami trudności, a dla zaawansowanych dostępne są nawet wyzwania na poziomie żelaznym!   Uwaga! Gra jest dostępna w języku angielskim, ale większość komponentów zawiera symbole i jest niezależna językowo. Na stronie wydawcy znajduje się dostępna do pobrania polska instrukcja wraz z księgą scenariuszy, słowniczek oraz przewodnik Crossover guide do łączenia gry z Kingdom Rush: Rift in Time.
"}]}]},"external":{"id":"491852"},"category":{"id":"82326"},"taxSettings":{"subject":"GOODS","exemption":null,"rates":[{"rate":"23.00","countryCode":"PL"},{"rate":"21.00","countryCode":"CZ"},{"rate":"20.00","countryCode":"SK"},{"rate":"27.00","countryCode":"HU"}]},"sizeTable":null,"discounts":{"wholesalePriceList":null},"contact":null,"fundraisingCampaign":null,"messageToSellerSettings":null,"attachments":[],"b2b":null,"additionalServices":null,"compatibilityList":null,"additionalMarketplaces":{"allegro-sk":{"sellingMode":null,"publication":{"state":"NOT_REQUESTED","refusalReasons":[]}},"allegro-cz":{"sellingMode":null,"publication":{"state":"NOT_REQUESTED","refusalReasons":[]}},"allegro-business-cz":{"sellingMode":null,"publication":{"state":"NOT_REQUESTED","refusalReasons":[]}}},"id":"7775422579","language":"pl-PL","publication":{"status":"INACTIVE","duration":null,"endedBy":null,"endingAt":null,"startingAt":null,"republish":false,"marketplaces":{"base":{"id":"allegro-pl"},"additional":[]}},"validation":{"errors":[],"warnings":[{"code":"UnknownJSONProperty","message":"Unknown properties found in the request.","details":null,"path":null,"userMessage":"Unrecognized properties in payload has been found.","metadata":{"unknownProperties":"publication, base, endedBy, endingAt"}}],"validatedAt":"2024-08-19T12:08:35.414Z"},"createdAt":"2024-08-19T12:08:35.000Z","updatedAt":"2024-08-19T12:08:35.439Z"}
MartaNowaczyk commented 3 months ago

Witam, działa to tak jak piszesz i nie będziemy tego zmieniać. Dodatkowo, od 19 września, zwiększymy włączymy walidację nadmiarowych pól, zamiast ostrzeżenia pojawi się błąd i takiej oferty nie wystawisz.