Whatnot Seller Scraper avatar

Whatnot Seller Scraper

Pricing

from $0.80 / 1,000 listings

Go to Apify Store
Whatnot Seller Scraper

Whatnot Seller Scraper

Collect public Whatnot listings, live shows, seller profiles, and category insights by keyword, URL, seller username, or category. Get source fields such as prices, ratings, viewer counts, reviews, and source URLs in structured dataset rows.

Pricing

from $0.80 / 1,000 listings

Rating

0.0

(0)

Developer

Maxime Dupré

Maxime Dupré

Maintained by Community

Actor stats

0

Bookmarked

5

Total users

2

Monthly active users

11 days ago

Last modified

Share

🛍️ Explore Whatnot marketplace data

For collectors, resellers, marketplace researchers, and developers, this Actor collects public Whatnot listings, live shows, seller profiles, and category insights. It returns structured prices, sale formats, viewer counts, seller signals, reviews, and source URLs, so you can compare marketplace activity without copying pages by hand.

Use it to:

  • Compare public listing titles, prices, sellers, and source URLs with Whatnot Listings.
  • Check live show titles, statuses, start times, viewer counts, tags, and sellers with Whatnot Live Shows.
  • Compare public seller profiles, follower counts, sold counts, ratings, and live status with Whatnot Sellers.
  • Collect public buyer ratings, review text, dates, and reviewer identities with Whatnot Reviews.
  • Rank public categories by viewer and livestream counts with Whatnot Category Insights.
  • Find public trading card listings and related sellers with Whatnot Trading Cards.
  • Find public sneaker listings and related sellers with Whatnot Sneakers.

📦 Public listings, shows, sellers, and categories

The default dataset has four row shapes. The recordType field tells you whether a row is a listing, liveShow, sellerProfile, or categoryInsight. Saved rows include a public sourceUrl and a retrievedAt time. Some fields appear only when the public source provides them.

If the same source item appears again through another keyword, URL, username, ID, or similar submitted value, only the first eligible occurrence is saved. The row reflects that first saved match and does not combine later matches.

Choose a resultType and a findBy method. You can search by keywords or a public search URL, read supported public direct URLs, find seller profiles by username or source seller ID, or work with a category. Mixed search uses the product, live-show, and seller search surfaces. Fields that do not match your choices are ignored, except keywords can also search seller shops when seller profiles use usernames or direct URLs.

Use one configured search in each run. Seller profiles can include public Whatnot reviews and historical or scheduled shows when you turn on those options. Listings and mixed search can use sale, price, live-only, order, and change-monitoring options. Category insights can use source-supported filters and ordering.

This Actor reads public Whatnot data and does not require a customer-supplied Whatnot login or API key. Public pages can change, disappear, or show fewer fields than expected.

⚙️ Input

Input fields

FieldTypeWhat it does
resultTypestringChooses listings, liveShows, sellerProfiles, categoryInsights, or mixedSearch.
findBystringChooses keywords, a search URL, a direct URL, a seller username, or a category. Use the method that matches the result type.
keywordsarray of stringsSupplies one or more search keywords. For seller profiles found by username or direct URL, they form one shop query per seller. Leave them empty to collect all available shop listings.
searchUrlsarray of objectsSupplies one or more public Whatnot search URLs. Each URL uses the selected result type and search surface.
searchUrls[].urlstringGives one public Whatnot search URL.
directUrlsarray of objectsSupplies supported public listing, seller, live-show, or category URLs.
directUrls[].urlstringGives one supported public Whatnot page URL.
sellerUsernamesarray of stringsSupplies public Whatnot seller usernames or source seller IDs for seller profiles. Both can be used in the same list.
includeReviewsbooleanFor seller profiles, requests public buyer reviews with ratings, text, dates, and reviewer identity. Source-provided review totals are included when available.
includeShowHistorybooleanFor seller profiles, requests public historical or scheduled shows when available.
categorystringSupplies one public Whatnot category name or slug for category insights or category-based listings, live shows, or seller results.
categoryFiltersarray of stringsFor category insights, supplies filter values supported by the public Whatnot category page.
categoryOrderstringFor category insights, chooses a source-supported order such as viewer count, livestream count, or name.
leaderboardPeriodstringFor category insights, chooses the current day, current week, or live leaderboard when available.
saleFormatsarray of stringsFor listings and mixed search, keeps only submitted sale formats supported by Whatnot, such as auction or buy now.
minPricenumberFor listings and mixed search, keeps listings at or above this price.
maxPricenumberFor listings and mixed search, keeps listings at or below this price.
liveOnlybooleanFor listings and mixed search, keeps only listings marked live by the source.
listingOrderstringFor listings and mixed search, chooses a source-supported listing order.
maxItemsintegerCaps the number of records. Leave it empty to return all available results until the source is exhausted.
monitorChangesbooleanFor listings and mixed search, compares new public listing observations with prior observations for the same submitted target.

Example input

This example is copied from the public input of a successful current-beta default-input run:

