Allegro Scraper - Offers, Prices, Sellers & Reviews avatar

Allegro Scraper - Offers, Prices, Sellers & Reviews

Pricing

from $1.80 / 1,000 offer records

Go to Apify Store
Allegro Scraper - Offers, Prices, Sellers & Reviews

Allegro Scraper - Offers, Prices, Sellers & Reviews

Scrape Allegro by keyword or URL. Extract offers, prices, delivery, seller details, and product reviews. Includes incremental change monitoring, resume support, and MCP connectors for automated workflows.

Pricing

from $1.80 / 1,000 offer records

Rating

5.0

(1)

Developer

Abot API

Abot API

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

8 hours ago

Last modified

Categories

Share

Allegro Poland Marketplace Scraper

Extract offers from Allegro, Poland's #1 marketplace, into a clean Apify dataset. Search from your own phrases or paste Allegro listing links, then narrow the results by keyword. Every saved row carries the offer, price, delivery and seller fields the listing page exposes.

Why This Scraper?

  • Two clear modes: build searches from your own phrases, or paste Allegro listing links (/listing?string=...) and walk them forward.
  • Useful offer fields in every row: title, price, currency, delivery text, offer URL, image, category and the offer's own parameters (colour, memory, screen size, ...).
  • Seller signals in the same row: seller login, business/private flag, positive-feedback percentage and the Super Seller badge.
  • Sponsored and Best-price-guarantee flags are returned as data, so you can keep or drop promoted cards yourself instead of guessing.
  • Output limits and the keyword filter apply in both modes, so a pasted-URL run can still be narrowed.
  • MCP connector export can send a concise offer summary into Notion, Linear, Airtable, or Apify connectors while the full record stays in the dataset.
  • Resume & recurring updates - turn on Incremental mode to get only NEW, UPDATED, and REAPPEARED offers on every scheduled run, or use Resume from a previous run to continue one interrupted crawl. See "Incremental & Dedup Mode" below.

Data You Get

Sample shape: values are illustrative placeholders, not from a live offer.

FieldExample
offerId10000000001
titleSample Smartphone 8 GB / 128 GB 5G
urlhttps://allegro.pl/oferta/10000000001
price1234.56
currencyPLN
originalPrice1499
deliveryInfodarmowa dostawa
imagehttps://a.allegroimg.com/s180/sample/sample-thumbnail
category320000
parameters{"Kolor": "czarny", "Wbudowana pamięć": "128 GB"}
sponsoredfalse
bestPriceGuaranteetrue
sellerNamesample_seller
sellerBusinesstrue
sellerFeedbackPercent98.5
superSellerfalse
sourceUrlhttps://allegro.pl/listing?string=smartfon
sourceLabelsearch-1:smartfon

How to Use

Search one phrase:

{
"mode": "search",
"queries": ["iphone"],
"maxItems": 20
}

Search several phrases and keep only matching titles:

{
"mode": "search",
"queries": ["iphone", "macbook"],
"keywords": ["pro max", "etui"],
"maxItems": 25
}

Paste Allegro listing links (a &p=N page number in the link is used as the starting page):

{
"mode": "url",
"startUrls": [
{ "url": "https://allegro.pl/listing?string=laptop" },
{ "url": "https://allegro.pl/listing?string=laptop&p=2" }
],
"maxItems": 10
}

Send an offer digest into an app connector:

{
"mode": "search",
"queries": ["macbook"],
"maxItems": 10,
"mcpConnectors": ["YOUR_CONNECTOR_ID"],
"notionParentPageUrl": "https://www.notion.so/your-page",
"maxNotifyListings": 10
}

Input Parameters

