Trendyol Scraper
Pricing
from $0.60 / 1,000 products
Trendyol Scraper
Collect public Trendyol products from searches, categories, stores, and product URLs. Export prices, ratings, sellers, product details, reviews, and answered Q&A.
Pricing
from $0.60 / 1,000 products
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
51
Total users
22
Monthly active users
15 days ago
Last modified
Categories
Share
🛍️ Collect public Trendyol product data
Trendyol Scraper helps ecommerce teams, sellers, analysts, and developers collect public Trendyol data. Get products, prices, brands, ratings, sellers, categories, stock signs, promotions, reviews, and answered Q&A without copying pages by hand.
Use it for:
- Save current and original prices with Trendyol Price Monitoring for checks across repeat runs.
- Compare products, sellers, discounts, ratings, and search positions with Trendyol Competitor Analysis.
- Build product tables from searches, categories, stores, or product URLs with Trendyol Product Catalog Export.
- Study seller names, IDs, scores, products, and promotion signs with Trendyol Seller Research.
- Collect ratings, review text, dates, public reviewer details, and customer media with Trendyol Review Scraping.
- Collect answered buyer questions, seller answers, and shown dates with Trendyol Product Q&A Export.
- Compare products across the Turkey, Azerbaijan, and International storefronts with Trendyol Assortment Analysis.
📦 Returned data
Each dataset row has a recordType of product, review, or qna.
Product rows include IDs, links, names, brands, prices, discounts, currency, ratings, review counts, seller and category data, stock signs, images, shipping details, badges, promotions, attributes, variants, storefront, and the first discovery source.
Review rows link to a product. They can include a review ID, rating, text, shown date, public reviewer name, purchase status, helpful count, bought variant, customer media, and seller response.
Q&A rows link to a product. They can include the question, answer, shown dates, public asker details, and seller details. Optional values are left out when Trendyol does not show them.
🚀 Running the Actor
- Choose Search terms, Search result URLs, Category/collection URLs, Seller/store URLs, or Product URLs.
- Add searches or public Trendyol URLs for that Target.
- For search terms, choose Turkey, Azerbaijan, or International.
- Set a product limit, sort order, and any filters you need.
- Turn on reviews or answered Q&A if needed, then set their limits.
- Click Start.
No Trendyol login is needed. When inputs find the same product, the Actor saves it once and keeps only its first matching source context.
⚙️ Input
The chosen target sets which source field is used. Fields for other Targets are ignored.
| Field | Type | What it does |
|---|---|---|
target | string | Chooses search terms, search result URLs, category or collection URLs, seller or store URLs, or product URLs. |
searchQueries | string array | Sets the searches used by the search Target. |
storefront | string | Sets turkey, azerbaijan, or international for search terms. |
searchUrls | object array | Sets public search result URLs for search_urls. Each object has a url. |
categoryUrls | object array | Sets public category or collection URLs for category_urls. Each object has a url. |
storeUrls | object array | Sets public seller or store URLs for store_urls. Each object has a url. |
productUrls | object array | Sets direct public product URLs for product_urls. Each object has a url. |
maxProductsPerSource | integer | Sets the most products saved from each discovery source. Leave it empty to return all available results until the source is exhausted. It is ignored for Product URLs. |
sort | string | Sets relevance, newest, price, best seller, most favorited, or most rated order where the source supports it. |
minPrice | number | Keeps products at or above this shown price. |
maxPrice | number | Keeps products at or below this shown price. |
minRating | number | Keeps products at or above this shown rating. |
maxRating | number | Keeps products at or below this shown rating. |
discountedOnly | boolean | Keeps products with a shown discount or original price. |
inStockOnly | boolean | Keeps products shown as available. |
freeShippingOnly | boolean | Keeps products with shown free shipping. |
fastDeliveryOnly | boolean | Keeps products with shown fast delivery. |
couponOnly | boolean | Keeps products with a shown coupon. |
offerOnly | boolean | Keeps products with a shown offer or campaign. |
newReleaseOnly | boolean | Keeps products marked as new releases. |
influencerOnly | boolean | Keeps products with a shown influencer link. |
lowestPriceOnly | boolean | Keeps products with a shown lowest-price mark. |
reviews | object | Sets optional review collection. |
reviews.enabled | boolean | Saves shown reviews as linked rows. |
reviews.maxPerProduct | integer | Sets the most reviews per product. Leave it empty to return all available results until the source is exhausted. |
reviews.order | string | Uses Trendyol's default, highest-rating-first, or lowest-rating-first review order. |
questionsAndAnswers | object | Sets optional answered Q&A collection. |
questionsAndAnswers.enabled | boolean | Saves shown answered questions as linked rows. |
questionsAndAnswers.maxPerProduct | integer | Sets the most answered questions per product. Leave it empty to return all available results until the source is exhausted. |
This is the public input from a successful default-input run:
{"target": "search","searchQueries": ["spor ayakkabi"],"storefront": "turkey","maxProductsPerSource": 2,"sort": "relevance","discountedOnly": false,"inStockOnly": false,"freeShippingOnly": false,"fastDeliveryOnly": false,"couponOnly": false,"offerOnly": false,"newReleaseOnly": false,"influencerOnly": false,"lowestPriceOnly": false,"reviews": {"enabled": false,"order": "default"},"questionsAndAnswers": {"enabled": false}}
📊 Output
Results are saved to the default Apify dataset. Export them as JSON, CSV, or Excel, or get them through the Apify API. Optional fields are left out when Trendyol does not show them.
Product rows
| Field | Type | What it does |
|---|---|---|
recordType | string | Is product. |
productId, productCode | string | Identify the product. |
productUrl, sizeChartUrl | string | Link to the product and its size chart. |
name, brand, brandId | string | Give the shown product and brand details. |
price, originalPrice, discountPercent, currency | number or string | Give shown price and discount data. |
rating, reviewCount, favoriteCount, orderCount | number | Give shown rating and activity signals. |
sellerId, sellerName, sellerUrl, sellerScore, sellerLocation | string or number | Give public seller details. |
sellerBusinessName, sellerBusinessDetails | string or string array | Give shown official seller details. |
merchantId, listingId | string | Identify the seller and offer. |
categoryId, categoryName, categoryUrl, categoryHierarchy | string or string array | Give category details. |
inStock, freeShipping, fastDelivery | boolean | Show stock, shipping, and delivery signs. |
hasCoupon, hasOffer, newRelease, influencerPick, lowestPrice | boolean | Show offer and product marks. |
stockLimit, saleLimit | integer | Give shown stock and sale limits. |
images, badges, shipping, fulfilment, couponDetails | string array | Give shown media, badges, and messages. |
promotions | object array | Gives text and optional type for each promotion. |
description | string | Gives the shown product description. |
attributes | object array | Gives each fact as name and value. |
variants | object array | Gives each choice's variantId, name, value, price, inStock, and imageUrl. |
storefront | string | Gives the Trendyol storefront. |
sourceContext | object | Gives the first saved match through type, query, url, and position. |
A full product row from the current beta build:
{"recordType": "product","productId": "241528489","productUrl": "https://www.trendyol.com/riccon/beyaz-beyaz-kadin-sneaker-0012255-p-241528489","name": "Beyaz Beyaz Kadın Sneaker 0012255","productCode": "LNRCNKM255","brand": "Riccon","brandId": "93397","price": 1100,"currency": "TRY","rating": 4.251957295373665,"reviewCount": 2730,"favoriteCount": 128002,"sellerId": "180000","sellerName": "Riccon","sellerScore": 8.8,"sellerBusinessName": "LİNDON AYAKKABI İÇ VE DIŞ TİCARET LİMİTED ŞİRKETİ","merchantId": "180000","categoryId": "975","categoryName": "Sneaker","categoryHierarchy": ["Ayakkabı","Spor Ayakkabı","Sneaker"],"inStock": true,"freeShipping": true,"fastDelivery": true,"hasCoupon": false,"hasOffer": true,"newRelease": false,"influencerPick": false,"lowestPrice": false,"images": ["https://cdn.dsmcdn.com/ty1645/prod/QC/20250306/17/f66af729-f992-36c4-8ebe-aa8f97dabf20/1_org_zoom.jpg","https://cdn.dsmcdn.com/sfweb-pdp/images/product-placeholder-v2.jpeg","https://cdn.dsmcdn.com/ty1644/prod/QC/20250306/17/c5349104-eed5-35c6-9584-ce083daa875c/1_org_zoom.jpg","https://cdn.dsmcdn.com/ty1646/prod/QC/20250306/17/c8146858-fca3-380a-a2ff-260d5c4d5a84/1_org_zoom.jpg","https://cdn.dsmcdn.com/ty1644/prod/QC/20250306/17/d287ca5e-5f6b-35c7-9bd5-f1090a98e5cc/1_org_zoom.jpg","https://cdn.dsmcdn.com/ty1645/prod/QC/20250306/17/c87d9566-3f5c-3d1f-8863-d2401338c7cd/1_org_zoom.jpg","https://cdn.dsmcdn.com/ty1645/prod/QC/20250306/17/511e1f18-9be0-3dda-83d5-3c0db620057b/1_org_zoom.jpg","https://cdn.dsmcdn.com/ty1646/prod/QC/20250306/17/53bb6c6d-a2b3-320e-8c76-41137d085b5e/1_org_zoom.jpg","https://cdn.dsmcdn.com/ty1644/prod/QC/20250306/17/71efff3b-2f77-3063-90ee-9fef83172267/1_org_zoom.jpg"],"badges": ["Hesaplı Ürünler"],"shipping": ["350 TL ve Üzeri Kargo Bedava (Satıcı Karşılar)"],"fulfilment": ["mp"],"promotions": [{"text": "Trendyol Plus'a Özel Fiyat"},{"text": "350 TL ve Üzeri Kargo Bedava (Satıcı Karşılar)"}],"description": "Beyaz Beyaz Kadın Sneaker 0012255 yorumlarını inceleyin, Trendyol'a özel indirimli fiyata satın alın 🧡","attributes": [{"name": "Bağlama Şekli","value": "Bağcıklı"},{"name": "Materyal","value": "Suni Deri"},{"name": "Taban Tipi","value": "Poliüretan İç Taban"},{"name": "Koleksiyon","value": "Basic"},{"name": "Dış Materyal","value": "Suni Deri"},{"name": "Renk","value": "Beyaz"},{"name": "İç Astar & İç Taban Materyali","value": "Suni Deri"},{"name": "Alt Taban Materyali","value": "Poli"},{"name": "Topuk Boyu","value": "Orta Topuklu (5-9 cm)"},{"name": "Persona","value": "Cool & Comfort"},{"name": "Ek Özellik","value": "Ortopedik Taban"},{"name": "Sürdürülebilirlik Detayı","value": "Hayır"},{"name": "Topuk Tipi","value": "Düz Topuklu"},{"name": "Materyal Bileşeni","value": "70% Suni Deri, 30% Poliüretan"},{"name": "Ortam","value": "Sportswear"},{"name": "Yıkama Talimatı","value": "T101"},{"name": "Desen","value": "Düz"},{"name": "Kumaş Tipi","value": "Dokuma"},{"name": "Ürün Detayı","value": "Suni Deri"},{"name": "Menşei","value": "UM"},{"name": "Yıkama Talimatları","value": "Temiz bir bezle silin"}],"variants": [{"variantId": "LNRCNKM25560236","name": "Variant","value": "36","price": 1100,"inStock": true},{"variantId": "LNRCNKM25560237","name": "Variant","value": "37","price": 1100,"inStock": true},{"variantId": "LNRCNKM25560238","name": "Variant","value": "38","price": 1100,"inStock": true},{"variantId": "LNRCNKM25560239","name": "Variant","value": "39","price": 1100,"inStock": true},{"variantId": "LNRCNKM25560240","name": "Variant","value": "40","price": 1100,"inStock": true}],"sizeChartUrl": "https://cdn.dsmcdn.com//ty1724/product/charts/categories/975/brands/93397/tfiesylk.png","storefront": "turkey","sourceContext": {"type": "productUrl","url": "https://www.trendyol.com/riccon/beyaz-beyaz-kadin-sneaker-0012255-p-241528489","position": 1}}
Review rows
| Field | Type | What it does |
|---|---|---|
recordType | string | Is review. |
reviewId | string | Gives the Trendyol review ID. |
productId, productUrl, productName | string | Link the review to its product. |
storefront | string | Gives the Trendyol storefront. |
rating, text, reviewTitle, reviewDate | number or string | Give the review content and shown timing. |
reviewerName, reviewerId, reviewerDetails | string or string array | Give public reviewer details. |
verifiedPurchase | boolean | Shows Trendyol's verified-purchase mark. |
helpfulCount, unhelpfulCount | integer | Give shown feedback counts. |
variant | string | Gives the bought product choice. |
mediaUrls | string array | Gives customer photo or video URLs. |
sellerResponse | object | Gives the reply's text, date, and sellerName. |
{"recordType": "review","reviewId": "473413424","productId": "241528489","productUrl": "https://www.trendyol.com/riccon/beyaz-beyaz-kadin-sneaker-0012255-p-241528489","productName": "Beyaz Beyaz Kadın Sneaker 0012255","rating": 5,"text": "yorumlara bakarak büyük beden aldım 37 giyiyordum 38 aldım tam oldu. Ayakkabının ayakta duruşu çok güzel hiç kaba durmuyor.","reviewDate": "2025-02-17T22:00:00.364Z","reviewerName": "**** ****","verifiedPurchase": true,"helpfulCount": 3,"variant": "38","mediaUrls": [],"storefront": "turkey"}
Answered Q&A rows
| Field | Type | What it does |
|---|---|---|
recordType | string | Is qna. |
qnaId | string | Gives the Trendyol answered-question ID. |
productId, productUrl, productName | string | Link the Q&A to its product. |
storefront | string | Gives the Trendyol storefront. |
questionText, questionDate, askerName | string | Give the question, shown timing, and public asker. |
answerText, answerDate | string | Give the answer and shown timing. |
sellerId, sellerName | string | Identify the seller who answered. |
{"recordType": "qna","qnaId": "215607391","productId": "241528489","productUrl": "https://www.trendyol.com/riccon/beyaz-beyaz-kadin-sneaker-0012255-p-241528489","productName": "Beyaz Beyaz Kadın Sneaker 0012255","questionText": "Merhabalar 37 numarası ne zaman gelir acaba","questionDate": "2024-04-03T16:23:36.810Z","askerName": "**** ****","answerText": "Merhaba efendim,net bir bilgiye sahip değiliz,takipte kalınız.","sellerId": "180000","sellerName": "Riccon","storefront": "turkey"}
💳 Pricing
This Actor uses pay-per-event pricing. One Actor-start event is charged for each run. Product, review, and answered Q&A events are charged only after the matching row is saved. Reviews and Q&A are off by default, and product details are included with each product. See the Pricing tab for current rates. Apify platform charges may also apply.
🔌 Integrations
Start runs and get dataset rows with the Apify API. Use Apify Schedules for repeat runs and Webhooks to alert another service. You can also send dataset exports to tools in the Apify Console.
❓ FAQ
What happens when several inputs find the same product?
The product is saved once per run. It keeps the first matching discovery source. Later matches are ignored and do not change the saved row.
Why did filters return fewer products than my limit?
The limit is a maximum. A page may have fewer matching products, and filters can remove products that do not show the needed signs.
Can I collect reviews or Q&A without a product row?
No. Reviews and answered Q&A are optional rows linked to a saved product.
Can I collect one direct product page?
Yes. Choose Product URLs and add the public product URL.
Which Trendyol storefronts are supported?
Search-term runs support Turkey, Azerbaijan, and International. Submitted URLs set their own public Trendyol surface.
Is this the official Trendyol API?
No. The Actor reads data shown on public Trendyol pages. It does not need Trendyol API keys.
Can I use a Trendyol scraper library instead?
A library may fit a custom app, but you must run and maintain it. This Actor gives you Apify datasets, schedules, Webhooks, and API access without building that setup.
Does it keep price history or send alerts?
No. Each run returns data shown at that time. Use Schedules and your own storage or workflow to build price history or alerts.
📝 Changelog
- 0.2: Initial release.
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Related Actors
- MercadoLibre Search Scraper — compare marketplace products, prices, sellers, shipping, ratings, and search positions.
- Google Shopping Ads Scraper — study paid Shopping products, merchants, prices, and positions by keyword and market.
- Allegro Scraper — collect Allegro listings, prices, sellers, delivery details, and product data.
- John Lewis Product Scraper — collect public product and variant data from a UK retailer.
- Toolstation Scraper — collect public trade and DIY products, prices, stock signs, and specifications.
Made with ❤️ by Maxime Dupré