Trendyol
Trendyol Rankings API
A Trendyol category's top-100 list (Trendyol's best-seller pages): best sellers, most favourited, most rated or most viewed, 20 per page over 5 pages, each item with its rank, content id, name, brand, price, the price it is shown against, percent off, lowest-price badge, badges, promotions, rating, review count, stock and seller id. On 20 storefronts. Costs 1 credit per request.
Authorizations
AuthorizationstringheaderrequiredBearer authentication header of the form Bearer <token>, where <token> is your Scavio API key (e.g. Bearer sk_live_your_key).
Body
application/jsoncategory_idstringrequiredA category id: 56 dresses, 103498 phones, 1156 lipsticks (product category.id or category.tree[].id).
Example: 56
rankingenum<string>default:best_sellerWhich list.
Example: most_favourited
best_seller— Best sellers. The default.most_favourited— Most favourited.most_rated— Most rated.top_viewed— Most viewed.
pageintegerdefault:1Page of 20, 1 to 5 (the top 100).
Example: 2
countrystringdefault:trThe Trendyol storefront, as a lowercase country code. This endpoint serves 20 storefronts: tr, de, at, bg, gr, cz, hu, pl, ro, sk, rs, ua, md, ae, sa, qa, kw, om, bh and az. The 15 English-language EU storefronts (fr, be, hr, dk, ee, fi, it, lv, lt, nl, pt, si, es, se, lu) have no ranking lists and answer 400. Names come back in the storefront's language and prices in its currency, never converted; the answer echoes country, language and currency. ge, kz, kg and iq are served by Trendyol as the Turkish storefront, and ie, mt, gb, ru, us, ca, jo and lb are not sold to: they answer 400, not charged.
Example: tr
tr— Turkey, TRY, tr (Turkish) or en (English) or ar (Arabic); default tr. The default.de— Germany, EUR, de (German).at— Austria, EUR, de (German).bg— Bulgaria, EUR, bg (Bulgarian) or en (English); default bg.gr— Greece, EUR, el (Greek) or en (English); default el.cz— Czechia, CZK, cs (Czech) or en (English); default cs.hu— Hungary, HUF, hu (Hungarian) or en (English); default hu.pl— Poland, PLN, pl (Polish) or en (English); default pl.ro— Romania, RON, ro (Romanian) or en (English); default ro.sk— Slovakia, EUR, sk (Slovak) or en (English); default sk.rs— Serbia, RSD, sr (Serbian (Latin)) or en (English); default sr.ua— Ukraine, UAH, uk (Ukrainian) or en (English); default uk.md— Moldova, MDL, ro (Romanian) or en (English); default ro.ae— United Arab Emirates, AED, en (English) or ar (Arabic); default en.sa— Saudi Arabia, SAR, ar (Arabic) or en (English); default ar.qa— Qatar, QAR, ar (Arabic) or en (English); default ar.kw— Kuwait, KWD, ar (Arabic) or en (English); default ar.om— Oman, OMR, ar (Arabic) or en (English); default ar.bh— Bahrain, BHD, ar (Arabic) or en (English); default ar.az— Azerbaijan, AZN, tr (Turkish).
languagestringThe answer's language, from the storefront's own list (the first is the default): tr tr, en or ar; de and at de; the 15 English-language EU storefronts en; bg bg or en; gr el or en; cz cs or en; hu hu or en; pl pl or en; ro and md ro or en; sk sk or en; rs sr or en; ua uk or en; ae en or ar; sa, qa, kw, om and bh ar or en; az tr. Titles, categories and reviews come back in it. A language the storefront does not serve answers 400.
Example: en
Request
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key", timeout=120)
# The 100 best-selling dresses on trendyol.com, 5 pages of 20.
for page in range(1, 6):
r = client.trendyol.rankings(category_id="56", ranking="best_seller", page=page)["data"]
for i in r["items"]:
print(i["rank"], i["content_id"], i["name"], i["price"], i["original_price"], i["rating"])Response