Ecwid Product Catalog Extractor & Monitor avatar

Ecwid Product Catalog Extractor & Monitor

Pricing

from $0.80 / 1,000 product records

Go to Apify Store
Ecwid Product Catalog Extractor & Monitor

Ecwid Product Catalog Extractor & Monitor

Extract every public Ecwid storefront product with stable IDs, prices, SKUs, categories, image URLs, stock status and product URLs.

Pricing

from $0.80 / 1,000 product records

Rating

0.0

(0)

Developer

Andy Besos

Andy Besos

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Turn a public Ecwid storefront into a clean, row-per-product catalog snapshot. Ecwid Product Catalog Extractor & Monitor discovers the public storefront ID, walks every visible category and product page, and returns product IDs, names, prices, SKUs, categories, image URLs, stock status, and canonical product URLs.

Paste a storefront URL and receive data ready for CSV, JSON, Excel, or an automated workflow. You do not need an Ecwid account, an Ecwid Admin API key, browser automation, or a proxy for normally reachable public storefronts.

Why use this Ecwid product catalog extractor?

  • Get one normalized product record per publicly visible product, not a technology label or a storefront summary. storefrontId and productId make records stable for joins and repeated collection.
  • Capture the fields competitive-intelligence workflows need: current price, default-variation sku, leaf categories, main imageUrl, inStock, and productUrl.
  • Start from the URL people actually share. The Actor accepts an embedded Ecwid store page, an Instant Site catalog URL, a normal domain with an Ecwid widget, or a numeric Ecwid store ID.
  • Export a complete current catalog by setting maxProducts to 0. The Actor follows public category pagination and deduplicates products that appear in more than one category.
  • Monitor scheduled snapshots. Keep the same monitorId to receive new, updated, unchanged, and one-time removed product events, including the exact changedFields for an update.
  • Use the results anywhere Apify Dataset exports are supported, including JSON, CSV, Excel, XML, RSS, REST integrations, schedules, webhooks, Make, and Zapier.

The Actor uses public storefront requests with retries for temporary upstream errors. Each storefront is isolated: a bad URL is logged without discarding successful catalog snapshots from other URLs in the same run.

Pricing

This Actor uses pay per event: $0.001 per run plus $0.0008 per product record written to the default Dataset.

Product recordsActor event price
1$0.0018
100$0.0810
1,000$0.8010
10,000$8.0010

The exact formula is $0.001 per run + $0.0008 per product record. Prices above cover the Actor's chargeable run and product-record events; standard Apify charges for data retention or downloads may apply. In the 31 August 2026 comparison of the live Ecwid-specific Store results, the closest product scraper documented a $0.01 custom event per product; this Actor's compact snapshot costs less per exported product while adding a scheduled change feed.

How to use this Actor

Enter a public page that contains the Ecwid catalog. Accepted examples include a merchant storefront such as https://ourlittlecraft.co.uk/, a merchant catalog route such as https://ourlittlecraft.co.uk/shop/, an Ecwid Instant Site URL such as https://example.company.site/products/, a normal storefront domain, or a numeric store ID such as 44430351. The Actor removes query strings and fragments before monitoring, so campaign parameters do not create a second snapshot namespace.

Quick start: preview one product

{
"storefrontUrls": ["https://ourlittlecraft.co.uk/"],
"maxProducts": 1
}

This is also the prefilled example. It exports one product quickly, while still collecting the full visible catalog before creating the monitoring snapshot. Use it to confirm that a storefront is reachable and its product shape fits your workflow.

Full catalog snapshot

{
"storefrontUrls": ["https://ourlittlecraft.co.uk/"],
"maxProducts": 0
}

Set maxProducts to 0 to export every product that the public storefront currently exposes. For a batch of supplier or competitor stores, add more URLs to the same array; every record retains its own storefront URL and storefront ID.

{
"storefrontUrls": [
"https://supplier-one.example/catalog/",
"https://supplier-two.example/shop/"
],
"maxProducts": 0,
"requestDelayMillis": 1000
}

Monitor new, updated, and removed products

Every successful run saves a full product snapshot in a named store. Schedule the Actor with the same storefront URLs and monitorId to turn catalog collection into an actionable product-change feed.

{
"storefrontUrls": ["https://ourlittlecraft.co.uk/"],
"monitorId": "supplier-watchlist",
"onlyChangesSince": "2026-08-01T00:00:00.000Z",
"maxProducts": 0
}

The first run establishes the baseline and labels its records new. Later successful runs compare the complete catalog before applying the output limit.

