# Flipkart Minutes Scraper: Prices, Stock & Delivery Time (`clearpath/flipkart-minutes-scraper`) Actor

Scrape Flipkart Minutes prices, MRP, discounts and stock for any location in India, with the dark store that serves it and its delivery estimate. Search by keyword, browse 649 categories, paste links or pull the whole store. 51 built-in areas in 30 cities, or your own coordinates.

- **URL**: https://apify.com/clearpath/flipkart-minutes-scraper.md
- **Developed by:** [ClearPath](https://apify.com/clearpath) (community)
- **Categories:** E-commerce
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.29 / 1,000 product or store results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

[![14,000+ products. Priced by neighbourhood. Stock. Offers. Delivery times.](https://api.apify.com/v2/key-value-stores/21hatybJqakfiJoxJ/records/flipkart-minutes-scraper-readme-hero-v1.png)](https://console.apify.com/actors/AxMAzM9nTTEqZzGmB/input)

From <strong>Clearpath</strong>, creators of the <a href="https://apify.com/clearpath/coles-scraper">Coles</a> and <a href="https://apify.com/clearpath/woolworths-scraper">Woolworths</a> grocery scrapers. The same focus on local assortments, prices and availability, now for Flipkart Minutes.

### Why choose this actor?

<strong>Collect a local store’s catalogue.</strong> Existing Bengaluru runs returned roughly <strong>14,000–15,500 products in around nine minutes</strong>, with prices, MRP, discounts and stock. Search specific products, choose categories or collect the full catalogue. Assortment varies by location and time.

<strong>Compare neighbourhoods, not just cities.</strong> Collect up to <strong>10 locations in one run</strong>, with each area’s prices, offers, serving store and delivery estimate kept together. Choose a built-in area or provide coordinates. You also get a clear result when a location is outside the delivery area.

<strong>Get the detail behind each product.</strong> Pack sizes, unit prices, order limits and expiry dates are included where available. Turn on product details for ingredients, nutrition, manufacturer information, seller scores and buyer reviews.

<a href="https://console.apify.com/actors/AxMAzM9nTTEqZzGmB/input"><img src="https://api.apify.com/v2/key-value-stores/21hatybJqakfiJoxJ/records/flipkart-minutes-scraper-readme-cta-v1.svg" width="238" height="48" alt="Compare your locations"/></a>

### Quick start

Try milk in two Bengaluru neighbourhoods. This returns up to five products per area plus a store row for each location.

```json
{
  "locations": [
    "Bengaluru · Koramangala",
    "Bengaluru · Whitefield"
  ],
  "searchTerms": [
    "milk"
  ],
  "maxItems": 5
}
```

<a href="https://console.apify.com/actors/AxMAzM9nTTEqZzGmB/input">Open actor input</a> to choose your locations and products. Export JSON, CSV or Excel; JSON preserves offers, variants and product details.

For the full local catalogue, use <code>fullCatalog: true</code> and <code>maxItems: 0</code>. The catalogue benchmark excludes optional details. Set <code>includeDetails: true</code> to add them; this costs extra and takes longer. Product links always include the detail add-on.

<table><tr><td colspan="3" style="background:#C70255;color:#FFFFFF;padding:10px 14px;font-size:13px;font-weight:700">Clearpath · Grocery Data</td></tr><tr><td style="background:#FFD8E8;padding:8px 10px;border:1px solid #F3BDD2;vertical-align:top"><span style="white-space:nowrap"><img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/DSvMCAwsufMyZeLyt-actor-AxMAzM9nTTEqZzGmB-te2C58Dmr5-flipkart-minutes-scraper-logo.png" width="20" height="20" alt="" style="display:inline-block;vertical-align:middle;margin:0"/>&nbsp;<a href="https://console.apify.com/actors/AxMAzM9nTTEqZzGmB/input" style="color:#55112D;text-decoration:none;font-weight:700;font-size:13px">Flipkart Minutes</a></span><br><span style="color:#70314C;font-size:12px;white-space:nowrap">You are here</span></td><td style="background:#FFF0F6;padding:8px 10px;border:1px solid #F3BDD2;vertical-align:top"><span style="white-space:nowrap"><img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/DSvMCAwsufMyZeLyt-actor-FzxNShGGntfilAEDe-9OiAyL7bAA-coles-scraper-icon-v1.png" width="20" height="20" alt="" style="display:inline-block;vertical-align:middle;margin:0"/>&nbsp;<a href="https://apify.com/clearpath/coles-scraper" style="color:#55112D;text-decoration:none;font-weight:700;font-size:13px">Coles</a></span><br><span style="color:#70314C;font-size:12px;white-space:nowrap">Local prices & stock</span></td><td style="background:#FFF0F6;padding:8px 10px;border:1px solid #F3BDD2;vertical-align:top"><span style="white-space:nowrap"><img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/DSvMCAwsufMyZeLyt-actor-cfmAVd7XDm7dWNSPg-RS0c2sB7Ol-woolworths-scraper-icon-v3.png" width="20" height="20" alt="" style="display:inline-block;vertical-align:middle;margin:0"/>&nbsp;<a href="https://apify.com/clearpath/woolworths-scraper" style="color:#55112D;text-decoration:none;font-weight:700;font-size:13px">Woolworths</a></span><br><span style="color:#70314C;font-size:12px;white-space:nowrap">Offers & availability</span></td></tr></table>

#### Copy to your AI assistant

```
clearpath/flipkart-minutes-scraper on Apify. Scrapes Flipkart Minutes, Flipkart's 10-minute quick-commerce service in India: per-location prices, MRP, discounts, offers, stock, shelf position and the dark store that serves each point with its delivery estimate. Locations drive everything: pick preset area names in locations (51 areas, 30 cities, exact strings like "Bengaluru · Koramangala" with a middle dot) or give your own points in customLocations as "latitude,longitude" with an optional third label part; at most 10 locations per run across both fields, and omitting both silently uses Bengaluru · Koramangala. Flipkart Minutes does not take a pincode: coverage is per delivery polygon, so two areas of one city can differ and some points are not served at all. Give the run work or it fails: searchTerms (up to 100), categories (up to 50 exact names from the schema list of 649, each including everything below it), startUrls (up to 1,000 Flipkart Minutes product, category, search or store links; link-list files are ignored) or fullCatalog=true for the whole store, roughly 14,000-15,500 products and about 9 minutes per location. Combine them in one run. maxItems applies per search term, per category and per link, in each location, so 100 with 2 terms in 3 locations is up to 600 products; 0 means no limit, and with fullCatalog that is ~650 categories, so it is the main cost control. sortBy is relevance (default), Popularity, price_asc, price_desc or recency_desc; price_asc reaches far deeper than relevance and is what fullCatalog uses unless you set one. brands keeps up to 50 brands, onlyInStock drops what the serving store is out of. For ingredients, nutrient content, net quantity, shelf life, FSSAI licence, manufacturer, packer, importer, country of origin, seller with its scores, ratings and customer review text set includeDetails=true; without it those fields are absent, and it is charged extra per product and roughly triples the time per product, so only set it when the task needs those fields. Pasted product links in startUrls always return them regardless, at the same add-on charge. Every dataset row carries type: product or store, and each location always produces one store row, including unserved points (serviceable:false, no store). storeIdSource tells you whether a product named its own store or inherited the area's primary one. Cost: $1.99 per 1,000 rows (Free plan) down to $1.29 (Gold and above), details +$1.49 down to +$0.99 per 1,000 enriched products, plus $0.005 per run start, so batch locations and terms into one run. Full catalogue and multi-location runs take minutes and outlive the synchronous run endpoints, so start the run, poll it, then read its dataset. Full spec: GET https://api.apify.com/v2/actors/clearpath~flipkart-minutes-scraper/builds/default (Authorization: Bearer TOKEN) returns inputSchema, actorDefinition.storages.dataset and readme.
```

### What can this Flipkart Minutes scraper do?

- 📍 **Scrape any point in India**: pick from 51 built-in areas across 30 cities, or give your own `latitude,longitude` for a catchment of your own
- 🔍 **Search Flipkart Minutes** by keyword, as many terms as you like in one run
- 🗃️ **Scrape whole categories** from a list of 649 names, everything underneath a category included
- 🔗 **Paste any Flipkart Minutes link**: a product, a category, a search results page or a store page
- 📦 **Pull the full catalogue** category by category, the whole shelf of the store serving that point
- 🏪 **Get the store behind every row**: its id, its delivery estimate, and whether the product named that store itself or inherited it from the area
- 🏷️ **Keep the price economics**: selling price, MRP, discount amount and percent, price per unit, offer list, offer tags, bank offers and savings text
- 📊 **Track availability**: in-stock state, maximum order quantity, expiry date where the store publishes one, and shelf position with a sponsored flag
- 🧾 **Add product details**: specifications, ingredients, nutrient content, net quantity, shelf life, FSSAI licence, manufacturer, packer, importer, country of origin, seller with quality and speed scores, ratings and customer review text
- ⚙️ **Combine it all in one run**: several areas, several search terms, categories and pasted links run side by side

### How to scrape Flipkart Minutes prices, stock and delivery times

#### Compare one product across areas of a city

```json
{
  "locations": [
    "Mumbai · Bandra",
    "Mumbai · Powai",
    "Mumbai · Malad",
    "Navi Mumbai · Vashi"
  ],
  "searchTerms": ["amul butter 500g"],
  "maxItems": 5
}
```

Each area gets its own rows and its own store row. `maxItems` counts per search term, per category, per link, **in each location**, so this returns up to 20 products and 4 store rows.

#### Find out where Flipkart Minutes actually delivers

```json
{
  "customLocations": [
    "19.1197,72.8464,Andheri East",
    "22.5726,88.3639,Kolkata centre",
    "31.1048,77.1734,Shimla Mall Road"
  ],
  "searchTerms": ["milk"],
  "maxItems": 1
}
```

Every location produces a store row of its own: `serviceable`, the serving store, its delivery estimate and every store polygon covering that point. A point Minutes does not cover comes back with `serviceable: false` and no store, which is the answer, not an error. Give the run something to scrape, here one product per point, so a run is never started with nothing to do.

#### Scrape whole categories

```json
{
  "locations": ["Delhi · Connaught Place"],
  "categories": ["Fresh Fruits", "Breads", "Eggs"],
  "maxItems": 200,
  "sortBy": "price_asc"
}
```

Choosing a category includes everything under it. `price_asc` reaches far deeper into a category than the default order, which is why it is the one to use for coverage. A category that does not exist in one of your locations is skipped there with a note.

#### Paste Flipkart Minutes links

```json
{
  "locations": ["Hyderabad · Gachibowli"],
  "startUrls": [
    { "url": "https://www.flipkart.com/search?q=atta&marketplace=HYPERLOCAL" },
    { "url": "https://www.flipkart.com/amul-gold-milk/p/itm44f0b035724de?pid=MLKHFR86C8QNQPT8" }
  ],
  "maxItems": 50
}
```

Search and category links return their product lists. A product link returns that one product, priced and stocked for the location you chose, and always with its full details, whether or not you turned details on. Paste the links themselves: link-list files are skipped with a note.

#### Pull the whole store

```json
{
  "locations": ["Bengaluru · Koramangala"],
  "fullCatalog": true,
  "maxItems": 0
}
```

`maxItems: 0` means no limit, so this walks every category the store carries: roughly 14,000 to 15,500 products in around 9 minutes on the store measured. Leave `maxItems` set to a small number if you want a sample instead, because the limit applies to each of roughly 650 categories.

#### Watch a brand and only what is on the shelf

```json
{
  "locations": ["Chennai · Adyar", "Coimbatore · RS Puram"],
  "searchTerms": ["shampoo", "conditioner"],
  "brands": ["Dove", "Head & Shoulders"],
  "onlyInStock": true,
  "maxItems": 100
}
```

`brands` keeps only those brands, up to 50 of them. Leave `onlyInStock` off when you want to see what went out of stock: an out-of-stock product is usually the signal you are looking for.

### What data can you extract from Flipkart Minutes?

Every row carries a `type`: `product` or `store`. Both carry the location they came from, so one dataset can hold many areas at once.

| Group | Fields |
|---|---|
| Location | `locationLabel`, `latitude`, `longitude`, `city`, `state`, `area` |
| Store | `storeId`, `storeIdSource`, `deliverySeconds`, `deliveryMinutes`, `serviceable`, `storeCount`, `stores[]` |
| Identity | `id` (FSN), `listingId`, `itemId`, `brand`, `title`, `name`, `packSize`, `url`, `images[]` |
| Price | `price`, `mrp`, `discountPercent`, `discountAmount`, `pricePerUnit`, `pricePerUnitOf`, `memberPrice`, `deliveryCharge`, `priceType`, `savingsText`, `currency` |
| Offers | `offers[]`, `offerTags[]`, `badges[]`, `saleTag` |
| Availability | `inStock`, `stockState`, `maxOrderQuantity`, `expiryDate`, `expiryText` |
| Placement | `sponsored`, `position`, `sourceType`, `sourceInput`, `sourceId` |
| Taxonomy | `superCategory`, `category`, `subCategory`, `vertical`, `keySpecs[]`, `variants[]`, `sellerId`, `returnPolicy` |
| With `includeDetails` | `specifications`, `ingredients` and `nutrient content` inside it, `netQuantity`, `shelfLife`, `organic`, `flavour`, `genericName`, `productType`, `containerType`, `modelName`, `manufacturer`, `packer`, `importer`, `countryOfOrigin`, `seller`, `rating`, `ratingCount`, `reviewCount`, `reviews[]`, `detailStatus` |

#### A product row

Two of the five images and one of the variants are kept below; the real row carries all of them.

```json
{
  "type": "product",
  "scrapedAt": "2026-09-21T07:17:45+00:00",
  "locationLabel": "Bengaluru · Koramangala",
  "latitude": 12.9352403,
  "longitude": 77.624532,
  "city": "Bengaluru",
  "state": "Karnataka",
  "storeId": "ben_017_wh_hl_01",
  "storeIdSource": "product",
  "deliverySeconds": 393,
  "deliveryMinutes": 7,
  "id": "MLKHFR86C8QNQPT8",
  "listingId": "LSTMLKHFR86C8QNQPT8KJVBSL",
  "itemId": "ITM44F0B035724DE",
  "brand": "Amul",
  "title": "Amul Gold Milk",
  "name": "Gold Milk",
  "packSize": "500 ml",
  "url": "https://www.flipkart.com/amul-gold-milk/p/itm44f0b035724de?pid=MLKHFR86C8QNQPT8",
  "currency": "INR",
  "price": 33,
  "mrp": 34,
  "discountPercent": 2,
  "discountAmount": 1,
  "savingsText": "Overall you save ₹1 (2%) on this product",
  "pricePerUnit": 66.0,
  "pricePerUnitOf": "1 L",
  "memberPrice": null,
  "deliveryCharge": 0,
  "priceType": "REGULAR",
  "inStock": true,
  "stockState": "IN_STOCK",
  "maxOrderQuantity": 8,
  "expiryDate": "2026-09-22",
  "expiryText": "EXP. 22 Sep 2026",
  "offers": [
    {
      "id": "nb:mp:08qini0207",
      "title": "Get extra ₹1 off on 5 items",
      "description": "Fresh Milk 1Rs offer",
      "type": "LISTING_NONE_DISCOUNT",
      "appliedOn": "LISTING",
      "eligible": true,
      "tags": ["Special Price"]
    }
  ],
  "offerTags": [
    { "label": "Special Price", "type": "SPECIAL_PRICE" },
    { "label": "Bank Offer", "type": "BANK_OFFER" }
  ],
  "badges": ["Bestseller"],
  "saleTag": "ON OFFER",
  "sponsored": false,
  "position": 1,
  "sellerId": "a98c6beb9f324b5b",
  "returnPolicy": "10_days_returns_grocery",
  "keySpecs": [],
  "superCategory": "FoodAndNutrition",
  "category": "Gourmet",
  "subCategory": "DairyProducts",
  "vertical": "Milk",
  "images": [
    "https://rukminim1.flixcart.com/image/832/832/xif0q/milk/v/y/k/500-gold-pouch-plain-amul-enriched-transparent-original-imah2hrgfkuanznh.png?q=70",
    "https://rukminim1.flixcart.com/image/832/832/xif0q/milk/p/m/r/500-gold-pouch-plain-amul-original-imah2hrgja3gpugy.jpeg?q=70"
  ],
  "variants": [
    {
      "id": "MLKHFR86C8QNQPT8",
      "isThisProduct": true,
      "label": "500 ml",
      "title": "Amul Gold Milk",
      "packSize": "500 ml",
      "listingId": "LSTMLKHFR86C8QNQPT8KJVBSL",
      "images": [
        "https://rukminim1.flixcart.com/image/832/832/xif0q/milk/v/y/k/500-gold-pouch-plain-amul-enriched-transparent-original-imah2hrgfkuanznh.png?q=70"
      ],
      "price": 33,
      "mrp": 34,
      "inStock": true,
      "deliverySeconds": 393,
      "expiryDate": "2026-09-22",
      "url": "https://www.flipkart.com/amul-gold-milk/p/itm44f0b035724de?pid=MLKHFR86C8QNQPT8&lid=LSTMLKHFR86C8QNQPT8KJVBSL&marketplace=HYPERLOCAL"
    }
  ],
  "sourceType": "search",
  "sourceInput": "milk",
  "sourceId": null
}
```

`storeIdSource` says where the store id came from: `product` when the product named its own store, `polygon` when it was taken from the primary store serving the area. About a third of a feed does not name a store of its own, so the difference is worth keeping.

#### A store row, served and unserved

One per location, always, whether or not anything else was scraped.

```json
{
  "type": "store",
  "scrapedAt": "2026-09-21T07:17:58+00:00",
  "locationLabel": "Bengaluru · Koramangala",
  "latitude": 12.9352403,
  "longitude": 77.624532,
  "city": "Bengaluru",
  "state": "Karnataka",
  "area": "Koramangala",
  "serviceable": true,
  "storeId": "ben_017_wh_hl_01",
  "deliverySeconds": 393,
  "deliveryMinutes": 7,
  "storeCount": 2,
  "stores": [
    { "storeId": "ben_017_wh_hl_01", "polygonType": "PRIMARY", "deliverySeconds": 393, "serviceable": true },
    { "storeId": "ben_017_wh_hl_01", "polygonType": "SECONDARY", "deliverySeconds": 392, "serviceable": true },
    { "storeId": "ben_917_wh_hl_01", "polygonType": "SECONDARY", "deliverySeconds": 334, "serviceable": true }
  ]
}
```

```json
{
  "type": "store",
  "scrapedAt": "2026-09-21T07:18:38+00:00",
  "locationLabel": "Shimla Mall Road",
  "latitude": 31.1048,
  "longitude": 77.1734,
  "city": null,
  "state": null,
  "area": null,
  "serviceable": false,
  "storeId": null,
  "deliverySeconds": null,
  "deliveryMinutes": null,
  "storeCount": 0,
  "stores": []
}
```

Export as JSON to keep `offers`, `variants`, `stores`, `specifications` and `reviews` nested. CSV and Excel flatten them.

### Pricing

Pay per event. You are charged for what the run saves, not for how long it takes.

| Event | When charged | Price (Free plan) | Price (Gold and above) |
|---|---|---|---|
| Product or store result | Every row saved: one per product in each location, plus one per location for its store | $1.99 per 1,000 | $1.29 per 1,000 |
| Add-on: Product details | Only for products whose details were actually collected, on top of the result | +$1.49 per 1,000 | +$0.99 per 1,000 |
| Actor start | Once per run, scaled by run memory | $0.005 | $0.005 |

Bronze and Silver sit between the two columns. A 1,000-product run across 5 areas is 1,005 rows: $2.00 on Free or about $1.30 on Gold, plus the $0.005 start. The same run with `includeDetails` adds about $1.49 on Free or $0.99 on Gold. Batch your areas and search terms into one run rather than starting many small ones, because the start fee is per run.

### FAQ

**Is Flipkart Minutes available in my city or area?**
Run the actor on the point you care about and read the store row. Coverage is set by delivery polygon, not by city: in testing Powai, Bandra, Lower Parel, Park Street and New Town were served while Andheri and Salt Lake were not, all inside cities Minutes covers. Never conclude a city is unserved from one coordinate.

**Which areas are built in?**
51 areas across 30 cities, every one of which resolved to a real store when the list was built: Ahmedabad, Bengaluru, Chandigarh, Chennai, Coimbatore, Dehradun, Delhi, Faridabad, Ghaziabad, Gurugram, Guwahati, Hyderabad, Indore, Jaipur, Kanpur, Kochi, Kolkata, Lucknow, Mumbai, Mysuru, Nagpur, Navi Mumbai, Noida, Patna, Pune, Surat, Thiruvananthapuram, Vadodara, Visakhapatnam and Bhubaneswar. For anywhere else, give coordinates in **Other coordinates**. Up to 10 locations per run across both fields.

**Why coordinates and not a pincode?**
A pincode covers far more ground than a dark store's delivery polygon, and Flipkart Minutes decides which store serves you from the point itself. Coordinates are the only input that picks the store you meant.

**How fast does Flipkart Minutes deliver?**
It varies by area and changes through the day. Across the 51 built-in areas, the store estimate ran from 5 minutes in Vaishali Nagar, Jaipur to 22 minutes in Rohini, Delhi. Each row carries `deliverySeconds` and `deliveryMinutes` as the store published them at the time of the run.

**How many products will I get?**
Use `maxItems` to decide. Without it a keyword search or a single category tops out at a few hundred products, because that is as deep as Flipkart Minutes lists one feed; the way to go wider is more categories or the full catalogue. A whole store measured around 14,000 to 15,500 products, and that range moves through the day as items sell out, so treat any count as a measurement and not a guarantee.

**Can I compare Flipkart Minutes with Blinkit, Zepto or Instamart?**
This actor covers Flipkart Minutes only. What it does give you is the comparison across areas and stores inside Minutes, which is where the price and stock differences actually live.

**Do I need a Flipkart account or a login?**
No. The actor collects the prices, stock and delivery times Flipkart Minutes shows any shopper in that area. Nothing here needs an account, a key or a card on file with Flipkart.

**Why are prices and stock different in two areas of the same city?**
Because they are two different dark stores. Each store sets its own shelf, its own availability and its own delivery estimate, and a product that is in stock at one can be missing from the other entirely rather than listed as out of stock.

**Are sponsored products included?**
Yes. They are saved like any other product and carry `sponsored: true` with their `position` in the listing, so you can keep them, drop them or track them.

**What happens if a run hits its time limit?**
It stops and keeps everything it has already saved. Results are written as they are collected, so a long run is never all-or-nothing.

**Can I schedule this?**
Yes. Prices, stock and delivery estimates move through the day, so a daily or twice-daily schedule on a fixed set of areas and search terms gives you a usable time series. Use Apify's Schedules tab.

**Can I export to CSV or Excel?**
Yes, from the dataset's Export tab, along with JSON, XML and RSS. Choose JSON if you want the nested offers, variants, store list, specifications and reviews to survive.

### More scrapers from our friends at Zen Studio

Sister scrapers for product, price and seller data.

- <img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/NWYsOG96fMDy8ycdf-actor-ghXSMZcW3GxsCrkiR-5hnvsKv4Yt-1688-wholesale-scraper-logo.png" width="16" height="16" style="vertical-align:middle;border-radius:3px"> **1688 阿里巴巴**
  - [1688 Wholesale Scraper](https://apify.com/zen-studio/1688-wholesale-scraper)
- <img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/NWYsOG96fMDy8ycdf-actor-PsAKYWM55HG4AHXjK-ItywU7Bp0s-taobao-search-scraper-logo.png" width="16" height="16" style="vertical-align:middle;border-radius:3px"> **Taobao 淘宝**
  - [Taobao Product Scraper](https://apify.com/zen-studio/taobao-search-scraper)
- <img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/NWYsOG96fMDy8ycdf-actor-uZy6tbKLKnSVtT4BN-emXnT123uR-jd-com-scraper-logo-square.png" width="16" height="16" style="vertical-align:middle;border-radius:3px"> **JD.com 京东**
  - [JD.com Scraper](https://apify.com/zen-studio/jd-com-search-scraper)

**More from Clearpath**

- <img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/DSvMCAwsufMyZeLyt-actor-FzxNShGGntfilAEDe-9OiAyL7bAA-coles-scraper-icon-v1.png" width="16" height="16" style="vertical-align:middle;border-radius:3px"> **Coles**
  - [Coles Scraper](https://apify.com/clearpath/coles-scraper)
- <img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/DSvMCAwsufMyZeLyt-actor-cfmAVd7XDm7dWNSPg-RS0c2sB7Ol-woolworths-scraper-icon-v3.png" width="16" height="16" style="vertical-align:middle;border-radius:3px"> **Woolworths**
  - [Woolworths AU Scraper](https://apify.com/clearpath/woolworths-scraper)
- <img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/DSvMCAwsufMyZeLyt-actor-9K7ejaAYnpuwNl2sr-0xGZJDXdTD-joybuy-scraper-logo.webp" width="16" height="16" style="vertical-align:middle;border-radius:3px"> **Joybuy**
  - [Joybuy Scraper](https://apify.com/clearpath/joybuy-scraper)
  - [Joybuy Product Detail Scraper](https://apify.com/clearpath/joybuy-product-detail-scraper)
- <img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/DSvMCAwsufMyZeLyt-actor-P5fALt8vY7xXgJh56-cIPO73yOhI-shein-product-scraper-logo.jpg" width="16" height="16" style="vertical-align:middle;border-radius:3px"> **SHEIN**
  - [SHEIN Product Scraper](https://apify.com/clearpath/shein-product-scraper)
  - [SHEIN Trends Scraper](https://apify.com/clearpath/shein-trends-scraper)
- <img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/DSvMCAwsufMyZeLyt-actor-R9SL2PPdhdhLQwdck-tbaq4J8sxX-shopy-by-shopify-scraper-logo.jpg" width="16" height="16" style="vertical-align:middle;border-radius:3px"> **Shopify**
  - [Shopify Product Search](https://apify.com/clearpath/shop-by-shopify-product-scraper)
  - [Shopify Store Leads](https://apify.com/clearpath/shopify-store-leads)

### Support

- **Bugs**: Issues tab
- **Features**: Email or issues
- **Email**: max@mapa.slmail.me

### Legal Compliance

Extracts publicly available product, price, availability and store information. Users must comply with Flipkart's terms of use and applicable data protection laws. Not affiliated with or endorsed by Flipkart.

***

*Scrape Flipkart Minutes quick-commerce prices, MRP, discounts, stock, delivery times and dark stores for any location in India.*

# Actor input Schema

## `locations` (type: `array`):

Pick the neighbourhoods to scrape. Every one of these resolved to a real store when this list was built. Up to 10 per run, across both location fields.

## `customLocations` (type: `array`):

Any other point, as <code>latitude,longitude</code>, optionally followed by your own label: <code>12.9352,77.6245,My catchment</code>. Use this for store catchments of your own that are not in the list above.

## `searchTerms` (type: `array`):

One product search per line. Combine as many as you like in one run.

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

Paste Flipkart Minutes links: a product, a category, a search results page or a store page.<br>Paste the links themselves. Link-list files are not read, and are skipped with a note if you add one.

## `categories` (type: `array`):

Scrape whole categories instead of searching. Choosing a category includes everything under it. A category that does not exist in one of your locations is skipped there with a note, not an error.

## `fullCatalog` (type: `boolean`):

Scrape everything the store sells, category by category, instead of only what you searched for. Measured on one Bengaluru store: about 14,000 to 15,500 products in around 9 minutes. A store's range shrinks through the day, so the count moves.<br><b>Leave the product limit set</b> unless you want every product: the limit applies to each of roughly 650 categories.

## `maxItems` (type: `integer`):

Stop after this many products <b>per search term, category or link, in each location</b>. So 100 with two search terms in three locations is up to 600 products, and 100 with the full catalog on is far more.<br>0 means no limit. This is the strongest cost control here.

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

Adds ingredients, nutrient content, net quantity, shelf life, FSSAI licence number, manufacturer, packer, importer, country of origin, the seller with its quality and speed scores, and customer ratings and review text to every product.<br><b>Charged extra per product</b>, and each product takes about three times as long, so leave it off when you only need prices, stock and delivery times. Pasted product links always come with these fields, whether this is on or not.

## `sortBy` (type: `string`):

How results are ordered. <b>Price: low to high</b> reaches far more products than the default when you want breadth rather than the top matches, which is why the full catalog uses it unless you pick an order here.

## `brands` (type: `array`):

Keep only these brands, up to 50. Leave empty for every brand.

## `onlyInStock` (type: `boolean`):

Drop products the serving store is out of. Leave off to track availability: an out-of-stock product is a useful signal.

## Actor input object example

```json
{
  "locations": [
    "Bengaluru · Koramangala"
  ],
  "searchTerms": [
    "milk"
  ],
  "fullCatalog": false,
  "maxItems": 100,
  "includeDetails": false,
  "sortBy": "relevance",
  "onlyInStock": false
}
```

# Actor output Schema

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

Every row this run collected: one per product per location, plus one per location describing the store that serves it.

## `prices` (type: `string`):

The same rows in the price-comparison view.

## `stores` (type: `string`):

One row per location: which neighbourhood store serves it and how fast, or whether it is served at all.

# 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 = {
    "locations": [
        "Bengaluru · Koramangala"
    ],
    "searchTerms": [
        "milk"
    ],
    "maxItems": 100
};

// Run the Actor and wait for it to finish
const run = await client.actor("clearpath/flipkart-minutes-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 = {
    "locations": ["Bengaluru · Koramangala"],
    "searchTerms": ["milk"],
    "maxItems": 100,
}

# Run the Actor and wait for it to finish
run = client.actor("clearpath/flipkart-minutes-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 '{
  "locations": [
    "Bengaluru · Koramangala"
  ],
  "searchTerms": [
    "milk"
  ],
  "maxItems": 100
}' |
apify call clearpath/flipkart-minutes-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,clearpath/flipkart-minutes-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/AxMAzM9nTTEqZzGmB/builds/ZgKesprvHNZopmOng/openapi.json
