Eventbrite Events avatar

Eventbrite Events

Pricing

from $0.50 / 1,000 results

Go to Apify Store
Eventbrite Events

Eventbrite Events

Scrapes public Eventbrite search/destination pages with Apify residential proxies for a given city + category + date window. Outputs events in the webhook schema.

Pricing

from $0.50 / 1,000 results

Rating

5.0

(1)

Developer

XenonDev

XenonDev

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

a day ago

Last modified

Share

xenon-eventbrite

Apify Actor that scrapes Eventbrite public search/destination pages for feedirl.

Uses Apify residential proxies + CheerioCrawler with SessionPool to avoid blocks. Outputs events in the exact shape the event-ingestion-webhook n8n workflow expects (source: "eventbrite").


Why scraping instead of API?

Eventbrite shut down their public Event Search API in 2019. There is no official way to browse "all public events in NYC / food this week" without a special distribution partner agreement. This Actor scrapes the same public destination pages a regular browser visits.


Setup

1. Install dependencies

$npm install

2. Local test run

Edit INPUT.json with your city/category/dates, then:

$npx apify run

Results appear in storage/datasets/default/.

Note: Local runs without real Apify proxies will often get blocked by Eventbrite. For reliable testing, deploy to Apify and run from the Console where residential proxies work.


Input

FieldTypeRequiredDefaultDescription
citystringyesCity name (one of the 23 supported metros)
categorystringyesEventbrite category slug
startDatestringyesYYYY-MM-DD
endDatestringyesYYYY-MM-DD
countrystringnounited-statesCountry slug
maxPagesintegerno20Max listing pages to scrape (~20 events/page)
proxyConfigurationobjectnoRESIDENTIALProxy config — keep residential

Supported cities

New York, Los Angeles, Miami, Nashville, Austin, Chicago, Washington DC, Boston, Philadelphia, San Francisco, San Diego, Seattle, Denver, Houston, Dallas, Atlanta, Charlotte, Kansas City, St. Louis, Cleveland, Phoenix, Orlando, Salt Lake City

Supported categories

food-and-drink, health, sports-and-fitness, arts, film-and-media, science-and-tech, business


How it works

  1. Builds a destination search URL for city/category?start_date=...&end_date=...
  2. CheerioCrawler fetches pages through US residential proxies
  3. Detects and retires sessions on block pages (403, captcha, Cloudflare)
  4. Extracts events from __SERVER_DATA__ embedded JSON (preferred) or CSS selectors (fallback)
  5. Maps each event to the feedirl Eventbrite schema
  6. Paginates until maxPages or no next page

Output shape (per event)

{
"_type": "destination_event",
"id": "123456789",
"eventbrite_event_id": "123456789",
"name": "NYC Food & Wine Festival",
"summary": "...",
"url": "https://www.eventbrite.com/e/...",
"start_date": "2026-08-20",
"start_time": "18:00",
"end_date": "2026-08-20",
"end_time": "22:00",
"is_online_event": false,
"image": { "url": "https://img.evbuc.com/..." },
"tags": [{ "display_name": "Food & Drink" }],
"ticket_availability": {
"is_free": false,
"minimum_ticket_price": { "display": "$35" }
},
"primary_venue": {
"name": "Pier 60",
"address": {
"address_1": "Pier 60, Chelsea Piers",
"city": "New York",
"localized_address_display": "Pier 60, Chelsea Piers, New York, NY 10011",
"latitude": "40.7480",
"longitude": "-74.0048"
}
}
}

Maintenance guide

Eventbrite changes their page structure occasionally. When events stop returning:

  1. Open DevTools → Network in Chrome, visit the search page
  2. Look for a request returning destination_event objects in JSON
  3. Update parseList.js findEvents() to target the new JSON key structure
  4. The mapEvent.js should mostly survive changes as long as venue/date fields exist

Deploy to Apify

apify login
apify push

After deploying, copy the Actor ID from the Apify Console and replace EVENTBRITE_ACTOR_ID in event-ingestion.json in the n8n repo.


n8n wiring

In feedirl-n8n/n8n-workflows/event-ingestion.json:

const EVENTBRITE_ACTOR_ID = 'YOUR_USERNAME~xenon-eventbrite';

The city × category × date input shape is identical to what the n8n loop already builds.