Open MaciejFrackowiak opened 3 weeks ago
A co z załącznikami typu Instrukcja z informacją o bezpieczeństwie w polu attachments? Nie wystarczy tam wrzucić taki załącznik?
Zgodnie z regulacją informacja powinna być przypisana do każdego produktu wchodzącego w skład oferty. Za pośrednictwem pola "attachments" możesz dodać tylko po jednym typie załącznika do samej oferty, nie produktu.
No, tak, ale dwa pola wprowadzają zamieszanie i sprzedawca może nie wiedzieć, czy spełnił wymaganie, czy nie. Stąd pytanie, czy w przypadku, gdy oferta zawiera jeden produkt nie będzie to wystarczające?
@tomasz-grzesik To pytanie już do regulatora, ponieważ to wymóg Unii Europejskiej, a nie nasz. Ponadto pamiętaj, że instrukacja bezpieczeństwa dodana przy pomocy safetyInformation może zawierać do 20 załączników, a ofertowa wersja tylko 1.
Jak długo dodane załączniki są przechowywane przez allegro. Czy jeden wygenerowany attachmentId można używać wielokrotnie? Czy przesłane załączniki można gdzieś zobaczyć bądź je pobrać?
Tak, jeden uploadowany załącznik może być dołączony do dowolnej liczby ofert/produktów. Wykonując PUT /sale/offer-attachments/{attachmentId} w odpowiedzi zwracamy ścieżkę, pod którą dostępny jest załącznik.
okej, a jak długo te dane będą przechowywane? Chodzi mi o to, że jeśli dodam załącznik to przez jak długi okres czasu będę mógł wystawiać oferty używając tego załącznika.
@skiewlicz Tak długo jak będzie wykorzystywany, tak długo będzie dostępny.
Otrzymuję taki komunikat: otrzymałem taki komunikat:
Obiekt załącznika utworzony, ID załącznika: 4d1e1618-1f28-4a6e-9c61-679209bec80c
d:\Python\python-3.10.0-embed-amd64\cwiczenia\.venv\Lib\site-packages\urllib3\connectionpool.py:1099: InsecureRequestWarning: Unverified HTTPS request is being made to host 'api.allegro.pl'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
warnings.warn(
Błąd SSL, ponawiam próbę (1/3): HTTPSConnectionPool(host='api.allegro.pl', port=443): Max retries exceeded with url: /sale/offer-attachments/4d1e1618-1f28-4a6e-9c61-679209bec80c/content (Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:2427)')))
d:\Python\python-3.10.0-embed-amd64\cwiczenia\.venv\Lib\site-packages\urllib3\connectionpool.py:1099: InsecureRequestWarning: Unverified HTTPS request is being made to host 'api.allegro.pl'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
warnings.warn(
Czy coś jest z zabezpieczeniami SSL po stronie API?
@grzman Spojrzałem w logi i wywołujesz zasób, który nie istnieje - "PUT /sale/offer-attachments/4d1e1618-1f28-4a6e-9c61-679209bec80c/content" - usuń "/content".
moment sprawdzę, właćnie pobrałem wszystki ID ofert, czy mogę do każdej tej oferty dodać ten sam załącznik?
@grzman Tak, jeden załącznik może być dodany do dowolnej liczby ofert.
otrzymałem teraz to:
Obiekt załącznika utworzony, ID załącznika: 7c60137d-35b2-49e7-98a5-5a31a13e6a7f d:\Python\python-3.10.0-embed-amd64\cwiczenia\.venv\Lib\site-packages\urllib3\connectionpool.py:1099: InsecureRequestWarning: Unverified HTTPS request is being made to host 'api.allegro.pl'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings warnings.warn( Błąd SSL, ponawiam próbę (1/3): HTTPSConnectionPool(host='api.allegro.pl', port=443): Max retries exceeded with url: /sale/offer-attachments/7c60137d-35b2-49e7-98a5-5a31a13e6a7f (Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:2427)'))) d:\Python\python-3.10.0-embed-amd64\cwiczenia\.venv\Lib\site-packages\urllib3\connectionpool.py:1099: InsecureRequestWarning: Unverified HTTPS request is being made to host 'api.allegro.pl'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings warnings.warn( Błąd SSL, ponawiam próbę (2/3): HTTPSConnectionPool(host='api.allegro.pl', port=443): Max retries exceeded with url: /sale/offer-attachments/7c60137d-35b2-49e7-98a5-5a31a13e6a7f (Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:2427)'))) d:\Python\python-3.10.0-embed-amd64\cwiczenia\.venv\Lib\site-packages\urllib3\connectionpool.py:1099: InsecureRequestWarning: Unverified HTTPS request is being made to host 'api.allegro.pl'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings warnings.warn( Błąd SSL, ponawiam próbę (3/3): HTTPSConnectionPool(host='api.allegro.pl', port=443): Max retries exceeded with url: /sale/offer-attachments/7c60137d-35b2-49e7-98a5-5a31a13e6a7f (Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:2427)'))) Nie udało się przesłać pliku po maksymalnej liczbie prób. PS D:\Python\python-3.10.0-embed-amd64\cwiczenia>
@grzman Obecnie nie przekazujesz poprawnej wartości nagłówka Accept - "/". Powinno być "application/vnd.allegro.public.v1+json".
może podeślę cały kod mógłbyś mi go sprawdzić? może na coś wpadniesz?
@grzman Tu już nie pomogę, ponieważ nie weryfikujemy kodu. Być może któryś z forumowiczów będzie mógł Tobie pomóc.
ok. dziękuję za pomoc, poradziłem sobie już dalej z tym.
Chciałbym wrócić do tematu, wczoraj przez kilka godzin ładowałem załczniki o bezpieczeństwie do ofert prawie 40k ofert, na niektórych ofertach zauważyłem komunikat o błędzie, chciałbym sprawdzić które z ofert nie mają załącznika, można to jakoś sprawdzić? , czy jest na to jakiś filtr w liście ofert(nie znalazłem), czy z poziomu API można?
@grzman Z poziomu WWW takiego filtra obecnie nie ma. W API widać to pobierając szczegóły danej oferty - GET /sale/product-offers/{offerId}.
oferty pobieram z tego zasobu: url_offers = "https://api.allegro.pl/sale/offers" czy w tym jest informacja o załcznikach? bo troch e się różni ten link od tego który podałeś.
@grzman Niestety listing ofert nie zawiera informacji o tym. Musisz pobierać każdą ofertę indywidualnie.
@grzman Dokładnie tak jak napisał @Maczuga - na liście ofert tej informacji nie znajdziesz.
ok, muszę coś wyczarować, a czy w przyszłości z pozoomu interfejsu SCenter będzie taka funkcjonalność aby zweryfikować wymagane dane w ofercie na temat GPSR, czy Allegro planuje coś takiego wdrożyć?
@grzman Takie pierwsze opcje już się pojawiły.
A ja dopytam - czy dodanie opcji "TEXT" jest w planach do implementacji przed 13 grudnia?
@Maczuga Tak, działamy by stało się to możliwie jak najszybciej.
a jeszcze jedna sprawa, czy mogę dla jednego konta uruchomić jednocześnie np. 4 skrypty które będą ładować pliki pdf, mam asortyment w 4 kategoriach w każdej kategorii po około 50 k +/- ofert i do każdj oferty w danej kategorii muszę dodać inny plik z informacją o bezpieczeństwie. jedną kategorię łąduję około 7 h. czy się coś wykrzacczy?
@grzman Jednocześnie możesz mieć otwartych 20 sesji, więc nie powinno nic się wydarzyć.
witam ponownie, czy dla tego zasobu jest potrzebny osobny token dostęu? GET /sale/product-offers/{offerId}
@grzman Nie, jeden token "bearer-token-for-user" z nadanymi odpowiednimi scope'ami pozwala obsłużyć wszystkie zasoby naszego API.
13 grudnia 2024 zacznie obowiązywać nowe rozporządzenie Unii Europejskiej General Product Safety Regulation. Jednym z jego elementów są załączniki, w których sprzedający powinien umieścić informacje z ostrzeżeniami o produkcie np. instrukcja produktu. Jeśli sprzedający nie ma instrukcji, może to być zdjęcie oznaczeń na opakowaniu produktu. Ważne, aby załączniki były w języku urzędowym kraju, z którego jest kupujący. Zatem, jeśli sprzedający udostępnia swoją ofertę na wszystkie rynki Allegro, instrukcja powinna zawierać wersję polską, czeską, słowacką, czy węgierską.
Jakie zmiany wprowadziliśmy?
Dla:
dodaliśmy nowy obiekt “productSet.[].safetyInformation”, w którym wskażesz, czy dla danego produktu posiadasz informacje o bezpieczeństwie produktu. Dla każdego produktu musisz przekazać osobne dane.
Obecnie możesz zdefiniować jeden z dwóch typów informacji:
Uwaga! W przyszłości umożliwimy dodanie informacji o bezpieczeństwie produktu również w postaci opisu tekstowego (type: “TEXT”).
Przykładowy request:
Pole “safetyInformation” aktualnie jest opcjonalne. W dniu 13.12.2024 oznaczymy je jako obowiązkowe.
Jednocześnie, dla załączników z informacją o bezpieczeństwie produktu (“SAFETY_INFORMATION_MANUAL”), które dodasz w oparciu o zasób POST /sale/offer-attachments wprowadziliśmy dziś zmiany:
Dlaczego wprowadziliśmy zmianę?
Wdrożyliśmy informacje o bezpieczeństwie produktu, aby dostosować Allegro do prawa Unii Europejskiej. GPSR, oprócz producentów, importerów, dystrybutorów, itd., nakłada nowe obowiązki na platformy internetowe umożliwiające sprzedaż na odległość. Platformy muszą dostosować i zorganizować swój interfejs w taki sposób, aby sprzedający mogli wypełnić swoje obowiązki wynikające z rozporządzenia.
On December 13, 2024, the new European Union Regulation General Product Safety Regulation will come into effect. One of its elements are attachments, in which the seller should include information with warnings about the product, such as product instructions. If the seller does not have a manual, it can be a photo of the product labelings. The attachments must be in the official language of the buyer's country. Therefore, if a seller offers their product on all Allegro markets, the manual should include Polish, Czech, Slovak, and Hungarian versions.
What changes have we made?
For:
we have added a new object “productSet.[].safetyInformation”, in which you will indicate whether you have product safety information for a given product. You must pass separate data for each product.
Currently, you can define one of two types of information:
Note! In the future, we will make it possible to add product safety information also in the form of a text description (type: “TEXT”).
Sample request:
The “safetyInformation” field is currently optional. On December 13, 2024, we will mark it as required.
At the same time, for attachments with product safety information (“SAFETY_INFORMATION_MANUAL”) that you add based on the POST /sale/offer-attachments we have made changes today:
Why have we made the change?
We have implemented product safety information to align Allegro with European Union law. The GPSR, in addition to producers, importers, distributors, etc., imposes new obligations on online platforms that enable distance selling. Platforms must adjust and organize their interface in such a way that sellers can fulfill their obligations under the regulation.