Looking for the overview — what this API returns, what it costs, and a call you can run without a key? See the BestPrice.gr API page →
docs / bestprice
BestPrice.gr
Greek price comparison: every shop's price for one product, the market's price band and the shop count, in EUR.
base /bestprice/v13 endpoints
post
/bestprice/v1/search2 creditsSearch BestPrice by keyword. Returns the product grid: title, the price BestPrice shows (the lowest across shops), how many shops carry it, and the product id you feed to `product`.
| Parameter | Allowed / range | Description | |
|---|---|---|---|
| query | required | — | What to search for, in Greek or English. |
| page = 1 | optional | 1– | 1-based page of the grid (24 products a page). |
| limit = 24 | optional | 1–24 | Rows to return from the page (1-24). The source serves 24 a page; use `page` for more. |
post
/bestprice/v1/product3 creditsOne product with EVERY shop offer: the shop name, its price, availability and the price band across the market (lowest, highest, how many shops). This is the whole point of a price-comparison source.
| Parameter | Allowed / range | Description | |
|---|---|---|---|
| product_id | required | — | The numeric product id, or a bestprice.gr product URL. |
post
/bestprice/v1/category2 creditsBrowse one category's grid without a keyword. Same rows as `search`. Take the category id from a search row's `category_id` or from a category URL.
| Parameter | Allowed / range | Description | |
|---|---|---|---|
| category_id | required | — | Numeric category id (806), or a bestprice.gr category URL. |
| query | optional | — | Optional keyword to narrow the category. |
| page = 1 | optional | 1– | 1-based page of the grid (24 products a page). |
| limit = 24 | optional | 1–24 | Rows to return from the page (1-24). The source serves 24 a page; use `page` for more. |
Example request · search
curl -X POST https://api.reefapi.com/bestprice/v1/search \
-H "x-api-key: $REEF_KEY" \
-H "content-type: application/json" \
-d '{}'Response shape
{
"ok": true,
"data": { /* the result */ },
"meta": {
"latency_ms": 240,
"record_count": 12,
"completeness_pct": 100
},
"error": null
}