{
"resultType": "listings",
"findBy": "keywords",
"keywords": [
"trading cards"
],
"includeReviews": false,
"includeShowHistory": false,
"liveOnly": false,
"maxItems": 100,
"monitorChanges": false
}

🧾 Output

Run output

FieldTypeWhat it does
datasetstringOpens the accepted public Whatnot records in the default dataset.

Some values can be absent when Whatnot does not provide them. The tables below list every field in each public dataset shape. Dotted paths show nested objects and array elements.

Listing record fields

FieldTypeWhat it does
recordTypestringIdentifies this row as a listing.
listingIdstringGives the stable Whatnot listing identifier.
titlestringGives the public listing title.
descriptionstringGives the public listing description.
conditionstringGives the condition shown by the seller.
priceobjectListing asking price and separate catalog prices when supplied by Whatnot.
price.amountnumberGives the numeric listing price.
price.currencystringGives the currency code for the listing price.
price.catalogobjectLinked catalog product and its price range. These are separate from the listing asking price.
price.catalog.productIdstringWhatnot catalog product ID for joining or checking this product.
price.catalog.namestringCatalog product name supplied by Whatnot.
price.catalog.minobjectLowest price in the catalog range supplied by Whatnot.
price.catalog.min.amountnumberMinimum catalog price in currency units.
price.catalog.min.currencystringSource currency code for the minimum catalog price.
price.catalog.maxobjectHighest price in the catalog range supplied by Whatnot.
price.catalog.max.amountnumberMaximum catalog price in currency units.
price.catalog.max.currencystringSource currency code for the maximum catalog price.
quantityintegerGives the quantity shown by the source.
availabilitystringGives the availability state shown by the source.
saleFormatstringGives the sale format shown by the source, such as auction or buy now.
isLivebooleanSays whether the source marks the listing as live.
createdAtstringTime when the listing was created, as reported by Whatnot.
updatedAtstringTime when the listing was last updated, as reported by Whatnot.
offersAvailablebooleanWhether Whatnot allows offers on this listing.
imagesarray of stringsLists public image URLs for the listing.
images[]stringGives one listing image URL.
sellerobjectGroups seller details shown with the listing.
seller.usernamestringGives the seller's public Whatnot username.
seller.displayNamestringGives the seller's public display name.
seller.profileUrlstringLinks to the seller's public profile.
categoryobjectGroups category details shown with the listing.
category.namestringGives the public category name.
category.slugstringGives the public category slug when supplied.
category.urlstringLinks to the public category page.
sourceUrlstring (URI)Links to the public Whatnot source for the listing.
retrievedAtstring (date-time)Gives the time when the Actor retrieved the listing.

Listing row example

This unshortened row is copied from a successful current-beta run:

{
"recordType": "listing",
"title": "CSV5C: Dark Crystal Blaze Booster",
"sourceUrl": "https://www.whatnot.com/search?query=Dark+Crystal+Trading+Cards",
"retrievedAt": "2026-10-06T02:14:45.406Z",
"listingId": "TGlzdGluZ05vZGU6MjIyNDg5MTY0NQ==",
"createdAt": "2026-08-28T08:00:46.000Z",
"updatedAt": "2026-09-30T20:00:39.000Z",
"offersAvailable": true,
"description": "Slim-Display: 15 × Booster, jeweils 5 Karten (mindestens 1 Karte pro Booster ist Rare oder höher)",
"price": {
"amount": 3,
"currency": "EUR",
"catalog": {
"productId": "UHJvZHVjdE5vZGU6NTg4MDE5MzAw",
"name": "CSV5C: Dark Crystal Blaze Booster",
"min": {
"amount": 3,
"currency": "EUR"
},
"max": {
"amount": 3,
"currency": "EUR"
}
}
},
"quantity": 6,
"availability": "ACTIVE",
"saleFormat": "BUY_IT_NOW",
"isLive": false,
"images": [
"https://images.whatnot.com/eyJidWNrZXQiOiAid2hhdG5vdC1pbWFnZXMiLCAia2V5IjogImxpc3RpbmdzLzIyMjQ4OTE2NDUtMC1kZDMzOWFkZS1kMmMwLTRhZjUtYWFhZC02ZTNiYjY1MjEzNGEiLCAiZWRpdHMiOiB7InJlc2l6ZSI6IHsid2lkdGgiOiBudWxsLCAiaGVpZ2h0IjogbnVsbCwgImZpdCI6ICJjb250YWluIiwgImJhY2tncm91bmQiOiB7InIiOiAyNTUsICJnIjogMjU1LCAiYiI6IDI1NSwgImFscGhhIjogMX19fX0=?signature=8169ee98bf44faec1ae96044abac39b52713a777d75ed51ffd32bb58158a7983"
],
"seller": {
"username": "ollis_tcg_kartenpakete",
"displayName": "Oliver Zinnitz",
"profileUrl": "https://www.whatnot.com/user/ollis_tcg_kartenpakete"
},
"category": {
"name": "Trading Card Games",
"slug": "trading_card_games",
"url": "https://www.whatnot.com/tag/trading_card_games"
}
}

Live show record fields

