{
  "openapi": "3.0.1",
  "info": {
    "title": "Whatnot Scraper for Listings and Live Shows",
    "description": "Scrape Whatnot listings with prices and seller stats, or live and upcoming shows with viewers, by keyword or category. Card filters (graded, PSA/CGC grade, language, set), 8 marketplaces, only-new monitoring with price drops. No login. $2 per 1,000 listings. Maintained by CleanScrape.",
    "version": "0.1",
    "x-build-id": "zQhPomXpunrHVqLrB"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/cleanscrape~whatnot-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-cleanscrape-whatnot-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/cleanscrape~whatnot-scraper/runs": {
      "post": {
        "operationId": "runs-sync-cleanscrape-whatnot-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/cleanscrape~whatnot-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-cleanscrape-whatnot-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "searchFor": {
            "title": "What to find",
            "enum": [
              "listings",
              "shows"
            ],
            "type": "string",
            "description": "Listings are items for sale with their asking price and seller. Shows are live streams, now or scheduled.",
            "default": "listings"
          },
          "searchQueries": {
            "title": "Search terms",
            "type": "array",
            "description": "Keywords as you would type them on Whatnot, one per line, such as \"charizard psa 10\" or \"vintage levis\". You can also paste a Whatnot search link.",
            "items": {
              "type": "string"
            }
          },
          "categories": {
            "title": "Categories",
            "type": "array",
            "description": "For listings: limits every search to these categories. For shows: finds the live and upcoming shows of each category. Type a name (\"Pokémon Cards\", \"Sneakers\") or paste a category link.",
            "items": {
              "type": "string"
            }
          },
          "urls": {
            "title": "Whatnot links",
            "type": "array",
            "description": "Listing links (https://www.whatnot.com/listing/…), live-show links (https://www.whatnot.com/live/…, saves the show and its items for sale), search links or category links. For listings, a category link limits every search to that category, like Categories.",
            "items": {
              "type": "string"
            }
          },
          "marketplace": {
            "title": "Marketplace",
            "enum": [
              "us",
              "ca",
              "gb",
              "de",
              "fr",
              "be",
              "nl",
              "au"
            ],
            "type": "string",
            "description": "Whatnot shows different listings, sellers and currencies per country. Marketplaces other than the United States use a residential connection in that country.",
            "default": "us"
          },
          "maxResultsPerSearch": {
            "title": "Maximum results per search",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "Listings or shows to save per search, category or link. Whatnot shows about 1,000 listings per search.",
            "default": 100
          },
          "sort": {
            "title": "Sort listings",
            "enum": [
              "best",
              "newest",
              "price_asc",
              "price_desc"
            ],
            "type": "string",
            "description": "Order of listing results. \"Newly listed\" suits monitoring for new listings.",
            "default": "best"
          },
          "buyFormat": {
            "title": "Buy format",
            "enum": [
              "any",
              "buy_it_now",
              "auction"
            ],
            "type": "string",
            "description": "Buy It Now items have a fixed price; auctions are sold live in a show.",
            "default": "any"
          },
          "minPrice": {
            "title": "Minimum price",
            "minimum": 0,
            "type": "integer",
            "description": "In the marketplace currency (USD, GBP, EUR, CAD or AUD)."
          },
          "maxPrice": {
            "title": "Maximum price",
            "minimum": 0,
            "type": "integer",
            "description": "In the marketplace currency. Splitting a big search into price ranges also gets past Whatnot's limit of about 1,000 listings per search."
          },
          "gradedOnly": {
            "title": "Graded items only",
            "type": "boolean",
            "description": "Only items marked as graded (slabbed) by the seller.",
            "default": false
          },
          "gradingServices": {
            "title": "Grading services",
            "type": "array",
            "description": "Such as PSA, CGC, BECKETT, SGC or TAG.",
            "items": {
              "type": "string"
            }
          },
          "grades": {
            "title": "Grades",
            "type": "array",
            "description": "Such as 10, 9.5, 9 or GEM MT 10.",
            "items": {
              "type": "string"
            }
          },
          "languages": {
            "title": "Card language",
            "type": "array",
            "description": "Such as English, Japanese, Korean or Traditional Chinese.",
            "items": {
              "type": "string"
            }
          },
          "sets": {
            "title": "Sets",
            "type": "array",
            "description": "Card sets, such as \"Scarlet & Violet 151\" or \"Base Set\", as Whatnot names them.",
            "items": {
              "type": "string"
            }
          },
          "conditions": {
            "title": "Condition",
            "type": "array",
            "description": "Such as New, Near Mint, Mint or Light Played.",
            "items": {
              "type": "string"
            }
          },
          "productTypes": {
            "title": "Product type",
            "type": "array",
            "description": "Such as Card, Booster Pack, Booster Box or Elite Trainer Box.",
            "items": {
              "type": "string"
            }
          },
          "minSellerRating": {
            "title": "Minimum seller rating",
            "enum": [
              "any",
              "4.0",
              "4.5",
              "5.0"
            ],
            "type": "string",
            "description": "Only sellers with at least this average rating.",
            "default": "any"
          },
          "premierShopOnly": {
            "title": "Premier Shop sellers only",
            "type": "boolean",
            "description": "Only sellers with Whatnot's Premier Shop status.",
            "default": false
          },
          "shippedFrom": {
            "title": "Ships from",
            "type": "array",
            "description": "Seller countries as two-letter codes: US, GB, CA, AU, DE, FR, NL, BE, AT, JP. Applies to listings and shows.",
            "items": {
              "type": "string"
            }
          },
          "showStatus": {
            "title": "Shows",
            "enum": [
              "both",
              "live",
              "upcoming"
            ],
            "type": "string",
            "description": "Which shows to find when \"What to find\" is shows.",
            "default": "both"
          },
          "showFormats": {
            "title": "Show formats",
            "type": "array",
            "description": "Breaks, Singles, Surprise Sets, Graded or Auction.",
            "items": {
              "type": "string"
            }
          },
          "showSort": {
            "title": "Sort shows",
            "enum": [
              "recommended",
              "viewers"
            ],
            "type": "string",
            "description": "Whatnot's recommended order, or the shows with the most viewers first.",
            "default": "recommended"
          },
          "maxItemsPerShow": {
            "title": "Items per show",
            "minimum": 0,
            "maximum": 1000,
            "type": "integer",
            "description": "Items for sale in each show found (lots and Buy It Now), saved in the Show items table. 0 = none; a pasted live-show link always saves up to 100.",
            "default": 0
          },
          "onlyNew": {
            "title": "Only listings or shows not saved before",
            "type": "boolean",
            "description": "Each run looks at the first results of every search (up to Maximum results per search) and saves only those earlier runs with the same watch name (or the same searches) did not save; the rest are not charged. Sort by Newly listed and schedule the Actor to get alerts of new listings.",
            "default": false
          },
          "includePriceDrops": {
            "title": "Include price drops",
            "type": "boolean",
            "description": "With \"Only new\": also saves listings seen before whose price is now lower, with the previous price.",
            "default": true
          },
          "watchName": {
            "title": "Watch name (optional)",
            "type": "string",
            "description": "Names the monitoring history, for example \"PSA 10 Charizard\". Leave empty to use one per set of searches."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}