↑ ↓ to move ↵ to open
Commerce & delivery · REST API · MCP server

Swiggy Instamart API

Query Instamart products, pack prices, stock, categories, search placement and delivery coverage by pincode or coordinates.

  • 1 credit per call
  • Failed calls are free
  • Updated
swiggy-instamart.products.search 64 rows completed
# Product Pack Price (paise) MRP (paise) In stock Store Position Result kind Sponsored Mrp
1 Nandini Shubham Milk 500 ml x 4 10,800 10,800 true 1396284 1 match 108
2 Nandini Shubham Milk 500 ml x 2 5400 5400 true 1396284 2 match 54
3 Nandini Shubham Milk 500 ml 2700 2700 true 1396284 3 match 27
4 Arokya Toned Milk 500 ml x 2 5200 5200 true 1396284 promoted true 52
5 Arokya Toned Milk 500 ml 2600 2600 true 1396284 promoted true 26
6 Akshayakalpa High Protein Cow Milk Elaichi 250 ml 10,000 10,000 true 1396284 promoted true 100
7 Nandini Pasteurised Toned Milk 500 ml x 4 9600 9600 true 1396284 4 match 96
8 Nandini Pasteurised Toned Milk 500 ml x 2 4800 4800 true 1396284 5 match 48
9 Nandini Pasteurised Toned Milk 500 ml 2400 2400 true 1396284 6 match 24
10 Akshayakalpa High Protein Cow Milk Elaichi 250 ml 10,000 10,000 true 1396284 promoted 100
Endpoints

Swiggy Instamart API endpoints

What each one takes and what it returns. Open one for a real response, every input and every field.

Swiggy Instamart Product API

Look up a product by ID or supported Instamart link to see pack variations, prices, availability, descriptions and highlights.

Sendstore_idorpincodeorlatorlng Returnsnameskuquantityoffer_price_paisemrp_paisein_stock
1 credit

Swiggy Instamart Categories API

Get category names, IDs, sections and taxonomy so you can browse the local catalogue programmatically.

Sendstore_idorpincodeorlatorlng Returnsnameidsectiontaxonomy_typeimage
1 credit

Swiggy Instamart Category Products API

List products in a category or supported category link with pack prices, stock, filters and pagination.

Sendstore_idorpincodeorlatorlngorcategory_url Returnsnamequantityoffer_price_paisemrp_paisein_stockstore_id
1 credit

Swiggy Instamart Home Products API

Get products currently shown on the Instamart home feed for a pincode or coordinates, with pagination.

Sendlatorlngorpincode Returnsnamequantityoffer_price_paisemrp_paisein_stockstore_id
1 credit

Swiggy Instamart Resolve Serviceability API

Check whether Instamart serves a pincode or coordinates and get the serving store and ETA when returned.

Sendlatitudeorlongitudeorpincode Returnslatitudelongitudeserviceablestore_ideta_minutescaptured_at
1 credit

Swiggy Instamart Delivery ETA API

Get the delivery estimate and serviceability returned for a pincode or coordinates.

Sendlatitudeorlongitudeorpincode Returnslatitudelongitudeserviceablestore_ideta_minutescaptured_at
1 credit
Use cases

What teams build with Instamart data

Price, stock, search, range and delivery checks for the locations you choose.

Know before you build

How Swiggy Instamart data behaves

REST API · MCP server

Call it from your code, or ask your agent

One request shape for every Swiggy Instamart endpoint: the endpoint ID and its input. No SDK needed.

