# Trendyol Scraper - Products, Prices, Sellers, Reviews & Q\&A (`scrapersdelight/trendyol-scraper`) Actor

Scrape Trendyol products and prices from search, category, brand, store or product links in 35 storefronts: price, discount, rating, favourites, seller, shipping, badges. Add product pages, 30-day price history, reviews, answered questions and seller profiles. Price monitor mode. No login.

- **URL**: https://apify.com/scrapersdelight/trendyol-scraper.md
- **Developed by:** [Scrapers Delight](https://apify.com/scrapersdelight) (community)
- **Categories:** E-commerce, Lead generation, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.40 / 1,000 products

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

### What does Trendyol Scraper do?

**Trendyol Scraper** extracts product data from [Trendyol](https://www.trendyol.com), Turkey's largest online marketplace, and turns a search term, a category, brand or store link, or a list of product ids into clean rows: one row per product with price, struck-through price, discount, rating, favourites, seller, shipping flags and badges. Built for e-commerce sellers, brands, price-intelligence teams and market researchers who need Trendyol prices and sellers on a schedule without copying pages by hand.

Trendyol scraper · Trendyol product scraper · Trendyol price scraper · Trendyol API · fiyat takibi

- **Every product surface:** keyword search, category, brand, gender, store (`/magaza/…`), campaign and product links, product ids and seller ids, in one run.
- **35 Trendyol storefronts:** Turkey, Azerbaijan, Germany, the Gulf, Central and Eastern Europe — each in its own currency.
- **Product page details on demand:** seller legal details, every other seller's offer, all attributes, sizes with stock and price, description, exact favourite count and Trendyol's AI review summary.
- **Trendyol's own 30-day price history** for each product, plus a **price monitor mode** that returns only new products and price or stock changes.
- **Past the search limit:** Trendyol stops every search after 138 pages; "Search past the 5,000-result limit" splits a big search into price bands and returns far more of the catalogue.
- **Reviews, answered questions and seller profiles** as separate rows, each charged only when you switch it on.
- **No login or Trendyol API key needed.**
- **Export anywhere:** JSON, CSV, Excel; schedules, webhooks, Make, Zapier, n8n, Google Sheets; the Apify API and MCP server.

### What data can you get from Trendyol?

<table>
<tr><td>🆔 Product id (<code>productId</code>)</td><td>🏷️ Name, brand, category</td><td>🔗 Product link + images</td></tr>
<tr><td>💲 Price paid (<code>price</code>)</td><td>✂️ Struck-through price + discount %</td><td>📉 30-day low reference, Plus and app prices</td></tr>
<tr><td>⭐ Rating + rating count</td><td>❤️ Favourites (exact with details)</td><td>🛒 Order count label</td></tr>
<tr><td>🚚 Free shipping, fast delivery, ships today, next day</td><td>🎟️ Coupon, deal, flash sale, influencer pick</td><td>🏆 Best-seller rank, badges, promotions</td></tr>
<tr><td>🏪 Seller id, name, score</td><td>🧾 Seller official name, tax and registration numbers, address, email</td><td>👥 Other sellers' offers, lowest / highest offer</td></tr>
<tr><td>📐 Sizes / variants with stock and price</td><td>📋 All attributes, description</td><td>🤖 AI review summary, rating histogram, topics</td></tr>
<tr><td>📈 Daily price history (30 days)</td><td>🔔 Change type, previous price, change %</td><td>📢 Sponsored flag + position</td></tr>
<tr><td>💬 Reviews: stars, text, date, size bought, photos</td><td>❓ Answered questions with the seller's answer</td><td>🏬 Seller profiles: followers, products, time on Trendyol</td></tr>
</table>

Measured on real Trendyol responses (432 search results across Turkey, Germany, Azerbaijan and the UAE): every row had id, name, brand, price, currency, link and images; 85% had a rating, 86% a favourites label, 56% free shipping, 47.5% a struck-through price. With product page details on (100 products), 100% had the seller name, score, official name, city, tax number, address and attributes; 93% a seller email (Turkish sellers publish their registered KEP address), 73% a registration number, 55% other sellers' offers and 53% a description.

### How to scrape Trendyol with Trendyol Scraper

1. [Create a free Apify account](https://console.apify.com/sign-up) — monthly free credit, no card needed.
2. Open Trendyol Scraper and click **Try for free**.
3. Type a search term into **Search terms** (e.g. `telefon`) or paste Trendyol links into **Trendyol links**, and pick your **Storefronts**.
4. Set **Maximum products**, and switch on **Product page details**, **Reviews** or **Answered questions** if you need them.
5. Click **Start**. Rows appear in the dataset as each page is read.
6. Open **Storage** and **Export** as JSON, CSV or Excel — or schedule the run.

### ⬇️ Input

| Section | Parameter | Type | What it does |
|---|---|---|---|
| What to scrape | `searchQueries` | string list | Search terms, e.g. `telefon`, `airpods pro`. Prefilled: `telefon`. |
| | `startUrls` | string list | Search, category (`…-x-c103498`), brand (`…-x-b794`), store (`/magaza/…-m-968`), campaign (`/butik/liste/…`) and product links (`…-p-881465224`). `/yorumlar` and `/saticiya-sor` links return reviews or answered questions. |
| | `productIds` | string list | Product (content) ids; each is read in every storefront you pick. |
| | `sellerIds` | string list | Seller ids or store links: lists that seller's products. |
| | `storefronts` | list | 35 countries. Default `TR`. |
| Filters (Trendyol's own) | `sort` | select | Recommended, newest, price up / down, best sellers, most favourited, most rated. |
| | `minPrice`, `maxPrice` | integer | Price range in the storefront's currency. |
| | `minRating` | select | 1 to 4.5 stars and up. |
| | `freeShippingOnly`, `fastDeliveryOnly`, `sameDayShippingOnly`, `couponOnly`, `dealsOnly`, `flashSaleOnly`, `newReleaseOnly`, `influencerOnly`, `topSellersOnly` | boolean | Trendyol's filter toggles. |
| | `lowestPriceDays` | select | Only products at their lowest price of the last 10, 14 or 30 days. |
| Refine results | `maxRating`, `minRatingCount`, `minDiscountPercent`, `discountedOnly`, `inStockOnly`, `officialSellerOnly`, `brandMatchOnly`, `includeSponsored`, `includeKeywords`, `excludeKeywords` | mixed | Checked on every row before it is saved. |
| Extra data | `includeDetails` | boolean | Product page details (add-on). |
| | `includePriceHistory` | boolean | Trendyol's daily price series. |
| | `includeReviews`, `maxReviewsPerProduct` (20), `reviewSort`, `reviewsSince`, `reviewRatings`, `reviewsWithPhotosOnly`, `reviewKeyword` | mixed | Review rows and their filters. |
| | `includeQuestions`, `maxQuestionsPerProduct` (20) | mixed | Answered question rows. |
| | `includeSellerProfiles` | boolean | One profile row per seller found. |
| Monitoring | `monitorMode`, `minPriceChangePercent`, `monitorStoreName` | mixed | New and changed products only; see below. |
| Output | `maxResults` (100), `maxResultsPerSource`, `deepSearch`, `compact`, `includeRawData` | mixed | Caps and row shape. |
| Advanced | `proxyConfiguration`, `maxConcurrency` (8) | mixed | Usually left alone. |

#### Input JSON

```json
{
    "searchQueries": ["airpods"],
    "storefronts": ["TR"],
    "sort": "bestSeller",
    "minRating": "4",
    "freeShippingOnly": true,
    "includeDetails": true,
    "includePriceHistory": true,
    "maxResults": 100
}
```

#### Paste the link Trendyol shows you

Filters you set on trendyol.com travel inside the link (`?prc=1000-5000&fc=true&sst=BEST_SELLER`). Paste that link into **Trendyol links** and the run reads exactly the result list you see. Links with a language prefix (`/de/`, `/pl/`, `/ar-qa/`) or on trendyol.ae / trendyol.sa are read in that storefront.

#### Use product ids for a price comparison across countries

Give a product id and pick several storefronts: each storefront that sells it returns its own row and currency. A product a storefront does not sell is listed under `notFound` in the run summary and is not charged.

### ⬆️ Output

Each product is one row (`recordType: "product"`). A real row from a test run, shortened:

```json
{
    "recordType": "product",
    "productId": "812982801",
    "name": "Yenilenmiş iPhone 13 128 GB Yıldız Işığı Cep Telefonu (12 Ay Garantili) - A Kalite",
    "brand": "Apple",
    "price": 27528.39,
    "sellingPrice": 28977.25,
    "currency": "TRY",
    "rating": 3.9,
    "ratingCount": 1379,
    "favoriteCount": 87430,
    "sellerName": "Getmobil",
    "sellerScore": 7.7,
    "sellerOfficialName": "GETMOBİL TEKNOLOJİ ANONİM ŞİRKETİ",
    "offerCount": 6,
    "lowestOfferPrice": 27528.39,
    "highestOfferPrice": 31824.05,
    "priceHistoryMin": 27528.39,
    "priceHistoryMax": 32045.02,
    "storefront": "TR"
}
```

Review rows (`recordType: "review"`) carry `rating`, `comment`, `createdAt`, `isVerifiedPurchase`, `likesCount`, the seller bought from, and for clothing the `productSize`, `productFit`, `reviewerHeight` and `reviewerWeight`; photos come as full-size `imageUrls`. Question rows (`recordType: "question"`) carry `question`, `answer`, `askedAt`, `answeredIn` and the seller. Seller rows (`recordType: "seller"`) carry `followerCount`, `productCount`, `sellerScore`, `onTrendyolFor`, `sellerLocation`, `averageShippingTime`, `averageAnswerTime`, `officialName`, `taxNumber`, `registrationNumber`, `address` and `email`. The dataset has six views: Products, Prices & monitor, Sellers on products, Reviews, Answered questions, Seller profiles.

Reviewer and asker names arrive masked by Trendyol (`**** ****`).

### Use cases

- 💲 **Price monitoring (fiyat takibi):** schedule a daily run in monitor mode and get only price drops, rises and stock changes.
- 🏪 **Seller research:** list every seller in a category with score, followers, product count and official company details.
- 🥊 **Competitor tracking:** watch a competitor's store (`sellerIds`) and every other seller undercutting you on a product.
- 📊 **Assortment analysis:** read a whole category past Trendyol's page limit and compare brands, prices and ratings.
- ⭐ **Review mining:** pull 1- and 2-star reviews (`reviewRatings`) with sizes and photos for product feedback.
- 🌍 **Cross-border pricing:** compare one product's price across Turkey, Germany, the UAE and 32 other storefronts.

### How much does it cost to scrape Trendyol?

Pay per row delivered, no start fee. Filtered, duplicate, sponsored-repeat, unchanged (monitor mode) and not-found products are not charged.

| Event | Price | 100 rows | 1,000 rows |
|---|---|---|---|
| Product | $0.0004 | $0.04 | $0.40 |
| Product page details (add-on per product) | $0.00028 | $0.028 | $0.28 |
| Review | $0.00018 | $0.018 | $0.18 |
| Answered question | $0.00045 | $0.045 | $0.45 |
| Seller profile | $0.0013 | $0.13 | $1.30 |

The prefilled run (20 products) costs $0.008. Price history is included at no extra charge. Apify's free plan credit covers thousands of product rows a month.

### Integrations, API, scheduling & MCP

Run Trendyol Scraper on a **schedule** (daily price checks pair with monitor mode), send results to **Google Sheets**, Slack or email with **webhooks**, or connect it to **Make**, **Zapier** and **n8n**. Call it from your own code with the Apify API in Python or JavaScript, or from an AI agent through the Apify **MCP** server. The run summary (`RUN_SUMMARY` in the key-value store) lists Trendyol's own result total for each source next to the rows delivered.

### More marketplace scrapers

- [Amazon Product Scraper](https://apify.com/scrapersdelight/amazon-product-scraper) — Amazon search results, prices, ratings and reviews.
- [Amazon Reviews Scraper](https://apify.com/scrapersdelight/amazon-reviews-scraper) — Amazon ratings histogram and review text.
- [Amazon Seller Email Scraper](https://apify.com/scrapersdelight/amazon-seller-leads-scraper) — Amazon sellers' business details.
- [AliExpress Products Scraper](https://apify.com/scrapersdelight/aliexpress-products-scraper) — AliExpress prices, sellers, SKUs and stock.

### Limits & empty runs

- **Search depth:** Trendyol shows 138 pages per search. A page holds 36 cards, of which 9-18 can be sponsored, so one search reaches about 3,700-5,000 products. "Search past the 5,000-result limit" splits it into price bands.
- **Sponsored cards** repeat on many pages; each product is delivered once per storefront.
- **Price history** exists only where Trendyol keeps one (products with a recent price change); other products return an empty list.
- **Seller email** is published by Trendyol for Turkish sellers (their KEP address) and on EU storefronts; it is empty where the seller has none.
- **Store reviews** (buyers rating the seller rather than a product) are not read; seller rows carry the store's score and average product rating instead.
- **An empty run** (a seller id with no products, a filter that matches nothing) finishes successfully, charges nothing and says why in the run summary.

### FAQ

#### How much does Trendyol Scraper cost?

$0.0004 per product row, plus optional add-ons (details $0.00028 per product, reviews $0.00018, answered questions $0.00045, seller profiles $0.0013). There is no start fee.

#### How many products can Trendyol Scraper return?

As many as Trendyol lists. A normal search stops after 138 pages (about 3,700-5,000 products); a plain "telefon" search returned 3,664 products in 138 pages. With "Search past the 5,000-result limit" a search for "airpods" (29,313 results reported by Trendyol) returned 33,223 unique products in 1,066 pages and 47 price bands, in under 9 minutes on a test run.

#### Can Trendyol Scraper monitor prices on a schedule?

Yes. Set **Monitor mode** to "New and changed" and schedule the run daily. Each run checks the same top products and returns only new ones and those whose price or stock changed, with `changeType`, `previousPrice` and `priceChangePercent`. Reviews and answered questions in monitor mode return only new ones.

#### Which Trendyol storefronts does Trendyol Scraper support?

Turkey, Azerbaijan, Germany, Austria, Belgium, Bulgaria, Croatia, Czechia, Denmark, Estonia, Finland, France, Greece, Hungary, Italy, Latvia, Lithuania, Luxembourg, Netherlands, Poland, Portugal, Romania, Slovakia, Slovenia, Spain, Sweden, Serbia, Ukraine, Moldova, the UAE, Saudi Arabia, Qatar, Kuwait, Oman and Bahrain.

#### Do I need a Trendyol account or API key for Trendyol Scraper?

No. It reads the same public product data the Trendyol website shows any visitor.

#### Can I use Trendyol Scraper with the Apify API or Python?

Yes. Start it with the Apify API or the `apify-client` package for Python or JavaScript and read the dataset when the run finishes. Every row has a `recordType` column so one export splits into products, reviews, questions and sellers.

#### Can I use Trendyol Scraper through an MCP server?

Yes. Add it to the Apify MCP server and an AI agent can run searches and read the rows; switch on **Compact output** for smaller rows.

#### Why did Trendyol Scraper return no products?

Check the run summary: it lists each source with Trendyol's own total, filtered counts by reason, and ids Trendyol does not sell in that storefront. Nothing is charged for a run that returns no rows.

#### Does Trendyol Scraper return sponsored products?

Yes, marked `isSponsored: true` with their `position`. Switch off **Include sponsored results** to keep organic results only.

#### Is it legal to scrape Trendyol?

Trendyol Scraper collects publicly available product, price, seller, review and answered-question information. You are responsible for making sure your use complies with applicable laws and Trendyol's terms.

#### Your feedback

Found a bug or need a field? Open an issue on the **Issues** tab and we will look at it.

# Actor input Schema

## `searchQueries` (type: `array`):

Words you would type in Trendyol's search box, one per line, e.g. "telefon", "airpods pro", "kadın elbise". Each term is searched in every storefront you pick.

## `startUrls` (type: `array`):

Search (/sr?q=…), category (…-x-c103498), brand (…-x-b794), store (/magaza/…-m-968), campaign (/butik/liste/…) or product links (…-p-881465224). A product's /yorumlar or /saticiya-sor link also returns its reviews or answered questions.

## `productIds` (type: `array`):

Trendyol content ids (the number after -p- in a product link), e.g. 881465224. Each id is looked up in every storefront you pick, so one id gives a price comparison across countries.

## `sellerIds` (type: `array`):

Seller (merchant) ids or store links, e.g. 968 or https://www.trendyol.com/magaza/trendyol-m-968. Lists that seller's products.

## `storefronts` (type: `array`):

Which Trendyol countries to read. Each has its own catalogue, prices and currency (Turkey TRY, Germany EUR, UAE AED …). Default: Turkey.

## `sort` (type: `string`):

Order of search and category results (Trendyol's own sort).

## `minPrice` (type: `integer`):

Lowest price in the storefront's currency, e.g. 1000 (TRY on Turkey). Empty = no minimum.

## `maxPrice` (type: `integer`):

Highest price in the storefront's currency, e.g. 5000. Empty = no maximum.

## `minRating` (type: `string`):

Only products rated at least this many stars.

## `freeShippingOnly` (type: `boolean`):

Only products with free shipping (Kargo Bedava).

## `fastDeliveryOnly` (type: `boolean`):

Only products Trendyol marks for fast delivery (Hızlı Teslimat).

## `sameDayShippingOnly` (type: `boolean`):

Only products that ship the same day (Bugün Kargoda).

## `couponOnly` (type: `boolean`):

Only products with a collectable coupon (Kuponlu Ürünler).

## `dealsOnly` (type: `boolean`):

Only Trendyol's deal products (Fırsatlı Ürünler).

## `flashSaleOnly` (type: `boolean`):

Only flash-sale products (Flaş Ürünler).

## `newReleaseOnly` (type: `boolean`):

Only products Trendyol marks as new (Yeni Ürünler).

## `influencerOnly` (type: `boolean`):

Only products picked by influencers (Fenomenlerin Seçtikleri).

## `topSellersOnly` (type: `boolean`):

Only products from sellers scoring 9 or more (9 Puan Üzeri Satıcılar).

## `lowestPriceDays` (type: `string`):

Only products at their lowest price of the last 10, 14 or 30 days (Fiyat Geçmişi).

## `maxRating` (type: `number`):

Only products rated at most this many stars, e.g. 3 to find weak products. Empty = no maximum.

## `minRatingCount` (type: `integer`):

Only products with at least this many ratings, e.g. 50.

## `minDiscountPercent` (type: `integer`):

Only products whose shown price is at least this % below the struck-through price, e.g. 20.

## `discountedOnly` (type: `boolean`):

Only products showing a struck-through (earlier or list) price.

## `inStockOnly` (type: `boolean`):

Skip products shown as sold out.

## `officialSellerOnly` (type: `boolean`):

Only products sold by a brand's authorised (official) seller.

## `brandMatchOnly` (type: `boolean`):

For search terms: keep only products whose brand appears in the term, e.g. "apple iphone" keeps Apple and drops case makers.

## `includeSponsored` (type: `boolean`):

Trendyol mixes sponsored products into results (about 1 in 4). Turn off to keep organic results only. Every row has isSponsored and position.

## `includeKeywords` (type: `array`):

Keep products whose name contains any of these words (case and Turkish accents ignored), e.g. "128 GB".

## `excludeKeywords` (type: `array`):

Drop products whose name contains any of these words, e.g. "kılıf" (case).

## `includeDetails` (type: `boolean`):

Open each product's page: seller name, score and legal details, other sellers' offers, all attributes, sizes with stock and price, description, exact favourite count, AI review summary and topic sentiment. Charged as a product-details add-on.

## `includePriceHistory` (type: `boolean`):

Trendyol's own daily price series for each product (when the site keeps one) with the 30-day low and high. No extra charge.

## `includeReviews` (type: `boolean`):

Customer reviews of each product as separate rows (charged per review).

## `maxReviewsPerProduct` (type: `integer`):

Most reviews saved per product. 0 = all Trendyol shows.

## `reviewSort` (type: `string`):

Order reviews are read in, before the per-product limit.

## `reviewsSince` (type: `string`):

Only reviews written on or after this date, e.g. 2026-09-01. With "Newest first" reading stops at the first older review.

## `reviewRatings` (type: `array`):

Only reviews with these star ratings, e.g. 1 and 2 for complaints. Empty = all.

## `reviewsWithPhotosOnly` (type: `boolean`):

Only reviews that include customer photos or videos.

## `reviewKeyword` (type: `string`):

Only reviews whose text contains this word, e.g. "kargo".

## `includeQuestions` (type: `boolean`):

Buyer questions with the seller's answer, as separate rows (charged per question).

## `maxQuestionsPerProduct` (type: `integer`):

Most answered questions saved per product. 0 = all.

## `includeSellerProfiles` (type: `boolean`):

One row per seller found: score, followers, product count, time on Trendyol, location, shipping and answer times, official name, tax and registration numbers, address. Charged per seller row.

## `monitorMode` (type: `string`):

Off: every matching product. New and changed: only products not delivered before, or whose price or stock changed (with previous price and change %). New only: products never delivered before. Reviews and questions: only new ones.

## `minPriceChangePercent` (type: `number`):

In "New and changed" mode, ignore price moves smaller than this, e.g. 5.

## `monitorStoreName` (type: `string`):

Key-value store that remembers delivered rows between runs (letters, digits, dashes). One name per watch list. Default: trendyol-monitor.

## `maxResults` (type: `integer`):

Stop after this many products in total. Trendyol search shows 138 pages per query (about 3,700-5,000 products) unless "Search past the 5,000-result limit" is on. 0 = no limit.

## `maxResultsPerSource` (type: `integer`):

Cap for each search term, link or seller (and storefront). 0 = only the total cap applies.

## `deepSearch` (type: `boolean`):

Trendyol's search stops after 138 pages (about 3,700-5,000 products). With this on, a bigger search is split into price bands that each fit, so a broad term or category returns far more of its catalogue.

## `compact` (type: `boolean`):

Core fields only — smaller rows for AI / MCP pipelines.

## `includeRawData` (type: `boolean`):

Add Trendyol's original search card and product JSON to each product row (large).

## `proxyConfiguration` (type: `object`):

Leave empty: the actor picks the cheapest working route itself. Your own proxy URLs are used first; an Apify residential country you pick is used only when Trendyol refuses the direct route.

## `maxConcurrency` (type: `integer`):

Product pages, reviews and questions read at once.

## Actor input object example

```json
{
  "searchQueries": [
    "telefon"
  ],
  "storefronts": [
    "TR"
  ],
  "sort": "relevance",
  "minRating": "",
  "freeShippingOnly": false,
  "fastDeliveryOnly": false,
  "sameDayShippingOnly": false,
  "couponOnly": false,
  "dealsOnly": false,
  "flashSaleOnly": false,
  "newReleaseOnly": false,
  "influencerOnly": false,
  "topSellersOnly": false,
  "lowestPriceDays": "",
  "discountedOnly": false,
  "inStockOnly": false,
  "officialSellerOnly": false,
  "brandMatchOnly": false,
  "includeSponsored": true,
  "includeDetails": false,
  "includePriceHistory": false,
  "includeReviews": false,
  "maxReviewsPerProduct": 20,
  "reviewSort": "recommended",
  "reviewsWithPhotosOnly": false,
  "includeQuestions": false,
  "maxQuestionsPerProduct": 20,
  "includeSellerProfiles": false,
  "monitorMode": "off",
  "minPriceChangePercent": 0,
  "maxResults": 20,
  "maxResultsPerSource": 0,
  "deepSearch": false,
  "compact": false,
  "includeRawData": false,
  "maxConcurrency": 8
}
```

# Actor output Schema

## `results` (type: `string`):

One row per product (price, discount, rating, favourites, seller, shipping, badges; product page details when switched on), plus review, answered-question and seller-profile rows when switched on. The recordType column tells them apart.

## `summary` (type: `string`):

Per source: Trendyol's own result total, pages read and rows delivered; filtered, duplicate and already-delivered counts; not-found ids; requests per route and their cost; per-field fill.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchQueries": [
        "telefon"
    ],
    "maxResults": 20
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapersdelight/trendyol-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searchQueries": ["telefon"],
    "maxResults": 20,
}

# Run the Actor and wait for it to finish
run = client.actor("scrapersdelight/trendyol-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchQueries": [
    "telefon"
  ],
  "maxResults": 20
}' |
apify call scrapersdelight/trendyol-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,scrapersdelight/trendyol-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/ybPqIhFNJAfURf2iE/builds/QhDExGsa97LWt9ngx/openapi.json
