Blinkit Product Scraper API
The Blinkit Product Scraper API returns one product, priced at one store, as structured JSON — price, MRP, discount, stock, attributes, its other pack sizes as sellable SKUs, and the recommendation rails from the page. Like search, the request is tied to a location and the resolved store comes back in location.
Endpoint:
https://api.scrapingdog.com/blinkit/productAPI Parameters
🔑
Scrapingdog Parameters
api_keyRequiredYour personal API key. Available on your dashboard.
Type: String
🔍
Product
product_idRequiredBlinkit product id — theproduct_idcarried by every search result.
A 404 here means Blinkit served the page but the store does not carry the product. That is a real answer rather than a failure, and it is not charged.
Type: String
📍
Location
pincodeOptionalIndian pincode to resolve a serving store from. Eitherpincode, or bothlatandlon, is required.
A pincode costs one extra lookup on our side; passing coordinates skips it and is faster.
Type: StringlatOptionalLatitude to search from. Use together withlonin place ofpincode.
Type: NumberlonOptionalLongitude to search from. Note Blinkit takeslon— Swiggy Instamart takeslng.
Type: Number
⚙
️ Scrapingdog Options
htmlOptionalSet totrueto receive the raw upstream response instead of parsed JSON.
Default:false
Type: Boolean
API Examples

Code to Integrate
curl "https://api.scrapingdog.com/blinkit/product?api_key=APIKEY&product_id=1383282&pincode=302018"
import requests url = "https://api.scrapingdog.com/blinkit/product" params = { "api_key": "APIKEY", "product_id": "1383282", "pincode": "302018" } response = requests.get(url, params=params) if response.status_code == 200: data = response.json() print(data["product"]) else: print(f"Request failed with status code: {response.status_code}")
const axios = require('axios'); axios.get('https://api.scrapingdog.com/blinkit/product', { params: { api_key: 'APIKEY', product_id: '1383282', pincode: '302018' } }).then(response => console.log(response.data.product)) .catch(error => console.error(error.message));
<?php $url = 'https://api.scrapingdog.com/blinkit/product?' . http_build_query([ 'api_key' => 'APIKEY', 'product_id'=> '1383282', 'pincode' => '302018', ]); echo file_get_contents($url);
require 'net/http' require 'uri' url = URI.parse("https://api.scrapingdog.com/blinkit/product") url.query = URI.encode_www_form('api_key' => 'APIKEY', 'product_id' => '1383282', 'pincode' => '302018') http = Net::HTTP.new(url.host, url.port) http.use_ssl = true puts http.request(Net::HTTP::Get.new(url)).body
import java.io.*; import java.net.*; public class Main { public static void main(String[] args) throws Exception { String apiUrl = "https://api.scrapingdog.com/blinkit/product?api_key=APIKEY&product_id=1383282&pincode=302018"; URL url = new URL(apiUrl); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("GET"); BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream())); String line; while ((line = reader.readLine()) != null) System.out.println(line); conn.disconnect(); } }
API Response
{
"search_parameters": { "product_id": "1383282", "pincode": "302018", "lat": 26.865523, "lon": 75.7876 },
"total_time_taken": 1.99,
"location": { "store_id": "42750", "city": "Jaipur" },
"store_resolved_from": "pincode",
"product": {
"product_id": "1383282",
"name": "Zeeba Everyday Basmati Rice (Medium Grain)",
"brand": "Zeeba",
"brand_id": 53352,
"price": 76,
"mrp": 115,
"discount": "33% OFF",
"price_note": "(Inclusive of all taxes)",
"unit": "1 kg",
"in_stock": true,
"inventory": 7,
"merchant_id": "42750",
"merchant_type": "Express",
"eta": "earliest",
"images": ["..."],
"variants": [
{ "product_id": "1381642", "unit": "5 kg", "price": 272, "mrp": 570 }
],
"attributes": [{ "name": "Grain Length", "value": "Medium Grain" }],
"recommendations": [{ "title": "Similar products", "products": [] }],
"product_url": "https://blinkit.com/prn/x/prid/1383282"
}
}