↑ ↓ to move ↵ to open
Swiggy Instamart API · Endpoint

Swiggy Instamart Category Products API

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

  • 1 credit per call
  • Failed calls are free
  • Updated
  • swiggy-instamart.category.products.list
Response completed
{  "next_offset": "1:26",  "pagination_status": "continuation_available",  "available_filters": {    "facets": {      "brand": [        "Fruits & Vegetables Category",        "Fruits and Vegetables"      ],      "type": [        "Vegetables",        "Leafy and Seasonings"      ]    },    "sorts": [      {        "key": "relevance",        "label": "Relevance"      },      {        "key": "price_low_to_high",        "label": "Price (Low To High)"      }    ]  },  "store": {    "delivery_eta": "10 MINS",    "latitude": 28.6327426,    "longitude": 77.2195969,    "pincode": "110001",    "place": "New Delhi, Delhi 110001, India",    "primary_store_id": "1062419",    "serviceability_status": "SERVICEABLE",    "serviceability_type": "FAST_SERVICEABLE",    "serviceable": true,    "store_id": "1062419"  },  "products": [    {      "name": "Cowpea Beans (Lobia Phaliyaan)",      "mrp": "28",      "brand": "Fruits and Vegetables",      "category": "Vegetables",      "discount": "6",      "discount_label": "21% OFF",      "discount_paise": 600,      "id": "JSN6O2S7BZ",      "image": "NI_CATALOG/IMAGES/CIW/2026/7/10/bc7be653-ef84-4993-b1c6-1240f9353eeb_XX05H71XO6_1.png",      "image_url": "https://instamart-media-assets.swiggy.com/swiggy/image/upload/fl_lossy,f_auto,q_auto/NI_CATALOG/IMAGES/CIW/2026/7/10/bc7be653-ef84-4993-b1c…",      "in_stock": true,      "max_per_order": 2,      "mrp_paise": 2800,      "offer_price": "22",      "offer_price_paise": 2200,      "product_url": "https://www.swiggy.com/instamart/item/JSN6O2S7BZ",      "quantity": "250 g",      "sku": "B540PQ5NL5",      "source_widget_type": "type.googleapis.com/swiggy.im.v1.ItemCollectionCard",      "sponsored": true,      "store_id": "1062419"    },    {      "name": "Indian Tomato (Tamatar)",      "mrp": "98",      "brand": "Fruits & Vegetables Category",      "category": "Vegetables",      "discount": "22",      "discount_label": "22% OFF",      "discount_paise": 2200,      "id": "Q3J3C2YRB4",      "image": "NI_CATALOG/IMAGES/CIW/2026/5/29/a95b1a7b-e480-4288-9b6d-125b95105ac0_1284.jpg",      "image_url": "https://instamart-media-assets.swiggy.com/swiggy/image/upload/fl_lossy,f_auto,q_auto/NI_CATALOG/IMAGES/CIW/2026/5/29/a95b1a7b-e480-4288-9b6…",      "in_stock": true,      "max_per_order": 1,      "mrp_paise": 9800,      "offer_price": "76",      "offer_price_paise": 7600,      "product_url": "https://www.swiggy.com/instamart/item/Q3J3C2YRB4",      "quantity": "500 g x 2",      "sku": "TCTW10074Q",      "source_widget_type": "type.googleapis.com/swiggy.im.v1.ItemCollectionCard",      "store_id": "1062419"    }  ]}
Try it live, free
Input

What you send

The input object of the request, with every field the endpoint accepts.

  • Send a six-digit pincode, or latitude and longitude together. If you send both, the pincode wins. Instamart picks the store from that location, and the response names the store it used. A store ID is optional: if you add one, it must be the store serving that location, or the call is refused. Keep the returned store and delivery point; one pincode does not stand for every address in its area.
  • Send a category name or a category link, together with a location. A link must carry the category name and taxonomy type; a store ID in the link is ignored, because the location picks the store. A taxonomy type alone does not pick a category.
  • Use the taxonomy type the categories endpoint returns when you have it; a category name can find it when you leave it out. Send a filter name and filter ID together to pick a sub-category.
  • Sort by relevance, price low to high, price high to low or biggest discount. Price and discount sorts order the packs on the returned page, not the whole catalogue. Pick brands and types from the filters each response offers, up to ten of each; the minimum rating can be 3, 4 or 4.5.
FieldTypeRequiredWhat it doesExample
category_url string one of Instamart category page link; categoryName, taxonomyType and storeId are read from the link
lat number one of Latitude in decimal degrees. From -90 to 90.
lng number one of Longitude in decimal degrees. From -180 to 180.
pincode string one of 6-digit Indian PIN code; the store serving it is resolved automatically (alternative to store_id) 110001
store_id string one of Instamart store ID (alternative to pincode; takes precedence when both are given)
brands array<string> no Selected brand values from available_filters
category_name string no Category name from categories.list; optional when category_url is given Fresh Vegetables
filter_id string no Optional sub-category ID paired with filter_name
filter_name string no Optional sub-category name within the category
min_rating number no Minimum rating facet Allowed values: 3, 4, 4.5. 3 · 4 · 4.5
offset string no All new category continuations are context-bound. Legacy page:items remains accepted without sort or facets but cannot detect context changes.
primary_store_id string no Primary store ID; defaults to store_id
secondary_store_id string no Secondary store ID when the location has one
sort string no Listing order; relevance is the default Allowed values: relevance, price_low_to_high, price_high_to_low, discount_high_to_low. relevance · price_low_to_high · price_high_to_l…
taxonomy_type string no Optional taxonomy from categories.list; resolved from category tiles when omitted Speciality taxonomy 1
types array<string> no Selected type values from available_filters
Response

