StockX Sales History Scraper avatar

StockX Sales History Scraper

Pricing

from $4.50 / 1,000 results

Go to Apify Store
StockX Sales History Scraper

StockX Sales History Scraper

Pull aggregate sales statistics by time bucket (annual / 90d / 72h / all-time) plus per-size 72-hour activity for any StockX product.

Pricing

from $4.50 / 1,000 results

Rating

0.0

(0)

Developer

Xtractoo

Xtractoo

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

4 days ago

Last modified

Share

Extract multi-bucket sales statistics for any StockX product — annual, 90-day, and 72-hour averages, volatility, price premium, and per-size activity — all in one structured dataset.

Why use this actor

  • No account required — reads public StockX product pages; no login or API key needed.
  • Four time buckets in one run — annual, last-90-days, last-72-hours, and all-time stats are fetched together so you don't need separate requests per window.
  • Per-size breakdowns — one PER_VARIANT row per size with its own 72-hour sales count, annual average price, and annual sales count.
  • Stable two-record schema — an AGGREGATE summary row followed by PER_VARIANT rows; import directly into a spreadsheet, database, or ML pipeline without transformation.
  • Batch-friendly — supply a list of product URLs and all results are collected in Apify's default dataset, exportable as JSON, CSV, or Excel.
  • Localized pricing — configure ship-to country and display currency per run.

How it works

  1. You provide a list of StockX product URLs in the productUrls field.
  2. For each product, the actor fetches the full market detail page, which includes statistics across all time windows.
  3. An AGGREGATE record is saved per product with the last sale price, and the annual, 90-day, 72-hour, and all-time buckets — each including average price, sales count, volatility, price premium, high, and low where available.
  4. One PER_VARIANT record is saved per size with its 72-hour sales count, last sale, annual average price, and annual sales count.
  5. All records land in Apify's default dataset, exportable as JSON, CSV, or Excel.

You don't need to manage any browsers or scrapers.

Input

{
"productUrls": [
{ "url": "https://stockx.com/air-jordan-1-retro-high-og-chicago-reimagined-lost-and-found" },
{ "url": "https://stockx.com/nike-dunk-low-panda" }
],
"country": "US",
"currency": "USD",
"maxConcurrency": 2,
"maxRequestRetries": 6,
"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}
FieldTypeDefaultDescription
productUrlsURL[]Required. StockX product URLs (https://stockx.com/<slug>).
countrystring"US"Two-letter ISO country code for pricing locale.
currencystring"USD"ISO currency code (e.g. USD, EUR, GBP).
maxConcurrencyinteger2Number of parallel workers.
maxRequestRetriesinteger6Retry budget per request before skipping.
proxyConfigurationobjectRESIDENTIALApify Proxy or custom proxy list. RESIDENTIAL group recommended.

Output

One AGGREGATE row followed by one PER_VARIANT row per size:

{
"recordType": "AGGREGATE",
"productId": "...",
"urlKey": "nike-dunk-low-panda",
"title": "Nike Dunk Low Retro White Black Panda (2021)",
"variantCount": 19,
"sources": ["graphql", "search"],
"matchScore": 0.8,
"searchEdge": {
"market": {
"statistics": {
"annual": {
"averagePrice": 293,
"salesCount": 5814,
"volatility": 0.093861,
"pricePremium": 0.594,
"high": 488,
"low": 140
},
"last90Days": {
"averagePrice": 278,
"salesCount": 1138
},
"last72Hours": {
"salesCount": 24
}
}
}
}
}
{
"recordType": "PER_VARIANT",
"variantId": "b3f81c2d-9e47-4a8b-c2d5-7f0e3b9a1c84",
"variant": {
"market": {
"statistics": {
"salesLast72Hours": 4,
"annualAveragePrice": 298,
"annualSalesCount": 611
}
}
}
}
FieldTypeDescription
recordTypestring"AGGREGATE" for the product summary, "PER_VARIANT" for per-size rows.
productIdstringStockX UUID for the product (on AGGREGATE rows).
urlKeystringStockX slug.
titlestringProduct display title.
variantCountintegerTotal number of size variants (on AGGREGATE rows).
sourcesstring[]Data sources used, e.g. ["graphql", "search"].
matchScorenumberConfidence that the resolved product matches the input URL (1.0 = exact).
searchEdgeobjectMarket statistics object with time-bucketed averages, counts, and volatility.
variantIdstringStockX UUID for the size variant (on PER_VARIANT rows).
variantobjectPer-size statistics: 72-hour sales count, annual average price, annual sales count.

Other StockX Scrapers

ActorWhat it does
StockX Search ScraperSearch keywords or categories; get every result tile with live market data.
StockX Product ScraperFull product detail — market snapshot, traits, stats — from a list of product URLs.
StockX Orderbook ScraperLive per-size bid/ask orderbook with spread and 72-hour velocity for any product.
StockX Sales History ScraperMulti-bucket sales statistics (annual, 90-day, 72-hour) plus per-size breakdowns.
StockX Release Calendar ScraperUpcoming and recent drops with release dates and pre-release bid/ask signals.