Zepto Catalogue by Location
Pricing
from $2.50 / 1,000 results
Zepto Catalogue by Location
Zepto catalogue by delivery pincode: store-specific prices, stock and category coverage. No-discount estimates: 10/100/1,000 dataset rows = $0.027/$0.252/$2.502, incl. start at default memory. See Pricing for tier rates.
Pricing
from $2.50 / 1,000 results
Rating
0.0
(0)
Developer
AtTheRate AI
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
0
Monthly active users
a month ago
Last modified
Categories
Features
Share
Pulls the whole Zepto storefront for an Indian pincode, category by category, with price, MRP, discount, the available quantity the app reports and out-of-stock state. Zepto prices and stocks per dark store, so the same SKU differs between neighbourhoods.
What you get
- Complete category walk:
category,subcategory, their slugs and ids, pluspositionso shelf order survives. - Price economics per product:
price,mrpanddiscount_percent. - Stock depth rather than a bare flag:
available_quantityandmax_quantityalongsideout_of_stock. - A sponsored flag:
is_admarks placements Zepto itself tags as sponsored. - Store context on every row:
store_idandlocation_label, plusproduct_id,variant_id,name,brand,packandimage_urlfor joining. - Location honesty: a pincode Zepto does not serve is reported as a failed location with the reason, and returns zero rows instead of another city's data.
Input
Give one or more Indian pincodes. Everything else narrows the crawl.
{"pincodes": ["122002"],"categoryFilter": ["fruits"],"delayMs": 400,"maxPagesPerCategory": 0,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"],"apifyProxyCountry": "IN"}}
pincodes: 6-digit Indian pincodes, for example122002.categoryFilter: only categories whose slug or name contains one of these strings, case-insensitive. Empty means all.maxPagesPerCategory: cap on pagination. 0 pages until Zepto reports the end.delayMs: pause between calls, 400 by default.proxyConfiguration: residential country IN is the default and is required in practice.
Output
One row per product, per subcategory, per location. The run above returned 618 rows.
{"location_label": "Gurgaon-DLF","store_id": "d8c4ab04-68f0-483f-82be-8b9fb18d17ae","category": "fruits-vegetables","category_name": "Fruits & Vegetables","subcategory_name": "Fresh Vegetables","position": 1,"product_id": "d2a42dc1-1b5a-4925-9b66-28a24d2d8830","name": "Onion","brand": "Unbranded","pack": "900 g - 1 kg","price": 62,"mrp": 126,"discount_percent": 50,"available_quantity": 5,"out_of_stock": false,"max_quantity": 5,"is_ad": false,"fetched_at": "2026-09-11T08:59:34.879Z"}
brand reads Unbranded for fresh produce, which is Zepto's own value, not a gap. available_quantity is capped by Zepto's per-order limit, so treat it as a floor on real depth.
Use cases
- Per-store price and discount tracking from
price,mrpanddiscount_percentacross pincodes. - Out-of-stock and low-stock monitoring from
out_of_stockandavailable_quantity. - Ad-slot share: count
is_adrows by brand within a subcategory. - Assortment gap analysis by comparing the
product_idset between cities.
Notes and limits
- Zepto blocks an IP after roughly 5 automated page loads, answering with an HTTP 202 challenge. A residential Indian proxy is effectively required and is the default.
- Each minted session is pinned to one exit IP. A per-request rotating gateway kills sessions within a few calls, so use sticky sessions.
- An unserved point ends that location cleanly, for example
Zepto has no open store for 24.9,81.5 (serviceable=false), with zero rows andfailed_locationsincremented. is_adcomes from Zepto's own sponsored markers. Verified runs in fresh produce returned none, so ad density varies sharply by category.- Exact coordinates can be supplied instead of pincodes through the advanced
locationsfield.
FAQ
Do I need a proxy? Yes, in practice. Use a residential proxy in India. It is already the default, and sessions must be sticky to one exit IP.
How many results can I get? A full store catalogue. One verified run returned 618 products from a single category filter.
Does it need login or an API key? No. No Zepto account, key or cookie of your own is needed.
How does a pincode pick a store? The pincode is resolved to a point and Zepto binds the session to the dark store serving it. That store's id is stamped on every row as store_id; if no store is open there, the location is skipped with the reason.