Alcampo API

Alcampo prices by store, promotions and product sheets

Alcampo's online supermarket prices every product by the store that serves the delivery address.

no credit card1,000 free credits · instant API key · pay by card or crypto
Missing a Alcampo endpoint, or need a source we don't have yet?Contact us real people · same-day reply.
A
/alcampo/v1

4 active endpoints, on 1, 2 and 3 credit tiers.

  • POST/alcampo/v1/search
  • POST/alcampo/v1/category
  • POST/alcampo/v1/product
  • POST/alcampo/v1/categories

What Alcampo endpoints does ReefAPI ship?

4 live read endpoints. Read-only data API: no writes, no account actions, no dashboard access on the target site.

4 endpoints

search

3 cr

Search the Alcampo online grocery catalogue (EUR).

required
query
optional
—

category

3 cr

Browse one Alcampo category by its id from categories.

required
category_id
optional
—

product

1 cr

Full Alcampo product sheet.

required
id
optional
—

categories

2 cr

Alcampo category tree (top level and one child level) with the ids the category action takes.

required
—
optional
—

Every parameter, every allowed value →

Alcampo API

3 of 4 endpoints, ready to run

View docs ↗

Milk at the default store

3 credits1 required · 0 optional
POST/alcampo/v1/search
idle
// Press "Try it" and this pane shows exactly what the
// live site returned this second — including an empty
// result, if that is the truth. No key, no account.

How the Alcampo API works

Alcampo is a normal ReefAPI surface — the same four rules that hold for every other engine on the key.

01
Authenticate
x-api-key header

No OAuth app, no request signing, no per-site account. One key covers all 585 engines.

02
Call
POST /alcampo/v1/…

Every route is a POST with a JSON body. Parameters are validated against the published schema before anything is charged.

03
Pay
1 or 2 or 3 credits per call

Credits, not seats. Failed and blocked calls are never charged, and cache hits cost nothing.

04
Read
{ ok, data, meta, error }

One envelope everywhere. meta carries latency_ms, record_count and the endpoint that answered.

Same basket, two cities

Read the same search for two delivery addresses and compare.

01search?query=leche&limit=48
GET/alcampo/v1/search?query=leche&limit=48

The default store's milk shelf.

02search?query=leche&limit=48&latitude=41.387&longitude=2.17&postal_code=08001
GET/alcampo/v1/search?query=leche&limit=48&latitude=41.387&longitude=2.17&postal_code=08001

The Barcelona shelf: prices, range and promotions of the serving store.

A store-aware Spanish grocery price feed.

request
curl -X POST https://api.reefapi.com/alcampo/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"query":"leche","limit":24}'
response envelope
{
  "ok": true,
  "data": { … },
  "meta": {
    "api": "alcampo",
    "endpoint": "search",
    "mode": "live",
    "latency_ms": …,
    "record_count": …
  },
  "error": null
}

What a Alcampo field actually contains

Fields that read differently from how they look. Every row was measured against live responses on 2026-10-18.

FieldWhat it holds
price, currencyThe price at the serving store in euros. Checked against the price printed on the product page for 8 of 8 products in each of two runs.
locationWhich store area the price belongs to: store_defaulted=true means the site default (Vaguada); with latitude/longitude, the region_id that serves that point.
promotionsPromotion texts with their validity dates, e.g. "Producto en Folleto (08/10/26_21/10/26)" or "2ª unidad -50%" with required_quantity 2. The shelf price is not recomputed.
max_available_quantityThe most units the site lets you order (seen on 8 of 192 rows, e.g. 21).
rating, review_countCustomer rating and number of reviews; null when a product has no reviews (the site sends 0.0).
gtinThe EAN when Alcampo prints it in the product's features table, with a valid check digit (2 of 8 sampled sheets). Never Alcampo's own id.

Alcampo publishes no total count for a search; total is filled only when the first page is the whole answer.

Alcampo coverage, measured

Every number below was read from live responses on 2026-10-18 in two separate runs: four searches, three consecutive pages, filters, one category, the aisle tree, 8 product sheets checked against the printed page, and a second delivery location.

Store matters

Barcelona vs default: 11 of 32 shared products priced differently; 16 of 48 results differed.

