Puma API Scraper
Pricing
from $1.00 / 1,000 plp rows
Puma API Scraper
Scrapes PUMA.com product listing (category) and product detail data via the official mobile app GraphQL API.
Pricing
from $1.00 / 1,000 plp rows
Rating
0.0
(0)
Developer
R.L.
Maintained by CommunityActor stats
0
Bookmarked
6
Total users
2
Monthly active users
4 days ago
Last modified
Categories
Share
What does Puma API Scraper do?
Puma API Scraper extracts product data directly from PUMA.com's official GraphQL API — the same API the PUMA mobile app uses — giving you clean, structured category listing (PLP), keyword search, and product detail (PDP) data without rendering a single web page. Because it talks to the API instead of scraping HTML, it's fast, reliable, and returns fields (pricing, stock per size, badges, images, materials) that aren't always visible in the page markup.
Run it on the Apify platform to get API access, scheduling, webhooks, and integrations with Zapier, Make, Google Sheets, and 30+ other tools — no infrastructure to manage.
Why use Puma API Scraper?
- Price and availability monitoring — track PUMA prices, sale prices, and per-size stock status over time for competitor or assortment monitoring.
- Catalog enrichment — pull structured product attributes (materials, care instructions, size charts, badges) to enrich your own product database.
- Market research — analyze PUMA's category assortment, search rankings, new arrivals, and pricing strategy across countries and locales.
How to use Puma API Scraper
The Actor supports three scraping modes. Select which one(s) to run in the Scrape modes
field — a mode's input list (e.g. categoryUrls) is only read if that mode is selected, even
if it's filled in, so leftover values from a saved input never trigger an unwanted mode.
- Tick Category in
Scrape modes, then add one or more Category URLs — paste the full PUMA category page URL (e.g.https://us.puma.com/us/en/men/shoes) or just the path (/men/shoes); the locale segment is stripped automatically. - Tick Search, then add one or more Search queries (e.g.
"running shoes"), same as the in-app search bar. - Tick Product IDs, then add specific Product IDs to fetch individual products directly.
- Choose whether to fetch full PDP data for every product found via category/search (on by default).
- Click Start and download your results from the Dataset tab in JSON, CSV, Excel, or other formats.
Input
| Field | Type | Description |
|---|---|---|
scrapeModes | array of strings | Which mode(s) to run: category, search, productIds (default ["category"]) |
categoryUrls | array of strings | Used when category is selected. PLP category pages to crawl — full URL or bare path, e.g. ["https://us.puma.com/us/en/men/shoes"] |
searchQueries | array of strings | Used when search is selected. Keyword searches to run, e.g. ["running shoes"] |
productIds | array of strings | Used when productIds is selected. Specific master product IDs to fetch directly |
locale | string | Storefront locale, e.g. en-US, en-GB, de-DE, ja-JP (default en-US) |
fetchProductDetails | boolean | Also fetch full PDP data for every PLP/search result (default true) |
maxProductsPerCategory | integer | Cap products per category; 0 = unlimited |
maxProductsPerSearch | integer | Cap products per search query; 0 = unlimited |
See the full input schema on the Input tab.
Output
Each dataset item is either a lightweight plp listing record or a full pdp product record.
{"type": "pdp","id": "398846","name": "Speedcat OG Sneakers","price": 100,"brand": "Speedcat","category": { "id": "mens-shoes", "name": "Men's Shoes and Sneakers", "url": "/men/shoes" },"variations": [{"id": "398846_01","colorName": "PUMA Black-PUMA White","orderable": true,"productPrice": { "price": 100, "salePrice": 100 },"sizeGroups": [ { "label": "Mens", "sizes": [ { "label": "9", "orderable": true } ] } ]}]}
You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.
Data table
| Field | Description |
|---|---|
id / masterId | PUMA master product ID |
name | Product name |
price | Base price |
variations | Array of color variants, each with pricing, images, materials, and per-size stock (sizeGroups) |
category | Category ID, name, and URL |
productStory | Long description and care instructions |
Pricing
The current rates for each event are on the Actor's Pricing tab, which is generated from the live configuration — this page deliberately does not repeat them, so there is no second copy to fall out of date.
What you are charged for:
- Listing row — one row per product colourway. A style sold in three colours returns three rows, so a catalogue of 100 styles is more than 100 rows. Repeated rows are de-duplicated and not charged: Puma's own index sometimes returns the same colourway twice under different internal hit ids, and those repeats are dropped before billing.
- Product detail row — one row per distinct product, fetched once no matter how many
of its colourways appeared in the listing, and only when
fetchProductDetailsis on.
So the cheapest way to run this is with fetchProductDetails off, which skips the per-product
detail fetch entirely (see Tips below).
Tips or Advanced options
- Leave
fetchProductDetailsoff if you only need the PLP summary (variant colors, prices, ratings) — this roughly halves the number of API calls. - Use
maxProductsPerCategorywhile testing to keep runs small before scaling up.
Sneaker & streetwear resale toolkit
Part of the Sneaker & streetwear resale toolkit — resale-market pricing and product data across the major sneaker/streetwear marketplaces and brands:
- StockX API Scraper — Product listings, market data, and pricing from StockX.
- GOAT API Scraper — Scrapes GOAT.com product listings by search query or category.
- Supreme API Scraper — Supreme catalogue: categories, full product detail, every colour/size variant.
- Nike API Scraper — Scrape Nike.com listings and full product detail from api.nike.com.
Did you find this useful?
Rate this actor on Apify! Your feedback helps other users find it and helps us keep improving it.
FAQ, disclaimers, and support
This Actor is an independent tool and is not affiliated with or endorsed by PUMA. It's built for legitimate research, monitoring, and catalog-enrichment purposes — always ensure your use complies with PUMA's Terms of Service. Data availability and fields may change if PUMA updates its API. Found an issue or need custom fields? Use the Issues tab, or reach out for a custom scraping solution.