Luma Calendar Events Scraper
Pricing
Pay per usage
Luma Calendar Events Scraper
Extracts upcoming events from Luma calendars with full event page text. Supports multiple calendars, date range and city filters, and chronological sorting. Outputs event name, date, location, URL, and page content — ideal for event monitoring, discovery, and AI pipelines.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Matej Hamas
Actor stats
0
Bookmarked
5
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Share
Extracts upcoming events from one or more Luma calendars, enriched with the full text content of each event page. Events are sorted chronologically and output as a structured dataset — ready for monitoring, analysis, or AI pipelines.
What is Luma?
Luma is a popular event platform used by tech communities, startups, and developer groups to organize and promote meetups, conferences, and hackathons. Each organizer has a calendar identified by a slug (e.g. apify), which lists their upcoming featured events.
Use cases
- Event monitoring — Track upcoming events across multiple communities or organizations from a single run.
- Conference discovery — Find tech events in a specific city or date range by combining calendar slugs with filters.
- Content extraction — Get the full text of each event page for summarization, search indexing, or RAG pipelines.
- Competitive intelligence — Monitor what events competitor companies or communities are hosting or attending.
- Community analytics — Aggregate event data across calendars to spot trends in topics, locations, or timing.
Input
| Field | Type | Required | Description |
|---|---|---|---|
slugs | string[] | Yes | One or more Luma calendar slugs. You can find the slug in the calendar URL: https://lu.ma/apify. |
dateFrom | string | No | Only include events on or after this date (inclusive). Format: YYYY-MM-DD. |
dateTo | string | No | Only include events on or before this date (inclusive). Format: YYYY-MM-DD. |
city | string | No | Filter events by city. Case-insensitive substring match — "Francisco" matches "San Francisco". |
maxEvents | integer | No | Limit to the first N upcoming events across all calendars. Fewer events = faster and cheaper runs. 0 or empty = no limit. |
All filters are applied in this order: date range → city → max events. This means you can combine them freely — for example, get the next 5 events in San Francisco happening in April 2026.
Example input — simple
{"slugs": ["apify"],"maxEvents": 5}
Example input — with all filters
{"slugs": ["apify"],"dateFrom": "2026-04-01","dateTo": "2026-06-30","city": "San Francisco","maxEvents": 10}
Output
Each event in the output dataset contains:
| Field | Type | Description |
|---|---|---|
slug | string | The calendar slug this event belongs to. |
name | string | Event name. |
date | string | Event date in YYYY-MM-DD format (in the event's local timezone). |
timeUTC | string | Start time as ISO 8601 string in UTC (e.g. "2026-03-26T09:00:00.000Z"). |
timeLocal | string | Start time formatted in the event's local timezone (e.g. "10:00"). |
city | string | Event location (city/region). |
url | string | Direct link to the event page. |
text | string | Full text content extracted from the event page. |
Example output
Here are the first 5 upcoming events from the apify calendar:
[{"slug": "apify","name": "COFIT Career Fair","date": "2026-03-26","timeUTC": "2026-03-26T09:00:00.000Z","timeLocal": "10:00","city": "Hlavní město Praha, Hlavní město Praha","url": "https://fit.cvut.cz/en/cooperation/for-students/cofit-career-fair","text": "COFIT Career Fair - FIT CTU The COFIT Career Fair connects leading companies with talented students..."},{"slug": "apify","name": "OpenClawPrague #1","date": "2026-03-26","timeUTC": "2026-03-26T16:30:00.000Z","timeLocal": "17:30","city": "Hlavní město Praha, Hlavní město Praha","url": "https://lu.ma/l5boronk","text": "Share your best stories! We're building always-on open-source AI agents..."},{"slug": "apify","name": "Cursor Hackathon Kashmir","date": "2026-03-28","timeUTC": "2026-03-28T04:30:00.000Z","timeLocal": "10:00","city": "Srinagar","url": "https://lu.ma/za5937hy","text": "Cursor Hackathon Kashmir 2026 Build with the best way to code with AI. Build with Cursor..."},{"slug": "apify","name": "GenAI Zürich 2026 — The European Summit on Applied Generative AI","date": "2026-04-01","timeUTC": "2026-04-01T06:00:00.000Z","timeLocal": "08:00","city": "Zürich, Zürich","url": "https://www.genaizurich.ch/","text": "GenAI Zürich 2026 | The European Summit on Applied Generative AI..."},{"slug": "apify","name": "MCP Dev Summit North America","date": "2026-04-02","timeUTC": "2026-04-02T13:00:00.000Z","timeLocal": "09:00","city": "New York, New York","url": "https://events.linuxfoundation.org/mcp-dev-summit-north-america/","text": "MCP Dev Summit North America April 2-3, 2026 New York, NY #MCPDevSummit..."}]
The text field contains the full event page content (truncated above for readability). In the actual dataset, text can be up to 15,000 characters per event.
Tips
- Start small — Use
maxEventsto limit your first runs. Fewer events means faster and cheaper runs. - Combine calendars — Pass multiple slugs to aggregate events from different communities into a single chronological feed.
- Narrow by date — Use
dateFromanddateToto focus on a specific time window, e.g. just the next month or a conference season. - Graceful errors — If a slug doesn't exist or a calendar is temporarily unavailable, the Actor logs a warning and continues with the rest. You'll never lose an entire run because of one bad slug.
How much will it cost?
The Actor uses minimal compute for most events. For events hosted on external websites (outside lu.ma), Website Content Crawler is used to extract page text, which consumes additional platform credits. A typical run with 10-20 events costs a few cents.
Use maxEvents to control costs — if you only need the next 5 events, set it to 5.