ScavioScavio
Pricing
Tools
Sign InsGet Startedg
Quick StartAPI & SDKsEcosystem

Trendyol

Trendyol Category API

One Trendyol category's products by category id or link, on any of the 35 storefronts: 36 per page with the total, the search sorts and filters (price, brand, seller, rating, discount, lowest-price badge, seller type, flash sale, coupon, any facet), each item with its price, the price it is shown against, percent off, lowest-price badge, rating and seller id. Category ids are the same on every storefront. Costs 1 credit per request.

POST/api/v1/trendyol/category

Authorizations

Authorizationstringheaderrequired

Bearer authentication header of the form Bearer <token>, where <token> is your Scavio API key (e.g. Bearer sk_live_your_key).

Body

application/json
category_idstring

A category id: 103498 phones, 56 dresses (product category.id or category.tree[].id; the same id on every storefront). Send category_id or url.

Example: 103498

urlstring

A category link (<name>-x-c<id>), alternative to category_id.

Example: https://www.trendyol.com/cep-telefonu-x-c103498

countrystringdefault:tr

The Trendyol storefront, as a lowercase country code. This endpoint serves all 35 Trendyol storefronts (13 languages, 16 currencies). 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).
  • fr — France, EUR, en (English).
  • be — Belgium, EUR, en (English).
  • hr — Croatia, EUR, en (English).
  • dk — Denmark, EUR, en (English).
  • ee — Estonia, EUR, en (English).
  • fi — Finland, EUR, en (English).
  • it — Italy, EUR, en (English).
  • lv — Latvia, EUR, en (English).
  • lt — Lithuania, EUR, en (English).
  • nl — Netherlands, EUR, en (English).
  • pt — Portugal, EUR, en (English).
  • si — Slovenia, EUR, en (English).
  • es — Spain, EUR, en (English).
  • se — Sweden, EUR, en (English).
  • lu — Luxembourg, EUR, en (English).
  • 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).
languagestring

The 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

pageintegerdefault:1

Results page, 1-based, 36 items per page. Trendyol lists at most 138 pages (about 5,000 results a query): page 139 and up answer 400. A page past the last returns no items and a note.

Example: 2

sortenum<string>default:recommended

Result order.

Example: price_asc

  • recommended — The site's recommended order. The default.
  • price_asc — Price, low to high.
  • price_desc — Price, high to low.
  • newest — Newest first.
  • best_seller — Best sellers first.
  • most_favourited — Most favourited first.
  • most_rated — Most rated first.
price_minnumber

Lowest price, in the storefront's currency.

Example: 5000

price_maxnumber

Highest price, in the storefront's currency.

Example: 20000

brand_idstring | string[]

1 to 10 brand ids (items[].brand.id, e.g. 794 Samsung).

Example: 794

seller_idstring

Only one seller's items (items[].seller.id).

Example: 4473

min_ratingnumber

Product rating and up: 1, 2, 3, 4 or 4.5.

Example: 4

free_shippingboolean

Only items with free shipping.

Example: true

fast_deliveryboolean

Only items with rush delivery.

Example: true

min_discountinteger

Only items at least this many percent off (1 to 90).

Example: 30

lowest_price_daysinteger

Only items carrying Trendyol's lowest-price badge for that many days: 7, 10, 14, 30 or 90 (10, 14, 30 and 90 on tr; 7, 14 and 30 on the international storefronts).

Example: 30

seller_typeenum<string>

Only items from one kind of seller, as Trendyol badges them.

Example: official

  • official — The brand's official seller.
  • authorized — Authorized sellers.
  • successful — Sellers Trendyol badges as successful.
flash_saleboolean

Only flash-sale items.

Example: true

has_couponboolean

Only items with a collectable coupon.

Example: true

filtersobject

Any other facet, keyed by facets[].param with facets[].options[].value values (send include_facets once to read them): {"attr": ["348|1"]} is a color, {"wg": "1"} a gender. At most 12 facets, 10 values each.

Example: {"attr": ["348|1"]}

include_facetsboolean

Also return facets (filter groups with option values and counts: what filters takes). 2 calls, still 1 credit.

Example: true

Request

from scavio import ScavioClient

client = ScavioClient(api_key="sk_live_your_key", timeout=120)

# Best-selling phones that carry Trendyol's 30-day lowest-price badge.
r = client.trendyol.category(category_id="103498", sort="best_seller", lowest_price_days=30)["data"]
print(r["category"]["name"], r["total"])
for i in r["items"]:
    print(i["content_id"], i["name"], i["price"], i["original_price"], i["lowest_price_badge"], i["sponsored"])

Response

"count": 24,
"sponsored_count": 12,
"total": 16834,
"total_capped": false,
"page": 1,
"page_size": 36,
"total_pages": 138,
"sort": "recommended",
"requested_filters": {},
"country": "tr",
"language": "tr",
"currency": "TRY"
},
"response_time": 847
}
PreviousTrendyol ProductNextTrendyol Brand
ScavioScavio

One scraper API for every social, search, e-commerce and real estate platform. Built for AI agents.

Product

  • Features
  • Pricing
  • Dashboard
  • Affiliates

Developers

  • Documentation
  • API Reference
  • Quickstart
  • MCP Integration
  • Python SDK

Alternatives

  • Tavily Alternative
  • SerpAPI Alternative
  • Firecrawl Alternative
  • Exa Alternative
  • Serper Alternative
  • Tavily vs Scavio
  • SerpAPI vs Scavio
  • All alternatives
  • Compare Scavio vs alternatives

Search APIs

  • Google Search API
  • Amazon Product API
  • YouTube API
  • Reddit API
  • Walmart Product API
  • TikTok API
  • Instagram API

Tools

  • All Tools

Ask AI about Scavio

© 2026 Scavio. All rights reserved.

Featured on TAAFT
Terms of ServicePrivacy Policy