PriceRunner API: Compare prices
Compares a product's prices across shops on PriceRunner in the United Kingdom, Sweden or Denmark: finds the best-matching product, lists its default new-condition national shop offers sorted by total price, and adds the three-month low when available.
Unofficial. Not affiliated with or endorsed by PriceRunner.
Inputs
Values from the run on Oct 31, 2026, shown under Output.
- Country optional
country Country name or two-letter country code, for example Sweden or SE.
United Kingdom (default)
- Product, required
product Product name to compare, for example iPhone 16 128GB.
iPhone 16 128GB
- Max Offers optional
max_offers Maximum shop offers to return, for example 20.
20 (default)
Whole number from 1 to 50.
Input as JSON
{ "product": "iPhone 16 128GB"}Output
{ "offers": [ { "price": 462, "shop_name": "Back Market", "offer_link": "https://clk.klarna.com/uk/gotostore/v1/a63281b096226258e7083da11c6d65ea?productId=3253860562" , "shop_rating": null, "total_price": 462, "stock_status": null, "shipping_cost": 0 }, { "price": 519.99, "shop_name": "Music Magpie", "offer_link": "https://clk.klarna.com/uk/gotostore/v1/329f70aca7183a6f14a57df06f5a51ba?productId=3253860562" , "shop_rating": null, "total_price": 519.99, "stock_status": "In stock", "shipping_cost": 0 }, { "price": 532, "shop_name": "Back Market", "offer_link": "https://clk.klarna.com/uk/gotostore/v1/dc4affa8bdc33fb536f8a820ea3807be?productId=3253860562" , "shop_rating": null, "total_price": 532, "stock_status": null, "shipping_cost": 0 } ], "category": "Mobile Phones", "currency": "GBP", "lowest_price": 462, "product_link": "https://www.pricerunner.com/pl/1-3253860562/Mobile-Phones/Apple-iPhone-16-128GB-White-Compare-Prices" , "product_name": "Apple iPhone 16, 128GB White", "number_of_offers": 24, "lowest_price_last_3_months": 1, "lowest_price_last_3_months_date": "2026-09-26"}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"pricerunner.com/compare_prices","input":{"product":"iPhone 16 128GB"}}' # Save as fous.py, then run: python3 fous.pyimport json, os, timefrom urllib.error import HTTPErrorfrom urllib.request import Request, urlopenAPI = "https://api.fous.com/v1/runs" KEY = os.environ["FOUS_API_KEY"]HEADERS = { "Authorization": f"Bearer {KEY}", "Content-Type": "application/json" ,}def call(url, body=None): data = json.dumps(body).encode() if body else None request = Request(url, data, HEADERS) try: with urlopen(request, timeout=120) as r: return r.status, json.load(r) except HTTPError as error: message = json.load(error)["error"]["message"] raise RuntimeError(message) from errorstatus, run = call(API, { "method": "pricerunner.com/compare_prices" , "input": { "product": "iPhone 16 128GB" }})# 202: still going after 30 s. Ask again until it ends.while status == 202: time.sleep(2) status, run = call(f"{API}/{run['id']}")print(json.dumps(run["data"], indent=2))// Save as fous.mjs, then run: node fous.mjsconst api = "https://api.fous.com/v1/runs" ;const headers = { Authorization: `Bearer ${process.env.FOUS_API_KEY}`, "Content-Type": "application/json" ,};let response = await fetch(api, { method: "POST", headers, body: JSON.stringify({ "method": "pricerunner.com/compare_prices" , "input": { "product": "iPhone 16 128GB" } }), signal: AbortSignal.timeout(120_000),});let run = await response.json();// 202: still going after 30 s. Ask again until it ends.while (response.status === 202) { await new Promise((done) => setTimeout(done, 2_000)); response = await fetch(`${api}/${run.id}`, { headers }); run = await response.json();}if (!response.ok) throw new Error(run.error.message);console.log(run.data);# Connect your agent to Fous once, over MCP (Streamable HTTP):# https://api.fous.com/mcp# Set FOUS_API_KEY first: create a key at https://app.fous.com/keys.# Claude Codeclaude mcp add \ --scope user \ --transport http fous https://api.fous.com/mcp \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Codexcodex mcp add fous \ --url https://api.fous.com/mcp \ --bearer-token-env-var FOUS_API_KEY# Cursor, VS Code, Windsurf, Cline and morenpx -y add-mcp https://api.fous.com/mcp -g -n fous \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Then ask your agent:# "Use Fous to run pricerunner.com/compare_prices# with {"product":"iPhone 16 128GB"}"Over HTTP, the answer’s data holds the output. A run still going after 30 seconds answers 202 with its id: ask GET /v1/runs/{id} until it ends.
Schema
Input schema
{ "type": "object", "required": [ "product" ], "properties": { "country": { "type": "string", "default": "United Kingdom", "description": "Country name or two-letter country code, for example Sweden or SE." }, "product": { "type": "string", "minLength": 1, "description": "Product name to compare, for example iPhone 16 128GB." }, "max_offers": { "type": "integer", "default": 20, "maximum": 50, "minimum": 1, "description": "Maximum shop offers to return, for example 20." } }, "additionalProperties": false}Output schema
{ "type": "object", "required": [ "product_name", "category", "product_link", "lowest_price", "currency", "number_of_offers", "lowest_price_last_3_months", "lowest_price_last_3_months_date", "offers" ], "properties": { "offers": { "type": "array", "items": { "type": "object", "required": [ "shop_name", "price", "shipping_cost", "total_price", "stock_status", "shop_rating", "offer_link" ], "properties": { "price": { "type": "number" }, "shop_name": { "type": "string" }, "offer_link": { "type": "string" }, "shop_rating": { "type": [ "number", "null" ] }, "total_price": { "type": [ "number", "null" ] }, "stock_status": { "type": [ "string", "null" ] }, "shipping_cost": { "type": [ "number", "null" ] } }, "additionalProperties": false } }, "category": { "type": [ "string", "null" ] }, "currency": { "type": "string" }, "lowest_price": { "type": [ "number", "null" ] }, "product_link": { "type": "string" }, "product_name": { "type": "string" }, "number_of_offers": { "type": "integer" }, "lowest_price_last_3_months": { "type": [ "number", "null" ] }, "lowest_price_last_3_months_date": { "type": [ "string", "null" ], "format": "date" } }, "additionalProperties": false}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
pricerunner.com/compare_prices- Returns
- product name, category, link, lowest price, currency, offer count, three-month low and date, shop offers
Use it from your agent
Give your agent this line. It reads SKILL.md, gets a Fous API key and connects the Fous MCP server. Its run then takes the method pricerunner.com/compare_prices with the inputs above.
Ask your agent
- Where's the cheapest place to buy Sony WH-1000XM5 headphones in the UK right now? Show me the top 10 shops.
- Check PriceRunner Sweden for Samsung Galaxy S24 Ultra 256GB prices and tell me the lowest price over the last three months.
- Jeg vil købe en Dyson V15 Detect i Danmark – hvilke butikker har den billigst?
- Use pricerunner.com to list up to 30 UK retailers selling the PlayStation 5 Slim, sorted by total price.
- Is £899 a good deal for a MacBook Air M3 13-inch? Compare shop offers in Britain and include the 3-month low.
See more
Finds the best-matching product on idealo for the chosen country (DE, AT, UK, FR, IT, ES) and lists its cheapest shop offers, including shipping where shown.
idealo.de/compare_pricesCompares the Apple Store price of one product configuration across up to 15 countries, converted with the latest European Central Bank reference rates.
apple.com/compare_country_pricesGets current Apple Store prices and the configurations on sale for a product in one country. It includes only models sold on that country's public store.
apple.com/get_product_pricesGets an Amazon product's current listed price and lifetime price statistics from CamelCamelCamel (Amazon and third-party new), with dated Amazon low/high points and a comparison to the average. Takes a product name, an Amazon or CamelCamelCamel link, or an ASIN, for eight Amazon stores.
camelcamelcamel.com/get_price_historyGets an H&M item's current country-specific price, sizes, colours and images by product name or product page link. Description, materials, composition, care and sustainability details are always returned as null.
hm.com/get_productGets a Nike product's details by name or product link for a chosen country. Returns its colourways, size availability, price and reviews.
nike.com/get_productSearches IKEA products in a chosen country and returns current prices, details, photos and reviews in IKEA's result order.
ikea.com/search_productsGet one AliExpress product’s prices, variants, reviews, shipping to a chosen country, seller and specifications from its link or the best-selling name match. Sold counts may be rounded, and shipping options are those shown for the displayed variant.
aliexpress.com/get_product