Looking for the overview — what this API returns, what it costs, and a call you can run without a key? See the x-kom API page →
E-commerce & Marketplaces

x-kom API & Scraper

x-kom is one of Poland's large electronics retailers (laptops, smartphones, PC parts, monitors, gaming), with al.to and neonet.pl running on the same shop platform.

6 actionsLive JSON1,000 free credits$0.67–$1.50 / 1,000 creditsMCP-ready
Get a free keyOpen in playground

🤖 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.

This API reads them as JSON. `search` takes Polish or brand/model keywords; `category` lists one category by id. Both take a brand id, a price range in PLN, an in-stock switch and six sort orders, and return per product: product id, name, brand, producer code, URL, image, category path, the shelf price, the crossed-out price, the EU Omnibus lowest price of the last 30 days, the promo-code price with its code, dates and per-customer limit, availability, badges, rating on x-kom's 1-6 scale and as stars, review count, the instalment offer and key specifications, plus category and brand counts for the query. `product` adds grouped specifications, the model's other variants with their prices, all images, the description, the online delivery date, pickup availability in each of x-kom's 31 stores and the shipping options with prices. `reviews` returns the written reviews with filters by rating, confirmed purchase and exact variant. `hot_shot` returns the current 'Gorący strzał' deal with its price, units sold and end time. `categories` lists the category tree.

Reference

What an x-kom field actually contains

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

FieldWhat it holds
priceThe shelf price in PLN, VAT included, before any promo code. Search and product agreed on 12 of 12 products.
code_price, promo_codeThe lower price x-kom gives with a promo code at checkout (for example 'rabat12'), with the code, its start and end time (Polish local time), the per-customer limit and whether it is running now. The product page's structured data shows this code price, not the shelf price, while a code runs.
filter_priceThe price the price_min / price_max range and the price sorts use: the promo-code price when a code is published, otherwise the shelf price. A laptop shelf-priced 3,499 zł with a 2,599 zł code is inside 2,000-3,000 zł.
lowest_price_30dThe lowest price of the last 30 days that EU Omnibus rules require next to a promotion. It equalled the figure printed on the product page on 6 of 6 discounted products.
rating, rating_5rating is x-kom's own 1-6 score; rating_5 is the same opinion on a five-star scale, the figure x-kom's product page structured data publishes.
stores[]Pickup availability in each x-kom store: a status code (available, available_soon, temporary_unavailable), the text and the earliest pickup date. x-kom does not publish a unit count per store.
review_count, reviewsx-kom pools reviews across all variants of a model (colours, memory sizes). Each review names the product id it was written on; this_variant_only keeps only the product you asked about (310 reviews → 105 on one model).
hot_shot.quantity_total, quantity_soldHow many units the deal has and how many are already sold, as x-kom reports them while the deal runs.

On 8 products the product page's own structured data matched: brand 8 of 8, review count 4 of 4 reviewed products, star rating 4 of 4, and its price equalled our code_price on all 6 products with a running code and our price on the 2 without one. Prices, promo codes, shipping options and store availability were identical from four different networks.

Live example

Real request and response JSON

Captured from the indexed primary action, search, on .

