REWALTO / DEVELOPERS / API / BLINKIT
Blinkit product search API
GET /v1/data/search-ranks with retailer=blinkit returns one record per product, search term, pin code and day Rewalto searched Blinkit: the best place the product held in the results, its page and slot, and how often it was seen, in the top ten and marked sponsored. Rewalto holds about 53,75,690 Blinkit search rank records, for days from 26 Sept 2026 to 7 Nov 2026. It needs an API key and costs 1 credit per 10 readings; the sample record below is free.
Last updated 7 Nov 2026.
Key facts
| Endpoint | GET /v1/data/search-ranks |
|---|---|
| App filter | retailer=blinkit |
| Cost | 1 credit per 10 readingsOnly delivered records use credits |
| Key | API key needed |
| Records held | about 53,75,690, 26 Sept 2026 to 7 Nov 2026From the coverage matrix |
A real Blinkit record
One record from the free samples route (GET /v1/data/samples?dataset=search_rank), 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 1 Nov 2026.
{
"day": "2026-11-01",
"retailer": "blinkit",
"searchTerm": "amul milk",
"pincode": "110001",
"retailerSku": "524695",
"brand": "Let's Try",
"bestPlace": 1,
"bestPage": 1,
"bestPageSlot": 1,
"readings": 1,
"top10Readings": 1,
"adAwareReadings": 1,
"sponsoredReadings": 1,
"firstSeen": "2026-11-01T00:31:21.000000Z",
"lastSeen": "2026-11-01T00:31:21.000000Z"
}Call the Blinkit endpoint
Set REWALTO_API_KEY to a key from your account, then run any of these.
cURL
curl -H "Authorization: Bearer $REWALTO_API_KEY" \
"https://api.rewalto.com/v1/data/search-ranks?retailer=blinkit&searchTerm=amul%20milk&pincode=110001&limit=20"Python
import os
import requests
r = requests.get(
"https://api.rewalto.com/v1/data/search-ranks",
params={"retailer": "blinkit", "searchTerm": "amul milk", "pincode": "110001", "limit": 20},
headers={"Authorization": f"Bearer {os.environ['REWALTO_API_KEY']}"},
timeout=30,
)
r.raise_for_status()
for record in r.json()["data"]:
print(record["searchTerm"], record["bestPlace"])Node
const res = await fetch("https://api.rewalto.com/v1/data/search-ranks?retailer=blinkit&searchTerm=amul%20milk&pincode=110001&limit=20", {
headers: { Authorization: `Bearer ${process.env.REWALTO_API_KEY}` },
});
if (!res.ok) throw new Error(`Rewalto API ${res.status}`);
const { data } = await res.json();
for (const record of data) console.log(record.searchTerm, record.bestPlace);Track where Blinkit products rank in search
Add searchTerm for one search term, retailerSku for one product, pincode for one pin code, and from and to for a range of days. bestPlace is the best place the product held in the results that day, counting from one; readings counts the times Rewalto saw it, top10Readings those in places 1 to 10, and sponsoredReadings those Blinkit marked sponsored. These are counts of what Blinkit showed, not a model.
Fields in each record
From API contract 0.179.0.
| Field | Type | What it means | Example |
|---|---|---|---|
day | string (date) | The IST day. | "2026-10-21" |
retailer | string | The retailer. | "flipkart" |
searchTerm | string | The search term. | "instant coffee" |
pincode | string | The pin code searched at, or national. | "national" |
retailerSku | string | The retailer’s own product id. | "COFG5Z7H2ZQ8YH5K" |
brand | string | The brand on the card; empty when it named none. | "Nescafe" |
bestPlace | null or integer | Best position in the whole result list that day (1 is first). | 3 |
bestPage | integer | The first result page it was seen on (1 is the first page). | 1 |
bestPageSlot | integer | Its best position on that page, ads included. | 3 |
readings | integer | Search replies that showed it that day. | 4 |
top10Readings | integer | Of those, replies that placed it in places 1 to 10. | 4 |
adAwareReadings | integer | Replies from a reading that can see the ad marker. | 4 |
sponsoredReadings | integer | Of the ad-aware replies, those that marked it sponsored. | 0 |
firstSeen | string (date-time) | The first reading that day. | "2026-10-21T02:31:10.000000Z" |
lastSeen | string (date-time) | The last reading that day. | "2026-10-21T14:02:44.000000Z" |
Full reference
Every parameter and error code for this endpoint is in the reference.
Not Blinkit's own API
Rewalto is not affiliated with, endorsed by or partnered with Blinkit. It reads Blinkit's public pages, the way a shopper sees them.
Questions people ask
- Is this the official Blinkit API?
- No. Rewalto is not affiliated with, endorsed by or partnered with Blinkit. It reads Blinkit's public pages, the way a shopper sees them.
- What does a read cost?
- 1 credit per 10 readings. Every account gets 1,000 free credits a month, and a read that delivers nothing costs nothing.
- Do I need an API key?
- Yes, for this endpoint. The sample on this page comes from GET /v1/data/samples, which is free and needs no key.
- How do I track my products' Blinkit search rank?
- Read this endpoint each day for your search terms and pin codes, keep the records, and compare bestPlace from day to day. Pass retailerSku to follow one product. Re-reading the same records within a week is free.
- Can an AI agent read it?
- AI agents can read the same records through Rewalto's MCP server.