allegro / allegro-api

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

PUT sale/offers/{offerid} błąd VALIDATION_ERROR - StartingAt cannot be changed #3851

Closed kieliszek85 closed 3 years ago

kieliszek85 commented 3 years ago

Występuje problem:

:beetle: Opis Podczas próby modyfikacji kilku ofert (metoda PUT sale/offers) otrzymujemy błąd "StartingAt cannot be changed", podczas gdy w strukturze pól nie przesyłamy takiego parametru. Dotyczy to tylko kilku wybranych ofert, więc przypuszczamy że jest to problem z konkretnymi ofertami, przykładowe numery ofert: 9850933064, 9850932895, 9850932811

Zawartość JSON dla aktualizacji jednej z ofert: {"additionalServices":null,"afterSalesServices":{"impliedWarranty":{"id":"3c572b10-ed99-4153-98e3-dcfcc77e7bff"},"returnPolicy":{"id":"b7eb8f8a-b795-41cc-820a-49c0103f7cd2"},"warranty":{"id":"8fab0902-e91f-40e5-ac8f-5d9a48f4fe48"}},"category":{"id":"45628"},"compatibilityList":null,"contact":null,"delivery":{"additionalInfo":"Zam\u00f3wienia z\u0142o\u017cone do godziny 12:00 s\u0105 wysy\u0142ane tego samego lub maksymalnie nast\u0119pnego dnia roboczego. Przy zakupie kilku produkt\u00f3w za przesy\u0142k\u0119 p\u0142acisz tylko raz!!!","handlingTime":"PT24H","shippingRates":{"id":"00a54ad2-0e5e-4fa9-b453-2d85cec00c58"}},"description":{"sections":[{"items":[{"type":"IMAGE","url":"https:\/\/a.allegroimg.com\/original\/11d5aa\/36854f1c4fa2ac99956a1f88aeac"}]},{"items":[{"type":"TEXT","content":"

Nazwa produktu:<\/p>"}]},{"items":[{"type":"TEXT","content":"

\r\nP\u0142yn hamulcowy mineralny 500ml<\/h1>"}]},{"items":[{"type":"TEXT","content":"

SOLIDNY PRODUKT W SUPER CENIE!<\/h2>"}]},{"items":[{"type":"TEXT","content":"
    \r\n
  • Zapewnia maksymaln\u0105 \u017cywotno\u015b\u0107 hamulc\u00f3w<\/li>\r\n
  • Bardzo dobra wydajno\u015b\u0107 w szerokim zakresie temperatur<\/li>\r\n
  • Nie pieni si\u0119<\/li>\r\n
  • Nie koroduje uszczelek<\/li>\r\n
  • Neutralny dla element\u00f3w z tworzyw sztucznych<\/li>\r\n
  • Pojemno\u015b\u0107: 500ml<\/b><\/li>\r\n<\/ul>"}]},{"items":[{"type":"TEXT","content":"

    <\/p>"}]},{"items":[{"type":"IMAGE","url":"https:\/\/a.allegroimg.com\/original\/11f9b4\/d811bf4c493897326b211ac96c79"}]},{"items":[{"type":"TEXT","content":"

    \u00a0<\/p>

    Star BluBike to w\u0142oski producent smar\u00f3w i \u015brodk\u00f3w do konserwacji, kt\u00f3ry swoj\u0105 popularno\u015b\u0107 zdoby\u0142 dzi\u0119ki \u015brodkom dedykowanym do nart i innego sprz\u0119tu zimowego. Po osi\u0105gni\u0119ciu sukcesu przyszed\u0142 czas na poszerzenie oferty o ca\u0142kowicie nowe produkty, dedykowane specjalnie rowerom. Firma produkuje zaawansowane technologicznie substancje smaruj\u0105ce i konserwuj\u0105ce, takie jak nano-cz\u0105steczkowe smary, syntetyczne smary ceramiczne, fluoropolimerowe i inne. Produkty oferowane przez Star BluBike ciesz\u0105 si\u0119 co raz wi\u0119ksz\u0105 popularno\u015bci\u0105 i s\u0105 cz\u0119sto polecane na r\u00f3\u017cnego rodzaju forach tematycznych.\u00a0<\/p>

    \u00a0<\/p>

    \u00a0<\/p>

    Oferujemy mineralny p\u0142yn hamulcowy marki Star BluBike. P\u0142yn posiada niski wsp\u00f3\u0142czynnik lepko\u015bci, przez co jest specjalnie polecany do hydraulicznych system\u00f3w hamulcowych.<\/p>

    \u00a0<\/p>

    Zalety:<\/p>

    • zapewnia maksymaln\u0105 \u017cywotno\u015b\u0107 hamulc\u00f3w<\/li>
    • bardzo dobra wydajno\u015b\u0107 w szerokim zakresie temperatur<\/li>
    • nie pieni si\u0119<\/li>
    • nie koroduje uszczelek<\/li>
    • neutralny dla element\u00f3w z tworzyw sztucznych<\/li><\/ul>"}]},{"items":[{"type":"TEXT","content":"

      CECHY PRODUKTU \r\nP\u0142yn hamulcowy mineralny 500ml<\/h2>"}]},{"items":[{"type":"TEXT","content":"
        \t\t\t\t\t\t
      • Marka produktu: Pozostali<\/b><\/li>\r\n \t\t\t\t\t\t\t
      • EAN: 2000000490076<\/b><\/li>\r\n \t\t\t\t\t\t\t
      • Kod producenta: STA032<\/b><\/li>\r\n \t\t\t\t\t\t\t
      • Pojemno\u015b\u0107: 500 ml<\/b><\/li>\r\n \t<\/ul>\r\n"}]},{"items":[{"type":"TEXT","content":"

        Zapraszamy do zapoznania si\u0119 z innymi naszymi aukcjami<\/h2>"}]},{"items":[{"type":"IMAGE","url":"https:\/\/a.allegroimg.com\/original\/11d5aa\/36854f1c4fa2ac99956a1f88aeac"}]},{"items":[{"type":"TEXT","content":"

        [!wewnetrzne_id=18539!\/]<\/p>"}]}]},"external":{"id":"9112089"},"images":[{"url":"https:\/\/a.allegroimg.com\/original\/11d5aa\/36854f1c4fa2ac99956a1f88aeac"},{"url":"https:\/\/a.allegroimg.com\/original\/11f9b4\/d811bf4c493897326b211ac96c79"}],"location":{"city":"Gdynia","countryCode":"PL","postCode":"81-311","province":"POMORSKIE"},"name":"P\u0142yn olej hamulcowy mineralny 500ml wydajny","parameters":[{"id":"11323","valuesIds":["11323_1"],"values":[],"rangeValue":null},{"id":"224017","valuesIds":[],"values":["STA032"],"rangeValue":null},{"id":"222893","valuesIds":["222893_301289"],"values":[],"rangeValue":null},{"id":"244505","valuesIds":[],"values":["P\u0142yn hamulcowy mineralny 500ml"],"rangeValue":null},{"id":"222925","valuesIds":["222925_301705"],"values":[],"rangeValue":null},{"id":"222929","valuesIds":["222929_301729"],"values":[],"rangeValue":null},{"id":"127649","valuesIds":[],"values":["500"],"rangeValue":null}],"payments":{"invoice":"VAT"},"promotion":{"bold":false,"departmentPage":false,"emphasized":false,"emphasizedHighlightBoldPackage":false,"highlight":false},"publication":{"duration":"P30D","status":"ACTIVE"},"sellingMode":{"format":"BUY_NOW","minimalPrice":{"amount":"0.00","currency":"PLN"},"price":{"amount":"50.00","currency":"PLN"},"startingPrice":{"amount":"0.00","currency":"PLN"}},"sizeTable":null,"stock":{"available":"99999","unit":"UNIT"},"tax":{"percentage":"23.00"},"id":"9850932895"}

        to samo w formie bardziej przyjaznej dla czlowieka:

        array( 'additionalServices' => null, 'afterSalesServices' => array( 'impliedWarranty' => array( 'id' => '3c572b10-ed99-4153-98e3-dcfcc77e7bff' ), 'returnPolicy' => array( 'id' => 'b7eb8f8a-b795-41cc-820a-49c0103f7cd2' ), 'warranty' => array( 'id' => '8fab0902-e91f-40e5-ac8f-5d9a48f4fe48' ) ), 'category' => array( 'id' => '45628' ), 'compatibilityList' => null, 'contact' => null, 'delivery' => array( 'additionalInfo' => 'Zamówienia złożone do godziny 12:00 są wysyłane tego samego lub maksymalnie następnego dnia roboczego. Przy zakupie kilku produktów za przesyłkę płacisz tylko raz!!!', 'handlingTime' => 'PT24H', 'shippingRates' => array( 'id' => '00a54ad2-0e5e-4fa9-b453-2d85cec00c58' ) ), 'description' => array( 'sections' => array( (int) 0 => array( 'items' => array( (int) 0 => array( 'type' => 'IMAGE', 'url' => 'https://a.allegroimg.com/original/1132c2/72dd843e48a7b32508bedc392ec5' ) ) ), (int) 1 => array( 'items' => array( (int) 0 => array( 'type' => 'TEXT', 'content' => '

        Nazwa produktu:

        ' ) ) ), (int) 2 => array( 'items' => array( (int) 0 => array( 'type' => 'TEXT', 'content' => '

        Płyn hamulcowy mineralny 500ml

        ' ) ) ), (int) 3 => array( 'items' => array( (int) 0 => array( 'type' => 'TEXT', 'content' => '

        SOLIDNY PRODUKT W SUPER CENIE!

        ' ) ) ), (int) 4 => array( 'items' => array( (int) 0 => array( 'type' => 'TEXT', 'content' => '

        • Zapewnia maksymalną żywotność hamulców
        • Bardzo dobra wydajność w szerokim zakresie temperatur
        • Nie pieni się
        • Nie koroduje uszczelek
        • Neutralny dla elementów z tworzyw sztucznych
        • Pojemność: 500ml
        ' ) ) ), (int) 5 => array( 'items' => array( (int) 0 => array( 'type' => 'TEXT', 'content' => '

        ' ) ) ), (int) 6 => array( 'items' => array( (int) 0 => array( 'type' => 'IMAGE', 'url' => 'https://a.allegroimg.com/original/1160ed/69460ed54bfdb0aa47ae1d3f6980' ) ) ), (int) 7 => array( 'items' => array( (int) 0 => array( 'type' => 'TEXT', 'content' => '

        Star BluBike to włoski producent smarów i środków do konserwacji, który swoją popularność zdobył dzięki środkom dedykowanym do nart i innego sprzętu zimowego. Po osiągnięciu sukcesu przyszedł czas na poszerzenie oferty o całkowicie nowe produkty, dedykowane specjalnie rowerom. Firma produkuje zaawansowane technologicznie substancje smarujące i konserwujące, takie jak nano-cząsteczkowe smary, syntetyczne smary ceramiczne, fluoropolimerowe i inne. Produkty oferowane przez Star BluBike cieszą się co raz większą popularnością i są często polecane na różnego rodzaju forach tematycznych.

        Oferujemy mineralny płyn hamulcowy marki Star BluBike. Płyn posiada niski współczynnik lepkości, przez co jest specjalnie polecany do hydraulicznych systemów hamulcowych.

        Zalety:

        • zapewnia maksymalną żywotność hamulców
        • bardzo dobra wydajność w szerokim zakresie temperatur
        • nie pieni się
        • nie koroduje uszczelek
        • neutralny dla elementów z tworzyw sztucznych
        ' ) ) ), (int) 8 => array( 'items' => array( (int) 0 => array( 'type' => 'TEXT', 'content' => '

        CECHY PRODUKTU Płyn hamulcowy mineralny 500ml

        ' ) ) ), (int) 9 => array( 'items' => array( (int) 0 => array( 'type' => 'TEXT', 'content' => '
        • Marka produktu: Pozostali
        • EAN: 2000000490076
        •                                             <li>Kod producenta: <b>STA032</b></li>
                                                      <li>Pojemność: <b>500 ml</b></li>
                              </ul>

          ' ) ) ), (int) 10 => array( 'items' => array( (int) 0 => array( 'type' => 'TEXT', 'content' => '

          Zapraszamy do zapoznania się z innymi naszymi aukcjami

          ' ) ) ), (int) 11 => array( 'items' => array( (int) 0 => array( 'type' => 'IMAGE', 'url' => 'https://a.allegroimg.com/original/1132c2/72dd843e48a7b32508bedc392ec5' ) ) ), (int) 12 => array( 'items' => array( (int) 0 => array( 'type' => 'TEXT', 'content' => '

          [!wewnetrzne_id=18539!/]

          ' ) ) ) ) ), 'external' => array( 'id' => '9112089' ), 'images' => array( (int) 0 => array( 'url' => 'https://a.allegroimg.com/original/1132c2/72dd843e48a7b32508bedc392ec5' ), (int) 1 => array( 'url' => 'https://a.allegroimg.com/original/1160ed/69460ed54bfdb0aa47ae1d3f6980' ) ), 'location' => array( 'city' => 'Gdynia', 'countryCode' => 'PL', 'postCode' => '81-311', 'province' => 'POMORSKIE' ), 'name' => 'Płyn olej hamulcowy mineralny 500ml wydajny', 'parameters' => array( (int) 0 => array( 'id' => '11323', 'valuesIds' => array( (int) 0 => '11323_1' ), 'values' => array(), 'rangeValue' => null ), (int) 1 => array( 'id' => '224017', 'valuesIds' => array(), 'values' => array( (int) 0 => 'STA032' ), 'rangeValue' => null ), (int) 2 => array( 'id' => '222893', 'valuesIds' => array( (int) 0 => '222893_301289' ), 'values' => array(), 'rangeValue' => null ), (int) 3 => array( 'id' => '244505', 'valuesIds' => array(), 'values' => array( (int) 0 => 'Płyn hamulcowy mineralny 500ml' ), 'rangeValue' => null ), (int) 4 => array( 'id' => '222925', 'valuesIds' => array( (int) 0 => '222925_301705' ), 'values' => array(), 'rangeValue' => null ), (int) 5 => array( 'id' => '222929', 'valuesIds' => array( (int) 0 => '222929_301729' ), 'values' => array(), 'rangeValue' => null ), (int) 6 => array( 'id' => '127649', 'valuesIds' => array(), 'values' => array( (int) 0 => '500' ), 'rangeValue' => null ) ), 'payments' => array( 'invoice' => 'VAT' ), 'promotion' => array( 'bold' => false, 'departmentPage' => false, 'emphasized' => false, 'emphasizedHighlightBoldPackage' => false, 'highlight' => false ), 'publication' => array( 'duration' => 'P30D', 'status' => 'ACTIVE' ), 'sellingMode' => array( 'format' => 'BUY_NOW', 'minimalPrice' => array( 'amount' => '0.00', 'currency' => 'PLN' ), 'price' => array( 'amount' => '50.00', 'currency' => 'PLN' ), 'startingPrice' => array( 'amount' => '0.00', 'currency' => 'PLN' ) ), 'sizeTable' => null, 'stock' => array( 'available' => '99999', 'unit' => 'UNIT' ), 'tax' => array( 'percentage' => '23.00' ), 'id' => '9850932895' )

PrzemyslawLukanowski commented 3 years ago

Otrzymujesz ten błąd, ponieważ każda ze wspomnianych ofert zawiera określoną datę w polu publication.startingAt. Czyli jeżeli nie przesyłasz tego pola, traktowane jest to jako próba nadpisania wartością null. Prześlij to pole wraz z odpowiednią wartością, którą otrzymasz na podstawie danych z GET /sale/offers/{offerID}.

kieliszek85 commented 3 years ago

@PrzemyslawLukanowski taką sytuację aktualnie zaobserwowaliśmy tylko na jednym naszym koncie, tylko przy 5 ofertach spośród 25 tysięcy ofert.... przy innych ofertach tego problemu nie obserwujemy. Skro problem jest taki, że czegoś nie przesyłamy w API, to dlaczego ten problem dotyczy tylko tych 5 konkretnych ofert?

PrzemyslawLukanowski commented 3 years ago

Sprawdziłem przykładowe wywołania dla tego konta - tam, gdzie w odpowiedzi zwracaliśmy poprawną odpowiedź, oferty w polu publication.startingAt miały null, dlatego było możliwe ominięcie tego pola w wysyłanym żądaniu.

stale[bot] commented 3 years ago

W tym wątku nie pojawiła się żadna nowa odpowiedź w ciągu 30 dni. Dlatego automatycznie oznaczamy go jako przeterminowany. Jeśli w ciągu 7 dni nie pojawi się żadna odpowiedź, zamkniemy ten wątek. Dziękujemy za zaangażowanie w dyskusję.