Fields it returns

What each record in the response holds, with the values from the sample above.

FieldTypeWhat it isExample
products[].name string Product or category name as Instamart returns it. Cowpea Beans (Lobia Phaliyaan)
products[].quantity string Pack size text; compare equivalent packs. 250 g
products[].offer_price_paise integer Selling price in integer paise; divide by 100 for rupees. Missing means unknown. 2200
products[].mrp_paise integer MRP in integer paise where known. 2800
products[].in_stock boolean Availability reported for this pack at this store. An absent value is unknown. true
products[].store_id string Store serving this location. 1062419
products[].mrp string Maximum retail price printed on the pack, in rupees. 28
products[].brand string The brand on the listing. Fruits and Vegetables
products[].category string The product's category, such as Vegetables. Vegetables
products[].discount string The discount, in rupees. 6
products[].discount_label string The discount label, such as 21% OFF. 21% OFF
products[].discount_paise integer The discount, in paise. 600
products[].id string Category identifier returned by the category list. JSN6O2S7BZ
products[].image string Instamart's image reference. NI_CATALOG/IMAGES/CIW/2026/7/10/bc7be653-ef84-4993-b1c6-1240f93…
products[].image_url string Link to the product image. https://instamart-media-assets.swiggy.com/swiggy/image/upload/f…
products[].max_per_order integer The most of this product one order can hold. 2
products[].offer_price string The price you pay now, in rupees. 22
products[].product_url string Link to the product on Instamart. https://www.swiggy.com/instamart/item/JSN6O2S7BZ
products[].sku string Instamart's stock code for the product. B540PQ5NL5
products[].source_widget_type string The kind of section the product came from. type.googleapis.com/swiggy.im.v1.ItemCollectionCard
products[].sponsored boolean Sponsorship flag where returned; absence is not a confirmed false. true
available_filters object Filters and sort options Instamart offers for these results. 2 fields
available_filters.facets object Filter values you can narrow by. 2 fields
available_filters.facets.brand array The brand on the listing. Fruits & Vegetables Category, Fruits and Vegetables, Alive Leafs
available_filters.facets.type array The product types you can filter by. Vegetables, Leafy and Seasonings, Exotic Vegetables
available_filters.sorts array Sort options, such as relevance. 4 records
available_filters.sorts[].key string relevance
available_filters.sorts[].label string Relevance
next_offset string Send it back to get the next page. 1:26
pagination_status string Whether another page can be read. continuation_available
products array The products returned. 37 records
store object The store that serves this location. 10 fields
store.delivery_eta string Delivery time Instamart shows for the store. 10 MINS
store.latitude number Latitude of the resolved or checked delivery point. 28.63
store.longitude number Longitude of the resolved or checked delivery point. 77.22
store.pincode string The pincode of the store's area. 110001
store.place string The place the store serves. New Delhi, Delhi 110001, India
store.primary_store_id string Instamart's ID for the store serving this location. 1062419
store.serviceability_status string Whether Instamart delivers here, such as SERVICEABLE. SERVICEABLE
store.serviceability_type string The kind of delivery available, such as fast delivery. FAST_SERVICEABLE
store.serviceable boolean Whether this delivery point is served. true
store.store_id string Store serving this location. 1062419
Know before you build

What this endpoint covers

REST API · MCP server

Call it from your code, or ask your agent

Set UPSCRAPE_API_KEY to your key and copy a working request.

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.category.products.list",  "input": {    "category_name": "Fresh Vegetables",    "pincode": "110001",    "taxonomy_type": "Speciality taxonomy 1"  }}'
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, get Fresh Vegetables using Speciality taxonomy 1 at PIN 110001. Return product and SKU IDs, brand, pack, price, MRP, stock and store as a snapshot I can save for later comparison.

The agent finds the endpoint, shows you the price, and runs it with your credits.
Swiggy Instamart

More from the Swiggy Instamart API

Same data, other platforms

The same data from other platforms

Questions

Swiggy Instamart Category Products API FAQ

The short answers. The docs have the long ones.

Still have a question? Talk to the people who build the endpoints.
How much does the Swiggy Instamart Category Products API cost?

1 credit per successful call, shown before it runs. You buy credits once, and paid credits never expire.

What do I send?

Send store_id or pincode or lat or lng or category_url. The input fields below list every option with its type and limits.

Do I need a Swiggy Instamart login?

No. It reads public Swiggy Instamart data; nothing runs on your account.

Can my AI agent call it?

Yes, over MCP: the agent finds swiggy-instamart.category.products.list, checks its price and runs it with the same credits as the REST API.

Get started

Your first Swiggy Instamart call is free.

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