Price accuracy

Search row, product sheet and the printed page price agreed for 8 of 8 products in each of two runs.

Promotions

29 of 192 rows across four searches carried a promotion with dates.

EAN

Printed on 2 of 8 sampled product sheets.

Limits

No search total, no member price, up to 48 products per page.

What people build with Alcampo

The jobs this data is most often used for.

4

endpoints

1/2/3

credits per call

01

Compare Alcampo prices between Spanish cities and stores.

02

Track folleto and 2ª unidad promotions with their dates.

03

Match Alcampo products to other retailers by EAN where printed.

04

Monitor own-brand (Producto Alcampo) prices by aisle.

What Alcampo data costs

The cheapest call here is 1 credit, so $15/mo (Pro) buys 10,000 of them — $1.50 per 1,000 credits. Credits roll over and never expire, and failed or blocked calls are not charged.

Full pricing →
$0.67–$1.50 / 1,000 credits
  • 1,000 free credits on signup, no card
  • One key, all 585 APIs, one credit pool
  • Failed and blocked calls are never charged
  • Credits roll over and never expire

Call it in two lines

Sign up, get 1,000 credits and one key that works on every engine. Then this is the whole protocol.

curl
curl -X POST https://api.reefapi.com/alcampo/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"query":"leche","limit":24}'
python
import requests

r = requests.post(
    "https://api.reefapi.com/alcampo/v1/search",
    headers={"x-api-key": REEF_KEY},
    json={
  "query": "leche",
  "limit": 24
},
)
print(r.json()["data"])
FAQ

Have a question? We got answers.

The questions people actually ask before wiring up Alcampo.

Get a free key →
Do I need an Alcampo account?▾

No. Everything is read as a visitor before signing in.

Why does the price depend on the address?▾

Alcampo prices by store. Barcelona vs the default Madrid store: 11 of 32 shared milk products priced differently. Pass latitude/longitude of the delivery address.

Does on_offer work?▾

Yes: 48 of 48 rows with on_offer=true carried a promotion, against 5 of 48 without it.

Is there a Club Alcampo member price?▾

No member price is published on the public site; the API returns the price everyone pays plus the promotion texts.

How many products per page?▾

Up to 48 (24 by default). Three pages in a row returned 72 different products.

Are EAN barcodes included?▾

When the product sheet prints one: 2 of 8 sampled sheets did. Otherwise gtin is null.

How fresh is the data?▾

Every call reads the site live; nothing is cached.

What is the Alcampo API?▾

Alcampo API is a ReefAPI endpoint group for alcampo online supermarket (compraonline.alcampo.es) as json: eur prices per store area, folleto promotions, ean where printed, nutrition. It returns live JSON through POST requests under /alcampo/v1.

Is the Alcampo API free to try?▾

Yes. ReefAPI starts with 1,000 free credits, no card required. Alcampo calls use the same shared credit balance as every other ReefAPI engine.

Do I need an Alcampo login or account?▾

No login to Alcampo 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 Alcampo 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 Alcampo API use?▾

Alcampo actions currently cost 1-3 credits per successful call. Failed or blocked calls are free. All APIs draw from one credit pool.

Can I call Alcampo from an AI assistant or MCP client?▾

Yes. Connect ReefAPI once through MCP and your assistant can call alcampo actions with the same key, credit pool and JSON envelope used by normal REST requests.

Is the Alcampo API an Alcampo scraper?▾

It is the managed alternative to a DIY Alcampo 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 alcampo online supermarket (compraonline.alcampo.es) as json: eur prices per store area, folleto promotions, ean where printed, nutrition back as clean JSON.

Need something this API does not do?

Name the endpoint, the field, or a source we do not carry yet. We ship new APIs every week and you would be first to get the key. Real people read every message and reply the same day.

0/4000

No account needed · we reply from [email protected]

Try it on your own data before you pay anything

The call above is the real endpoint, not a recording. A free key gives you 1,000 credits, the other 584 APIs, and the same envelope everywhere.

Endpoints, parameters and credit costs on this page are read from the live catalog and cannot drift from what the API accepts. Field notes were captured on 2026-10-18.