FieldTypeWhat it does
recordTypestringIdentifies this row as a live show.
showIdstringGives the stable Whatnot show identifier.
titlestringGives the public show title.
statusstringGives the show status shown by the source, such as live or scheduled.
startTimestring (date-time)Gives the public show start time.
currentBidnumberHighest bid amount in the show's current auction snapshot, in the stated currency. This is not a confirmed sale price.
currencystringCurrency reported for the highest bid in the show's current auction snapshot.
bidCountintegerNumber of bids reported for the show's current auction snapshot.
viewerCountintegerGives the viewer count shown by the source.
watchlistCountintegerNumber of users who saved the show to their watchlist, as reported by Whatnot.
thumbnailUrlstring (URI)Links to the public show thumbnail.
tagsarray of stringsLists public tags shown for the show.
tags[]stringGives one show tag.
categoryobjectGroups category details shown for the show.
category.namestringGives the public category name.
category.slugstringGives the public category slug when supplied.
category.urlstringLinks to the public category page.
sellerobjectGroups seller details shown for the show.
seller.usernamestringGives the seller's public Whatnot username.
seller.displayNamestringGives the seller's public display name.
seller.profileUrlstringLinks to the seller's public profile.
sourceUrlstring (URI)Links to the public Whatnot source for the show.
retrievedAtstring (date-time)Gives the time when the Actor retrieved the show.

Live show row example

This unshortened row is copied from a successful current-beta run:

{
"recordType": "liveShow",
"title": "✨FREE 30TH PACKS✨ Rapid Fire Singles & Packs $1 Starts w/Zachary",
"status": "PLAYING",
"sourceUrl": "https://www.whatnot.com/live/01949d38-405e-4c5e-b6aa-0c2deb4dc957",
"retrievedAt": "2026-10-06T02:13:00.072Z",
"showId": "01949d38-405e-4c5e-b6aa-0c2deb4dc957",
"startTime": "2026-10-06T01:00:19.620Z",
"viewerCount": 254,
"thumbnailUrl": "https://images.whatnot.com/eyJidWNrZXQiOiAid2hhdG5vdC1pbWFnZXMiLCAia2V5IjogImxpdmVzdHJlYW1fdGh1bWJuYWlscy85ZWU0NzE2Yi0zMDUzLTQ0ODktYWRhOC0yNDkyNmJlODAyYTMuanBlZyIsICJlZGl0cyI6IHsicmVzaXplIjogeyJ3aWR0aCI6IDEyMDAsICJoZWlnaHQiOiBudWxsLCAiZml0IjogImNvbnRhaW4iLCAiYmFja2dyb3VuZCI6IHsiciI6IDI1NSwgImciOiAyNTUsICJiIjogMjU1LCAiYWxwaGEiOiAxfX19LCAib3V0cHV0Rm9ybWF0IjogImpwZyJ9?signature=dda6541849e845695bade802cc2e338f7325f867365b90d137cc248f1405ea24",
"tags": [
"pokemon",
"one_dollar_starts",
"sudden_death",
"pokemon_singles_2025"
],
"category": {
"name": "Pokémon Cards"
},
"seller": {
"username": "immaculate",
"profileUrl": "https://www.whatnot.com/user/immaculate"
},
"watchlistCount": 63,
"currentBid": 1,
"currency": "USD",
"bidCount": 1
}

Seller profile record fields

