Shopping
StockX API
Search StockX products and read product details, sizes, live market data per size and sale price history.
Four endpoints read StockX’s public marketplace: product search with market summaries, product details with sizes, live asks, bids and sales for every size, and the sale price chart.
API availability: Available
http://localhost:3054Public API: https://api.scrapeatlas.com.Endpoints
/v1/stockx/searchSearch StockX products
Search StockX products by keyword, as stockx.com search does, and narrow the results by category, brand, gender, color, lowest-ask price range or below-retail pricing, sorted by featured, top selling, price, highest bid, release date, recent activity, last sale, price premium or sales. Each product returns its title, brand, model, category, release date, images and live market data: lowest ask, highest bid, last sale, active asks, recent sales counts, 90-day and annual averages, volatility and price premium. Pages of 40 products; choose the market to price in.
Reference/v1/stockx/productGet StockX product
Get a StockX product by URL key or product URL: title, brand, model, style code, colorway, retail price, release date, description, categories, breadcrumbs, available conditions, traits, images and 360° frames, and every size variant with its size conversions and GTINs.
Reference/v1/stockx/product/marketGet StockX product market data
Get live StockX market data for a product and each of its sizes: lowest ask, highest bid, number of asks and bids, last sale and its change, 72-hour sales, 90-day average price, sales count and range, annual low and high, volatility and price premium.
Reference/v1/stockx/product/price-historyGet StockX price history
Get the StockX sale price chart for a product or one of its sizes: up to 100 dated price points over all time or the last year, six months, three months or month.
ReferenceQuick start
Create an API key on your account page, then call the public API. Values below are placeholders.
curl "https://api.scrapeatlas.com/v1/stockx/search?query=jordan+4&gender=women&sort=lowest_ask" \
-H "x-api-key: YOUR_API_KEY"Coverage & limits
- Independent, stateless worker: two concurrent operations, with up to eight more waiting at most 15 seconds for a slot; 45-second total deadline, including the wait.
- Each operation opens one fresh browser session on stockx.com and reads StockX’s public GraphQL API from it: at most seven upstream requests (session page, up to three reads, one shared retry on a network failure or HTTP 5xx, one challenge reload). HTTP 429 and challenges are never retried on the same session.
- Fixed origins stockx.com and gateway.stockx.com. No login, cookies sent, outbound link visits, media downloads or result storage. The service API key is never forwarded.
- At most 4 MiB decoded JSON per read. Search returns 40 products a page and at most 25 pages, with up to 10 values per list filter; a product returns up to 200 sizes, 50 traits and 72 images per list; price history returns up to 100 points.
- Markets: us, gb, de, fr, ca, au and jp.
| HTTP | failure.code | Meaning |
|---|---|---|
| 200 | partial | Usable data with filter_not_applied, malformed_products_omitted, sizes_truncated, market_history_unavailable or size_labels_unavailable warnings. |
| 400 | invalid_request | Missing, duplicate, malformed or unsupported parameters, both or neither of slug and url, both size and size_id, a link outside stockx.com product pages, a page outside 1–25, price_min above price_max, or an unknown sort, gender or color. |
| 401 | unauthorized | Missing or invalid worker API key. |
| 404 | not_found | Unknown product, or a size the product does not have. |
| 429 | upstream_rate_limited | StockX rate limited the request. |
| 502 | upstream_challenged | StockX's edge refused the request or its challenge did not clear (status challenged). |
| 502 | unsupported_page | Malformed or mismatched source data, or StockX changed its web client queries. |
| 502 | response_too_large | A response exceeded 4 MiB. |
| 502 | request_limit | The upstream request budget was exhausted. |
| 502 | upstream_error | Network failure, GraphQL error or an unexpected upstream status after one retry. |
| 503 | busy | Both retrieval slots and the queue are occupied, or the wait for a slot expired. |
| 504 | timeout | The 45-second deadline elapsed. |