Hoe StockX & GOAT Resale Data te Scrapen voor Marktonderzoek
De officiële StockX API is gebouwd voor verkopers en beperkt tot 25.000 oproepen per dag. Voor marktonderzoek ga je naar de openbare pagina's — hier is hoe je prijs geschiedenis, maatverdelingen en hype signalen schoon kunt extraheren.
Sneaker resale is een echte markt met echte prijsontdekking, en StockX en GOAT zijn de twee grootste orderboeken. Als je die markt wilt bestuderen — prijs geschiedenis volgen, maatverdelingen meten, zien welke releases opwarmen — is de instinctieve reactie om de officiële StockX API te gebruiken. Dat is meestal het verkeerde hulpmiddel. De StockX developer API is gebouwd voor verkopers: het authenticeert met OAuth 2.0 achter een goedkeuringspoort, bestaat om lijsten en bestellingen te plaatsen en beheren, en is beperkt tot 25.000 verzoeken per 24 uur met één verzoek per seconde, met een harde 429 zodra je het overschrijdt. Het geeft een verkoper hun eigen inventaris, niet een onderzoeker de hele markt. Voor marktonderzoek leeft de data op de openbare productpagina's. Deze gids laat zien hoe je het schoon kunt verzamelen.
Waarom de officiële StockX API het verkeerde hulpmiddel is voor onderzoek
Het ontwikkelaarsportaal is expliciet over zijn doel: catalogus zoeken, lijstbeheer en orderbeheer. Zelfs verkopers op het platform melden lange wachttijden en afwijzingen bij het verkrijgen van API-toegang in de eerste plaats. En de snelheidslimiet — 25.000 oproepen per dag, batchbewerkingen beperkt tot 500 items elke 5 minuten tot 50.000 items dagelijks — is genereus voor het runnen van je eigen winkel maar klein voor het onderzoeken van duizenden stijlen over meerdere maten en beide marktplaatsen. Cruciaal is dat het je geen historische marktaanvoer geeft: de cijfers die een onderzoeker wil — jaarlijkse hoogte- en dieptepunten, volatiliteit, prijs premie boven retail, verkoop snelheid per maat — worden berekend en weergegeven op de openbare pagina's, niet blootgesteld als een bulk onderzoeks eindpunt.
Dus de praktische splitsing is eenvoudig. Gebruik de officiële API als je een verkoper bent die je eigen vragen automatiseert. Gebruik de openbare pagina's, verantwoord verzameld, als je prijsintelligentie of trendonderzoek doet. Dezelfde logica geldt voor resale en retail — we lopen de algemene versie in prijs monitoring op schaal.
Er is ook een dekkingsprobleem dat de API niet kan oplossen. Resale prijzen zijn geo-gevoelig: hetzelfde paar heeft een andere premie in een Amerikaanse markt dan in een Europese of Japanse, omdat aanbod, belastingen en vraag per regio verschillen. Een onderzoeker die de wereldwijde markt meet, moet elk product uit meerdere landen lezen, wat de verkoper API niet is ontworpen om te doen, maar een roterende residentiële pool met land targeting standaard aanpakt. Die geografische dimensie is vaak waar de interessante arbitrage zich verbergt.
Welke data een StockX of GOAT productpagina bevat
Elke productpagina draagt een verrassend rijke payload zodra je de ingesloten JSON die het hydrateert, parseert. Per stijl kun je een stabiele SKU en UPC lezen, en per maat een hele orderboek sectie:
- Laagste vraag en hoogste bod per maat — de live bid/ask spread die je echte liquiditeit vertelt.
- Totaal aantal vragen per maat — diepte van het aanbod; een maat met 200+ vragen is niet schaars, een met 3 wel.
- Verkoop aantallen over 15, 30 en 60-dagen vensters — snelheid, wat het dichtst in de buurt komt van een vraag signaal.
- Jaarlijkse statistieken — hoog, laag, gemiddelde prijs, verkoop aantal en een volatiliteitscijfer per stijl.
- Prijs premie boven retail — een gehypte release kan ~25% of meer boven zijn retailprijs zitten; een mislukking zit eronder.
- Wekelijkse order aantal — een botte maar eerlijke populariteitsrangorde in de catalogus.