FieldTypeWhat it does
recordTypestringIdentifies this row as a seller profile.
sellerIdstringGives the stable Whatnot seller identifier.
usernamestringGives the seller's public Whatnot username.
displayNamestringGives the seller's public display name.
biographystringPublic bio shown on the seller profile.
followingCountintegerNumber of accounts the seller follows, as shown by Whatnot.
profileImageUrlstringPublic profile image URL for the seller.
followerCountintegerGives the follower count shown by the source.
soldCountintegerGives the sold-item count shown by the source.
ratingnumberGives the seller rating shown by the source.
reviewCountintegerGives the public buyer review count shown for the seller.
isVerifiedbooleanSays whether the source marks the seller as verified.
isPremierShopbooleanWhether Whatnot marks the seller as a premier shop.
isLivebooleanSays whether the source marks the seller as live.
shippingPerformancestringGives shipping performance information shown on the profile.
reviewsobjectPublic buyer review rows and their written-review rating distribution.
reviews.itemsarray of objectsPublic buyer reviews shown for the seller.
reviews.items[].reviewIdstringGives the stable review identifier.
reviews.items[].ratingnumber or objectReview star rating, with source feedback when available.
reviews.items[].rating.averagenumberGives the review's average star rating when supplied by the source.
reviews.items[].rating.overallobjectOverall rating and question label supplied by Whatnot.
reviews.items[].rating.overall.valuenumberStar rating supplied by Whatnot for this feedback.
reviews.items[].rating.overall.labelstringQuestion label supplied by Whatnot for this feedback.
reviews.items[].rating.shippingobjectShipping rating and question label supplied by Whatnot.
reviews.items[].rating.shipping.valuenumberStar rating supplied by Whatnot for this feedback.
reviews.items[].rating.shipping.labelstringQuestion label supplied by Whatnot for this feedback.
reviews.items[].rating.packagingobjectPackaging rating and question label supplied by Whatnot.
reviews.items[].rating.packaging.valuenumberStar rating supplied by Whatnot for this feedback.
reviews.items[].rating.packaging.labelstringQuestion label supplied by Whatnot for this feedback.
reviews.items[].rating.accuracyobjectAccuracy rating and question label supplied by Whatnot.
reviews.items[].rating.accuracy.valuenumberStar rating supplied by Whatnot for this feedback.
reviews.items[].rating.accuracy.labelstringQuestion label supplied by Whatnot for this feedback.
reviews.items[].textstring or objectPublic buyer review text and an available seller reply.
reviews.items[].text.buyerstringPublic buyer review text supplied by Whatnot.
reviews.items[].text.sellerReplystringPublic seller reply to this review supplied by Whatnot.
reviews.items[].reviewedAtstring (date-time)Gives the review date and time shown by the source.
reviews.items[].reviewerobjectGroups public reviewer identity details.
reviews.items[].reviewer.usernamestringGives the reviewer's public Whatnot username.
reviews.items[].reviewer.displayNamestringGives the reviewer's public display name.
reviews.items[].reviewer.profileUrlstring (URI)Links to the reviewer's public profile.
reviews.distributionobjectStar ratings for the accessible public written reviews, with the source total kept separate.
reviews.distribution.cohortstringThe group of reviews used for this distribution.
reviews.distribution.reviewCountintegerNumber of public written reviews in items.
reviews.distribution.sourceReportedReviewCountintegerReview total reported by Whatnot. It may include reviews outside the written-review group.
reviews.distribution.binsarray of objectsCounts and shares for each star rating in the written-review group.
reviews.distribution.bins[].ratingintegerStar rating for this group of written reviews.
reviews.distribution.bins[].countintegerNumber of reviews with this star rating in items.
reviews.distribution.bins[].sharenumberCount divided by the accessible review count, from 0 to 1. Zero when there are no written reviews.
shopListingsarray of objectsLists public listings shown in the seller shop.
shopListings[]objectGives one shop listing.
shopListings[].listingIdstringGives the stable shop listing identifier.
shopListings[].titlestringGives the public shop listing title.
shopListings[].listingUrlstring (URI)Links to the public shop listing.
shopListings[].priceobjectGroups the shop listing price and currency.
shopListings[].price.amountnumberGives the numeric shop listing price.
shopListings[].price.currencystringGives the currency code for the shop listing price.
shopListings[].saleFormatstringGives the sale format shown for the shop listing.
shopListings[].quantityintegerGives the quantity shown for the shop listing.
shopListings[].statusstringGives the shop listing status shown by the source.
shopListings[].updatedAtstring (date-time)Gives the last update time shown for the shop listing.
showHistoryarray of objectsLists public historical or scheduled shows shown for the seller.
showHistory[]objectGives one seller show.
showHistory[].showIdstringGives the stable seller show identifier.
showHistory[].titlestringGives the public seller show title.
showHistory[].statusstringGives the status shown for the seller show.
showHistory[].startTimestring (date-time)Gives the public seller show start time.
showHistory[].viewerCountintegerGives the viewer count shown for the seller show.
showHistory[].thumbnailUrlstring (URI)Links to the public seller show thumbnail.
showHistory[].showUrlstring (URI)Links to the public seller show.
sourceUrlstring (URI)Links to the public Whatnot profile for the seller.
retrievedAtstring (date-time)Gives the time when the Actor retrieved the seller profile.

Seller profile row example

This genuine row is shortened. The shop listings and show history use "..." for omitted data. All eight collected reviews and their rating distribution are shown.