Captured request
{
  "method": "POST",
  "url": "https://api.reefapi.com/x-kom/v1/search",
  "headers": {
    "x-api-key": "$REEF_KEY",
    "content-type": "application/json"
  },
  "body": {
    "query": "iphone 17",
    "limit": 10
  }
}
Captured response
{
  "ok": true,
  "meta": {
    "api": "x-kom",
    "endpoint": "search",
    "mode": "live",
    "latency_ms": 2234.1,
    "record_count": 10,
    "bytes": 36125,
    "cache_hit": false,
    "upstream_requests": 1,
    "total": 2714,
    "site": "xkom",
    "charged_credits": 2,
    "version": "0.1.0",
    "request_id": "6604e98aba384460",
    "queue_ms": 1.3,
    "fetched_at": "2026-10-15T17:03:02.569Z"
  },
  "data": {
    "results": [
      {
        "product_id": "1362341",
        "site": "xkom",
        "name": "iPhone 17 512GB Gołębi",
        "title": "Apple iPhone 17 512GB Gołębi",
        "brand": "Apple",
        "brand_id": "357",
        "producer_code": "MG6T4HX/A",
        "url": "https://www.x-kom.pl/p/1362341-smartfon-telefon-apple-iphone-17-512gb-golebi.html",
        "image": "https://cdn.x-kom.pl/i/produkt/product-large,,2025/9/pr_2025_9_9_21_26_55_56_00.jpg",
        "category": {
          "id": "1590",
          "name": "Smartfon / Telefon",
          "parent_id": null,
          "parent_name": null,
          "group_id": "4",
          "group_name": "Smartfony i smartwatche"
        },
        "currency": "PLN",
        "price": 5329,
        "old_price": null,
        "lowest_price_30d": null,
        "promo_code": null,
        "code_price": null,
        "filter_price": 5329,
        "price_visible": true,
        "discount_value": null,
        "availability_status": "Available",
        "is_outlet": false,
        "outlet_condition": null,
        "marks": [
          "LastItems"
        ],
        "badges": [
          "Norton 360 za 39 zł",
          "3 miesiące Apple TV za darmo",
          "Akcesoria -50%"
        ],
        "rating": 5.93,
        "rating_5": 4.93,
        "review_count": 510,
        "free_shipping": true,
        "installment": {
          "text": "532,90 zł x 10 rat 0%",
          "zero_percent": true,
          "min_monthly": 532.9
        },
        "energy_class": "A",
        "key_specs": {
          "Przekątna": "6,3\"",
          "Procesor": "Apple A19",
          "Pamięć wbudowana": "512 GB"
        },
        "sponsored": false,
        "variant_group_id": "28256",
        "is_gift_card": false,
        "is_digital": false
      },
      {
        "product_id": "1362340",
        "site": "xkom",
        "name": "iPhone 17 512GB Biały",
        "title": "Apple iPhone 17 512GB Biały",
        "brand": "Apple",
        "brand_id": "357",
        "producer_code": "MG6Q4HX/A",
        "url": "https://www.x-kom.pl/p/1362340-smartfon-telefon-apple-iphone-17-512gb-bialy.html",
        "image": "https://cdn.x-kom.pl/i/produkt/product-large,,2025/9/pr_2025_9_9_21_20_53_14_00.jpg",
        "category": {
          "id": "1590",
          "name": "Smartfon / Telefon",
          "parent_id": null,
          "parent_name": null,
          "group_id": "4",
          "group_name": "Smartfony i smartwatche"
        },
        "currency": "PLN",
        "price": 5499,
        "old_price": null,
        "lowest_price_30d": null,
        "promo_code": null,
        "code_price": null,
        "filter_price": 5499,
        "price_visible": true,
        "discount_value": null,
        "availability_status": "Available",
        "is_outlet": false,
        "outlet_condition": null,
        "marks": [],
        "badges": [
          "Norton 360 za 39 zł",
          "3 miesiące Apple TV za darmo",
          "Akcesoria -50%"
        ],
        "rating": 5.93,
        "rating_5": 4.93,
        "review_count": 510,
        "free_shipping": true,
        "installment": {
          "text": "549,90 zł x 10 rat 0%",
          "zero_percent": true,
          "min_monthly": 549.9
        },
        "energy_class": "A",
        "key_specs": {
          "Przekątna": "6,3\"",
          "Procesor": "Apple A19",
          "Pamięć wbudowana": "512 GB"
        },
        "sponsored": false,
        "variant_group_id": "28256",
        "is_gift_card": false,
        "is_digital": false
      },
      {
        "product_id": "1362337",
        "site": "xkom",
        "name": "iPhone 17 256GB Szałwia",
        "title": "Apple iPhone 17 256GB Szałwia",
        "brand": "Apple",
        "brand_id": "357",
        "producer_code": "MG6N4HX/A",
        "url": "https://www.x-kom.pl/p/1362337-smartfon-telefon-apple-iphone-17-256gb-szalwia.html",
        "image": "https://cdn.x-kom.pl/i/produkt/product-large,,2025/9/pr_2025_9_9_21_28_33_526_00.jpg",
        "category": {
          "id": "1590",
          "name": "Smartfon / Telefon",
          "parent_id": null,
          "parent_name": null,
          "group_id": "4",
          "group_name": "Smartfony i smartwatche"
        },
        "currency": "PLN",
        "price": 4499,
        "old_price": null,
        "lowest_price_30d": null,
        "promo_code": null,
        "code_price": null,
        "filter_price": 4499,
        "price_visible": true,
        "discount_value": null,
        "availability_status": "Available",
        "is_outlet": false,
        "outlet_condition": null,
        "marks": [],
        "badges": [
          "Norton 360 za 39 zł",
          "3 miesiące Apple TV za darmo",
          "Akcesoria -50%"
        ],
        "rating": 5.93,
        "rating_5": 4.93,
        "review_count": 510,
        "free_shipping": true,
        "installment": {
          "text": "449,90 zł x 10 rat 0%",
          "zero_percent": true,
          "min_monthly": 449.9
        },
        "energy_class": "A",
        "key_specs": {
          "Przekątna": "6,3\"",
          "Procesor": "Apple A19",
          "Pamięć wbudowana": "256 GB"
        },
        "sponsored": false,
        "variant_group_id": "28256",
        "is_gift_card": false,
        "is_digital": false
      }
    ],
    "total": 2714,
    "pages": 272,
    "page": 1,
    "limit": 10,
    "page_past_end": false,
    "sort": "default",
    "has_more": true,
    "rows_outside_price_range": null,
    "site": "xkom",
    "facets": {
      "categories": [
        {
          "category_id": "1592",
          "name": "Akcesoria GSM",
          "count": 2623,
          "group_id": "4",
          "group_name": "Smartfony i smartwatche",
          "children": [
            "[trimmed-depth]",
            "[trimmed-depth]",
            "[trimmed-depth]"
          ]
        },
        {
          "category_id": "3464",
          "name": "Ochrona na telefon",
          "count": 2594,
          "group_id": "4",
          "group_name": "Smartfony i smartwatche",
          "children": [
            "[trimmed-depth]",
            "[trimmed-depth]"
          ]
        },
        {
          "category_id": "1924",
          "name": "Inteligentne zegarki",
          "count": 33,
          "group_id": "4",
          "group_name": "Smartfony i smartwatche",
          "children": [
            "[trimmed-depth]",
            "[trimmed-depth]",
            "[trimmed-depth]"
          ]
        }
      ],
      "brands": [
        {
          "brand_id": "2284",
          "name": "Tech-Protect",
          "count": 291
        },
        {
          "brand_id": "4568",
          "name": "Tactical",
          "count": 210
        },
        {
          "brand_id": "835",
          "name": "3mk",
          "count": 197
        }
      ]
    },
    "query": "iphone 17"
  }
}
Actions

