# List home products

Read the Instamart home feed for a pincode or coordinates, including returned product packs and continuation.

- Platform: [Swiggy Instamart](https://docs.upscrape.com/docs/platforms/swiggy-instamart)
- Capability ID: `swiggy-instamart.home.list`
- Cost: 1 credit per request
- Maximum runtime: 120 seconds
- Execute endpoint: `POST https://data.upscrape.com/execute`

## Request

Use the exact public capability ID in the shared execute envelope.

```bash
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 '{
  "input": {
    "lat": 12.9352403,
    "lng": 77.624532
  },
  "capability": "swiggy-instamart.home.list"
}'
```

## Input

Provide pincode or both lat and lng. store_id alone does not supply the required home-feed location. Optional store and layout overrides must match that location.

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `lat` | `number` | No | Delivery latitude in decimal degrees From -90 to 90. |
| `layout_id` | `string` | No | Layout identifier. |
| `lng` | `number` | No | Delivery longitude in decimal degrees From -180 to 180. |
| `offset` | `Not specified` | No | Opaque next_offset returned by the preceding page; legacy non-negative numeric offsets remain accepted |
| `pincode` | `string` | No | Postal code (PIN) that sets the delivery location. |
| `primary_store_id` | `string` | No | Optional primary store ID from the location-specific Instamart session |
| `secondary_store_id` | `string` | No | Optional secondary store ID observed for the location-specific Instamart session |
| `store_id` | `string` | No | Optional store ID from the location-specific Instamart session |

### Example input

```json
{
  "lat": 12.9352403,
  "lng": 77.624532
}
```

## 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 pincode or coordinates and any store or layout overrides. 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.

### Illustrative sample output

This example shows one response. Values and optional fields vary with the data available.

```json
{
  "next_offset": "imh1.[redacted:token]",
  "products": [
    {
      "brand": "Go Zero",
      "category": "Ice Creams",
      "discount": "179",
      "discount_label": "47% OFF",
      "discount_paise": 17900,
      "id": "1L3QNYR63I",
      "image": "NI_CATALOG/IMAGES/CIW/2025/11/28/[redacted:token].png",
      "image_url": "https://instamart-media-assets.swiggy.com/swiggy/image/upload/fl_lossy,f_auto,q_auto/NI_CATALOG/IMAGES/CIW/2025/11/28/[redacted:token].png",
      "in_stock": true,
      "max_per_order": 1,
      "mrp": "380",
      "mrp_paise": 38000,
      "name": "Go Zero Mad Over Mango Guilt Free Ice Cream Tub",
      "offer_price": "201",
      "offer_price_paise": 20100,
      "product_url": "https://www.swiggy.com/instamart/item/1L3QNYR63I",
      "quantity": "500 ml",
      "rating": "4.1",
      "rating_count": "3.1k",
      "rating_value": 4.1,
      "sku": "82BFA0I6IJ",
      "store_id": "1396284"
    },
    {
      "brand": "The Brooklyn Creamery",
      "category": "Ice Creams",
      "discount": "14",
      "discount_label": "4% OFF",
      "discount_paise": 1400,
      "id": "25JSNA1XIV",
      "image": "NI_CATALOG/IMAGES/ciw/2026/5/22/[redacted:token].png",
      "image_url": "https://instamart-media-assets.swiggy.com/swiggy/image/upload/fl_lossy,f_auto,q_auto/NI_CATALOG/IMAGES/ciw/2026/5/22/[redacted:token].png",
      "in_stock": true,
      "max_per_order": 1,
      "mrp": "349",
      "mrp_paise": 34900,
      "name": "The Brooklyn Creamery Chocolate Fudge Brownie Ice Cream Tub",
      "offer_price": "335",
      "offer_price_paise": 33500,
      "product_url": "https://www.swiggy.com/instamart/item/25JSNA1XIV",
      "quantity": "450 ml",
      "rating": "3.7",
      "rating_count": "325",
      "rating_value": 3.7,
      "sku": "VKY9QGGD7R",
      "store_id": "1396284"
    },
    {
      "brand": "Go Zero",
      "category": "Ice Creams",
      "discount": "30",
      "discount_label": "12% OFF",
      "discount_paise": 3000,
      "id": "0SHNTMYXFM",
      "image": "NI_CATALOG/IMAGES/ciw/2026/5/26/[redacted:token] Vanilla Swiggy [redacted:token].png",
      "image_url": "https://instamart-media-assets.swiggy.com/swiggy/image/upload/fl_lossy,f_auto,q_auto/NI_CATALOG/IMAGES/ciw/2026/5/26/[redacted:token]%20Vanilla%20Swiggy%[redacted:token].png",
      "in_stock": true,
      "max_per_order": 1,
      "mrp": "249",
      "mrp_paise": 24900,
      "name": "Go Zero Only Vanilla Guilt Free Ice Cream Tub",
      "offer_price": "219",
      "offer_price_paise": 21900,
      "product_url": "https://www.swiggy.com/instamart/item/0SHNTMYXFM",
      "quantity": "1 ltr",
      "rating": "4.3",
      "rating_count": "7.5k",
      "rating_value": 4.3,
      "sku": "BFIU1VVBNY",
      "store_id": "1396284"
    }
  ]
}
```
### Illustrative output fields

Derived from the sample above for orientation only. These fields are not a fixed response schema.

| Path | Observed type | Example |
| --- | --- | --- |
| `next_offset` | `string` | imh1.[redacted:token] |
| `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`. Use an `Idempotency-Key` when retrying must not create a duplicate logical job.

## Related documentation

- [Authentication](https://docs.upscrape.com/docs/api/authentication)
- [Jobs and results](https://docs.upscrape.com/docs/api/jobs)
- [Errors and retries](https://docs.upscrape.com/docs/api/errors)
- [Idempotency](https://docs.upscrape.com/docs/api/idempotency)