{
"recordType": "sellerProfile",
"username": "rosestoys",
"sourceUrl": "https://www.whatnot.com/user/rosestoys",
"retrievedAt": "2026-10-06T02:11:25.539Z",
"sellerId": "UHVibGljVXNlck5vZGU6MzkxNzkyOTY=",
"biography": "Message me to bundle items & save on shipping!\n\nCool old toys deserve cool new homes 🌹\nVintage toys • collectibles • nostalgic finds\n\nNew treasures added weekly!",
"followingCount": 107,
"profileImageUrl": "https://images.whatnot.com/eyJidWNrZXQiOiAid2hhdG5vdC1pbWFnZXMiLCAia2V5IjogInVzZXJzLzM5MTc5Mjk2L2ZiMjg2ZmMxLTdjYmItNDIzMi04ZTVmLWUyMDBiNDU0ZTBmNC5qcGVnIiwgImVkaXRzIjogeyJyZXNpemUiOiB7IndpZHRoIjogbnVsbCwgImhlaWdodCI6IG51bGwsICJmaXQiOiAiY29udGFpbiIsICJiYWNrZ3JvdW5kIjogeyJyIjogMjU1LCAiZyI6IDI1NSwgImIiOiAyNTUsICJhbHBoYSI6IDF9fX19?signature=30d7c7ce63584a17edbf2a549a84cc9722a3688df2ecd43cd895c0dad5526f0a",
"displayName": "Rose’s Toy Store",
"followerCount": 67,
"soldCount": 125,
"rating": 5,
"reviewCount": 26,
"isVerified": false,
"isLive": false,
"shippingPerformance": "0 days",
"reviews": {
"items": [
{
"rating": {
"average": 5,
"overall": {
"value": 5,
"label": "Overall"
},
"shipping": {
"value": 5,
"label": "Shipping"
},
"packaging": {
"value": 5,
"label": "Packaging"
},
"accuracy": {
"value": 5,
"label": "Accuracy"
}
},
"reviewedAt": "2026-10-01T00:21:17.000Z",
"reviewer": {
"username": "vannonwright90",
"displayName": "Vannon Wright",
"profileUrl": "https://www.whatnot.com/user/vannonwright90"
},
"reviewId": "U2VsbGVyUmV2aWV3Tm9kZTo0NzE2MjMzOTE6MzkxNzkyOTY6NDE4MjI4OTY=",
"text": "good service vary polite"
},
{
"rating": {
"average": 5,
"overall": {
"value": 5,
"label": "Overall"
},
"shipping": {
"value": 5,
"label": "Shipping"
},
"packaging": {
"value": 5,
"label": "Packaging"
},
"accuracy": {
"value": 5,
"label": "Accuracy"
}
},
"reviewedAt": "2026-09-23T21:40:24.000Z",
"reviewer": {
"username": "andrelyl",
"displayName": "Andre Lyle",
"profileUrl": "https://www.whatnot.com/user/andrelyl"
},
"reviewId": "U2VsbGVyUmV2aWV3Tm9kZTo0ODI0MTE4NTk6MzkxNzkyOTY6Njg5ODgzMzE=",
"text": "perfect\n"
},
{
"rating": {
"average": 5,
"overall": {
"value": 5,
"label": "Overall"
},
"shipping": {
"value": 5,
"label": "Shipping"
},
"packaging": {
"value": 5,
"label": "Packaging"
},
"accuracy": {
"value": 5,
"label": "Accuracy"
}
},
"reviewedAt": "2026-09-21T18:28:51.000Z",
"reviewer": {
"username": "sleepysallysle",
"displayName": "SleepySally",
"profileUrl": "https://www.whatnot.com/user/sleepysallysle"
},
"reviewId": "U2VsbGVyUmV2aWV3Tm9kZTo0Nzc3NDU4MDQ6MzkxNzkyOTY6MTQ2ODY5ODY=",
"text": {
"buyer": "Came fast asf and was exactly the picture thank you :)!\n",
"sellerReply": "Thank you so much! Enjoy and come back soon!"
}
},
{
"rating": {
"average": 5,
"overall": {
"value": 5,
"label": "Overall"
},
"shipping": {
"value": 5,
"label": "Shipping"
},
"packaging": {
"value": 5,
"label": "Packaging"
},
"accuracy": {
"value": 5,
"label": "Accuracy"
}
},
"reviewedAt": "2026-09-11T23:17:39.000Z",
"reviewer": {
"username": "koolizzy",
"displayName": "koolizzy",
"profileUrl": "https://www.whatnot.com/user/koolizzy"
},
"reviewId": "U2VsbGVyUmV2aWV3Tm9kZTo0NjQ1MTU3NDE6MzkxNzkyOTY6Njc2MzYzNg==",
"text": {
"buyer": "Arrived safe and exactly as pictures show, thank you so much!!!",
"sellerReply": "Thank you for your purchase! Please come back and shop with us any time!! Thanks again 😊"
}
},
{
"rating": {
"average": 5,
"overall": {
"value": 5,
"label": "Overall"
},
"shipping": {
"value": 5,
"label": "Shipping"
},
"packaging": {
"value": 5,
"label": "Packaging"
},
"accuracy": {
"value": 5,
"label": "Accuracy"
}
},
"reviewedAt": "2026-09-11T01:15:07.000Z",
"reviewer": {
"username": "th3fabri8tor",
"displayName": "Victor Murdock",
"profileUrl": "https://www.whatnot.com/user/th3fabri8tor"
},
"reviewId": "U2VsbGVyUmV2aWV3Tm9kZTo0NTU4ODYwMjQ6MzkxNzkyOTY6NzA5ODM2OTk=",
"text": {
"buyer": "A+",
"sellerReply": "Thank you 🙏 "
}
},
{
"rating": {
"average": 5,
"overall": {
"value": 5,
"label": "Overall"
},
"shipping": {
"value": 5,
"label": "Shipping"
},
"packaging": {
"value": 5,
"label": "Packaging"
},
"accuracy": {
"value": 5,
"label": "Accuracy"
}
},
"reviewedAt": "2026-08-19T23:23:58.000Z",
"reviewer": {
"username": "angelawol82005",
"displayName": "Angela Marie Madden Wolfe",
"profileUrl": "https://www.whatnot.com/user/angelawol82005"
},
"reviewId": "U2VsbGVyUmV2aWV3Tm9kZTo0NDA5MDc3NTE6MzkxNzkyOTY6MzMwMzM5MDI=",
"text": {
"buyer": "as described. great packaging",
"sellerReply": "So glad to hear it! Please enjoy and come back anytime! Great buyer"
}
},
{
"rating": {
"average": 5,
"overall": {
"value": 5,
"label": "Overall"
},
"shipping": {
"value": 5,
"label": "Shipping"
},
"packaging": {
"value": 5,
"label": "Packaging"
},
"accuracy": {
"value": 5,
"label": "Accuracy"
}
},
"reviewedAt": "2026-08-17T19:33:39.000Z",
"reviewer": {
"username": "nataliefunburg",
"displayName": "Natalie Funburg",
"profileUrl": "https://www.whatnot.com/user/nataliefunburg"
},
"reviewId": "U2VsbGVyUmV2aWV3Tm9kZTo0NDA5MjkwMTU6MzkxNzkyOTY6NjY3MDQ2MDY=",
"text": {
"buyer": "Loved the stream! Thanks for the awesome buys!! ",
"sellerReply": "Thank you for your support Natalie! We hope you and your daughter love your pick ups! Happy collecting :)"
}
},
{
"rating": {
"average": 5,
"overall": {
"value": 5,
"label": "Overall"
},
"shipping": {
"value": 5,
"label": "Shipping"
},
"packaging": {
"value": 5,
"label": "Packaging"
},
"accuracy": {
"value": 5,
"label": "Accuracy"
}
},
"reviewedAt": "2026-08-15T17:18:37.000Z",
"reviewer": {
"username": "christiansings4u",
"displayName": "Christian Feazell",
"profileUrl": "https://www.whatnot.com/user/christiansings4u"
},
"reviewId": "U2VsbGVyUmV2aWV3Tm9kZTo0NDA4OTYxMTI6MzkxNzkyOTY6NjQ5OTkzMzU=",
"text": {
"buyer": "All good. ",
"sellerReply": "Thank you! We will probably do another Pokémon show soon"
}
}
],
"distribution": {
"cohort": "public_written_reviews",
"reviewCount": 8,
"sourceReportedReviewCount": 26,
"bins": [
{
"rating": 1,
"count": 0,
"share": 0
},
{
"rating": 2,
"count": 0,
"share": 0
},
{
"rating": 3,
"count": 0,
"share": 0
},
{
"rating": 4,
"count": 0,
"share": 0
},
{
"rating": 5,
"count": 8,
"share": 1
}
]
}
},
"showHistory": "...",
"shopListings": "..."
}

