# Deals & Coupons Scraper for Slickdeals — Price & Votes (`haketa/slickdeals-scraper`) Actor

Scrape community deals from Slickdeals by keyword or feed: title, price, community thumb score (votes), store, category, poster and image. For deal aggregation, price tracking and comparison. Independent tool, not affiliated with Slickdeals.

- **URL**: https://apify.com/haketa/slickdeals-scraper.md
- **Developed by:** [Haketa](https://apify.com/haketa) (community)
- **Categories:** E-commerce, Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Deals & Coupons Scraper for Slickdeals — Price & Community Votes

> **Extract community deals from Slickdeals at scale: title, price, community thumb score (votes/heat), store, category, poster and image.** Search by product/keyword or pull the front-page & popular feeds, and get clean JSON/CSV/Excel in seconds. Built for deal aggregation, price tracking, comparison and shopping tools.

[![Deals](https://img.shields.io/badge/Slickdeals-Community%20Deals-2f9e44)]()
[![Price & Votes](https://img.shields.io/badge/Price%20%2B%20Thumb%20Score-blue)]()
[![Store & Category](https://img.shields.io/badge/Store%20%2B%20Category-8250df)]()
[![Export](https://img.shields.io/badge/Export-JSON%20%2F%20CSV%20%2F%20Excel-fb8500)]()

***

### What This Actor Does

**Slickdeals** is the largest US community deals site — members post and up-vote the hottest deals. This Actor turns a search or feed into a structured deals dataset. For each deal it returns:

- **Deal** — title, price, image, deal URL
- **Heat** — community thumb score (net up-votes) — the popularity signal
- **Store** — merchant domain and the product/store URL
- **Meta** — category, the user who posted it, and the posted date

Search one or many keywords, and/or pull the front-page and popular feeds — deduped by deal ID.

***

### Why Use This

- **Community-validated deals.** The thumb score tells you which deals people actually think are hot — a ranking signal you can't compute yourself.
- **Price + store together.** Every deal carries a price and the merchant domain — ready for price tracking, comparison and alerts.
- **Search or browse.** Target specific products (e.g. "laptop", "AirPods") or grab the general front-page / popular deals.
- **Fast and clean.** Reads Slickdeals' public feeds — no anti-bot, no browser, no proxy needed.

***

### Quick Start

#### Run it in the console (no code)

1. Add **Search terms** (e.g. `laptop`, `headphones`) and/or pick **Feeds** (`frontpage`, `popular`).
2. Set **Max deals**, click **Start**.
3. Export as **JSON, CSV, Excel or HTML**, or push to Google Sheets, a webhook or a database.

#### Run it via API (Python)

```python
from apify_client import ApifyClient

client = ApifyClient("YOUR_APIFY_TOKEN")

run_input = {
    "searchTerms": ["laptop", "headphones"],
    "feeds": ["frontpage", "popular"],
    "maxItems": 200,
}

run = client.actor("YOUR_USERNAME/slickdeals-scraper").call(run_input=run_input)

for d in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(d["thumbScore"], "·", d["title"], "·", d["price"], "·", d["store"])
```

#### Get the hottest deals (Python)

```python
run = client.actor("YOUR_USERNAME/slickdeals-scraper").call(run_input={"feeds": ["popular"], "maxItems": 100})
deals = list(client.dataset(run["defaultDatasetId"]).iterate_items())
hot = sorted([d for d in deals if d.get("thumbScore")], key=lambda d: -d["thumbScore"])[:10]
for d in hot:
    print(d["thumbScore"], d["title"], d["dealUrl"])
```

***

### Input Parameters

| Field | Type | Description |
|---|---|---|
| `searchTerms` | array | Products/keywords to search (each returns matching deals). |
| `feeds` | array | `frontpage` and/or `popular` general feeds. |
| `maxItems` | integer | Max deals across all terms/feeds. `0` = no limit (25 per feed). |
| `proxyConfiguration` | object | Apify Proxy. Datacenter is enough and enabled by default. |

***

### Output

Each deal is one record:

```json
{
  "dealId": "20072046",
  "title": "Batman 4-Film Collection (Blu-ray) $11",
  "price": 11,
  "priceText": "$11",
  "thumbScore": 21,
  "store": "amazon.com",
  "storeUrl": "https://www.amazon.com/Film-Favorites-...",
  "category": "Movies",
  "poster": "neomatrixviper",
  "dealUrl": "https://slickdeals.net/f/20072046-4-film-favorites-batman-blu-ray",
  "imageUrl": "https://static.slickdealscdn.com/...thumb",
  "publishedDate": "Mon, 29 Sep 2026 ...",
  "source": "feed:frontpage"
}
```

***

### Use Cases

#### 1. Deal aggregation & alerts

Build a deals feed or price-alert tool ranked by community heat (thumb score) for products or categories you care about.

#### 2. Price tracking & comparison

Track prices and stores for products over time; combine with other sources to compare across retailers.

#### 3. Affiliate & content sites

Power a savings/coupon site or newsletter with fresh, community-validated deals and merchant links.

#### 4. Retail & competitive intelligence

See which products and stores are trending, at what prices, and how strongly the community reacts.

#### 5. Market research

Analyze deal volume, discount levels and merchant activity by category over time.

***

### Tips

- **Search vs feeds:** use `searchTerms` for specific products; add `frontpage`/`popular` for general trending deals.
- **`thumbScore`** is the community heat — sort by it to surface the best deals.
- **`store`** is the merchant domain (amazon.com, walmart.com…), handy for filtering by retailer.
- **Schedule it** with Apify Schedules to capture new hot deals throughout the day.

***

### Frequently Asked Questions

**Do I need an account?**
No. The Actor reads publicly available deal feeds — no login required.

**What is the thumb score?**
It's the net community vote (up-votes minus down-votes) — Slickdeals' popularity/heat signal for a deal.

**How many deals per feed?**
Each feed returns the latest ~25 deals; use multiple search terms and both feeds for broader coverage, and schedule to capture more over time.

**What export formats are supported?**
JSON, CSV, Excel, HTML, or via API — plus Google Sheets, webhooks, Make and Zapier.

***

### Legal & Responsible Use

This Actor is an independent tool and is **not affiliated with, endorsed by, or sponsored by Slickdeals** or any retailer. All trademarks are the property of their respective owners.

It collects only publicly available deal information for research and personal use. You are responsible for how you use the data. Please:

- Respect Slickdeals' Terms of Service and applicable laws.
- Do not use the data for spam or any unlawful purpose.
- Use reasonable request volumes and scheduling.

# Actor input Schema

## `searchTerms` (type: `array`):

Products/keywords to search for deals (e.g. laptop, headphones, TV, coffee). Each term returns matching deals.

## `feeds` (type: `array`):

Slickdeals feeds to include: frontpage (front-page deals) and/or popular (hottest deals). Used when you want general deals, not just a search.

## `maxItems` (type: `integer`):

Maximum deals across all terms/feeds. 0 = no limit (25 per feed).

## `proxyConfiguration` (type: `object`):

Apify Proxy. Datacenter is enough for the Slickdeals feeds and is enabled by default.

## Actor input object example

```json
{
  "searchTerms": [
    "laptop",
    "headphones"
  ],
  "feeds": [
    "frontpage",
    "popular"
  ],
  "maxItems": 80,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `dealId` (type: `string`):

Slickdeals deal ID

## `title` (type: `string`):

Deal title (with price)

## `price` (type: `string`):

Parsed price

## `priceText` (type: `string`):

Price as shown

## `thumbScore` (type: `string`):

Community votes (heat)

## `store` (type: `string`):

Merchant domain

## `storeUrl` (type: `string`):

Product/merchant URL

## `category` (type: `string`):

Deal category

## `poster` (type: `string`):

User who posted the deal

## `dealUrl` (type: `string`):

Slickdeals deal URL

## `imageUrl` (type: `string`):

Deal image URL

## `publishedDate` (type: `string`):

Posted date

## `source` (type: `string`):

Search term or feed

## `scrapedAt` (type: `string`):

ISO timestamp

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchTerms": [
        "laptop",
        "headphones"
    ],
    "feeds": [
        "frontpage",
        "popular"
    ],
    "maxItems": 80,
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("haketa/slickdeals-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searchTerms": [
        "laptop",
        "headphones",
    ],
    "feeds": [
        "frontpage",
        "popular",
    ],
    "maxItems": 80,
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("haketa/slickdeals-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchTerms": [
    "laptop",
    "headphones"
  ],
  "feeds": [
    "frontpage",
    "popular"
  ],
  "maxItems": 80,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call haketa/slickdeals-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,haketa/slickdeals-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/YmoZ27GJdrIakgTG1/builds/0c9ndZ3IhSd3V9Eag/openapi.json
