# Groupon UAE Scraper (`aboo.script/groupon-ae-scraper`) Actor

⚡ Fast Groupon UAE scraper that works on Cloudflare-protected pages. No login, no API key. Get deals in Dubai, Abu Dhabi and Sharjah by keyword or by city, category, search or deal URL, with every option's price and discount, number sold, merchant, locations, ratings and reviews.

- **URL**: https://apify.com/aboo.script/groupon-ae-scraper.md
- **Developed by:** [Aboo Script](https://apify.com/aboo.script) (community)
- **Security:** Limited permissions
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.10 / 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

## Groupon UAE Scraper

![Groupon UAE Scraper](https://i.ibb.co/W4GyvK9H/groupon-ae-banner.png)

**Groupon UAE Scraper** extracts deals from [Groupon UAE](https://www.groupon.ae/) into clean, structured data you can download as JSON, CSV, Excel, or HTML. Paste a Groupon UAE city, category, or deal URL, or type a few keywords, and get the title, merchant, every deal option with its price and discount, locations, ratings, and reviews for each deal. No account or login required.

### Introduction

[Groupon UAE](https://www.groupon.ae/) is the United Arab Emirates edition of Groupon, a marketplace of discounted vouchers for restaurants, spas, salons, attractions, tours, fitness, and other local businesses in Dubai, Abu Dhabi, and Sharjah. Its deals show what local merchants charge, how deeply they discount, and how popular each offer is.

This actor collects the same public information you see in your browser and turns it into a ready-to-use dataset. You can run it once, schedule it to run daily, or connect it to your own tools.

### What data can you extract from Groupon UAE?

- 🏷️ Deal title, highlights, full description, and fine print
- 💲 Lowest price, original price, discount percentage, and currency (AED)
- 🧾 Every deal option with its own price, original price, discount, number sold, status, expiry date, and quantity limits
- ⭐ Rating, number of ratings, star breakdown, and the latest customer reviews
- 🏢 Merchant name and website
- 📍 City, redemption locations with address, coordinates, phone, and directions link
- 🗂️ Category and full category path
- 🔥 Number sold, badges such as "Best Rated" or "Popular Gift", gift and booking flags, and the deal end date
- ❓ Frequently asked questions shown on the deal page
- 🖼️ Images and the direct URL of each deal

### Use Cases

- 📈 **Market research**: compare prices and discounts for spas, restaurants, attractions, and activities across Dubai, Abu Dhabi, and Sharjah.
- 🕵️ **Competitor monitoring**: track which deals competing businesses run, at what price, and how many vouchers they sell.
- 🤝 **Lead generation**: build a list of local merchants that already sell through deal platforms, with their websites and addresses.
- 🗂️ **Database building**: create your own searchable catalog of UAE deals and things to do.
- 🤖 **AI and automation**: feed clean, structured data into spreadsheets, dashboards, or AI workflows.

### How to scrape Groupon UAE step by step

1. Paste one or more Groupon UAE URLs into **Start URLs**, or type keywords into **Search queries**.
2. For search queries, optionally pick a **City**, **Category**, **Sort by** order, price range, or **Minimum rating**.
3. Set **Maximum number of results** to how many deals you want per URL or per query.
4. Click **Start** and wait for the run to finish.
5. Download your data in JSON, CSV, Excel, or HTML from the **Output** tab.

### Input

- **Start URLs**: Groupon UAE URLs to scrape. Supported pages: city pages (`https://www.groupon.ae/coupons/dubai`), city category pages (`https://www.groupon.ae/coupons/dubai/things-to-do`), category pages, landing and gift pages, search pages, and single deal pages (`https://www.groupon.ae/deals/...`). Filters you apply on the website, such as sort order, price range, rating, or sub-category, are kept in the results.
- **Search queries**: keywords to search on Groupon UAE, one per line (for example `spa`, `brunch`, `desert safari`). Each query is scraped separately.
- **Maximum number of results**: how many deals to collect for each start URL or search query. Use `0` for no limit.
- **City**: the city to search in (Dubai, Abu Dhabi, or Sharjah). Applies to search queries only.
- **Category**: only return deals from one category, such as Beauty & Spas or Things To Do. Applies to search queries only.
- **Sort by**: relevance, price low to high, price high to low, or rating. Applies to search queries only.
- **Minimum price (AED)** and **Maximum price (AED)**: only return deals within this price range. Apply to search queries only.
- **Minimum rating**: only return deals rated at least this many stars. Applies to search queries only.

You can use start URLs, search queries, or both in the same run.

### Input Examples

Scrape a city category page from Groupon UAE:

```json
{
  "startUrls": [{ "url": "https://www.groupon.ae/coupons/dubai/things-to-do" }],
  "maxResults": 5
}
```

Search by keywords in Dubai:

```json
{
  "searchQueries": ["spa", "brunch"],
  "city": "dubai",
  "sort": "relevance",
  "maxResults": 5
}
```

### Output

Each deal is saved as one item in the dataset. Here is an example of a single item (long texts and lists are shortened):

```json
{
  "url": "https://www.groupon.ae/deals/journey-wise-tourism-llc-15",
  "id": "journey-wise-tourism-llc-15",
  "uuid": "39db2ca7-4e6e-438e-9a43-7650a3b8f566",
  "title": "Entry Pass to Global Village in Dubai: General Admission for upto 4(Up To 23% Off)- Use Any Day (One time Admission)",
  "merchantName": "Journey Wise Tourism LLC",
  "merchantWebsite": "https://journeywisetourism.com/",
  "city": "Dubai",
  "category": "Attraction Pass",
  "categories": [
    "Local",
    "Things To Do",
    "Sightseeing & Tours",
    "Attraction Pass"
  ],
  "price": 23,
  "originalPrice": 30,
  "discountPercent": 23,
  "currency": "AED",
  "optionCount": 3,
  "options": [
    {
      "id": "0bdf4ea3-79ee-45f4-8893-6fc8307b0ebf",
      "title": "General Admission to Global Village season 31 for One (Ticket Collection through Whatsapp)",
      "price": 23,
      "originalPrice": 30,
      "discountPercent": 23,
      "currency": "AED",
      "soldQuantity": "70+",
      "status": "Available",
      "isSoldOut": false,
      "expiresAt": "2026-12-22T00:00:00Z",
      "minQuantity": 1,
      "maxQuantity": 10,
      "details": [
        {
          "label": "Expires",
          "value": "60 days after purchase"
        }
      ]
    },
    {
      "id": "6130c0b2-bbc2-452d-8ba8-14ae4de3fc40",
      "title": "General Admission to Global Village season 31 for Two (Ticket Collection through Whatsapp)",
      "price": 46,
      "originalPrice": 60,
      "discountPercent": 23,
      "currency": "AED",
      "soldQuantity": "10+",
      "status": "Available",
      "isSoldOut": false,
      "expiresAt": "2026-12-22T00:00:00Z",
      "minQuantity": 1,
      "maxQuantity": 10,
      "details": [
        {
          "label": "Expires",
          "value": "60 days after purchase"
        }
      ]
    }
  ],
  "rating": 4.8,
  "reviewCount": 22,
  "ratingBreakdown": {
    "fiveStars": 20,
    "fourStars": 1,
    "threeStars": 0,
    "twoStars": 1,
    "oneStar": 0
  },
  "soldQuantity": "90+",
  "badges": [
    "Best Rated",
    "Popular Gift"
  ],
  "status": "Available",
  "isGiftable": true,
  "isBookable": false,
  "isOnlineRedemption": false,
  "endsAt": "2033-10-21T19:59:59Z",
  "highlights": "Enjoy general admission to Global Village Dubai, a seasonal hub for diverse cultures, shopping, dining, and entertainment. Contact the merchant via WhatsApp after purchase to receive your official QR entry ticket and enj...",
  "description": "Highlights\n- Immerse in diverse cultures: Visitors can explore myriad cultures from around the world in one vibrant destination.\n- Shop unique treasures: Guests will find an array of global shopping experiences with uniq...",
  "finePrint": "Redemption & Booking\n- Prior booking/cancellation (subject to availability) at least 6 hours in advance.\nInclusions & Limitations\n- Groupon prices are inclusive of VAT where applicable.\nAdditional Info\n- Contact the merc...",
  "locations": [
    {
      "name": "Dubai",
      "address": "Global Village, Dubai",
      "latitude": 25.07189490492643,
      "longitude": 55.3084159,
      "phone": null,
      "website": "https://journeywisetourism.com/",
      "directionsUrl": "https://www.google.com/maps/dir/?api=1&destination=25.07189490492643,55.3084159"
    }
  ],
  "images": [
    "https://img.grouponcdn.com/encore-service/4325qbDfDFxWTNnBkafzKkbyo6ib/qOg7f4u-4FNXAfET_1792492979684_webp-1200x750/v1/t2100x1260.webp",
    "https://img.grouponcdn.com/encore-service/3BCYoMR6tzGAqaiXjRFPtCki9Bhg/k5sKn7vk5kBVxTko_1792492979683_webp-1200x750/v1/t2100x1260.webp"
  ],
  "faqs": [
    {
      "question": "What is Global Village?",
      "answer": "Global Village is a multi-cultural festival park in Dubai that offers a wide array of entertainment, shopping, dining experiences, and attractions from various countries around the world."
    }
  ],
  "reviews": [
    {
      "author": "Abdullah",
      "rating": 5,
      "text": "Thanks for Hussain Rampurawala for making the booking experience easy",
      "date": "2026-10-22T18:46:29.339Z"
    }
  ]
}
```

You can download the dataset in JSON, CSV, Excel, XML, or HTML, or access it through the Apify API.

### Notes

- Only deal listings and deal pages are supported. Other pages, such as discount code (coupon code) pages, are skipped with a warning.
- Prices are in AED. The top-level `price` is the cheapest option that is still on sale; every option is listed in `options`.
- `soldQuantity` is the rounded figure Groupon shows, such as "90+" or "5,000+".
- `reviews` holds the latest reviews shown on the deal page (up to 5); `reviewCount` and `ratingBreakdown` cover all ratings.
- Results follow the order and location Groupon UAE uses for each city, so a city page can also include popular deals from nearby emirates.
- Some deals have no original price, FAQ, or reviews; those fields are returned as `null` or an empty list.

### Why use the Groupon UAE Scraper?

- ✅ **No login needed**: works with public data only, so there is no account to manage.
- 🛡️ **Works on Cloudflare-protected pages**: no proxy needed for stable results.
- 🎯 **Keeps your filters**: paste any listing URL from your browser and get exactly what you see there.
- 🧾 **Every deal option**: prices, discounts, and sales figures for each option, not only the headline price.
- 🧹 **Clean data**: numbers are real numbers, dates use one standard format, and text is free of HTML.
- 💸 **Pay for what you need**: set a result limit per URL or query and keep every run small and cheap.
- 🔄 **Ready for automation**: schedule runs, export to Google Sheets, or connect to Make, Zapier, and n8n.

### FAQ

#### How many results can I scrape?

You can set any number in **Maximum number of results**, or `0` for no limit. The actor keeps going until it reaches your limit or runs out of deals on the page or search.

#### Do I need a Groupon account?

No. The actor only collects publicly available data. You do not need to log in or provide any account details.

#### Can I scrape data on a schedule?

Yes. Use Apify Schedules to run the actor every hour, day, or week, and get fresh deals and prices automatically.

#### Can I request a new feature or filter?

Yes. Right now the actor supports start URLs, search queries, and city, category, sort, price, and rating filters. If you need other filters or inputs, get in touch and they can be added.

#### Can I get a custom or private version?

Yes. The actor can be customized for your workflow, delivered as a private version, or a new scraper can be built for a different website. Use the contact details below.

### Need to scrape other UAE travel and activity platforms?

- [Rayna Tours Scraper](https://apify.com/aboo.script/raynatours-scraper): Dubai and UAE tours, activities, and prices.
- [GetYourGuide Scraper - Activities & Attractions](https://apify.com/aboo.script/getyourguide-scraper): tours and attractions worldwide with prices and ratings.
- [Tiqets Scraper - Attractions & Tours](https://apify.com/aboo.script/tiqets-scraper): attraction and museum tickets with prices.
- [Viator Scraper](https://apify.com/aboo.script/viator-scraper): tours and experiences with prices and reviews.
- [The Agenda Scraper - Dubai Concerts & Shows](https://apify.com/aboo.script/theagenda-scraper): concerts and shows in Dubai.

***

**Need help or want a custom solution?**

- 📧 Email: aboo.script@gmail.com
- 🧩 More scrapers: [Apify profile](https://apify.com/aboo.script)

### Image Credit

Image credit: [Groupon UAE](https://www.groupon.ae/)

# Actor input Schema

## `startUrls` (type: `array`):

Groupon UAE URLs: city or category pages (e.g. https://www.groupon.ae/coupons/dubai/things-to-do), landing pages, search pages or single deal pages. Filters in the URL (sort, price, rating, category) are applied.

## `searchQueries` (type: `array`):

Keywords to search on Groupon UAE (e.g. spa, brunch, desert safari). Each query is scraped separately.

## `maxResults` (type: `integer`):

Maximum number of deals to scrape per start URL or search query. Use 0 for no limit.

## `city` (type: `string`):

City to search deals in. Applies to search queries only; start URLs keep their own city.

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

Only return deals from this category. Applies to search queries only.

## `sort` (type: `string`):

Order of the search results. Applies to search queries only.

## `minPrice` (type: `integer`):

Only return deals priced at or above this amount in AED. Applies to search queries only.

## `maxPrice` (type: `integer`):

Only return deals priced at or below this amount in AED. Applies to search queries only.

## `minRating` (type: `integer`):

Only return deals rated at least this many stars (1-5). Applies to search queries only.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://www.groupon.ae/coupons/dubai/things-to-do"
    }
  ],
  "maxResults": 5,
  "city": "dubai",
  "sort": "relevance"
}
```

# Actor output Schema

## `overview` (type: `string`):

No description

# 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 = {
    "startUrls": [
        {
            "url": "https://www.groupon.ae/coupons/dubai/things-to-do"
        }
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("aboo.script/groupon-ae-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 = { "startUrls": [{ "url": "https://www.groupon.ae/coupons/dubai/things-to-do" }] }

# Run the Actor and wait for it to finish
run = client.actor("aboo.script/groupon-ae-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 '{
  "startUrls": [
    {
      "url": "https://www.groupon.ae/coupons/dubai/things-to-do"
    }
  ]
}' |
apify call aboo.script/groupon-ae-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,aboo.script/groupon-ae-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/dpSIkIPaw5eaf1ss1/builds/dUDA4y673YOGuycwc/openapi.json