What the x-kom API does

ActionDescriptionConcrete use caseKey params
searchSearch x-kom.pl (or al.to / neonet.pl) by keyword with the shop's own category, brand, price range (PLN), availability filters and sorts. Each row: product id, name, brand, producer code, URL, image, category path, the shelf price, crossed-out price, EU Omnibus lowest-30-day price, promo-code price with its code, dates and per-customer limit, availability, outlet condition, badges, rating (x-kom's 1-6 scale and the 5-star figure), review count, instalment offer, key specs. Also returns category and brand facets with counts for the query.Pricing teams call search to search x-kom.pl (or al.to / neonet.pl) by keyword with the shop's own category, brand, price….query, category_id, brand_id, price_min, price_max, ...
categoryList one x-kom category (e.g. 159 laptops, 1590 smartphones) with the same brand, price, availability and sort options and the same rows as search, plus sub-category and brand facets. Category ids come from the categories action or from search facets.Marketplace operators call category to list one x-kom category (e.g.category_id, brand_id, price_min, price_max, only_available, ...
productThe full product record by id or URL: every price fact (shelf, crossed-out, Omnibus lowest 30-day with its date, promo code with dates and limit, instalment plans), availability online with the delivery date, pickup availability in each of the shop's stores, shipping options with prices, grouped specifications, variants of the same model with their prices, all images, the description as plain text and review statistics. (x-kom's API publishes no EAN.)Catalog enrichment teams call product to get the full product record by id or URL.product_id, url, site
reviewsCustomer reviews of a product: author, date, rating (1-6 and 5-star), title, text, confirmed purchase flag, helpful votes, photos and shop replies. x-kom pools reviews across the variants of a model; every review names the product id it was written on and `this_variant_only` keeps just the asked product.Retail analysts call reviews to get customer reviews of a product.product_id, sort, rating, this_variant_only, confirmed_only, ...
hot_shotThe shop's current 'Gorący strzał' (hot shot) deal: the deal price, the regular and Omnibus 30-day price, the saving, how many units the deal has and how many are sold, the per-customer limit, the start and end time, and the product it is for. x-kom runs a new one twice a day.Pricing teams call hot_shot to get the shop's current 'Gorący strzał' (hot shot) deal.site
categoriesThe shop's category tree: without parameters the top-level groups; with group_id the categories in that group with their product counts. Use the ids with category / search.Marketplace operators call categories to get the shop's category tree.group_id, site
Code samples

