Looking for the overview — what this API returns, what it costs, and a call you can run without a key? See the JioMart API page →
E-commerce & Marketplaces

JioMart API & Scraper

JioMart prices, stock and even the catalogue depend on the delivery PIN code, so every call takes one 6-digit PIN code and answers for it.

5 actionsLive JSON1,000 free credits$0.67–$1.50 / 1,000 creditsMCP-ready
Get a free keyOpen in playground

🤖 Using an AI assistant? Copy this link into ChatGPT / Claude / Cursor — it reads every endpoint and parameter instantly and tells you if this API fits your use case.

`search` returns 12 products per page for a query, category or brand: selling price, MRP, discount percent, unit price per ml, g, L or kg, pack size, brand, category path, whether Reliance Retail (1p) or a marketplace seller (3p) sells it, and its pack-size variants, with filters for brand, category, department, seller type, price and discount, six sort orders and a quick-delivery mode. `product` takes the slug from any search row and returns the full record (EAN, description, key features, images, dimensions, veg or non-veg mark, every catalogue attribute) plus, for each size, the offer JioMart would fill at that PIN code: price, MRP, price per unit, quantity available, seller name, serving store, ship-from PIN code, return policy and manufacturer or importer, or the reason it cannot be delivered, such as Out of Stock. `sellers` lists every seller of one size with cash on delivery and the delivery window, `pincode` lists the stores that deliver to a PIN code with their ETA, and `facets` gives category and brand counts.

Reference

What a JioMart field actually contains

Fields that read differently from how they look. Every row was measured against live JioMart responses on 2026-10-14.

FieldWhat it holds
pincodeThe 6-digit PIN code the answer is for. JioMart has no PIN-free price: "amul milk" matched 360 products at 400020 (Mumbai), 353 at 560001 (Bengaluru), 195 at 799001 (Agartala) and 73 at 110001 (Delhi), and the same 5 kg atta cost 269 with MRP 314 in Mumbai and 319 with MRP 358 in Bengaluru.
price, mrp, discount_percentSelling price and maximum retail price in rupees. discount_percent is computed from the two. On 22 product reads whose offer was available (groceries, electronics, fashion, home; Reliance and marketplace sellers), the search-row price and MRP equalled the product offer and the MRP JioMart prints as text ("₹19,900.00 inclusive of all taxes") on 22 of 22.
unit_priceJioMart's own price per unit, for example 0.07 per ml or 57.00 per L, kept as the source writes it in unit_price_text. Filled on 82 of 84 grocery rows; electronics and fashion rows have none.
seller_type1p when Reliance Retail sells the product, 3p for a marketplace seller. The seller's name is on product offers and in sellers: "Reliance Retail Limited" or the marketplace company, for example CASOTEC E-RETAIL PRIVATE LIMITED.
offers[].availableWhether that size can be delivered to the PIN code right now. A search row is not a stock signal: 6 of 12 grocery products that search listed with a price were Out of Stock for the same PIN code, and product returns that reason instead of a price.
slugThe product's id. Pass it unchanged to product or sellers; 35 of 35 search slugs (24 grocery, 11 other) returned the same product id and name.
total, last_pageJioMart's own count of matches and the number of 12-product pages. Pages after last_page are empty.

Prices do not depend on where the request comes from once the PIN code is fixed: four separate reads of the same 12 products in the same minute had identical prices, MRPs and order. The PIN code is the only location input.

Live example

Real request and response JSON

Captured from the indexed primary action, search, on .

