REWALTO / DOCS / API / FLIPKART MINUTES
Flipkart Minutes dark store API reference
GET /v1/data/dark-stores with platform=flipkart_minutes returns each Flipkart Minutes dark store Rewalto holds, with its store id, name, city, pin code, map point and the pin codes it serves. For Flipkart Minutes, Rewalto holds 1,612 open dark stores in 168 cities (counted 5 Nov 2026). It needs an API key and costs 5 credits per dark store; the sample record below is free.
Last updated 5 Nov 2026.
Key facts
| Endpoint | GET /v1/data/dark-stores |
|---|---|
| App filter | platform=flipkart_minutes |
| Cost | 5 credits per dark storeOnly delivered records use credits |
| Key | API key needed |
Request
GET https://api.rewalto.com/v1/data/dark-stores, with an API key sent as Authorization: Bearer. Each dark store Rewalto holds on Blinkit, Zepto, Instamart, BigBasket, Flipkart Minutes, JioMart and DMart, every source merged into one record per store: the app’s store id and name, the pin code, area, address, point, city and state where it is (each with where it came from), the pin codes it was seen serving, when it was first and last seen, whether it is open, newly opened or closed, and which sources hold it (the old weekly sweep, Core’s own weekly serviceability sweeps, which add stores as they run, Rewalto’s other readings of the app, and store lists Rewalto holds). Kept data, served as it stands (the newest last-seen day shows how current it is). Newest last-seen day first, optionally one platform, one city, one status, a day range, and pincode for the stores that serve that pin. BigBasket’s BB Now delivery areas are not stores and are not in it (they are counted apart in GET /v1/dark-stores/summary). Catalogue entry qc_dark_store_map; one record is one dark store. Charged per record delivered at the dataset’s published rate (GET /v1/catalogue/entries/{id} shows it); re-reading the same records within 7 days is free, and an empty page costs nothing. No quote is needed: meta.credits shows the rate charged and the credits left. When the credits cannot cover the page: 402 credits_exhausted and no data.
curl -H "Authorization: Bearer $REWALTO_API_KEY" \
"https://api.rewalto.com/v1/data/dark-stores?platform=flipkart_minutes&city=Chennai&limit=20"Parameters
| Name | In | Required | Type | What it means | Example |
|---|---|---|---|---|---|
platform | query | no | string | The quick-commerce app: blinkit, zepto, instamart, bigbasket, flipkart_minutes or jiomart. Use flipkart_minutes for Flipkart Minutes. | "blinkit" |
city | query | no | string | Only stores in this city (any spelling core knows: Gurgaon finds Gurugram). | "Bengaluru" |
cities | query | no | string | Only stores in any of these cities, comma-separated (up to 50; any spelling core knows). With city, both apply. | "Bengaluru,Mysuru" |
state | query | no | string | Only stores in this state or union territory (its home pin code’s state, else the one a source stated; any case, "and" or "&"). The states with stores are in GET /v1/dark-stores/filter-options. | "Karnataka" |
cityGroup | query | no | string | Only stores in a curated city group: tier_1_metro, tier_2 or tier_3, the house rent allowance classes X, Y and Z (DoE O.M. No. 2/5/2017-E.II(B), 7 Jul 2017). Definitions in GET /v1/dark-stores/filter-options. Stores with no known city are in no group. | "tier_1_metro" |
pincode | query | no | string | Only stores that serve this six-digit pin code. | "560034" |
status | query | no | string | Only stores with this status: open, opened or closed. | "opened" |
from | query | no | string | Only IST days on or after this day (YYYY-MM-DD). | "2026-10-01" |
to | query | no | string | Only IST days on or before this day (YYYY-MM-DD). | "2026-10-17" |
limit | query | no | string | How many records to return, 1 to 500. Default 100. | "100" |
cursor | query | no | string | The nextCursor of the previous page, sent back with exactly the same filters. A cursor from other filters is refused. | "eyJ0IjoiMjAyNi0xMC0xNFQwOToyNzowMC4wMDBaIiwiaSI6NDgyMTAzNzcsImYiOiJhYmMxMjMifQ" |
selectionToken | query | no | string | Optional: the selectionToken of a free GET /v1/data/dark-stores/preview for the same filters and limit. With it the page is delivered and charged only if its records and the rate are still the ones previewed; otherwise 409 cost_changed (preview again) or 410 quote_expired, and nothing is charged. | "dss1.eyJ2IjoxfQ" |
Record fields
| Field | Type | What it means | Example |
|---|---|---|---|
day | string (date) | The IST day the store was last seen. The order and the from and to filters use this day. | "2026-10-15" |
source | string | Where its status comes from: old_sweep (the weekly sweeps up to 17 Oct 2026) or core_sweep (Core’s weekly serviceability sweeps), the one that saw it most recently; for a store no sweep has seen, app_reading (Rewalto’s other readings of the app: its locator, product readings at a pin) or store_list (a store list Rewalto holds). Every source that holds the store is in sources. | "old_sweep" |
platform | string | The quick-commerce app: blinkit, zepto, instamart, bigbasket, flipkart_minutes or jiomart. | "blinkit" |
storeId | string | The app’s own id for the store; for a store known only from a store list, Rewalto’s own id for it (ds-<id>). | "1234" |
name | null or string | The store name the app states; null when it states none. | "HSR" |
city | null or string | The city the sweep found it in, else the city of its first catchment pin; null when neither is known. | "Bengaluru" |
cityTier | null or string | The city’s tier from the Government of India’s house rent allowance classes (DoE O.M. No. 2/5/2017-E.II(B), 7 Jul 2017): tier_1_metro (X), tier_2 (Y), tier_3 (every other city, Z); null where the city is not known. | "tier_2" |
status | string | open (seen in the sweeps since the first one), opened (first seen after the first sweep of its city: a new store) or closed (no longer seen). | "open" |
sweepStatus | string | The sweep’s own status word. old_sweep: active, opened, flicker (missed in one sweep and seen again) or closed. core_sweep: seen (in the app’s newest sweep week) or missed. | "active" |
catchmentPins | array of string | The pin codes the store was seen serving, ascending. | ["560034","560102"] |
catchmentPoints | array of string | Sweep grid points (latitude,longitude) the store was seen serving that the sweep did not place on a pin code; empty for most stores. | ["22.48303,88.35303"] |
firstSeen | string (date-time) | When a sweep first saw the store (UTC). | "2026-10-13T14:30:26.000Z" |
lastSeen | string (date-time) | When a sweep last saw the store (UTC). | "2026-10-15T16:27:27.000Z" |
closedAt | null or string | When the store was marked closed; null while open. | "2026-10-20T00:00:00.000Z" |
seenSweeps | null or integer | How many sweeps saw the store; null for core_sweep stores. | 2 |
missedSweeps | integer | How many sweeps since it was last seen missed it. | 0 |
lat | null or number | Latitude when located; null otherwise. | 12.9116 |
lon | null or number | Longitude when located; null otherwise. | 77.6389 |
id | string | Rewalto’s own id for the store, stable across refreshes. | "1042" |
sources | array of string | Every kind of source that holds the store (old_sweep, core_sweep, app_reading, store_list). | ["old_sweep","app_reading"] |
homePincode | null or string | The pin code the store is in; null when unknown. pincodeSource says how it is known: an estimate (catchment, catchment_point) is the pin it serves most, not its address. | "560034" |
pincodeSource | null or string | app_reading or store_list (stated), nearest_pin_centre (the pin whose centre is nearest the store’s own point), catchment (its most-seen catchment pin) or catchment_point (the pin nearest a grid point it served); null with no pin. | "catchment" |
area | null or string | The locality the store is in: as a source stated it, else the main locality of its pin code (India Post); null when unknown. | "Koramangala" |
address | null or string | The store’s address as the app or a store list states it; null when none does. | "Sector 110, Gurugram, Haryana, 122017" |
state | null or string | The state: as a source stated it, else its pin code’s; null when unknown. | "Karnataka" |
country | string | ISO 3166-1 alpha-2 country code. | "IN" |
coordSource | null or string | Where lat and lon come from: the app’s own statement of the store’s point (old_sweep, core_sweep, app_reading), or served_points_centroid, the centroid of the points the store served, derived by Rewalto because the app states none; null when not located. | "core_sweep" |
Errors
Errors share one shape: error.code, a retry advice and a request id.
| Status | error.code |
|---|---|
| 400 | invalid_request |
| 401 | key_expired, key_revoked, session_expired, unauthenticated |
| 402 | credits_exhausted, plan_required |
| 403 | org_missing, scope_missing |
| 409 | not_for_sale |
| 429 | rate_limited |
| 500 | internal |
| 503 | unavailable |
Credit cost
5 credits per dark store. Every account gets 1,000 free credits a month, and a read that delivers nothing costs nothing.
A real Flipkart Minutes record
One record from the free samples route (GET /v1/data/samples?dataset=dark_stores), exactly as the paid read returns it, with long lists cut to three items. Samples are at least a week old; this set holds records up to 29 Oct 2026.
{
"day": "2026-11-04",
"platform": "flipkart_minutes",
"storeId": "che_196_wh_hl_01",
"name": null,
"source": "core_sweep",
"city": "Chennai",
"cityTier": "tier_1_metro",
"status": "opened",
"sweepStatus": "seen",
"catchmentPins": [
"600002",
"600006",
"600008"
],
"catchmentPoints": [],
"firstSeen": "2026-10-13T14:55:15.000000Z",
"lastSeen": "2026-11-04T09:55:45.773000Z",
"closedAt": null,
"seenSweeps": null,
"missedSweeps": 0,
"lat": 13.072374,
"lon": 80.287043,
"id": "1695",
"sources": [
"app_reading",
"core_sweep",
"old_sweep"
],
"homePincode": "600006",
"pincodeSource": "catchment",
"area": "Greams Road",
"address": "Greams Road, Chennai, Tamil Nadu 600006",
"state": "Tamil Nadu",
"country": "IN",
"coordSource": "served_points_centroid"
}