Call search from your stack

curl -X POST https://api.reefapi.com/x-kom/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"query":"iphone 17","limit":10}'
MCP one-liner
Ask your MCP-connected assistant: call reefapi.x-kom.search with {"query":"iphone 17","limit":10}.
Use cases

Who uses this API and why

  • Track x-kom shelf prices, promo-code prices and Omnibus 30-day prices on electronics day by day.
  • Watch the daily x-kom hot shot: price, saving, units sold and when it ends.
  • Compare x-kom, al.to and neonet.pl prices for the same product.
  • Collect customer reviews per model or per exact variant, with confirmed-purchase flags.
  • Check where a product can be picked up today across x-kom's stores.
FAQ

Questions developers ask before integrating

Do I need an x-kom account?

No. Everything is read logged out, and you call reefapi.com from anywhere.

Which price is the real one?

Both: price is what the product costs without a code; code_price is what it costs with the promo code shown in promo_code, while the code runs. lowest_price_30d is the reference price required by law during a promotion, old_price the crossed-out price when x-kom shows one.

Do the filters work?

Yes, each was checked against the unfiltered count in the same run. Laptops: 3,848 products; Apple 814; in stock 3,431; 2,000-3,000 zł 65. 'iphone 17' 2,714 matches, in the smartphone category 55. Price sorts follow filter_price with no order breaks on 60 rows.

Can I read al.to and neonet.pl too?

Yes, set site to alto or neonet. They run on the same platform and return the same fields. al.to shares product ids with x-kom.pl. neonet sometimes has no hot shot running; the API then says so.

How deep can I page?

Up to the last page the shop reports in pages. Three consecutive pages of smartphones shared no product. The page right after the last returns no rows with page_past_end set; asked for 60 rows the shop sometimes sends 59.

Is the EAN included?

No. x-kom's catalogue data carries no EAN; products are identified by x-kom's product id and the manufacturer code (producer_code).

When does the hot shot change?

Each deal carries its own starts_at and ends_at. On 2026-10-15 x-kom's deal ran 10:00-22:00 and al.to's 09:00 to 09:00 the next day, each for a different product.

What is the x-kom API?

x-kom API is a ReefAPI endpoint group for polish electronics retailer x-kom.pl (plus al.to and neonet.pl): pln shelf, promo-code and omnibus 30-day prices, store pickup, specs, reviews and the daily hot shot. It returns live JSON through POST requests under /x-kom/v1.

Is the x-kom API free to try?

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

Do I need a x-kom login or account?

No login to x-kom 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 x-kom 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 x-kom API use?

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

Can I call x-kom from an AI assistant or MCP client?

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

Is the x-kom API a x-kom scraper?

It is the managed alternative to a DIY x-kom 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 polish electronics retailer x-kom.pl (plus al.to and neonet.pl): pln shelf, promo-code and omnibus 30-day prices, store pickup, specs, reviews and the daily hot shot back as clean JSON.

docs / x-kom

x-kom

Polish electronics retailer x-kom.pl (plus al.to and neonet.pl): PLN shelf, promo-code and Omnibus 30-day prices, store pickup, specs, reviews and the daily hot shot.

base /x-kom/v16 endpoints
post/x-kom/v1/category2 credits

List one x-kom category (e.g. 159 laptops, 1590 smartphones) with the same brand, price, availability and sort options and the same rows as search, plus sub-category and brand facets. Category ids come from the categories action or from search facets.