Category insight record fields

FieldTypeWhat it does
recordTypestringIdentifies this row as a category insight.
categoryobjectGroups the public category details.
category.namestringGives the public category name.
category.slugstringGives the public category slug when supplied.
category.urlstring (URI)Links to the public category page.
rankintegerGives the position in Whatnot's viewer-count order, starting at 1. This source order may differ from the current viewer counts.
viewerCountintegerGives the viewer count shown for the category.
livestreamCountintegerGives the livestream count shown for the category.
subcategoriesarray of objectsLists public subcategories shown for the category.
subcategories[]objectGives one public subcategory.
subcategories[].namestringGives the public subcategory name.
subcategories[].slugstringGives the public subcategory slug when supplied.
subcategories[].urlstring (URI)Links to the public subcategory page.
subcategories[].viewerCountintegerGives the viewer count shown for the subcategory.
subcategories[].livestreamCountintegerGives the livestream count shown for the subcategory.
showsarray of objectsLists public shows discovered in the category.
shows[]objectGives one category show.
shows[].showIdstringGives the stable category show identifier.
shows[].titlestringGives the public category show title.
shows[].statusstringGives the status shown for the category show.
shows[].startTimestring (date-time)Gives the public category show start time.
shows[].viewerCountintegerGives the viewer count shown for the category show.
shows[].thumbnailUrlstring (URI)Links to the public category show thumbnail.
shows[].showUrlstring (URI)Links to the public category show.
shows[].sellerobjectGroups seller details shown for the category show.
shows[].seller.usernamestringGives the seller's public Whatnot username.
shows[].seller.displayNamestringGives the seller's public display name.
shows[].seller.profileUrlstring (URI)Links to the seller's public profile.
sellerLeaderboardarray of objectsLists public seller leaderboard entries shown for the category.
sellerLeaderboard[]objectGives one category leaderboard entry.
sellerLeaderboard[].rankintegerGives the seller rank shown by the source.
sellerLeaderboard[].usernamestringGives the seller's public Whatnot username.
sellerLeaderboard[].displayNamestringGives the seller's public display name.
sellerLeaderboard[].profileUrlstring (URI)Links to the seller's public profile.
sellerLeaderboard[].followerCountintegerGives the follower count shown for the seller.
sellerLeaderboard[].soldCountintegerGives the sold-item count shown for the seller.
sellerLeaderboard[].activeShowCountintegerGives the active show count shown for the seller.
sourceUrlstring (URI)Links to the public Whatnot source for the category.
retrievedAtstring (date-time)Gives the time when the Actor retrieved the category record.