curl --request POST \  --url https://data.upscrape.com/execute \  --header "Authorization: Bearer $UPSCRAPE_API_KEY" \  --header "Content-Type: application/json" \  --header "Prefer: wait=30" \  --data '{  "capability": "swiggy-instamart.products.search",  "input": {    "pincode": "560034",    "query": "milk"  }}'
Response
{  "next_offset": "im1.eyJzdG9yZV9pZCI6IjEzOTYyODQiLCJ2IjoxLCJzY29wZSI6IjlhZDQwMGM1NTNkMmFhYWZhYzA1MDY4MjExNGFhMmMzODE3MjBiYjE4NTllMjdkMzkyZTMyNDAxZWZlMzY0NjQ…",  "pagination_status": "continuation_available",  "available_filters": {    "facets": {      "rating": [        "3+",        "4+"      ],      "brand": [        "Amul",        "Akshayakalpa"      ],      "type": [        "Fresh Milk",        "Tetra Milk"      ]    },    "sorts": [      {        "key": "relevance",        "label": "Relevance"      },      {        "key": "price_low_to_high",        "label": "Price (Low To High)"      }    ]  },  "store": {    "delivery_eta": "12 MINS",    "latitude": 12.9261382,    "longitude": 77.62210910000002,    "pincode": "560034",    "place": "Bengaluru, Karnataka 560034, India",    "primary_store_id": "1396284",    "serviceability_status": "SERVICEABLE",    "serviceability_type": "FAST_SERVICEABLE",    "serviceable": true,    "store_id": "1396284"  },  "products": [    {      "name": "Nandini Shubham Milk",      "mrp": "108",      "rating": "4.4",      "rating_value": 4.4,      "brand": "Nandini",      "category": "Milk",      "id": "CCX1XWR7GN",      "image": "NI_CATALOG/IMAGES/ciw/2025/12/17/02bfb139-2185-4e4a-9419-29fd0af79fbb_J4ZRFJNQRO_MN_16122025.png",      "image_url": "https://instamart-media-assets.swiggy.com/swiggy/image/upload/fl_lossy,f_auto,q_auto/NI_CATALOG/IMAGES/ciw/2025/12/17/02bfb139-2185-4e4a-94…",      "in_stock": true,      "max_per_order": 1,      "mrp_paise": 10800,      "offer_price": "108",      "offer_price_paise": 10800,      "position": 1,      "product_url": "https://www.swiggy.com/instamart/item/CCX1XWR7GN",      "quantity": "500 ml x 4",      "rating_count": "118k",      "result_type": "match",      "sku": "SS8P89LI92",      "source_widget_type": "type.googleapis.com/swiggy.im.v1.ItemCollectionCard",      "store_id": "1396284",      "badges": [        "Bestseller"      ]    },    {      "name": "Nandini Shubham Milk",      "mrp": "54",      "rating": "4.4",      "rating_value": 4.4,      "brand": "Nandini",      "category": "Milk",      "id": "CCX1XWR7GN",      "image": "NI_CATALOG/IMAGES/ciw/2025/12/17/02bfb139-2185-4e4a-9419-29fd0af79fbb_J4ZRFJNQRO_MN_16122025.png",      "image_url": "https://instamart-media-assets.swiggy.com/swiggy/image/upload/fl_lossy,f_auto,q_auto/NI_CATALOG/IMAGES/ciw/2025/12/17/02bfb139-2185-4e4a-94…",      "in_stock": true,      "max_per_order": 3,      "mrp_paise": 5400,      "offer_price": "54",      "offer_price_paise": 5400,      "position": 2,      "product_url": "https://www.swiggy.com/instamart/item/CCX1XWR7GN",      "quantity": "500 ml x 2",      "rating_count": "118k",      "result_type": "match",      "sku": "TK6K7BDQRM",      "source_widget_type": "type.googleapis.com/swiggy.im.v1.ItemCollectionCard",      "store_id": "1396284",      "badges": [        "Bestseller"      ]    }  ]}
In your AI agent Claude · Cursor · any MCP client
1Add the Upscrape MCP server
https://data.upscrape.com/mcp
2Ask for the data in plain words

Using Upscrape, search Instamart for milk at PIN 560034. List brand, pack, price and stock. Show position only for match rows and keep promoted and other result kinds separate.

Using Upscrape, check Instamart product 8XUTKS0CZ3 at PIN 560034. Give each returned SKU, pack size, selling price, MRP and availability. Convert paise to rupees for display and retain the store ID.

Using Upscrape, list the Instamart Atta, Rice and Dal category at PIN 400050. Check product 5LR16VWHT5 directly at the same PIN and report its pack, price, stock and serving store. Keep missing values separate from sold out.

The agent finds the endpoint, shows you the price, and runs it with your credits.
Commerce & delivery
Questions

Swiggy Instamart API FAQ

The short answers. The docs have the long ones.

Still have a question? Talk to the people who build the endpoints.
What data can I get from Instamart?

You can get products, pack prices, MRP, stock, categories, category listings, home-feed products, autocomplete suggestions, place data, serviceability and ETA. The Upscrape API is read-only.

Is this Swiggy’s official Instamart developer API?

No. Swiggy Builders Club is Swiggy’s official developer programme for consumer shopping flows such as product search, cart, checkout and order tracking. Upscrape serves a different, read-only job: monitoring prices, stock, assortment, search visibility, categories and delivery coverage.

Can I query Instamart with just a pincode?

Yes. The main catalogue endpoints take a six-digit pincode directly, or start from an area name: location suggest finds the place and location resolve gives its coordinates. Keep the returned store with your results, since a pincode stands for one delivery point.

Does missing from search mean out of stock?

No. Search visibility and availability are different. Check product.get at the same location and inspect the returned pack variations before reporting a stockout.

How does pagination work?

Send the next-page value back unchanged with the same location, query, sort and filters. Price and discount sorting applies to the returned page, not the whole catalogue.

Can I get historical Instamart prices?

The API returns what Instamart shows now. Build history by saving repeated requests with the product, SKU, store, location and time of each check.

How much does the Swiggy Instamart API cost?

Every Swiggy Instamart endpoint costs 1 credit per successful call. You buy credits once, with no subscription, and paid credits never expire. New accounts get free credits to try it.

Do I need a Swiggy Instamart account or login?

No. Upscrape reads the pages Swiggy Instamart shows to any visitor, so you send the input the endpoint asks for and get the data back. Nothing runs on your account, and you share no password or cookie.

Get started

Your first Swiggy Instamart call is free.

Up to 100 free credits to start, no card needed.