ParameterAllowed / rangeDescription
category_idrequired—x-kom category id (e.g. 159 = Laptopy/Notebooki/Ultrabooki). An id the shop does not know answers total 0.
brand_idoptional—Brand (producer) id, e.g. 357 = Apple. The ids come back in `facets.brands` of any search or category call.
price_minoptional0–Lowest price in PLN. Measured: x-kom applies the price filter to the promo-code price when a code is published (a 3499 zł laptop with a 2599 zł code is inside 2000-3000); each row's `filter_price` is that price.
price_maxoptional0–Highest price in PLN (same promo-code rule as price_min).
only_available = falseoptional—Only products the shop marks Available (category 159: 3849 → 3431).
sort = defaultoptionaldefault · price_asc · price_desc · popularity · rating · nameOrder of the results.
page = 1optional1–Result page (1-based). `pages` in the answer is the last page; a page past it is refused.
limit = 30optional1–60Rows per page, 1-60 (default 30).
site = xkomoptionalxkom · alto · neonetWhich shop of the x-kom platform to read: xkom (x-kom.pl, default), alto (al.to) or neonet (neonet.pl). Product ids are shared between x-kom.pl and al.to.
Try in playground →
post/x-kom/v1/product2 credits

The full product record by id or URL: every price fact (shelf, crossed-out, Omnibus lowest 30-day with its date, promo code with dates and limit, instalment plans), availability online with the delivery date, pickup availability in each of the shop's stores, shipping options with prices, grouped specifications, variants of the same model with their prices, all images, the description as plain text and review statistics. (x-kom's API publishes no EAN.)

ParameterAllowed / rangeDescription
product_idoptional—Product id as in search results (`product_id`). Either product_id or url is required.
urloptional—A product URL from x-kom.pl, al.to or neonet.pl (the shop is taken from the URL). Either product_id or url is required.
site = xkomoptionalxkom · alto · neonetWhich shop of the x-kom platform to read: xkom (x-kom.pl, default), alto (al.to) or neonet (neonet.pl). Product ids are shared between x-kom.pl and al.to.
Try in playground →
post/x-kom/v1/reviews1 credit

Customer reviews of a product: author, date, rating (1-6 and 5-star), title, text, confirmed purchase flag, helpful votes, photos and shop replies. x-kom pools reviews across the variants of a model; every review names the product id it was written on and `this_variant_only` keeps just the asked product.

ParameterAllowed / rangeDescription
product_idrequired—Product id (`product_id` from search or product).
sort = helpfuloptionalhelpful · newest · oldest · rating_desc · rating_ascOrder of the reviews.
ratingoptional1–6Only reviews with this rating on x-kom's 1-6 scale.
this_variant_only = falseoptional—Only reviews written on this exact product, not on its sibling variants.
confirmed_only = falseoptional—Only reviews from confirmed purchases.
page = 1optional1–Review page (1-based).
limit = 10optional1–50Reviews per page, 1-50 (default 10).
site = xkomoptionalxkom · alto · neonetWhich shop of the x-kom platform to read: xkom (x-kom.pl, default), alto (al.to) or neonet (neonet.pl). Product ids are shared between x-kom.pl and al.to.
Try in playground →
post/x-kom/v1/hot_shot2 credits

The shop's current 'Gorący strzał' (hot shot) deal: the deal price, the regular and Omnibus 30-day price, the saving, how many units the deal has and how many are sold, the per-customer limit, the start and end time, and the product it is for. x-kom runs a new one twice a day.

ParameterAllowed / rangeDescription
site = xkomoptionalxkom · alto · neonetWhich shop of the x-kom platform to read: xkom (x-kom.pl, default), alto (al.to) or neonet (neonet.pl). Product ids are shared between x-kom.pl and al.to.
Try in playground →
post/x-kom/v1/categories1 credit

The shop's category tree: without parameters the top-level groups; with group_id the categories in that group with their product counts. Use the ids with category / search.

ParameterAllowed / rangeDescription
group_idoptional—Top-level group id (e.g. 2 = Laptopy i komputery).
site = xkomoptionalxkom · alto · neonetWhich shop of the x-kom platform to read: xkom (x-kom.pl, default), alto (al.to) or neonet (neonet.pl). Product ids are shared between x-kom.pl and al.to.
Try in playground →
Built for volume
5M+ requests a day

Measured at 60 requests a second across the fleet, with no central bottleneck. Volume pricing is on request, and per-key limits are raised for high-volume accounts.

Missing a source?
We build it

Tell us a site we do not cover yet and it becomes an engine. A customer asked for bestprice.gr on a Sunday and it was in the catalog the next day.

Support
2 minute median reply

Median time from a question in the live chat to the first answer, measured across every answered conversation. Setup help included, no support tier to buy.

One key, one balance
Every API included

No per-site plans and no separate subscriptions. One key and one credit pool across the whole catalog, so adding a source costs nothing up front.

Planning something large? Tell us the volume and the sources and we will come back with what it costs and what we would have to build.