Category insight row example

This unshortened row is copied from a successful current-beta run:

{
"recordType": "categoryInsight",
"category": {
"name": "Trading Card Games",
"slug": "trading_card_games",
"url": "https://www.whatnot.com/tag/trading_card_games"
},
"sourceUrl": "https://www.whatnot.com/tag/trading_card_games",
"retrievedAt": "2026-10-06T02:14:42.642Z",
"rank": 2,
"viewerCount": 27191,
"livestreamCount": 852,
"subcategories": [
{
"name": "Trading Card Games",
"slug": "trading_card_games",
"url": "https://www.whatnot.com/tag/trading_card_games",
"viewerCount": 27191,
"livestreamCount": 852
},
{
"name": "Pokémon Cards",
"slug": "pokemon_cards",
"url": "https://www.whatnot.com/tag/pokemon_cards",
"viewerCount": 22714,
"livestreamCount": 617
},
{
"name": "One Piece Cards",
"slug": "one_piece_cards",
"url": "https://www.whatnot.com/tag/one_piece_cards",
"viewerCount": 1562,
"livestreamCount": 52
},
{
"name": "Magic: The Gathering",
"slug": "magic_cards",
"url": "https://www.whatnot.com/tag/magic_cards",
"viewerCount": 1285,
"livestreamCount": 63
},
{
"name": "Dragon Ball Cards",
"slug": "dragonball_cards",
"url": "https://www.whatnot.com/tag/dragonball_cards",
"viewerCount": 381,
"livestreamCount": 26
},
{
"name": "Yu-Gi-Oh! Cards",
"slug": "yugioh_cards",
"url": "https://www.whatnot.com/tag/yugioh_cards",
"viewerCount": 320,
"livestreamCount": 23
},
{
"name": "Bo Jackson Battle Arena",
"slug": "bo_jackson_battle_arena_category",
"url": "https://www.whatnot.com/tag/bo_jackson_battle_arena_category",
"viewerCount": 244,
"livestreamCount": 6
},
{
"name": "Other TCG",
"slug": "tcg_other",
"url": "https://www.whatnot.com/tag/tcg_other",
"viewerCount": 172,
"livestreamCount": 21
},
{
"name": "Lorcana",
"slug": "lorcana",
"url": "https://www.whatnot.com/tag/lorcana",
"viewerCount": 166,
"livestreamCount": 10
},
{
"name": "Naruto Cards",
"slug": "naruto_cards",
"url": "https://www.whatnot.com/tag/naruto_cards",
"viewerCount": 104,
"livestreamCount": 6
},
{
"name": "Riftbound",
"slug": "riftbound_category",
"url": "https://www.whatnot.com/tag/riftbound_category",
"viewerCount": 90,
"livestreamCount": 8
},
{
"name": "Weiß Schwarz",
"slug": "weiß_schwarz",
"url": "https://www.whatnot.com/tag/wei%C3%9F_schwarz",
"viewerCount": 79,
"livestreamCount": 9
},
{
"name": "VeeFriends",
"slug": "veefriends",
"url": "https://www.whatnot.com/tag/veefriends",
"viewerCount": 65,
"livestreamCount": 4
},
{
"name": "Union Arena",
"slug": "union_arena",
"url": "https://www.whatnot.com/tag/union_arena",
"viewerCount": 20,
"livestreamCount": 3
},
{
"name": "Palworld",
"slug": "palworld",
"url": "https://www.whatnot.com/tag/palworld",
"viewerCount": 3,
"livestreamCount": 1
}
],
"shows": [
{
"title": "⚡🐻THE LEGENDARIEST COLLECTION⚡🚘",
"status": "PLAYING",
"showId": "769f2615-de0e-4f9a-8eb7-7ab737d4cc53",
"startTime": "2026-10-05T22:13:05.348Z",
"viewerCount": 1864,
"thumbnailUrl": "https://images.whatnot.com/eyJidWNrZXQiOiAid2hhdG5vdC1pbWFnZXMiLCAia2V5IjogImxpdmVzdHJlYW1fdGh1bWJuYWlscy81NWRlYzU2Ni1mNzk2LTRkYzctOWZhZS0yODY5MTdjYzdlYWYuanBlZyIsICJlZGl0cyI6IHsicmVzaXplIjogeyJ3aWR0aCI6IDQxNCwgImhlaWdodCI6IDY0MCwgImZpdCI6ICJjb3ZlciIsICJiYWNrZ3JvdW5kIjogeyJyIjogMjU1LCAiZyI6IDI1NSwgImIiOiAyNTUsICJhbHBoYSI6IDF9fX0sICJvdXRwdXRGb3JtYXQiOiAid2VicCJ9?signature=c6044d60c256fc7168e2c9c03e5a6b2ca4c0aeba1a24846de18c0cf12aacfdad",
"showUrl": "https://www.whatnot.com/live/769f2615-de0e-4f9a-8eb7-7ab737d4cc53",
"seller": {
"username": "spacenarwhalz",
"displayName": "Michael Granlund",
"profileUrl": "https://www.whatnot.com/user/spacenarwhalz"
}
},
{
"title": "FREE UNRELEASED PIKACHU! $1 START SINGLES",
"status": "PLAYING",
"showId": "7c7a4c99-d93d-415b-8f11-70b9bd4d933a",
"startTime": "2026-10-05T21:48:20.989Z",
"viewerCount": 813,
"thumbnailUrl": "https://images.whatnot.com/eyJidWNrZXQiOiAid2hhdG5vdC1pbWFnZXMiLCAia2V5IjogImxpdmVzdHJlYW1fdGh1bWJuYWlscy85MDViYThmOC1lODI4LTQ5ZDAtOGQ3My1jZWRmZGY0ZWZjMmIuanBnIiwgImVkaXRzIjogeyJyZXNpemUiOiB7IndpZHRoIjogNDE0LCAiaGVpZ2h0IjogNjQwLCAiZml0IjogImNvdmVyIiwgImJhY2tncm91bmQiOiB7InIiOiAyNTUsICJnIjogMjU1LCAiYiI6IDI1NSwgImFscGhhIjogMX19fSwgIm91dHB1dEZvcm1hdCI6ICJ3ZWJwIn0=?signature=ee3e24f04b4703c07de9b4a2f8f01d02845a9676d45ef001595b8fb1e3e7c66b",
"showUrl": "https://www.whatnot.com/live/7c7a4c99-d93d-415b-8f11-70b9bd4d933a",
"seller": {
"username": "shop_exp",
"displayName": "expshop",
"profileUrl": "https://www.whatnot.com/user/shop_exp"
}
}
],
"sellerLeaderboard": [
{
"rank": 1,
"username": "neoworld",
"profileUrl": "https://www.whatnot.com/user/neoworld",
"displayName": "NeoWorld",
"followerCount": 188992,
"soldCount": 249314,
"activeShowCount": 0
},
{
"rank": 2,
"username": "legacy_auction_house",
"profileUrl": "https://www.whatnot.com/user/legacy_auction_house",
"displayName": "Legacy Auction House ",
"followerCount": 433540,
"soldCount": 1007932
}
]
}

