# Facebook Events Scraper & API: Events by City & Organizer (`s_actors/facebook-events-scraper`) Actor

Scrape public Facebook events by city, keyword, Page or link without login: date and time, venue, address, coordinates, organizer, hosts, tickets, category, responses. Whole city feeds (hundreds of events), all events of a Page, alerts for new events.

- **URL**: https://apify.com/s_actors/facebook-events-scraper.md
- **Developed by:** [Superior Actors](https://apify.com/s_actors) (community)
- **Categories:** Social media, Lead generation, Travel
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 1 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.99 / 1,000 events

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

### Facebook Events Scraper & API: Events by City & Organizer

Scrape **public Facebook events** by **city**, by **keyword**, from any **Page or organizer**, or from pasted **event links**, without a Facebook login or cookies. Every event comes with its name, start and end time in local time, venue, **full address and coordinates**, organizer and all hosts, **ticket link**, category, description, cover image and how many people are **interested and going**.

A city gives its **whole Facebook events feed**: hundreds of upcoming events (New York: 450-850 for the next three months), not the handful a logged-out search shows. A Page gives **all its events, upcoming and past**, not only the first 8.

```json
{ "cities": ["London", "Austin, Texas"], "searchQueries": ["jazz", "comedy"], "dateRange": "this_weekend" }
```

Use it as a **Facebook Events API**: one call returns clean JSON for every city, word and organizer.

#### What you get

One row per event. Real example, October 2026 (`London`):

| name | startTime | placeName | address | organizerName | interested | going |
|---|---|---|---|---|---|---|
| Deep Purple | 2026-11-25 19:30 | Royal Albert Hall | Kensington Gore, SW7 2AP London, UK | AEG Presents UK | 3,100 | 189 |
| Korn | 2026-11-04 18:30 | The O2 | Peninsula Square, SE10 0DX London, UK | AEG Presents UK | 1,100 | 415 |
| The Pink Panther Club at The Rivoli Ballroom | 2026-11-01 14:00 | Rivoli Ballroom | 350 Brockley Road, SE4 2BY London, UK | The Pink Panther Club | 935 | 104 |
| Psychobilly Freakout 2026 | London | 2026-10-30 13:00 | New Cross Inn | 323 New Cross Road, London, SE14 6AS | New Cross Inn | 567 | 179 |
| City of London Christmas Market | 2026-11-24 11:00 | 1 Sky Garden Walk | 1 Fenchurch Street, London, EC3M 8AF | SoLo Craft Fair | 2,500 | 63 |

| Field | Description |
|---|---|
| `name`, `url`, `id` | The event and its link |
| `startTime`, `endTime`, `timezone`, `dateText` | Start and end in the event's local time with UTC offset (`2026-11-25T19:30:00+00:00`), the time zone, and the date as Facebook writes it |
| `placeName`, `address`, `city`, `cityId`, `latitude`, `longitude` | Venue, one-line address, Facebook city and exact coordinates |
| `interestedCount`, `goingCount`, `socialText` | People interested and going, as Facebook shows them on city event lists (`3.1K interested · 189 going`) |
| `respondedCount` | Exact number of people who responded (interested + going), for every event with details |
| `organizerName`, `organizerUrl`, `hosts`, `creatorName` | The organizer's Page and every co-host with name, link and id |
| `ticketUrl`, `ticketProvider` | Ticket link and seller (Ticketmaster, Eventbrite, the venue...) |
| `categories`, `description`, `coverImage` | Facebook category (Music, Comedy, Film...), full description and the cover photo |
| `isOnline`, `isPast`, `isCanceled`, `eventKind`, `parentEventId` | Online event, already over, canceled, public, the main event of a recurring date |
| `sourceType`, `cityInput`, `searchQuery`, `sourceUrl` | Which city, word, Page or link found the event |
| `isNew`, `firstSeenAt` | Compared with earlier runs of the same input: new event, and when it was first seen |

#### How it works

1. Add **cities**, and / or **search words**, and / or **Facebook links** (events, Pages, city event pages, event searches)
2. Pick the **dates** (today, this weekend, next 30 days, custom) and how many events per source
3. Run: open the **Events** or **Details** view, export to CSV / Excel / JSON, or connect a Google Sheet, Slack or a webhook

| Input | What it does |
|---|---|
| **Cities** | The city's whole Facebook events feed: concerts, parties, markets, comedy, sports, classes. `London`, `Austin, Texas`, `München` or the link of the city's events page |
| **Search words** + **Cities** | Events of each city with the words in their name, venue or description, plus Facebook's own event search in that city: `jazz`, `yoga`, `techno`, `book fair` |
| **Search words** alone | Facebook's event search (it finds few events and follows the server's country: add a city for local events) |
| **Facebook links** | An event (returned with all details), a **Page or profile** (all its upcoming and / or past events), a city events page, an event search with its filters |
| **Page events** | Upcoming, past, or both, for Page links |
| **Dates** | Today, tomorrow, this weekend, this week, next week, next 30 days or custom dates. Events outside are free |
| **Max events per source** | Default 50, up to 2,000 per city, word × city, Page or link |
| **Event details** | On by default: address, coordinates, hosts, tickets, category, description, end time, exact responses |
| **Only new events** | Alerts: return only events this input has not returned before |