Captured request
{
  "method": "POST",
  "url": "https://api.reefapi.com/jiomart/v1/search",
  "headers": {
    "x-api-key": "$REEF_KEY",
    "content-type": "application/json"
  },
  "body": {
    "query": "aashirvaad atta",
    "pincode": "400020"
  }
}
Captured response
{
  "ok": true,
  "meta": {
    "api": "jiomart",
    "endpoint": "search",
    "mode": "live",
    "latency_ms": 1923.5,
    "record_count": 12,
    "bytes": 102866,
    "cache_hit": false,
    "pincode": "400020",
    "total": 102,
    "upstream_requests": 1,
    "charged_credits": 2,
    "version": "0.1.0",
    "request_id": "5d72865e10b8486a",
    "queue_ms": 1.1,
    "fetched_at": "2026-10-14T18:57:23.959Z"
  },
  "data": {
    "pincode": "400020",
    "delivery": "standard",
    "total": 102,
    "page": 1,
    "page_size": 12,
    "last_page": 9,
    "has_next": true,
    "returned": 12,
    "dropped_rows": 0,
    "results": [
      {
        "product_id": 132487553,
        "slug": "aashirvaad-superior-whole-wheat-mp-atta-5-kg-mr0mye-132487553",
        "item_code": "490750661",
        "name": "Aashirvaad Superior Whole Wheat MP Atta 5 kg",
        "brand": "aashirvaad",
        "url": "https://www.jiomart.com/product/aashirvaad-superior-whole-wheat-mp-atta-5-kg-mr0mye-132487553",
        "image": "https://cdn1.jiomartjcp.com/v2/catalog-cloud/jiomar/original/images/othe/egurhk/.j/pg/0000000004907506611.jpg.9d2f69429c.jpg",
        "image_count": 7,
        "price": 269,
        "mrp": 314,
        "discount_percent": 14,
        "currency": "INR",
        "unit_price": {
          "amount": 53.8,
          "per": "kg"
        },
        "unit_price_text": "53.80/kg",
        "net_quantity": 5,
        "net_quantity_unit": "kg",
        "pack_size": "5 kg",
        "sizes": [
          "OS"
        ],
        "seller_type": "1p",
        "seller_id": 1,
        "store_ids": [
          3442
        ],
        "sellable": true,
        "variants": [
          {
            "product_id": "[trimmed-depth]",
            "slug": "[trimmed-depth]",
            "value": "[trimmed-depth]",
            "is_available": "[trimmed-depth]"
          },
          {
            "product_id": "[trimmed-depth]",
            "slug": "[trimmed-depth]",
            "value": "[trimmed-depth]",
            "is_available": "[trimmed-depth]"
          },
          {
            "product_id": "[trimmed-depth]",
            "slug": "[trimmed-depth]",
            "value": "[trimmed-depth]",
            "is_available": "[trimmed-depth]"
          }
        ],
        "department": {
          "name": "Groceries",
          "slug": "groceries",
          "id": 1
        },
        "category_l1": {
          "name": "Cooking Essentials",
          "slug": "cooking-essentials",
          "id": 116
        },
        "category_l2": {
          "name": "Atta, Flours & Sooji",
          "slug": "atta-flours-sooji",
          "id": 323
        },
        "category_l3": {
          "name": "Atta",
          "slug": "atta",
          "id": 2496
        },
        "vertical": "GROCERIES",
        "country_of_origin": "India",
        "food_type": "green_dot",
        "is_vegetarian": true,
        "max_qty_per_order": 2,
        "tags": [
          "kirana_1p",
          "1p",
          "GROCERIES"
        ],
        "journey": "standard",
        "rank": 1
      },
      {
        "product_id": 132487643,
        "slug": "aashirvaad-superior-whole-wheat-mp-atta-1-kg-mr0mz2-132487643",
        "item_code": "490750659",
        "name": "Aashirvaad Superior Whole Wheat MP Atta 1 kg",
        "brand": "aashirvaad",
        "url": "https://www.jiomart.com/product/aashirvaad-superior-whole-wheat-mp-atta-1-kg-mr0mz2-132487643",
        "image": "https://cdn1.jiomartjcp.com/v2/catalog-cloud/jiomar/original/images/othe/egurhk/.j/pg/0000000004907506591.jpg.89d8b131dc.jpg",
        "image_count": 8,
        "price": 63,
        "mrp": 68,
        "discount_percent": 7,
        "currency": "INR",
        "unit_price": {
          "amount": 63,
          "per": "kg"
        },
        "unit_price_text": "63.00/kg",
        "net_quantity": 1,
        "net_quantity_unit": "kg",
        "pack_size": "1 kg",
        "sizes": [
          "OS"
        ],
        "seller_type": "1p",
        "seller_id": 1,
        "store_ids": [
          3442
        ],
        "sellable": true,
        "variants": [
          {
            "product_id": "[trimmed-depth]",
            "slug": "[trimmed-depth]",
            "value": "[trimmed-depth]",
            "is_available": "[trimmed-depth]"
          },
          {
            "product_id": "[trimmed-depth]",
            "slug": "[trimmed-depth]",
            "value": "[trimmed-depth]",
            "is_available": "[trimmed-depth]"
          },
          {
            "product_id": "[trimmed-depth]",
            "slug": "[trimmed-depth]",
            "value": "[trimmed-depth]",
            "is_available": "[trimmed-depth]"
          }
        ],
        "department": {
          "name": "Groceries",
          "slug": "groceries",
          "id": 1
        },
        "category_l1": {
          "name": "Cooking Essentials",
          "slug": "cooking-essentials",
          "id": 116
        },
        "category_l2": {
          "name": "Atta, Flours & Sooji",
          "slug": "atta-flours-sooji",
          "id": 323
        },
        "category_l3": {
          "name": "Atta",
          "slug": "atta",
          "id": 2496
        },
        "vertical": "GROCERIES",
        "country_of_origin": "India",
        "food_type": "green_dot",
        "is_vegetarian": true,
        "max_qty_per_order": 4,
        "tags": [
          "QC",
          "GROCERIES",
          "NON-RX"
        ],
        "journey": "standard",
        "rank": 2
      },
      {
        "product_id": 132486899,
        "slug": "aashirvaad-superior-whole-wheat-mp-atta-10-kg-mr0mtz-132486899",
        "item_code": "490750662",
        "name": "Aashirvaad Superior Whole Wheat MP Atta 10 kg",
        "brand": "aashirvaad",
        "url": "https://www.jiomart.com/product/aashirvaad-superior-whole-wheat-mp-atta-10-kg-mr0mtz-132486899",
        "image": "https://cdn1.jiomartjcp.com/v2/catalog-cloud/jiomar/original/images/othe/egurhk/.j/pg/0000000004907506621.jpg.fe38adf44e.jpg",
        "image_count": 8,
        "price": 535,
        "mrp": 612,
        "discount_percent": 13,
        "currency": "INR",
        "unit_price": {
          "amount": 53.5,
          "per": "kg"
        },
        "unit_price_text": "53.50/kg",
        "net_quantity": 10,
        "net_quantity_unit": "kg",
        "pack_size": "10 kg",
        "sizes": [
          "OS"
        ],
        "seller_type": "1p",
        "seller_id": 1,
        "store_ids": [
          3442
        ],
        "sellable": true,
        "variants": [
          {
            "product_id": "[trimmed-depth]",
            "slug": "[trimmed-depth]",
            "value": "[trimmed-depth]",
            "is_available": "[trimmed-depth]"
          },
          {
            "product_id": "[trimmed-depth]",
            "slug": "[trimmed-depth]",
            "value": "[trimmed-depth]",
            "is_available": "[trimmed-depth]"
          },
          {
            "product_id": "[trimmed-depth]",
            "slug": "[trimmed-depth]",
            "value": "[trimmed-depth]",
            "is_available": "[trimmed-depth]"
          }
        ],
        "department": {
          "name": "Groceries",
          "slug": "groceries",
          "id": 1
        },
        "category_l1": {
          "name": "Cooking Essentials",
          "slug": "cooking-essentials",
          "id": 116
        },
        "category_l2": {
          "name": "Atta, Flours & Sooji",
          "slug": "atta-flours-sooji",
          "id": 323
        },
        "category_l3": {
          "name": "Atta",
          "slug": "atta",
          "id": 2496
        },
        "vertical": "GROCERIES",
        "country_of_origin": "India",
        "food_type": "green_dot",
        "is_vegetarian": true,
        "max_qty_per_order": 1,
        "tags": [
          "rrl_fc",
          "NON-RX",
          "kirana_1p"
        ],
        "journey": "standard",
        "rank": 3
      }
    ]
  }
}
Actions