💳 Pricing

This Actor uses pay-per-event pricing. A saved public listing, live show, or seller profile row charges its matching Listing, Live show, or Seller profile event. Current prices and user tiers appear in the Store pricing panel. Category insights have no separate buyer-facing event title in the current pricing configuration.

🔌 Integrations

Use the Apify Console or API to start runs and read the default dataset. The Output tab links to the same dataset for export and follow-up processing.

Watch the walkthrough:

❓ FAQ

Choose the resultType and findBy values that match your target. For example, use keywords or a search URL for search surfaces, seller usernames or source seller IDs for seller profiles, and a category for category-based results. Keywords can also search each seller's shop when you use seller usernames or direct URLs. Other fields for unrelated choices are ignored.

What happens when the same listing matches more than one keyword?

The Actor saves the first eligible occurrence and ignores later matches for the same source listing. The saved row reflects the first match and does not combine later matches.

What if Whatnot does not show a field?

That field can be absent from the row. The Actor keeps public source values and does not guess a missing value.

Can I request seller reviews and past shows?

Yes. Select seller profiles and turn on includeReviews or includeShowHistory. The Actor returns public reviews and historical or scheduled shows when the source provides them.

Why did my run return fewer rows than maxItems?

maxItems is a cap, not a promise. The public source may return fewer eligible rows because listings, shows, sellers, or categories can be unavailable or filtered out.

How current are prices and viewer counts?

They reflect what Whatnot showed when the Actor retrieved the row. Use retrievedAt to see that time. The source can change after the run finishes.

Do I need a Whatnot login or API key?

No. The Actor reads public Whatnot pages and does not need a customer-supplied Whatnot login or API key.

Does this collect private data or place orders?

No. It does not collect private or account-only data, capture live video or audio, buy or bid, or change Whatnot accounts or listings.

📝 Changelog

v1.0 (06-10-2026)

  • Seller reviews now use reviews.items for review rows and reviews.distribution for star counts and shares. Update tools that read the old review list.
  • Review ratings can now include separate feedback scores. Review text can include a buyer's text and the seller's reply. Update tools that expect only a number or plain text.
  • Find seller profiles by source seller ID as well as username.
  • Search a seller's shop with keywords and collect past shows when requested.
  • Choose a current day, current week, or live seller leaderboard for category insights.
  • Get listing dates, offer status, and catalog price ranges when Whatnot provides them.
  • Get seller bios, following counts, profile images, and premier shop status when available.
  • Direct live show results can include watchlist counts and a current auction bid snapshot when available.
  • Mixed search reads more result pages and fills in listings from product search. It applies the chosen listing filters and order.
  • Category searches match the chosen category, and category ranks follow Whatnot's results ordered by viewer count.
  • Repeated source items no longer use up the item limit for the same search.

v0.0 (03-09-2026)

  • Initial release.

🆘 Support

For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡

Made with ❤️ by Maxime Dupré