#### Why this Actor

| | |
|---|---|
| 🏙️ **Whole city feeds** | A city returns its full Facebook events feed, hundreds of events, by the same route Facebook's own "Events in New York" page uses. Other tools stop at the few results of a logged-out search |
| 📅 **All events of a Page** | Upcoming and past events of any venue, promoter or band Page: St. George Theatre returned 29 of 29 upcoming and 230+ past events, not the first 8 |
| 📍 **Exact place** | Full address, latitude and longitude, Facebook city id on every event with details: ready for maps and local guides |
| 🎟️ **Who and where to buy** | Organizer and every co-host with their Facebook Page links, ticket link and seller |
| 🔔 **New-event alerts** | Every run remembers its events: `isNew` on every row, or only new ones with one switch |
| 🔓 **No login, no cookies** | Your Facebook account is never used or put at risk |
| 💰 **Low price** | $2.69 per 1,000 events with details, no extra fee for details or proxies |

#### Facebook events near me, this weekend

1. Write your city in **Cities** (for example `Manchester`), pick **This weekend** in **Dates**
2. Add words if you look for something specific: `live music`, `markets`, `kids`
3. Run: you get every public Facebook event in the city that weekend with venue, address, time and tickets

#### Alerts for new events

1. Add your cities, words or organizer Pages
2. Turn on **Only new events**
3. Save as a task and schedule it (daily or weekly). Add an integration: email, Slack, Google Sheets, Telegram through Zapier or Make, or a webhook

The first run returns the current events and remembers them; every next run returns only events that appeared since. The history is kept per input in your account (key-value store `facebook-events-history`, the last 50,000 events).

#### Pricing

Pay per event. Apify Scale and Business plans pay less:

| Event | Free and Starter plans | Scale plan | Business plan |
|---|---|---|---|
| Run start | $0.001 | $0.001 | $0.001 |
| Event (with details) | $0.00269 | $0.00239 | $0.00199 |

| Task | Cost |
|---|---|
| 50 events of one city | ~$0.14 |
| 1,000 events (a whole big city, or 20 cities × 50) | ~$2.69 |
| Daily alert for one city with ~10 new events a day, for a month | ~$0.84 per month |

Repeats, events outside the dates and events skipped by **Only new** are free.

#### Ready-made tasks

Open it, change the city and dates, and run:

| Task | What you get |
|---|---|
| [Facebook Events Near Me This Weekend](https://apify.com/s_actors/facebook-events-scraper/examples/facebook-events-near-me-this-weekend) | Every public Facebook event in a city this weekend |

#### FAQ

**How do I scrape Facebook events?** Write a city and run. For a venue or promoter, paste its Facebook Page link; for single events, paste their links. Open the **Events** view and export.

**How many events can I get for a city?** Everything Facebook lists in the city's events feed, usually the next ~3 months: a few hundred for a mid-size city, 450-850 for New York. Narrow it with **Dates** and **Search words**.

**Why does a search word find fewer events than a city?** Facebook's event search without login returns only ~20 events per word. With a city, the Actor also reads the city's whole feed and keeps the events with your words, which finds many more.

**My city is not found. What now?** Most cities are found by name. For a small town, open facebook.com/events in a browser, pick the city under Location and paste the page's address (`facebook.com/events/explore/...`) into **Cities** or **Facebook links**.

**Can I get past events?** Yes, from Pages: paste the Page link and pick **Past** or **Upcoming and past** in **Page events**. City feeds list upcoming events only.

**Do I get the list of attendees?** No: Facebook shows who is going only to logged-in friends. You get the counts: interested and going on city lists, the exact total of responses for every event with details.

**Does Facebook have an events API?** The official Graph API returns events only of Pages you manage. This Actor works for any public event without an access token.

**Do I need a Facebook account?** No. The Actor reads events the way Facebook shows them to a visitor who is not logged in. Private events and events of private groups are not visible.

#### Use with the API and AI agents

Run it via the [Apify API](https://docs.apify.com/api/v2) from Python, Node.js, n8n or any HTTP client, or connect it to Claude, ChatGPT and other AI agents through the [Apify MCP server](https://mcp.apify.com): "List jazz concerts in Berlin next week with venue addresses and ticket links".

#### Other Facebook tools

| Tool | What it does |
|---|---|
| [Facebook Page Scraper](https://apify.com/s_actors/facebook-page-scraper) | Exact followers, email, phone, website, page creation date, ads status and last post of any page |
| [Facebook Page Search](https://apify.com/s_actors/facebook-page-search-scraper) | Facebook business pages by keyword and city, with exact followers, email, phone and address |
| [Facebook Email Scraper](https://apify.com/s_actors/facebook-email-scraper) | Emails of Facebook pages from the page and its website, mail server checked |
| [Facebook Follower Count Checker](https://apify.com/s_actors/facebook-follower-count-checker) | Exact follower count of many pages and its growth over 7 and 30 days |
| [Facebook Video Transcript](https://apify.com/s_actors/facebook-video-transcript) | Transcripts of Facebook videos and Reels: Facebook captions or AI, SRT and VTT |
| [Facebook Marketplace Scraper](https://apify.com/s_actors/facebook-marketplace-scraper) | Marketplace listings by keyword and city, new listing and price drop alerts |

#### Is it legal?

The Actor reads only public events that Facebook shows to any visitor, without logging in. Organizer and host names are public Page data; handle any personal data in line with GDPR and other privacy laws, and use the data for event research, local guides and promotion in line with Facebook's terms.

# Actor input Schema

## `cities` (type: `array`):

One per line: a city ("London", "Austin, Texas", "Berlin") or the link of its Facebook events page (facebook.com/events/explore/...). Without search words you get the city's whole events feed: hundreds of upcoming events (New York: 450-850 for the next 3 months).

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

Optional, one per line ("jazz", "yoga", "techno", "comedy"). With cities: events of each city whose name, venue or description has the words, plus Facebook's own event search there. Without cities: Facebook's event search only (it finds few events and follows the country of the server's IP, so add a city for local events).

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

Optional. Any of: an event (facebook.com/events/123...), a Page or profile that hosts events (facebook.com/StGeorgeTheatre: all its events, not only the first 8), a city events page (facebook.com/events/explore/...) or an events search link with its filters.

## `pageEvents` (type: `string`):

For Page / profile links: which of its events to return.

## `dateRange` (type: `string`):

Keep only events that start within these dates (the event's local date). Skipped events are free.

## `startDate` (type: `string`):

With "Custom": first day (YYYY-MM-DD).

## `endDate` (type: `string`):

With "Custom": last day (YYYY-MM-DD).

## `maxEventsPerSource` (type: `integer`):

Per city, per search word × city, per Page and per link. An event found twice is returned once.

## `includeDetails` (type: `boolean`):

Load each event's details: full description, exact address and coordinates, organizer and all hosts, ticket link, category, end time, exact number of people who responded. Included in the event price; off = faster, list data only.

## `onlyNew` (type: `boolean`):

Return only events this input has not returned before. The first run returns everything and remembers it. Every row has isNew and firstSeenAt either way.

## `debugLog` (type: `boolean`):

Log every request attempt (for support).

## Actor input object example

```json
{
  "cities": [
    "London"
  ],
  "pageEvents": "upcoming",
  "dateRange": "any",
  "maxEventsPerSource": 50,
  "includeDetails": true,
  "onlyNew": false,
  "debugLog": false
}
```

# Actor output Schema

## `events` (type: `string`):

One row per event: name, start, venue, city, organizer, responses, tickets.

## `details` (type: `string`):

Address, coordinates, hosts, description, end time (with "Event details" on).

## `new` (type: `string`):

Whether each event is new since the previous run of the same input.

## `all` (type: `string`):

Every field of every row.

# 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 = {
    "cities": [
        "London"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("s_actors/facebook-events-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 = { "cities": ["London"] }

# Run the Actor and wait for it to finish
run = client.actor("s_actors/facebook-events-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 '{
  "cities": [
    "London"
  ]
}' |
apify call s_actors/facebook-events-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,s_actors/facebook-events-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/6zbZeBNxVVIEXsW4X/builds/1tQmOq8h4jbiTcMW3/openapi.json