ParameterTypeDefaultDescription
modestringsearchChoose search to build searches from your phrases, or url for pasted Allegro listing links.
queriesarray["iphone"]Search phrases for search mode. Each phrase is one search walk.
startUrlsarraysample URLAllegro listing/search URLs (/listing?...) for URL mode. A &p=N in the link is honoured as the first page read. Single offer links (/oferta/..., /produkt/...) are not a start source.
keywordsarrayemptyKeeps only offers whose title contains at least one of these terms (case-insensitive).
maxItemsinteger20Maximum matching offers to save across the whole run. Minimum 1; the cap is always finite.
maxPagesinteger0Maximum result pages per phrase or pasted URL. 0 walks every result page; maxItems is the primary output cap.
proxyobjectApify residential, country PLConnection settings. Allegro serves pages to Polish/EU visitors, so keep the Residential (Poland) preset.
mcpConnectorsarrayemptyOptional connector ids for sending a concise summary into your apps.
notionParentPageUrlstringemptyRequired only for Notion page export.
maxNotifyListingsinteger50Maximum rows sent to each selected connector. Does not affect the dataset.
resumeFromRunIdstringemptyOptional previous run ID (or dataset ID) from this actor. Offers already collected there (matched by offerId) are skipped, so the run returns only new ones. For recurring daily monitoring of the same search, use incrementalMode instead.
incrementalModebooleanfalseDaily/recurring monitoring of the same search. First run returns everything as NEW; later runs return only NEW/UPDATED/REAPPEARED by default. See below.
stateKeystringemptyOptional name for a monitoring campaign, so its incremental state stays stable or is deliberately shared. Auto-derived from your mode/phrases/URLs/keywords when left empty.
emitUnchangedbooleanfalseIncremental mode only. Also return offers unchanged since the last run, marked UNCHANGED. Adds and bills extra rows you already have.
emitExpiredbooleanfalseIncremental mode only. Also return offers from a previous run that are no longer found, marked EXPIRED, once a run has fully scanned the search (not capped, not a resume). Adds and bills extra synthetic rows.

Incremental & Dedup Mode

Incremental mode (incrementalMode) is for a schedule (for example, daily): the actor remembers the previous run of the same search by itself, so you never paste a run ID. The first run returns everything as NEW. Later runs return only NEW, UPDATED, and REAPPEARED offers by default; unchanged offers are suppressed (and not charged). Turn on emitUnchanged or emitExpired only when you also want those rows returned (and billed for). State is isolated per mode/phrases/URLs/keywords setup automatically; set stateKey to name or deliberately share a monitoring campaign.

This is a different tool from resumeFromRunId, which continues ONE specific interrupted run from a pasted run/dataset ID. Use resumeFromRunId after a run was cut off; use incrementalMode for a schedule that runs the same search again and again.

Every returned record in incremental mode also carries:

FieldMeaning
changeTypeOne of NEW, UPDATED, UNCHANGED, REAPPEARED, EXPIRED.
changedFieldsNames of the fields that changed since the last run (empty for NEW/UNCHANGED/REAPPEARED/EXPIRED).
firstSeenAtWhen this offer was first seen by this monitoring campaign.
lastSeenAtWhen this offer was last seen.

EXPIRED rows are only produced when a run fully scans the tracked search end to end (no maxItems cap hit, no resumeFromRunId, every source read to its natural end) and emitExpired is on. A capped or resumed run leaves the previous state untouched for those offers rather than guessing they disappeared.

Example: run the same search every day and receive only changes:

{ "mode": "search", "queries": ["iphone"], "incrementalMode": true }

Output Example

Sample shape: values are illustrative placeholders, not from a live offer.

{
"offerId": "10000000001",
"title": "Sample Smartphone 8 GB / 128 GB 5G",
"url": "https://allegro.pl/oferta/10000000001",
"price": 1234.56,
"currency": "PLN",
"originalPrice": 1499,
"deliveryInfo": "darmowa dostawa",
"sponsored": false,
"bestPriceGuarantee": true,
"sellerName": "sample_seller",
"sellerBusiness": true,
"sellerFeedbackPercent": 98.5,
"superSeller": false,
"category": "320000",
"parameters": {
"Kolor": "czarny",
"Pamięć RAM": "8 GB",
"Wbudowana pamięć": "128 GB"
},
"image": "https://a.allegroimg.com/s180/sample/sample-thumbnail",
"sourceUrl": "https://allegro.pl/listing?string=smartfon",
"sourceLabel": "search-1:smartfon"
}

When a search matches nothing, the run saves a single explanatory row instead of an empty dataset:

{
"error": true,
"code": "ZERO_RESULTS",
"message": "No matching offers were found. Try a broader phrase or fewer filters."
}

Send Results Into Your Apps

The optional MCP connector inputs let you send a condensed, human-readable summary of each selected offer into your connected apps. Authorize a connector under Apify > Settings > API & Integrations, select it in mcpConnectors, and set notionParentPageUrl when using Notion.

The connector export is a side output. It does not change the dataset, and connector write errors do not fail the run. The complete record always remains available in the Apify dataset.

Plan Requirement

For best reliability, keep the default Apify Residential proxy with country Poland. maxItems is a maximum cap, not a guaranteed count; a run can save fewer rows when the phrase, URL and keyword filter match fewer active offers.