22 grudnia 2022
Umożliwiamy wyszukiwanie i pobieranie danych produktów w różnych językach
W przyszłym roku sprzedający będą mogli wyświetlać oferty w zagranicznych serwisach platformy Allegro, dlatego już teraz udostępniamy nowy parametr "language", dzięki czemu wyszukasz i pobierzesz produkty w języku, który wskażesz.
Jakich zasobów dotyczy zmiana?
- GET /sale/products - wyszukaj produkt,
- GET /sale/products/{productId} - pobierz informacje o produkcie.
Co zmieniliśmy?
Dodaliśmy możliwość wyszukiwania produktów w różnych językach:
- dla GET /sale/products?phrase="ps5"&language=cs-CZ zwrócimy listę produktów znalezionych dla szukanej frazy we wskazanym języku w parametrze "language". Na tym etapie wspieramy wyszukiwanie w języku czeskim.
Udostępniliśmy pobranie danych produktu w wersji językowej wskazanej w parametrze "language":
- dla GET /sale/products/{productId}?language=cs-CZ zwrócimy dane produktu w języku czeskim. Dostępne języki znajdziesz w dokumentacji.
- jeśli nie mamy jeszcze produktu przetłumaczonego na wskazany język, zwrócimy błąd ze statusem 404 "ProductLanguageVersionUnavailableException" z komunikatem w języku zgodnym z wartością przekazaną w nagłówku "Accept-Language". Jeśli nie podasz wartości dla "Accept-Language", domyślnie zwrócimy komunikat w języku polskim.
Jeśli nie podasz wartości dla parametru "language", będziemy bazować na wartości z nagłówka "Accept-Language", dlatego musisz zadbać o to by parametr "language" był uwzględniony w zapytaniu. Gdy podasz parametr "language", to "Accept-Language" będzie określał wyłącznie język zwracanych komunikatów błędów. Jeśli nie podasz wartości dla "Accept-Language", domyślnie zwrócimy dane produktu w języku polskim. Np. możesz zapytać o produkt z parametrem language=cs-CZ i Accept-Language=en-US, wtedy dane produktu otrzymasz w języku czeskim, a komunikaty błędów w języku angielskim.
Wprowadzamy walidację dla języka w nagłówku "Accept-Language" oraz dla parametru "language". W przypadku, gdy wprowadzisz nieobsługiwany język, zwrócimy błąd ze statusem 422.