Skip to documentation
Browse documentation

List category products

List packs in an Instamart category or supported category URL, with local prices, stock, filters, sorting and continuation.

Capability ID swiggy-instamart.category.products.list
Maximum runtime 120 seconds
View raw

POST /execute Shared execution endpoint

Input parameters

Provide store_id, a six-digit pincode, or both lat and lng. Store takes precedence over pincode, which takes precedence over coordinates. Prefer one selector and retain the returned store and delivery point; one pincode does not describe every address in its area.

Provide category_name or category_url. A supported category-listing link must supply categoryName and taxonomyType and may supply storeId. If it supplies storeId, do not combine it with pincode or coordinates; any explicit store_id must match the linked store. If the link has no storeId, provide a location selector. Taxonomy alone is not a category selector.

Use the returned taxonomy_type when available; a category name can resolve its taxonomy when omitted. Use filter_name and filter_id together to select a sub-category.

Choose sort from relevance, price_low_to_high, price_high_to_low or discount_high_to_low. Numeric sorts order the packs on the returned page, not the entire catalogue. Choose brands and types from available_filters, with at most ten unique values in each; min_rating accepts 3, 4 or 4.5.

brands array<string> optional

Selected brand values from available_filters

category_name string optional

Category name from categories.list; optional when category_url is given

Example Atta, Rice and Dal
category_url string optional

Instamart category page link; categoryName, taxonomyType and storeId are read from the link

filter_id string optional

Optional sub-category ID paired with filter_name

filter_name string optional

Optional sub-category name within the category

lat number optional

Latitude in decimal degrees. From -90 to 90.

lng number optional

Longitude in decimal degrees. From -180 to 180.

min_rating number optional

Minimum rating facet Allowed values: `3`, `4`, `4.5`.

Available values 344.5
offset string optional

Follow the returned opaque next_offset unchanged with the same category, taxonomy, subcategory, location, sort and filters. All new category continuations are context-bound. Legacy page:items remains accepted without sort or facets but cannot detect context changes.

pincode string optional

6-digit Indian PIN code; the store serving it is resolved automatically (alternative to store_id)

primary_store_id string optional

Primary store ID; defaults to store_id

secondary_store_id string optional

Secondary store ID when the location has one

sort string optional

Listing order; relevance is the default Allowed values: `relevance`, `price_low_to_high`, `price_high_to_low`, `discount_high_to_low`.

Available values relevanceprice_low_to_highprice_high_to_lowdiscount_high_to_low
store_id string optional

Instamart store ID (alternative to pincode; takes precedence when both are given)

Example 1396284
taxonomy_type string optional

Optional taxonomy from categories.list; resolved from category tiles when omitted

Example taxonomy 5
types array<string> optional

Selected type values from available_filters

Response

Successful output is returned in results[0].data.

Use offer_price_paise, mrp_paise and discount_paise for price arithmetic, dividing by 100 to display rupees. Missing monetary fields remain unknown; a real zero stays zero. Compare the same SKU and pack size, and inspect in_stock separately from price.

Follow next_offset unchanged with the same location, category, sort, filters, sub-category and layout. An empty product page can still have a continuation. Check pagination_status and pagination_reason; limited or unknown states do not establish complete catalogue coverage.

Legacy page:items offsets are accepted only without sorting or facets. Prefer the returned next_offset for filtered or sorted pages.

Illustrative sample The example response is shown in the response panel.

Illustrative output fields

Values illustrate one response. Read the guidance above for missing values and limits; fields can vary with the requested operation and the data available.

PathObserved typeExample
available_filters object 2 fields
available_filters.facets object 3 fields
available_filters.sorts array 3 items
next_offset string ic1.[redacted:token]
pagination_status string continuation_available
products array 3 items
products array 3 items

Execution behavior

A 200 response completed inline. A 202 response was queued; poll GET /jobs/:id until the job reaches completed or failed.

Overview, pricing and sample data for every endpoint: Swiggy Instamart API