Discover/BigBasket API
live

BigBasket APIbigbasket.com

Access BigBasket's grocery catalog via API. Search products, browse categories, check stock availability, get delivery times, and retrieve city coverage data.

Endpoint health
verified 6d ago
get_categories
get_product_details
get_product_availability
get_search_suggestions
search_products
8/8 passing latest checkself-healing
Endpoints
8
Updated
21d ago

What is the BigBasket API?

This API exposes 8 endpoints covering BigBasket's grocery catalog, giving you structured access to product search, detailed product data, category trees, and real-time stock status. The search_products endpoint returns paginated listings with fields like mrp, selling_price, discount_text, and availability for each matched item. Whether you're monitoring prices, mapping grocery coverage, or building a comparison tool, the API gives you the data in clean JSON.

Try it
Page number for pagination (1-based).
Search keyword (e.g. 'milk', 'rice', 'tomato').
Filter string to narrow results (e.g. 'brand:Amul'). Passed to upstream; filtering effectiveness may vary.
api.parse.bot/scraper/1d9ca2c5-176c-4bc0-9cf3-db9056850958/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/1d9ca2c5-176c-4bc0-9cf3-db9056850958/search_products?page=1&query=milk' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace bigbasket-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

from parse_apis.bigbasket_api import BigBasket, Product, Category, City, SearchSuggestion, HomepageContent, HomepageSection

bb = BigBasket()

# Search for products by keyword
for product in bb.products.search(query="milk"):
    print(product.name, product.brand, product.mrp, product.selling_price)
    break

# Browse a category by constructing it from its slug
fruits = bb.category("fruits-vegetables")
for item in fruits.products():
    print(item.name, item.weight, item.discount_text)
    break

# Get autocomplete suggestions
suggestions = bb.searchsuggestions.get(term="rice")
print(suggestions.query_term)

# List all top-level categories
for cat in bb.categories.list():
    print(cat.name, cat.slug, cat.level)
    break

# Check product availability
for p in bb.products.search(query="rice"):
    avail = p.check_availability(product_slug="bb-royal-sona-masoori-rice-raw-rice-super-premium-10-kg")
    print(avail.product_name, avail.is_in_stock, avail.delivery_time)
    break

# List cities served
for city in bb.cities.list():
    print(city.name, city.slug, city.active, city.support_time)
    break

# Get homepage promotional content
homepage = bb.homepagecontents.get()
for section in homepage.sections:
    print(section.title, section.type)
    break
All endpoints · 8 totalmissing one? ·

Full-text search over BigBasket's product catalog by keyword. Returns paginated product listings with pricing, availability, applicable filters, and sort options. Each result includes a product ID and slug usable in get_product_details and get_product_availability. Paginated via integer page number; each page returns up to 40 products.

Input
ParamTypeDescription
pageintegerPage number for pagination (1-based).
queryrequiredstringSearch keyword (e.g. 'milk', 'rice', 'tomato').
filtersstringFilter string to narrow results (e.g. 'brand:Amul'). Passed to upstream; filtering effectiveness may vary.
Response
{
  "type": "object",
  "fields": {
    "filters": "array of available filter options (categories, brands, price ranges)",
    "products": "array of product objects with id, name, brand, weight, pack_desc, mrp, selling_price, discount_text, availability, url, image",
    "sort_options": "array of sort option objects with display_name and value",
    "total_products": "integer total count of matching products"
  },
  "sample": {
    "data": {
      "filters": [
        {
          "name": "Categories",
          "type": "category",
          "values": [
            {
              "id": 367,
              "name": "Bakery, Cakes & Dairy",
              "slug": "bakery-cakes-dairy"
            }
          ],
          "multi_select": true
        }
      ],
      "products": [
        {
          "id": "40147597",
          "mrp": "32",
          "url": "/pd/40147597/heritage-daily-health-toned-milk-500-ml-pouch/",
          "name": "Daily Health Toned Milk",
          "brand": "Heritage",
          "image": "https://www.bbassets.com/media/uploads/p/s/40147597_9-heritage-daily-health-toned-milk.jpg",
          "weight": "500 ml",
          "pack_desc": "Pouch",
          "availability": "10 mins",
          "discount_text": "",
          "selling_price": "32"
        }
      ],
      "sort_options": [
        {
          "value": "relevance",
          "is_selected": true,
          "display_name": "Relevance"
        }
      ],
      "total_products": 688
    },
    "status": "success"
  }
}

About the BigBasket API

Product Search and Details

The search_products endpoint accepts a query string (e.g. 'milk', 'basmati rice') along with optional filters (e.g. 'brand:Amul') and page for pagination. Each product in the response includes id, name, brand, weight, mrp, selling_price, discount_text, availability, url, and image. The total_products field tells you how many results exist across all pages. For deeper detail on a specific item, get_product_details takes a product_id and product_slug (both available in search results) and returns variant-level data including images, nutritional tabs, breadcrumb, rating info, and a isComboAvailable flag.