What the JioMart API does

ActionDescriptionConcrete use caseKey params
searchSearch JioMart's catalogue AS SEEN FROM ONE PIN CODE: 12 products per page with selling price, MRP, discount %, unit price (per ml / g / L / kg), pack size, brand, category path (department > L1 > L2 > L3), seller type (Reliance = 1p or marketplace = 3p), the serving store ids, in-stock flag and pack-size variants. Filters: brand, category, department (with a query), seller type, price range, discount range; six sort orders; delivery=quick limits to what the pin's local stores deliver in minutes. `pincode` and at least one of `query` / `category` / `brand` are required.Pricing teams call search to search JioMart's catalogue AS SEEN FROM ONE PIN CODE.pincode, query, category, brand, department, ...
productOne JioMart product at one PIN code, by the `slug` a search row returns (or its jiomart.com/product/ URL): full record (EAN, brand, description, key features, images, category path, pack size, net quantity, dimensions, veg/non-veg mark, max quantity per order, rating count, every catalogue attribute) + pack-size variants + for EACH size the offer the site would fill at that pin: selling price, MRP, discount, price per unit, quantity available, seller (Reliance Retail or the marketplace seller's name), serving store, ship-from pin and distance, return policy, manufacturer / importer / marketer — or the source's own reason when the size cannot be delivered there (e.g. Out of Stock).Marketplace operators call product to get one JioMart product at one PIN code, by the `slug` a search row.pincode, slug, size
sellersEvery seller offering one size of a product at one PIN code: seller name and whether it is Reliance Retail, serving store, price, MRP, discount, quantity, cash on delivery, the delivery window promised to that pin, ship-from pin.Catalog enrichment teams call sellers to get every seller offering one size of a product at one PIN code.pincode, size, slug, page
pincodeWhich JioMart stores deliver to a PIN code and how fast: per store and department (Groceries, Electronics...) the delivery journey (quick commerce / standard), the promised window and message ('Delivery in 31 mins'), ETA minutes, distance, store pin/city/coordinates, opening hours, whether it is accepting orders, minimum basket value. An empty list = no store serves the pin.Retail analysts call pincode to get which JioMart stores deliver to a PIN code and how fast.pincode
facetsThe category tree and brand list WITH PRODUCT COUNTS at a PIN code, for a query or a category (or the whole catalogue): departments, L1/L2/L3 categories (slugs for search.category), up to 500 brands, discount bands, price bands, the price span, country of origin, and category-specific facets (capacity, colour...).Pricing teams call facets to get the category tree and brand list WITH PRODUCT COUNTS at a PIN code, for a query or a category….pincode, query, category, delivery
Code samples

Call search from your stack

curl -X POST https://api.reefapi.com/jiomart/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"query":"aashirvaad atta","pincode":"400020"}'
MCP one-liner
Ask your MCP-connected assistant: call reefapi.jiomart.search with {"query":"aashirvaad atta","pincode":"400020"}.
Use cases

Who uses this API and why

  • Track grocery prices, MRP and discounts for a basket of products across Indian cities by PIN code.
  • Compare what Reliance Retail charges against marketplace sellers for the same product.
  • Check whether a product can be delivered to a PIN code, from which store and how fast.
  • Monitor quick-commerce assortment and pricing in the neighbourhoods you care about.
  • Build a product database with EAN, brand, pack size, category path and manufacturer.
FAQ

Questions developers ask before integrating

Do I need a JioMart account?

No. Everything is read logged out: the prices, stock and delivery times are the ones JioMart shows any visitor who entered that PIN code.

Why is pincode required?

Because JioMart has no price without one. The catalogue, the price, the MRP and the stock all change with the PIN code, so the API never guesses one for you and echoes the PIN code it used.

Which filters are there, and do they work?

Each was checked against the unfiltered count in the same run. For "milk" at 400020 (about 4,925 products): brand amul 57, category milk 18, department electronics 421, seller type 1p 565 and 3p 4,355, price 100 to 200 rupees 825, discount 20 to 40 percent 1,047, quick delivery 337. Brand is case-sensitive: amul matches, Amul does not.

What is quick delivery?

JioMart delivers part of its range from local stores in about 30 minutes. delivery=quick limits search to what those stores deliver to the PIN code, and pincode shows the stores with their delivery message, for example "Delivery in 31 mins".

Can I page through all results?

Yes. JioMart returns 12 products per page; use page up to last_page. For "milk" that was 411 pages, the last one with 7 products.

Is the price filter exact?

Almost. JioMart's own price filter occasionally lets a marketplace product outside the range through (1 in 12 rows in our checks); the answer counts those rows in rows_outside_price_filter.

Do you return reviews?

No. JioMart's logged-out pages publish no review text, and the rating count was 0 on every product we read.

How fresh is the data?

Every call reads JioMart live; nothing is cached. In our two runs a search took 2.1 and 1.8 seconds at the median, a product 3.9 and 3.4 seconds, a seller list 1.3 seconds and a PIN code lookup 1.0 and 1.1 seconds.

What is the JioMart API?

JioMart API is a ReefAPI endpoint group for grocery and marketplace prices, mrp, discounts, stock, sellers and delivery stores for any indian pin code. It returns live JSON through POST requests under /jiomart/v1.

Is the JioMart API free to try?

Yes. ReefAPI starts with 1,000 free credits, no card required. JioMart calls use the same shared credit balance as every other ReefAPI engine.

Do I need a JioMart login or account?

No login to JioMart is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.

How fresh is the JioMart data?

The page example is captured from a live search call, and production requests fetch live data through ReefAPI rather than a static sample.

How many credits does the JioMart API use?

JioMart actions currently cost 1-3 credits per successful call. Failed or blocked calls are free. All APIs draw from one credit pool.

Can I call JioMart from an AI assistant or MCP client?

Yes. Connect ReefAPI once through MCP and your assistant can call jiomart actions with the same key, credit pool and JSON envelope used by normal REST requests.

docs / jiomart

JioMart

Grocery and marketplace prices, MRP, discounts, stock, sellers and delivery stores for any Indian PIN code.

base /jiomart/v15 endpoints
post/jiomart/v1/product3 credits

One JioMart product at one PIN code, by the `slug` a search row returns (or its jiomart.com/product/ URL): full record (EAN, brand, description, key features, images, category path, pack size, net quantity, dimensions, veg/non-veg mark, max quantity per order, rating count, every catalogue attribute) + pack-size variants + for EACH size the offer the site would fill at that pin: selling price, MRP, discount, price per unit, quantity available, seller (Reliance Retail or the marketplace seller's name), serving store, ship-from pin and distance, return policy, manufacturer / importer / marketer — or the source's own reason when the size cannot be delivered there (e.g. Out of Stock).

ParameterAllowed / rangeDescription
pincoderequired—6-digit Indian PIN code to shop from. REQUIRED: JioMart's catalogue, prices, stock and delivery all depend on it (Mumbai 400020, Bengaluru 560001, Delhi 110001 ... give different totals and prices). Echoed in every answer.
slugoptional—The product's `slug` exactly as a search row returns it, or its https://www.jiomart.com/product/<slug> URL. Required.
sizeoptional—Only this size (as in the row's `sizes`, e.g. OS, 500 ML, FREE SIZE, M). Default: every size.
Try in playground →
post/jiomart/v1/sellers1 credit

Every seller offering one size of a product at one PIN code: seller name and whether it is Reliance Retail, serving store, price, MRP, discount, quantity, cash on delivery, the delivery window promised to that pin, ship-from pin.

ParameterAllowed / rangeDescription
pincoderequired—6-digit Indian PIN code to shop from. REQUIRED: JioMart's catalogue, prices, stock and delivery all depend on it (Mumbai 400020, Bengaluru 560001, Delhi 110001 ... give different totals and prices). Echoed in every answer.
slugoptional—The product's `slug` from a search row (or its URL). Required.
sizerequired—The size, as in the row's `sizes` (OS, 500 ML, FREE SIZE, M ...).
page = 1optional1–Page of sellers (10 per page).
Try in playground →
post/jiomart/v1/pincode1 credit

Which JioMart stores deliver to a PIN code and how fast: per store and department (Groceries, Electronics...) the delivery journey (quick commerce / standard), the promised window and message ('Delivery in 31 mins'), ETA minutes, distance, store pin/city/coordinates, opening hours, whether it is accepting orders, minimum basket value. An empty list = no store serves the pin.

ParameterAllowed / rangeDescription
pincoderequired—6-digit Indian PIN code to shop from. REQUIRED: JioMart's catalogue, prices, stock and delivery all depend on it (Mumbai 400020, Bengaluru 560001, Delhi 110001 ... give different totals and prices). Echoed in every answer.
Try in playground →
post/jiomart/v1/facets3 credits

The category tree and brand list WITH PRODUCT COUNTS at a PIN code, for a query or a category (or the whole catalogue): departments, L1/L2/L3 categories (slugs for search.category), up to 500 brands, discount bands, price bands, the price span, country of origin, and category-specific facets (capacity, colour...).

ParameterAllowed / rangeDescription
pincoderequired—6-digit Indian PIN code to shop from. REQUIRED: JioMart's catalogue, prices, stock and delivery all depend on it (Mumbai 400020, Bengaluru 560001, Delhi 110001 ... give different totals and prices). Echoed in every answer.
queryoptional—Facets of this search. Empty = the whole catalogue.
categoryoptional—Facets inside this category slug.
delivery = standardoptionalstandard · quickstandard or quick (local stores only).
Try in playground →
Built for volume
5M+ requests a day

Measured at 60 requests a second across the fleet, with no central bottleneck. Volume pricing is on request, and per-key limits are raised for high-volume accounts.

Missing a source?
We build it

Tell us a site we do not cover yet and it becomes an engine. A customer asked for bestprice.gr on a Sunday and it was in the catalog the next day.

Support
2 minute median reply

Median time from a question in the live chat to the first answer, measured across every answered conversation. Setup help included, no support tier to buy.

One key, one balance
Every API included

No per-site plans and no separate subscriptions. One key and one credit pool across the whole catalog, so adding a source costs nothing up front.

Planning something large? Tell us the volume and the sources and we will come back with what it costs and what we would have to build.