Discover/morrisons.com API
live

morrisons.com APImorrisons.com

Access Morrisons grocery data via 8 endpoints: search products, browse categories, fetch nutritional details, customer reviews, and live promotions.

Endpoints
8
Updated
3mo ago
Try it
Maximum number of products to return.
Search keyword (e.g. 'milk', 'bread')
api.parse.bot/scraper/4a18317c-6c6e-41eb-a4aa-70ff891f9db2/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Use it in your codegrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/4a18317c-6c6e-41eb-a4aa-70ff891f9db2/search_products?limit=10&query=milk' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 8 totalclick to expand

Search for products by keyword. Returns paginated product groups containing decorated product objects with names, prices, images, ratings, and promotions.

Input
ParamTypeDescription
limitintegerMaximum number of products to return.
queryrequiredstringSearch keyword (e.g. 'milk', 'bread')
Response
{
  "type": "object",
  "fields": {
    "productGroups": "array of product group objects, each containing a decoratedProducts array with product name, price, brand, promotions, ratings, and images"
  },
  "sample": {
    "data": {
      "productGroups": [
        {
          "type": "personalized",
          "decoratedProducts": [
            {
              "name": "Morrisons British Semi Skimmed Milk 4 Pint",
              "brand": "Morrisons",
              "price": {
                "amount": "1.65",
                "currency": "GBP"
              },
              "available": true,
              "productId": "721a6e29-4bab-43e1-a241-a34296dd606e",
              "promotions": [
                {
                  "type": "OFFER",
                  "description": "Price Match"
                }
              ],
              "retailerProductId": "113240422"
            }
          ]
        }
      ]
    },
    "status": "success"
  }
}

About the morrisons.com API

The Morrisons API provides 8 endpoints for querying Morrisons online supermarket data, covering product search, category navigation, detailed product pages, customer reviews, and active promotions. The get_product_detail endpoint returns nutritional fields, storage instructions, breadcrumbs, and promotion objects for a single product, while search_products delivers paginated product groups with prices, brand names, ratings, and promotion flags in a single call.

Product Search and Discovery

The search_products endpoint accepts a query string (e.g. 'milk', 'gluten free bread') and an optional limit integer. It returns productGroups, each containing a decoratedProducts array with fields including product name, price, brand, images, rating summary, and any attached promotions. The get_search_suggestions endpoint complements this by returning autocomplete strings for a partial query, useful for building search-ahead UIs.

Category Browsing

get_category_list returns the full Morrisons category tree as a nested array of objects with name, categoryId, retailerCategoryId, and productCount — no inputs required. To retrieve products within a node, pass the retailerCategoryId to get_products_by_category. That endpoint returns productGroups, a metadata.nextPageToken for pagination, and an additionalPageInfo object containing breadcrumb, available filters, and sortOptions.

Product Detail and Reviews

get_product_detail takes a numeric retailer_product_id and returns two primary objects: bopData (with detailedDescription, brand, return address, and storage/usage fields) and product (name, price, images, ratingSummary, categoryPath, and promotions). It also exposes bopPromotions as a dedicated array, plus relatedProducts and similarProducts ID lists. For review data, get_product_reviews accepts a UUID product_id and returns a reviews array with headline, rating, nickname, createdDate, comment text, and isVerifiedBuyer flag, alongside a ratingHistogram of five integers and a total reviewCount.

Promotions and Similar Products

get_promotions requires no inputs and returns currently active site-wide offers as productGroups with decoratedProducts, plus additionalPageInfo containing category and filter metadata. get_similar_products accepts a retailer_product_id and returns an array of UUID productId strings, which can be fed into get_product_detail to retrieve full data for algorithmically similar items.

Common use cases
  • Build a grocery price tracker that monitors Morrisons product prices and promotion changes over time using search_products and get_product_detail.
  • Aggregate nutritional data across product categories by combining get_products_by_category with the bopData.fields returned by get_product_detail.
  • Populate a promotions feed or deal-alert service using the productGroups and decoratedProducts from get_promotions.
  • Drive a recipe ingredient sourcing tool by searching product names, prices, and brand fields via search_products.
  • Analyse customer sentiment on grocery products using get_product_reviews fields: rating, headline, comments, and isVerifiedBuyer.
  • Implement category-aware navigation in a comparison app using the nested childCategories tree from get_category_list.
  • Recommend substitute products by chaining get_similar_products with get_product_detail to surface alternatives with full price and nutrition data.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000250 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 Morrisons have an official public developer API?+
Morrisons does not publish a public developer API or API documentation for third-party access to its product catalogue.
What does `get_product_detail` return beyond basic name and price?+
get_product_detail returns a bopData object containing detailedDescription, a fields map with brand, return address, and storage/usage instructions, and a breadcrumbs array. The product object includes ratingSummary, categoryPath, images, and a promotions array. A separate bopPromotions array provides detailed promotion objects, and relatedProducts/similarProducts return associated product ID lists.
How does pagination work across listing endpoints?+
get_products_by_category and get_promotions both return a metadata.nextPageToken field. Pass this token on subsequent requests to retrieve the next page of results. get_product_reviews uses a metadata.nextPage field for the same purpose. The limit parameter on search_products and get_products_by_category controls page size.
Does the API cover Morrisons store locations or click-and-collect availability?+
Not currently. The API covers product data, categories, reviews, and promotions for the Morrisons online catalogue. Store location data, click-and-collect slot availability, and local stock levels are not included. You can fork this API on Parse and revise it to add an endpoint targeting store or availability data.
Can I retrieve a product's full review history in one call?+
get_product_reviews returns a paginated subset of reviews per call alongside a reviewCount total and a ratingHistogram. Full history retrieval requires iterating through pages using the metadata.nextPage value. Review content is limited to the fields returned per review object: headline, rating, nickname, createdDate, comments, and isVerifiedBuyer — review images or retailer responses are not currently included. You can fork the API on Parse and revise it to add those fields if the source exposes them.
Page content last updated . Spec covers 8 endpoints from morrisons.com.
Related APIs in Food DiningSee all →
publix.com API
Access Publix grocery store data including product search, pricing, promotions, weekly ad deals, store locations, and category browsing.
pedidosya.com.ar API
Browse restaurants and menus available in Argentine cities through PedidosYa, search for specific restaurants by name or food category, and retrieve complete menu offerings including items, prices, and available options.
thefork.it API
Search and discover Italian restaurants by cuisine, location, or ratings, then access detailed information like menus, reviews, and availability across major cities in Italy. Find top-rated dining options and compare restaurant details to plan your perfect meal.
bigbasket.com API
Browse and search BigBasket's online grocery catalog. Retrieve product details, pricing, stock availability, category trees, search suggestions, homepage promotions, and delivery coverage — all in one API.
opentable.com API
Search for restaurants across the US with ratings, reviews, photos, and pricing information, plus get real-time availability and autocomplete suggestions as you type. Check reservation openings and explore detailed restaurant features to find and book your perfect dining experience.
opentable.ca API
Search and discover restaurants on OpenTable, view detailed information like menus and reviews, and check real-time dining availability across metro areas. Find top-rated restaurants in your location and instantly see which tables are open for your preferred date and time.
vivino.com API
Search and discover wines across thousands of options while accessing detailed information like user reviews, pricing, winery profiles, and food pairing recommendations. Explore grape varieties, compare wines side-by-side, and find the perfect bottle based on ratings and availability.
deliveroo.co.uk API
Search for restaurants and retrieve menus from Deliveroo UK. Look up restaurants by keyword and postcode, or fetch full menu details for any Deliveroo restaurant by URL.
Morrisons API – Products, Prices & Reviews · Parse