Price Comparison API API
The Price Comparison API returns multi-merchant offers, specs and price history as clean JSON.
🤖 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.
The primary search endpoint returns products with id, title, lowest price, offer count, review count, image, comparison URL and EAN, and you can pull a product, its offers across merchants, price_history, categories and a direct compare. It is built for shopping tools, price-drop alerts and buying guides that need cross-merchant price data from one endpoint. One ReefAPI key, one shared credit pool, the standard envelope.
Real request and response JSON
Captured from the indexed primary action, search, on .
{
"method": "POST",
"url": "https://api.reefapi.com/price-compare/v1/search",
"headers": {
"x-api-key": "$REEF_KEY",
"content-type": "application/json"
},
"body": {
"query": "iphone 15"
}
}{
"ok": true,
"meta": {
"api": "price-compare",
"endpoint": "search",
"mode": "live",
"latency_ms": 1998.3,
"record_count": 30,
"bytes": 317106,
"cache_hit": false,
"source": "geizhals",
"method": "ssr_html_decodo_isp",
"query": "iphone 15",
"page": 1
},
"data": {
"results": [
{
"product_id": "140380",
"id_kind": "product_family",
"title": "Apple iPhone 15 128GB schwarz",
"lowest_price": 599.9,
"currency": "EUR",
"offer_count": 193,
"review_count": 331,
"image": "https://gzhls.at/pix/fe/c1/fec1bb6835adeada-m.webp",
"comparison_url": "https://geizhals.de/apple-iphone-15-v140380.html",
"ean": null,
"gtin": null
},
{
"product_id": "3020645",
"id_kind": "variant",
"title": "Apple iPhone 15 128GB schwarz",
"lowest_price": 608.88,
"currency": "EUR",
"offer_count": 42,
"review_count": 157,
"image": "https://gzhls.at/pix/fe/c1/fec1bb6835adeada-m.webp",
"comparison_url": "https://geizhals.de/apple-iphone-15-128gb-schwarz-a3020645.html",
"ean": null,
"gtin": null
},
{
"product_id": "3020646",
"id_kind": "variant",
"title": "Apple iPhone 15 128GB blau",
"lowest_price": 599.9,
"currency": "EUR",
"offer_count": 33,
"review_count": 52,
"image": "https://gzhls.at/pix/8f/d6/8fd6d17ac20f45aa-m.webp",
"comparison_url": "https://geizhals.de/apple-iphone-15-128gb-blau-a3020646.html",
"ean": null,
"gtin": null
}
],
"query": "iphone 15",
"page": 1,
"page_size": 38,
"has_more": false,
"next_page": null
}
}What the Price Comparison API API does
| Action | Description | Concrete use case | Key params |
|---|---|---|---|
| search | keyword/EAN product search across a comparison source → product cards with lowest_price, offer_count, rating, image, comparison_url | Pricing teams call search to get keyword/EAN product search across a comparison source → product cards with lowest_price, offe…. | query, source, country, page, sort |
| product | full product detail (title, brand, EAN/GTIN, MPN, breadcrumb, images, specs, rating, lowest_price, embedded merchant offers) by product_id or url | Marketplace operators call product to get full product detail (title, brand, EAN/GTIN, MPN, breadcrumb, images, specs, rating, lowest_p…. | product_id, url, source, country |
| offers | all merchant offers for a product variant — per-merchant price, availability, delivery, merchant redirect URL (paginated; use a VARIANT id, -aNNN) | Catalog enrichment teams call offers to get all merchant offers for a product variant. | product_id, url, source, country, page, ... |
| price_history | price-history for a product — window + min/max observed. cimri ships a REAL 90-day daily min-price series; geizhals' raw point-series is JS-chart-only (min/max + range surfaced, honestly flagged, R15 no fabrication). akakce: not exposed (use cimri for TR history). | Retail analysts call price_history to get price-history for a product. | product_id, url, source, country |
| category | browse a comparison-site category by its id/slug → product cards (same shape as search). geizhals-only (cimri/akakce expose search/product/offers/price_history/suggest/compare). | Pricing teams call category to get browse a comparison-site category by its id/slug → product cards (same shape as search). | category, source, country, page, sort |
| categories | top-level category navigation tree of the comparison source (id, name, url) | Marketplace operators call categories to get top-level category navigation tree of the comparison source (id, name, url). | source, country |
| suggest | search autocomplete — product-name suggestions + the linked product_id for a partial query | Catalog enrichment teams call suggest to search autocomplete. | query, source, country |
| compare | one-shot price-compare: resolve a query to its top product, then return that product's merchant offers + EAN/GTIN in a single call (search→offers convenience) | Retail analysts call compare to get one-shot price-compare. | query, source, country, sort, merchant, ... |
Call search from your stack
curl -X POST https://api.reefapi.com/price-compare/v1/search \
-H "x-api-key: $REEF_KEY" \
-H "content-type: application/json" \
-d '{"query":"iphone 15"}'import requests
r = requests.post(
"https://api.reefapi.com/price-compare/v1/search",
headers={"x-api-key": REEF_KEY},
json={
"query": "iphone 15"
},
)
print(r.json()["data"])const res = await fetch("https://api.reefapi.com/price-compare/v1/search", {
method: "POST",
headers: {
"x-api-key": process.env.REEF_KEY,
"content-type": "application/json",
},
body: JSON.stringify({
"query": "iphone 15"
}),
});
const { ok, data, meta, error } = await res.json();Ask your MCP-connected assistant: call reefapi.price-compare.search with {"query":"iphone 15"}.Who uses this API and why
- Shopping tools call search then offers to show the cheapest merchant for a product.
- Price-alert products use price_history to notify users when a product hits a target price.
- Buying-guide sites use compare to build side-by-side product and price tables.
Questions developers ask before integrating
What is the Price Comparison API API?
Price Comparison API API is a ReefAPI endpoint group for price comparison api It returns live JSON through POST requests under /price-compare/v1.
Is the Price Comparison API API free to try?
Yes. ReefAPI starts with 1,000 free credits, no card required. Price Comparison API calls use the same shared credit balance as every other ReefAPI engine.
Do I need a Price Comparison API login or account?
No login to Price Comparison API 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 Price Comparison API 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 Price Comparison API API use?
Price Comparison API actions currently cost 2-4 credits per successful call. Failed or blocked calls are free, and all APIs draw from one credit pool.
Can I call Price Comparison API from an AI assistant or MCP client?
Yes. Connect ReefAPI once through MCP and your assistant can call price-compare actions with the same key, credit pool and JSON envelope used by normal REST requests.
Is the Price Comparison API API a Price Comparison API scraper?
It is the managed alternative to a DIY Price Comparison API scraper. Instead of building and maintaining your own scraper — proxies, headless browsers, captcha and constant breakage — you call one ReefAPI endpoint and get the same price comparison api back as clean JSON.
Why does my Price Comparison API scraper keep getting blocked?
Most Price Comparison API scrapers break on anti-bot defenses, rate limits and IP bans that need rotating residential proxies and browser fingerprinting to clear. ReefAPI handles all of that for you — no proxies, no captchas, no maintenance — and returns live JSON. Blocked or failed calls are free.