Live-commerce and category trend tracking
Usa los endpoints de Whatnot para convertir live-commerce and category trend tracking en solicitudes API repetibles con inputs documentados y respuestas JSON.
Turn Whatnot's public live-shopping data into structured JSON — browse live shows by category, the full category list, and a specific live show's current shop feed (items up for sale, pricing), as normalized JSON. Credential-free.
Browse Whatnot live shopping shows by category and get a live show's current shop feed as structured JSON.
Familias de endpoints
4
Parámetros documentados
8
Ejemplos
4
Snapshot en vivo del catálogo
Endpoints activos
4
Métodos
GET
Parámetros obligatorios
7
Referencias de esquema
4
{
"platform": "Whatnot",
"endpoint": "whatnot-browse",
"method": "GET",
"path": "/whatnot/browse",
"auth": "apiKey"
}Casos de uso
Browse Whatnot live shopping shows by category and get a live show's current shop feed as structured JSON.
Usa los endpoints de Whatnot para convertir live-commerce and category trend tracking en solicitudes API repetibles con inputs documentados y respuestas JSON.
Usa los endpoints de Whatnot para convertir live show and seller monitoring en solicitudes API repetibles con inputs documentados y respuestas JSON.
Usa los endpoints de Whatnot para convertir auction pricing research en solicitudes API repetibles con inputs documentados y respuestas JSON.
Ejecución gestionada
Cada cifra de abajo se lee directamente del catálogo de endpoints en vivo de Whatnot — 4 endpoints, 8 parámetros de solicitud documentados y 4 esquemas de respuesta publicados — el mismo catálogo contra el que corren Docs y Playground.
4 documented Whatnot endpoints, grouped into 4 request families — Browse, Categories and Live, plus 1 more.
8 request parameters are documented across those Whatnot endpoints, 7 of them required — the full input contract is public before you write any integration code.
4 of the 4 Whatnot endpoints ship a recorded example response, and 4 carry a documented response schema — you can code against the real JSON before the first request.
Whatnot endpoints document their error responses (400, 404, 500 and 503) alongside the success schema, so a block, a rate limit, or a missing record comes back as a typed error rather than silently empty data.
4 hosted MCP tools back the Whatnot endpoints, so an agent can call the same routes with the same parameters and the same JSON contract, with no custom glue.
Mapa de cobertura
Estas tarjetas se generan a partir del catálogo de endpoints activo, así que la landing page refleja la misma superficie de API que usan Docs y Playground.
/whatnot/browse
/whatnot/categories
/whatnot/live/{id}
/whatnot/seller/{username}
Catálogo de endpoints
/whatnot/browseReturns the live and upcoming shows currently listed under a Whatnot category: seller, title, status, start time, thumbnail, and tags. Public data sourced from Whatnot's own GraphQL API.
Notas de la respuesta
- `id` is a show's live-stream id — pass it directly as the `id` path parameter to [`/whatnot/live/{id}`](whatnot-live.md) for that show's current shop feed. - `status` reflects Whatnot's own show state: `PLAYING` (currently live) or `CREATED` (scheduled, not yet started — a show that hasn't started yet still appears in the list with a future `start_time_ms` and a `CREATED` status). An ended-show state almost certainly also exists but was not observed in live testing — ended shows drop out of Whatnot's own Browse/ category feeds essentially immediately. - An unrecognized `category` returns `404`. - A missing `category` returns `400` before any upstream request is made. Example response: ```json { "code": 200, "msg": "OK", "data": { "category": "trading_card_games", "shows": [ { "id": "6ddb7fd2-43bb-44e0-8ee8-6656e82fa26a", "url": "https://www.whatnot.com/live/6ddb7fd2-43bb-44e0-8ee8-6656e82fa26a", "title": "$100k Late Night Slab Show", "seller_username": "legacy_auction_house", "status": "PLAYING", "start_time_ms": 1785996739803, "thumbnail_url": "https://images.whatnot.com/...", "tags": ["Sudden Death", "Graded Cards", "Pokémon"] } ] } } ```
Herramienta MCP whatnot_browse
/whatnot/live/{id}Returns a Whatnot live show's current shop feed: every product, auction, and giveaway listing currently visible in the show, each with its seller's rating. Public data sourced from Whatnot's own GraphQL API.
Notas de la respuesta
- `transaction_type` distinguishes how a listing is sold: `AUCTION` (bid-based, `current_bid_cents`/`current_bid_count` populated once bidding starts), `GIVEAWAY`, or `BUY_IT_NOW`. - `status` reflects the listing's own lifecycle, not the show's overall live/ended state: `active`, `created`, or `running`. A terminal "sold"/"sold out"-style value almost certainly also exists but was not observed in live testing. - `seller.rating`/`seller.review_count` are scoped to the listing's seller, not the requester — there is no separate seller-profile lookup this endpoint calls. - An unknown or ended show id returns `200` with `"products": []`, not an error — Whatnot's own backend doesn't distinguish "no such show" from "a real show with nothing currently listed." - A missing `id` returns `400` before any upstream request is made. Example response: ```json { "code": 200, "msg": "OK", "data": { "id": "6ddb7fd2-43bb-44e0-8ee8-6656e82fa26a", "url": "https://www.whatnot.com/live/6ddb7fd2-43bb-44e0-8ee8-6656e82fa26a", "products": [ { "id": "TGlzdGluZ05vZGU6MjEzMTA5NzI1NA==", "title": "slab", "description": "show live", "price_cents": 1000, "currency": "USD", "status": "running", "transaction_type": "AUCTION", "quantity": 219, "seller": { "username": "legacy_auction_house", "rating": 4.9, "review_count": 128914 } } ] } } ```
Herramienta MCP whatnot_live
/whatnot/seller/{username}Returns public seller profile details and one page of the seller's livestreams. Use next_cursor as cursor to continue while has_more is true. The endpoint does not include shop products.
Herramienta MCP whatnot_seller
/whatnot/categoriesReturns Whatnot's full top-level category list (e.g. "Trading Card Games", "Sneakers & Streetwear"). Each entry's slug is usable directly with /whatnot/browse's category filter. Public data sourced from Whatnot's own GraphQL API.
Notas de la respuesta
- Each entry's `slug` is the value to pass as [`/whatnot/browse`](whatnot-browse.md)'s `category` query parameter. - This list changes rarely; results are fetched live on every call, not cached client-side. Example response: ```json { "code": 200, "msg": "OK", "data": { "categories": [ { "id": "Q2F0ZWdvcnlOb2RlOjE0OQ==", "name": "Trading Card Games", "slug": "trading_card_games" }, { "id": "Q2F0ZWdvcnlOb2RlOjM=", "name": "Sports Cards", "slug": "sports_cards" }, { "id": "Q2F0ZWdvcnlOb2RlOjY1Ng==", "name": "Women's Fashion", "slug": "womens_fashion" } ] } } ```
Herramienta MCP whatnot_categories
APIs relacionadas
Marketplaces & Retail
Collect marketplace product signals from Amazon without building brittle storefront scrapers.
Marketplaces & Retail
Build resale, pricing, and marketplace workflows from structured eBay data.
Marketplaces & Retail
Turn public Shop.app product and merchant pages into structured JSON for e-commerce product intelligence, price research, shop monitoring, and marketplace discovery workflows.
Cómo hacer scraping de Whatnot
Crawlora's Whatnot endpoints return category browsing, a live show's current shop feed, and public seller profile data with public livestream cards as normalized JSON using a Crawlora API key. The new /whatnot/seller/{username} route is a profile-and-show archive, not a shop product listing or seller search: it returns at most 15 shows per call and uses an opaque cursor copied unchanged from next_cursor while has_more is true. Preserve total_count as a changing source count, and do not assume that a profile's show list includes every ended stream.
/whatnot/categories takes no parameters and returns all 37 categories, each with an id, a display name and a slug. You need the slug, not the name — it is underscore-separated, so Sports Cards is sports_cards.
Pass that slug to /whatnot/browse — the display name or a hyphenated variant returns a 404, so sports_cards works while "Sports Cards" and sports-cards both fail. A browse returns around 24 shows, each with id, url, title, seller_username, status, start_time_ms and thumbnail.
status tells you whether a show is live now or scheduled, and start_time_ms is a Unix timestamp in milliseconds — divide by 1,000 before feeding it to a seconds-based date function.
Pass a show id from /whatnot/browse to /whatnot/live/{id} for that show's current shop feed — items up for sale and pricing.
Pass a Whatnot username to /whatnot/seller/{username}. The response combines public profile fields with at most 15 public livestream cards; follow next_cursor unchanged only while has_more is true. It does not return product listings or add sorting/filter parameters.
Re-run browse or a specific show on a schedule to track category activity and item pricing over time. Because a show's feed changes while it runs, sampling interval matters more here than on a static catalog.
Preguntas frecuentes
Fetch /whatnot/categories first, then pass a category's slug to /whatnot/browse. The response is a normalized list of current live shows with seller, status, start time and thumbnail — no Whatnot account required.
Almost certainly because you passed the category's display name rather than its slug. The slug is underscore-separated: sports_cards succeeds, while both "Sports Cards" and sports-cards return a 404. Every valid slug is listed in /whatnot/categories, so read them from there rather than deriving them from the names.
Yes — /whatnot/live/{id} returns a live show's current shop feed, including items and pricing, as structured JSON.
No. /whatnot/seller/{username} returns public profile fields and one page of public livestreams, up to 15 per call. It has no product-search, filtering, or sorting controls; cursor paging uses the exact next_cursor from the previous response.
No Whatnot login or auth token is required from the caller — only your Crawlora API key.