List categories and tags
List the category tree (with subcategories) and the browse tags with live viewer counts; sort=viewers returns the tags in trending order.
/v1/whatnot/categoriesx-api-keyHeaders
Get your API keyYour ScrapeAtlas customer key. Create one on /account/ and set SCRAPEATLAS_API_KEY.
source (default) keeps the site's order; viewers orders tags by live viewer count (the trending view).
one of: source, viewers · default: "source"
Random operational correlation ID.
Upstream GraphQL requests, response bytes and elapsed milliseconds.
Always included.
≥ 0
Always included.
≥ 0
Always included.
≥ 0
True when usable public data was retrieved.
success, partial, failed or challenged. Inspect coverage even for HTTP 200.
one of: success, partial
Public www.whatnot.com URL the data belongs to.
absolute HTTPS URL
UTC retrieval timestamp.
Complete means this bounded page had no known omissions; warnings name each omission.
Always public_api (Whatnot's public web GraphQL endpoint).
False when any warning is present.
Machine-readable omission codes such as sections_skipped or record_limit.
Top-level categories with subcategories.
up to 500 items
Category node id.
Category slug.
Display label.
Parent category id.
Category image.
Always included.
Always included.
Child categories (id, type, label).
up to 200 items
Always included.
Always included.
Always included.
Livestream tags ordered as the site lists them.
up to 500 items
Tag node id.
Tag slug used in /tag/{name} URLs.
Display label.
Site deeplink.
Current viewers across the tag.
Tag image.
Always included.
Always included.
No fields match.
HTTP 200 returns the success variant. Check status: partial means usable data with warnings, and failed or challenged requests carry a failure object described in Errors & responses.
| HTTP | failure.code | Meaning |
|---|---|---|
| 400 | invalid_request | Missing, duplicate, unsupported or invalid parameters, or more than one selector. |
| 401 | unauthorized | Missing or invalid service key. |
| 404 | not_found | Unknown user, livestream, listing or tag. |
| 429 | upstream_rate_limited | Whatnot rate limited the request; no automatic retry. |
| 502 | upstream_challenged | Cloudflare challenge or HTTP 403/503 from Whatnot. |
| 502 | unsupported_page unsafe_redirect response_too_large payload_too_complex request_limit upstream_error | Bounded retrieval failed or the GraphQL response no longer matches the expected schema. |
| 503 | busy | All worker slots occupied. |
| 504 | timeout | Deadline exceeded. |
| 200 | partial | Coverage warnings such as sections_skipped or record_limit. |