De pagina's ophalen zonder geblokkeerd te worden
StockX en GOAT zitten achter serieuze botbeheer, en een datacenter IP die product JSON herhaaldelijk raakt, wordt binnen een handvol verzoeken uitgedaagd. Twee dingen houden de verzameling in leven: residentiële exit IP's die eruitzien als gewone shoppers, en per-verzoek rotatie zodat geen enkel adres een verdacht patroon opbouwt. Via residentiële proxies — 90M+ IP's in meer dan 200 landen — komt elk verzoek van een ander huisadres:
import requests, json
proxies = {
"http": "http://USER:PASS@gate.quantumproxies.io:PORT",
"https": "http://USER:PASS@gate.quantumproxies.io:PORT",
}
headers = {"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7)"}
url = "https://stockx.com/air-jordan-1-retro-high-og-example"
html = requests.get(url, proxies=proxies, headers=headers, timeout=(5, 30)).text
# Product data hydrates from an embedded JSON blob, not the visible HTML.
start = html.find('{"props":')
blob = json.loads(html[start:html.rindex("}", 0, html.find("</script>", start)) + 1])
# Walk blob -> product -> market to reach asks, bids and statistics.
Wanneer de pagina een bijna lege shell in plaats van de JSON retourneert, is het een client-side-rendered of challenge versie geserveerd — een symptoom dat we uiteenzetten in lege pagina, ontbrekende data. Dat is het punt om op te schalen van ruwe proxies naar een beheerde fetch. De Scraper API rendert JavaScript op aanvraag en retourneert schone JSON of markdown, zodat je zelf geen headless browsers en parsers hoeft te onderhouden:
curl -G "https://api.quantumproxies.io/scrape" \
--data-urlencode "url=https://stockx.com/air-jordan-1-retro-high-og-example" \
--data-urlencode "render=true" \
--data-urlencode "country=us" \
-H "Authorization: Bearer YOUR_API_KEY"
Ruwe vragen omzetten in onderzoekssignalen
Zodra de varianten zijn geparsed, is de analyse kleine rekenkunde die een muur van cijfers omzet in beslissingen. De maatverdeling — de kloof tussen de goedkoopste en duurste maat — onthult welke maten schaars zijn, en de premie boven retail scheidt echte hype van marketing lawaai:
def size_spread(variants):
asks = [v["lowest_ask"] for v in variants if v.get("lowest_ask")]
return {
"cheapest_size": min(asks),
"priciest_size": max(asks),
"spread_pct": round((max(asks) - min(asks)) / min(asks) * 100, 1),
}
def hype_score(stats, retail):
premium = (stats["annual_average_price"] - retail) / retail
return round(premium * 100, 1) # % over retail; negative = a dud
Voer dat uit over een watchlist op een dagelijks schema en je hebt een resale index: stijgende snelheid plus een verbredende premie is een vroeg hitte signaal, terwijl dalende verkopen en een krimpende premie een vervaging markeren. Het cross-refereren van StockX tegen GOAT voor dezelfde SKU onthult arbitrage en bevestigt welk platform prijsontdekking leidt voor een bepaalde categorie. Als je watchlist in duizenden stijlen loopt, beheer je rekening met de tactieken in proxy bandbreedtekosten verlagen — je hebt zelden afbeeldingen nodig, alleen de JSON.
Een opmerking over gedrag: dit is marktonderzoek op openbare, niet-persoonlijke prijsgegevens, wat het laag-risico einde van scrapen is, maar je moet nog steeds de gebruiksvoorwaarden van elk platform respecteren en jezelf beleefd beperken. Dit is een richtlijn, geen juridisch advies.

Veelgestelde vragen
Heeft StockX een officiële API?
Ja, maar het is een verkoperstool, geen marktdataservice. De StockX developer API authenticeert met OAuth 2.0 achter een goedkeuringsproces en dekt catalogus zoeken, lijstbeheer en orderbeheer. Het is beperkt tot 25.000 verzoeken per 24 uur met één verzoek per seconde, en retourneert je eigen verkoopactiviteit in plaats van een bulk historische feed van de bredere markt.
Is er een GOAT API voor sneaker prijzen?
GOAT biedt geen openbare prijs API voor onderzoekers. Derde partij aggregators en open-source projecten halen GOAT data door het scrapen van zijn openbare pagina's, dezelfde benadering die je zou nemen voor StockX. Omdat beide platforms sterke botbeheer gebruiken, is betrouwbare verzameling afhankelijk van residentiële IP's en per-verzoek rotatie in plaats van een datacenter eindpunt.
Welke sneaker data kan ik krijgen zonder de officiële API?
De openbare productpagina's onthullen de laagste vraag en hoogste bod per maat, totaal aantal vragen, verkoop aantallen over 15, 30 en 60-dagen vensters, jaarlijkse hoog/laag/gemiddelde prijzen, een volatiliteitscijfer, wekelijkse order snelheid en stabiele SKU/UPC identificatoren. Dat is genoeg om prijs geschiedenis, maatverdeling analyse en een hype index op te bouwen zonder ooit de verkoper API aan te raken.
Hoe voorkom ik dat ik geblokkeerd word bij het scrapen van StockX?
Gebruik residentiële proxies zodat verzoeken eruitzien als gewone shoppers, roteer het exit IP bij elk verzoek, stel een realistische User-Agent in en houd het tempo rustig. Wanneer pagina's een lege shell in plaats van de ingesloten JSON retourneren, schakel dan over naar een rendering scraper API die de JavaScript van de pagina uitvoert en gestructureerde data retourneert, in plaats van zelf de uitdaging aan te gaan.
De resale markt beloont wie het het beste meet. De officiële API zal je die meting niet geven — het was er nooit voor bedoeld. Openbare pagina's, verzameld op schone residentiële IP's en gereduceerd tot snelheid en premie, veranderen een chaotisch orderboek in een signaal waarop je onderzoeksbeslissingen kunt baseren.