Luma Event Scraper
Pricing
$2.25 / 1,000 events
Luma Event Scraper
Collect public Luma events and user profiles. Get dates, venues, ticket details, hosts, and public social links when available for event lists and organizer research.
Pricing
$2.25 / 1,000 events
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
📅 Turn public Luma events into research data
For event researchers, community teams, and developers, this Actor collects public Luma events and user profiles. Get dates, venues, ticket details, hosts, and public social links when available. Use the data to build event lists and review organizers without opening each page by hand.
- Find SF Networking Events for a local event list.
- Collect public event data through the Luma Events API task.
- Find Luma Virtual Events for online event research.
- Review Free Luma Events with their dates and public ticket data.
- Read Luma Event Details from a known event.
📦 Event details and public user profiles
Each event row has its Luma ID, title, public link, and start time. Available details can include the description, venue, host profiles, featured guests, tickets, registration state, and public counts.
User profile rows have a Luma ID, name, and public link. They can also include a bio, images, website, social handles, joining date, and source-reported activity counts.
Optional fields may be absent when Luma does not provide them. Counts and verification flags come from Luma. The Actor does not infer missing values.
The first eligible occurrence of each source item is saved as soon as it is found. Later matches from other links, IDs, or keywords are ignored. A saved row does not collect details from later matches.
▶️ Choose a Luma source and run
- Choose Events or User profiles.
- For events, use the discover feed, a city, category, keywords, coordinates, or public source links.
- For user profiles, add public profile links or user IDs.
- Set Maximum results if you want a smaller run, then start the Actor.
- Open Results to review or export the dataset.
Event sources share the same filters. Fields for the other result type are ignored. No Luma login or API key is needed for public data.
⚙️ Input
Input fields
| Field | Type | What it does |
|---|---|---|
resultType | string | Required. Choose events or userProfiles. |
eventSources | string array | Public event, calendar, community, organizer, or user profile links. IDs can use event:, calendar:, or user: before the ID. Profile sources find public events. |
discover | boolean | Find events in the public discover feed. City, category, and location choices narrow this feed. Can run with submitted sources and keywords. Defaults to true. |
city | string | Supported city name or Luma city handle. Starts city discovery. Add a category to use both. |
category | string | Luma category handle or link. Starts category discovery, or narrows city or location discovery. |
keywords | string array | Search events for each word or phrase with the same filters. |
location | object | Find events around coordinates. Both latitude and longitude are required when used. |
location.latitude | number | Latitude in decimal degrees, from -90 to 90. |
location.longitude | number | Longitude in decimal degrees, from -180 to 180. |
calendarPeriod | string | For calendar, community, and organizer sources, choose upcoming, past, or both. Defaults to upcoming. |
startDate | string | Include events starting on or after this UTC date, in YYYY-MM-DD format. |
endDate | string | Include events starting on or before this UTC date, in YYYY-MM-DD format. |
attendance | string | Choose all, inPerson, or virtual events. Defaults to all. |
pricing | string | Choose all, free, or paid events. Defaults to all. |
profileSources | string array | Public Luma user profile links or user IDs. Used only for User profiles. |
maxItems | integer | Optional positive result limit for either result type. Leave it empty to return all available results until the source is exhausted. |
There is no fixed upper bound for maxItems. Luma may provide fewer results than the limit you set.
Example input
This public input is copied from a successful default-input run.
{"resultType": "events","discover": true,"calendarPeriod": "upcoming","attendance": "all","pricing": "all","maxItems": 10}
🧾 Output
Dataset link
| Field | Type | What it does |
|---|---|---|
results | string | Opens the events or user profiles saved to the default dataset. |
The dataset has two row shapes. Nested paths below describe fields inside objects or array entries. Optional details appear only when they are available.
Event row
| Field | Type | What it does |
|---|---|---|
recordType | string | event for an event row. |
id | string | Luma source ID for joining records. |
name | string | Public event title. |
url | string | Public source page link supplied by Luma. |
startAt | string | Event start time with its UTC offset. |
endAt | string | Event end time with its UTC offset. |
timezone | string | Event time zone reported by Luma. |
description | string | Readable public event description. |
location | object | Public event venue and geographic details. |
location.name | string | Venue name. |
location.address | string | Public street address. |
location.neighborhood | string | Neighborhood reported by Luma. |
location.city | string | City reported by Luma. |
location.region | string | Region or state reported by Luma. |
location.country | string | Country reported by Luma. |
location.latitude | number | Venue latitude in decimal degrees. |
location.longitude | number | Venue longitude in decimal degrees. |
attendanceMode | string | Attendance mode reported by Luma. |
meetingUrl | string | Public virtual meeting link. |
meetingDetails | string | Public virtual meeting instructions. |
coverImageUrl | string | Public event cover image link. |
socialImageUrl | string | Public event social-share image link. |
organizer | object | Public calendar, community, or organizer profile. |
organizer.id | string | Luma organizer ID for joining source records. |
organizer.name | string | Public name. |
organizer.url | string | Public profile link supplied by Luma. |
organizer.bio | string | Public biography. |
organizer.avatarUrl | string | Public profile image link. |
organizer.websiteUrl | string | Public website link. |
organizer.social | object | Public social handles and links. |
organizer.social.instagram | string | Public Instagram handle. |
organizer.social.twitter | string | Public X or Twitter handle. |
organizer.social.linkedin | string | Public LinkedIn handle or link. |
organizer.social.youtube | string | Public YouTube handle or link. |
organizer.social.tiktok | string | Public TikTok handle. |
organizer.verified | boolean | Whether Luma reports this profile as verified. |
organizer.coverImageUrl | string | Public cover image link. |
hosts | object array | Public event hosts. |
hosts[].id | string | Luma user ID for joining source records. |
hosts[].name | string | Public name. |
hosts[].url | string | Public profile link supplied by Luma. |
hosts[].bio | string | Public biography. |
hosts[].avatarUrl | string | Public profile image link. |
hosts[].websiteUrl | string | Public website link. |
hosts[].social | object | Public social handles and links. |
hosts[].social.instagram | string | Public Instagram handle. |
hosts[].social.twitter | string | Public X or Twitter handle. |
hosts[].social.linkedin | string | Public LinkedIn handle or link. |
hosts[].social.youtube | string | Public YouTube handle or link. |
hosts[].social.tiktok | string | Public TikTok handle. |
hosts[].verified | boolean | Whether Luma reports this profile as verified. |
featuredGuests | object array | Guests publicly featured on the event page. |
featuredGuests[].id | string | Luma user ID for joining source records. |
featuredGuests[].name | string | Public name. |
featuredGuests[].url | string | Public profile link supplied by Luma. |
featuredGuests[].bio | string | Public biography. |
featuredGuests[].avatarUrl | string | Public profile image link. |
featuredGuests[].websiteUrl | string | Public website link. |
featuredGuests[].social | object | Public social handles and links. |
featuredGuests[].social.instagram | string | Public Instagram handle. |
featuredGuests[].social.twitter | string | Public X or Twitter handle. |
featuredGuests[].social.linkedin | string | Public LinkedIn handle or link. |
featuredGuests[].social.youtube | string | Public YouTube handle or link. |
featuredGuests[].social.tiktok | string | Public TikTok handle. |
featuredGuests[].verified | boolean | Whether Luma reports this profile as verified. |
categories | object array | Categories assigned to the event. |
categories[].id | string | Category ID for joining source records. |
categories[].name | string | Category name. |
categories[].description | string | Public category description. |
categories[].subscriberCount | integer | Category audience total reported by Luma. |
language | string | Event language reported by Luma. |
tickets | object array | Public ticket tiers. |
tickets[].id | string | Ticket tier ID for joining source records. |
tickets[].name | string | Ticket tier name. |
tickets[].price | number | Ticket price in the original currency units. |
tickets[].currency | string | Original ticket currency code. |
tickets[].capacity | integer | Tier capacity reported by Luma. |
tickets[].registrationCount | integer | Tier registration total reported by Luma. |
tickets[].salesStartAt | string | Start of the public ticket sales window. |
tickets[].salesEndAt | string | End of the public ticket sales window. |
registration | object | Public registration state reported by Luma. |
registration.status | string | Registration availability reported by Luma. |
registration.approvalRequired | boolean | Whether registration needs host approval. |
registration.waitlistEnabled | boolean | Whether Luma offers a waitlist. |
registration.capacity | integer | Event capacity reported by Luma. |
registration.soldOut | boolean | Whether Luma reports the event as sold out. |
registration.questions | object array | Public registration questions. |
registration.questions[].id | string | Question ID for matching source questions. |
registration.questions[].label | string | Question text shown to visitors. |
registration.questions[].type | string | Question type reported by Luma. |
registration.questions[].required | boolean | Whether an answer is required. |
registration.questions[].options | string array | Choices shown for this question. |
guestCount | integer | Public guest total reported by Luma. |
ticketRegistrationCount | integer | Public ticket registration total reported by Luma. |
This complete event row came from a successful current-beta run. Public source values are kept as returned.
{"recordType": "event","id": "evt-PnyZfgnXsJ8nCtt","name": "Virtual: USC-SOM Greenville Admissions Zoom Call","url": "https://luma.com/0m0zsex8","startAt": "2026-11-02T21:00:00.000Z","endAt": "2026-11-02T22:00:00.000Z","timezone": "America/New_York","description": "All PreMed students are invited to the Virtual Admissions Zoom Call with USC School of Medicine Greenville.\nDetails:\nDate: Monday, November 2\n\nTime: 4:00-5:00pm\n\nLocation: ZOOM\n\nPoint Value: 1 Professional point\n\nDress Code: Business Casual\n\nATTENTION: You will only receive a point for this event if you are dressed in business casual and have your camera turned on for the entire duration of the event!\nTake Away:\nThis virtual session will give students an inside look at the USC School of Medicine Greenville admissions process. Attendees will learn about the application timeline, admissions requirements, interview process, and qualities the school looks for in applicants. Students will also have the opportunity to ask questions directly to USC-SOM Greenville admissions representatives.\n\nWhy Attend?\nWhether you are considering USC-SOM Greenville for medical school or are still exploring your options, this event provides an opportunity to learn directly from the admissions team, better understand the application process, and ask questions about what it takes to prepare for a successful application.\n\nQuestions? Contact:\nName: Shivangi Nayak\n\nEmail: snayak@email.sc.edu\n\nPhone Number: 864-434-3142","language": "en","location": {"name": "Russell House","address": "Russell House, 1400 Greene St, Columbia, SC 29208, USA","neighborhood": "Midtown - Downtown","city": "Columbia","region": "South Carolina","country": "United States","latitude": 33.996455499999996,"longitude": -81.0270291},"attendanceMode": "offline","meetingDetails": "ATTENTION: You will only receive a point for this event if you are dressed in business casual and have your camera turned on for the entire duration of the event!","organizer": {"id": "cal-JxQhUyKnCH20vv3","name": "USC Alpha Epsilon Delta","url": "https://luma.com/uscaed","avatarUrl": "https://images.lumacdn.com/calendars/bi/42ab6c0c-8c3e-44d4-87c7-7139263ac5e9.png","verified": false,"social": {},"coverImageUrl": "https://images.lumacdn.com/calendar-cover-images/ef/6e3d8a14-ffab-4398-a0ff-8b44f08ce9eb.jpg"},"hosts": [{"id": "usr-y21zvlax5wZ45QZ","name": "USC AED","url": "https://luma.com/user/USCAED","avatarUrl": "https://images.lumacdn.com/avatars/23/c727299e-5b7c-4998-bb95-52e35bfcfdd3.png","websiteUrl": "https://www.uofscaed.com/","verified": false,"social": {"instagram": "uofscaed","linkedin": "/company/uofscaed"}}],"featuredGuests": [{"id": "usr-1LnGSNtPm7yX4oW","name": "Alexia George","url": "https://luma.com/user/usr-1LnGSNtPm7yX4oW","avatarUrl": "https://cdn.lu.ma/avatars-default/avatar_17.png","verified": false,"social": {}},{"id": "usr-1pPea4Zoh4PoIFP","name": "Layla Foster","url": "https://luma.com/user/usr-1pPea4Zoh4PoIFP","avatarUrl": "https://cdn.lu.ma/avatars-default/avatar_42.png","verified": false,"social": {}},{"id": "usr-3XCC9HovLZ3jmWv","name": "TYREN","url": "https://luma.com/user/usr-3XCC9HovLZ3jmWv","avatarUrl": "https://cdn.lu.ma/avatars-default/avatar_11.png","verified": false,"social": {}},{"id": "usr-4SxDoGTyzMtUHMH","name": "Savanna Jones","url": "https://luma.com/user/usr-4SxDoGTyzMtUHMH","avatarUrl": "https://cdn.lu.ma/avatars-default/avatar_20.png","verified": false,"social": {}},{"id": "usr-aZwifUI34ROmkBo","name": "Brooke Bouchard","url": "https://luma.com/user/usr-aZwifUI34ROmkBo","avatarUrl": "https://cdn.lu.ma/avatars-default/avatar_10.png","verified": false,"social": {}},{"id": "usr-DxGJ16Lgh76uRyJ","name": "Roshni Ismail","url": "https://luma.com/user/usr-DxGJ16Lgh76uRyJ","avatarUrl": "https://cdn.lu.ma/avatars-default/avatar_29.png","verified": false,"social": {}},{"id": "usr-ka2CIzY1D1g3Twx","name": "Eleanor Cantrell","url": "https://luma.com/user/usr-ka2CIzY1D1g3Twx","avatarUrl": "https://cdn.lu.ma/avatars-default/avatar_43.png","verified": false,"social": {}}],"tickets": [{"id": "ttype-J1KVEc5SrHVsrHR","name": "Standard","price": 0,"registrationCount": 7}],"coverImageUrl": "https://images.lumacdn.com/uploads/1m/ce75912a-ea91-4e5b-b9dd-6f669b45a592.png","socialImageUrl": "https://images.lumacdn.com/event-social/zs/7cfb2635-f287-4761-86cb-f32246242cd3.png","guestCount": 7,"ticketRegistrationCount": 7,"registration": {"status": "open","approvalRequired": false,"waitlistEnabled": false,"soldOut": false,"questions": []},"categories": []}
User profile row
| Field | Type | What it does |
|---|---|---|
recordType | string | userProfile for a user profile row. |
id | string | Luma source ID for joining records. |
name | string | Public user name. |
url | string | Public source page link supplied by Luma. |
bio | string | Public biography. |
avatarUrl | string | Public profile image link. |
websiteUrl | string | Public website link. |
social | object | Public social handles and links. |
social.instagram | string | Public Instagram handle. |
social.twitter | string | Public X or Twitter handle. |
social.linkedin | string | Public LinkedIn handle or link. |
social.youtube | string | Public YouTube handle or link. |
social.tiktok | string | Public TikTok handle. |
verified | boolean | Whether Luma reports this profile as verified. |
joinedAt | string | Profile joining date reported by Luma. |
hostedEventCount | integer | Hosted event total reported by Luma. |
attendedEventCount | integer | Attended event total reported by Luma. |
This complete profile row came from a successful current-beta run.
{"recordType": "userProfile","id": "usr-Kwp5gJrd14BIlGC","name": "AI LA","url": "https://luma.com/user/AILA","avatarUrl": "https://cdn.lu.ma/avatars/sh/29b01259-5626-4ff6-be03-4b59294cd5f4","websiteUrl": "https://joinai.la","verified": false,"social": {"instagram": "AILA_Community","twitter": "AILA_community","linkedin": "/company/ai-la","youtube": "AILAcommunity"},"joinedAt": "2022-01-07T18:52:53.954Z","hostedEventCount": 261,"attendedEventCount": 140}
💳 Pricing
This Actor uses pay-per-event pricing. One public event read and saved to your dataset is one charged event. See the Actor's pricing panel for the current rate.
🔌 Integrations
Start runs and read the dataset with the Apify API. You can also export the dataset from Apify for use in your own tools.
❓ FAQ
Can I collect private attendees or registration answers?
No. The Actor collects public event and profile data. It does not access private events, organizer dashboards, restricted attendee lists, or registration answers.
What happens when two sources find the same event?
The first eligible occurrence is saved. Later matches are ignored and do not update the saved row.
Can I get past calendar events?
Yes. Set calendarPeriod to past or both for calendar, community, or organizer sources.
Can I filter events by date, format, or ticket price?
Yes. Use startDate and endDate for UTC start dates, attendance for in-person or virtual events, and pricing for free or paid events.
Why are some fields missing?
Luma does not publish every detail for every event or user. Optional fields can be absent. The Actor does not guess ticket prices, attendance figures, or other missing values.
Can I collect all available results?
Yes. Leave maxItems empty to return all available results until the source is exhausted. Set a positive limit for a smaller run.
Is this for the Luma AI video tool?
No. This Actor reads public event and user data from Luma's event platform at luma.com.
Does this Actor register me for events?
No. It collects public data. It does not register guests, buy tickets, or manage events.
📝 Changelog
v0.0 (05-10-2026)
- Initial release.
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Related Actors
- Meetup Events Scraper to expand local event research with public Meetup events and groups.
- Eventbrite Events Scraper to compare public event dates, venues, and ticket details from Eventbrite.
- Partiful Events Scraper to collect public Partiful events, host details, and RSVP signals.
- LinkedIn Events Scraper to find public professional events and webinars on LinkedIn.
- Website Email & Contact Scraper to check organizer websites for public contact emails after collecting Luma data.
Made with ❤️ by Maxime Dupré