Availability and Pricing

The get_product_availability endpoint returns a real-time snapshot for a product: is_in_stock (boolean), availability_status (status code, where '001' means in stock), delivery_time (e.g. '10 mins'), selling_price, mrp, and an offers array containing HTML-formatted product info tabs such as About, How to Use, and Other Product Info. This makes it useful for price-tracking workflows or alerting when an out-of-stock item becomes available.

Categories and Navigation

The get_categories endpoint returns the full three-level category tree. Each node includes id, name, slug, url, level, bannersList, and nested children. Category slugs (e.g. 'fruits-vegetables', 'foodgrains-oil-masala') feed directly into get_category_products, which supports the same filters and page parameters as search and returns the same product object shape.

Discovery and Coverage

get_search_suggestions returns autocomplete matches for a partial term (minimum 2 characters), split into products, brands, and categories objects — useful for building typeahead UI or understanding catalog breadth. get_homepage_sections exposes current promotional carousels, banners, and featured product blocks. get_cities_served returns a list of over 2000 cities with name, slug, active status, state_id, and support_time fields, covering BigBasket's full delivery footprint across India.

Reliability & maintenanceVerified

The BigBasket API is a managed, monitored endpoint for bigbasket.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when bigbasket.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official bigbasket.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
6d ago
Latest check
8/8 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Track price changes on specific grocery items by polling get_product_availability for selling_price and mrp over time.
  • Build a grocery comparison tool using search_products to pull brand, weight, mrp, and selling_price across keyword queries.
  • Monitor stock status for high-demand items using the is_in_stock and delivery_time fields from get_product_availability.
  • Render a category navigation menu using the three-level tree from get_categories with slug, name, and bannersList.
  • Identify which cities BigBasket serves using get_cities_served to filter by active status and map state_id to region.
  • Power a product search typeahead by calling get_search_suggestions with partial terms and consuming the brands, products, and categories responses.
  • Analyze promotional strategy by extracting featured sections from get_homepage_sections and tracking which product IDs appear in carousels over time.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does BigBasket have an official public developer API?+
BigBasket does not publish a public developer API or developer portal for third-party access to its catalog data.
What does `get_product_availability` return beyond stock status?+
It returns is_in_stock (boolean), availability_status (string code, '001' = in stock), delivery_time (e.g. '10 mins'), selling_price, mrp, product_name, and an offers array containing HTML-formatted informational tabs like About and How to Use.
How does filtering work in `search_products` and `get_category_products`?+
Both endpoints accept a filters string (e.g. 'brand:Amul'). The filter is passed through to narrow results, but effectiveness may vary by category and query — not all filter combinations are guaranteed to reduce the result set as expected. The filters array in the response lists the filter options BigBasket returns for that query, which you can use to build valid filter strings.
Does the API expose user reviews or ratings for products?+
Rating info is included in the get_product_details response within the children array, but the API does not expose individual user reviews or review text. You can fork this API on Parse and revise it to add an endpoint that retrieves per-product review listings.
Does the API cover order placement or cart management?+
No. The API covers catalog browsing, search, product details, availability, category navigation, and city coverage. It does not include cart, checkout, order, or account endpoints. You can fork this API on Parse and revise it to add the missing endpoint if your use case requires order-side data.
Page content last updated . Spec covers 8 endpoints from bigbasket.com.
Related APIs in Food DiningSee all →
instacart.com API
Search for grocery products across multiple retailers, view store locations and availability, and access detailed product information including prices and descriptions. Find the best deals and nearest stores offering the items you need.
hyperpure.com API
Access Hyperpure by Zomato's wholesale product catalog to browse vegetables, ration items, and other categories across multiple cities, search for specific products, and retrieve detailed product information. Streamline your bulk purchasing by discovering available products and their details in your area.
checkers.co.za API
Search for groceries, browse product categories, and find Checkers store locations across South Africa all in one place. Get detailed product information, discover popular items, and locate the nearest store to shop conveniently.
ocado.com API
Search and browse Ocado UK's grocery catalog, view detailed product information including nutritional data, and discover related items to add to your cart. Get instant search suggestions and manage your shopping cart contents all in one place.
products.checkers.co.za API
Search and browse products from Checkers South Africa's online store, compare prices, and discover current specials and deals. Explore the complete product catalog by category to find items and get detailed product information all in one place.
sainsburys.co.uk API
Access Sainsbury's grocery catalogue: search products by keyword, browse the full category hierarchy, retrieve detailed product information, and discover trending searches.
tesco.com API
Search and browse Tesco's complete grocery catalog to find products with detailed nutritional information, ingredient lists, and customer reviews. Explore product suggestions via autocomplete and browse items organized by category to make informed shopping decisions.
edeka24.de API
Browse and search EDEKA24's product catalog, view detailed product information and categories, and manage your shopping cart all programmatically. Authenticate your account, add items to your cart, and proceed to checkout seamlessly through automated requests.