↑ ↓ to move ↵ to open
Commerce & delivery · REST API · MCP server

Ocado API

Compare Ocado grocery products, prices, unit prices and public offers.

  • 1 credit per call
  • Failed calls are free
  • Updated
ocado.product.detail.get completed
product.namestringArla BOB Semi-Skimmed Milk that Tastes like Whole
product.availablebooleantrue
product.brandstringArla
product.imagestringhttps://www.ocado.com/images-v3/eafa5127-d256-497b-9609-4869092…
product.pack_sizestring2L
product.retailer_product_idstring606356011
product.urlstringhttps://www.ocado.com/products/arla-bob-semi-skimmed-milk-that-…
Endpoints

Ocado API endpoints

What each one takes and what it returns. Open one for a real response, every input and every field.

Ocado Categories API

Browse the public Ocado grocery category taxonomy to discover categories for shelf product listings.

ReturnsJSON; every field is in the API reference
1 credit

Ocado Category Products API

List products from a Ocado grocery category with published prices and supported listing continuation.

Sendcategory_id Returnsitemsreturnedtotal_products
8 credits

Ocado Product Detail API

Refresh a Ocado product by its ID or official URL with published shelf prices, unit prices and offers.

Sendproduct_idorurl Returnsproduct
1 credit

Ocado Product Reviews API

Read public Ocado product reviews and rating summaries with supported filters and review pagination.

Sendproduct_idorurl Returnsreview_countreviewsrating_averagerating_countrating_histogramreturned
1 credit

Ocado Products Search API

Search public products by ingredient or name, with cursor continuation.

Sendquery Returnsitemsreturned
8 credits

Ocado Promotions API

Browse products and offers in the public Ocado promotions collection with published price and deal information.

Returnsitemspromotionsreturned
8 credits
Use cases

What teams build with Ocado data

Pricing

What the Ocado API costs

Every endpoint shows its price in credits before it runs. You buy credits once, with no subscription.

Credit packs
REST API · MCP server

Call it from your code, or ask your agent

One request shape for every Ocado endpoint: the endpoint ID and its input. No SDK needed.

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 '{  "capability": "ocado.product.detail.get",  "input": {    "product_id": "606356011"  }}'
Response
{  "product": {    "name": "Arla BOB Semi-Skimmed Milk that Tastes like Whole",    "available": true,    "brand": "Arla",    "gtin": null,    "image": "https://www.ocado.com/images-v3/eafa5127-d256-497b-9609-4869092accd6/eeab8dca-610d-4f2f-8e42-31e353192a13/300x300.jpg",    "pack_size": "2L",    "retailer_product_id": "606356011",    "url": "https://www.ocado.com/products/arla-bob-semi-skimmed-milk-that-tastes-like-whole/606356011",    "price": {      "amount": 2.5,      "currency": "GBP"    },    "unit_price": {      "amount": 1.25,      "currency": "GBP",      "unit": "per_litre"    },    "member_prices": [],    "promotions": [      {        "buy_quantity": 2,        "description": "Buy any 2 for £4",        "end": "2026-10-06",        "id": "706e4ca7-e9da-4100-82b5-75107fa08a98",        "start": null,        "type": "multibuy",        "for_price": {          "amount": 4,          "currency": "GBP"        }      }    ]  }}
In your AI agent Claude · Cursor · any MCP client
1Add the Upscrape MCP server
https://data.upscrape.com/mcp
2Ask for the data in plain words

With Upscrape, get the Ocado product detail for product id "606356011". Tell me what it costs before you run it, then show the results as a table.

With Upscrape, get the Ocado product reviews for product id "606356011". Tell me what it costs before you run it, then show the results as a table.

The agent finds the endpoint, shows you the price, and runs it with your credits.
Commerce & delivery
Questions

Ocado API FAQ

The short answers. The docs have the long ones.

Still have a question? Talk to the people who build the endpoints.
What data can I get from Ocado?

Categories, category products, homepage feed, product detail, product reviews, products search and promotions. Each is its own endpoint with a published input schema, and the response is JSON.

How much does the Ocado API cost?

Ocado endpoints cost from 1 credit per successful call, each priced before it runs. You buy credits once, with no subscription, and paid credits never expire. New accounts get free credits to try it.

Do I need an Ocado account or login?

No. Upscrape reads the pages Ocado shows to any visitor, so you send the input the endpoint asks for and get the data back. Nothing runs on your account, and you share no password or cookie.

Can an AI agent use the Ocado API?

Yes. Connect any MCP client to the Upscrape MCP server with OAuth or an API key. The agent finds the Ocado endpoint, checks its price and runs it with the same credits as the REST API.

Is it legal to scrape Ocado?

Upscrape reads public pages only and needs no login. How you use the data is yours to decide under the laws that apply to you; we sign a data processing agreement for your legal review.

What happens when Ocado changes its pages?

We fix the endpoint. Your request and the response fields stay the same.

Get started

Your first Ocado call is free.

Up to 100 free credits to start, no card needed.