changeTypeMeaning
newA product did not exist in the prior successful snapshot.
updatedA monitored product field changed; changedFields lists it.
unchangedThe product is still public and its monitored fields match.
removedA previously public product disappeared; this event is emitted once.

Set onlyChangesSince to suppress unchanged products and deliver only a focused change feed. A failed collection never overwrites the prior snapshot, so a temporary storefront outage does not manufacture removals.

API example

curl -X POST \
"https://api.apify.com/v2/acts/Clintsa~ecwid-product-catalog-extractor/run-sync-get-dataset-items" \
-H "Authorization: Bearer YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"storefrontUrls": ["https://ourlittlecraft.co.uk/"],
"maxProducts": 10
}'

For large catalog snapshots, start the Actor asynchronously and read the default Dataset after it succeeds.

Input options

FieldTypeWhat it controls
storefrontUrlsstring arrayRequired public Ecwid storefront or catalog URLs.
maxProductsintegerProducts exported per storefront; 0 means every visible product.
monitorIdstringPersistent namespace used for product change tracking.
onlyChangesSinceISO timestampReturns only changes detected since that timestamp.
requestDelayMillisintegerOptional delay between storefronts in a batch.
useApifyProxybooleanEnables Apify Proxy only as a network fallback.
proxyConfigurationobjectOptional proxy settings when the fallback is enabled.

Output

Each Dataset item is one normalized public product, plus its monitoring fields:

{
"storefrontUrl": "https://ourlittlecraft.co.uk/shop/",
"storefrontId": "44430351",
"productId": "721812262",
"name": "YarnArt Stylish Alpaca - 7703",
"price": 6.36,
"currency": "GBP",
"sku": "YASA7703",
"categories": ["Lovely Yarn", "SALE!"],
"imageUrl": "https://cdn.example.com/product.jpg",
"inStock": true,
"productUrl": "https://ourlittlecraft.co.uk/shop/YarnArt-Stylish-Alpaca-7703-p721812262",
"changeType": "new",
"changeDetectedAt": "2026-08-31T10:00:00.000Z"
}

The run also writes a SUMMARY record with requested, successful, and failed storefront counts, the exported product count, change totals, proxy usage, and completion time.

Use cases

  • Monitor a dropshipping supplier's Ecwid catalog for new products, price changes, and removals.
  • Compare competitors' live SKU, category, image, and stock signals across multiple Ecwid storefronts.
  • Feed a market-research database that already normalizes Shopify and WooCommerce catalogs.
  • Create a brand-protection watchlist around public product names, images, and canonical product pages.
  • Build a scheduled procurement or merchandising alert from price and availability changes.

FAQ

Do I need an Ecwid account or API key?

No. This Actor reads only public storefront pages and their public storefront data endpoints. It does not use the OAuth-protected Ecwid Admin API.

Can I extract every product from an Ecwid store?

Yes, set maxProducts to 0. Output completeness is limited to products that the merchant makes publicly visible in its storefront; unpublished, private, or login-only products are not returned.

Does this work with an Ecwid store embedded in WordPress or another website?

Yes. Use the page that contains the Ecwid product browser, such as a site's /shop/ page. The Actor identifies the embedded store ID from the public page.

Which price and stock values are returned?

price is the current public default-variation price supplied by the storefront, including a storefront discount where that endpoint supplies it. inStock describes whether that default variation is publicly marked sold out. Variant-level inventory quantities are not part of this compact snapshot.

Can I monitor a catalog every day?

Yes. Create a schedule, preserve the same monitorId, and use the same normalized storefront URLs. The first completed run is the baseline; later runs provide the catalog change feed.

Why did a storefront URL fail?

The page may not contain an Ecwid catalog, may require sign-in, may block the request, or may be temporarily unavailable. Check the run log and try the exact public catalog page; enable Apify Proxy only if direct access is rejected.

Limitations and responsible use

  • Only publicly available product data is returned. The Actor does not bypass login walls, payment gates, or access controls.
  • A successful snapshot shows what the storefront exposed at collection time; it does not prove ownership, authorization, or an item's actual sell-through.
  • A product's categories, price, image, and availability can differ by region, customer group, selected variation, or storefront settings. The output represents the public default storefront response.
  • Respect applicable laws, each merchant's terms, robots rules, and legitimate privacy and intellectual-property obligations when collecting or using data.

Support

Report an issue or request through the Issues tab on this Actor's page. Include the run ID, the storefront URL, and the time of the run so the public storefront response can be investigated.