SeatGeek Scraper at a glance
SeatGeek Scraper is a ready-to-run Apify actor from abotapi for collecting ecommerce data. Its documented output includes kind, recordid, eventid, url and title, which you can export as JSON, CSV or Excel or read through the Apify API. It costs $2.00 per 1,000 results on the Apify Free plan and from $1.20 on paid plans, with smaller per-run or optional feature charges listed on Apify.
- Runs on
- Apify cloud: console, API, schedules and integrations
- Data type
- Ecommerce, Automation
- Pricing
- $2.00 per 1,000 results (Free plan), from $1.20 on paid plans
- Output
- Documented below · JSON, CSV, Excel
- Inputs
- 22 options
- Run success
- 100.0% of completed public runs in the last 30 days
Scrape SeatGeek events with ticket price ranges (lowest, highest, average, median), venues, performers, dates and availability. Search by keyword, category, team, venue or date, or paste event links. Incremental monitoring, resume and MCP export.
What SeatGeek Scraper can do
- Three record kinds, one dataset. Events, performers and venues each come with their own named fields, plus the complete source object so nothing is lost.
- Price ranges on every event, no extra fetch. Lowest, highest, average and median ticket price, plus listing and ticket counts, ride along with every event record.
- Two ways to find data. Keyword search with category, performer, venue and date filters, or paste SeatGeek event, performer and venue links directly.
- Built for schedules. Incremental mode returns only new and changed events on recurring runs, and a refused run fails loudly instead of returning an empty dataset.
- Resume support. Continue one interrupted large pull without paying twice for records it already collected.
- Honest about coverage. Per-ticket listings require an authenticated account on the source, so the actor returns the aggregated price statistics the open interface publishes instead of inventing anything.
Choose what to collect
These inputs let you configure SeatGeek Scraper - Events, Tickets & Venues. Open the actor on Apify to enter your values and review the current options.
| Input | What it controls |
|---|---|
modestring · required | Search looks up events, performers or venues by keyword, or lists SeatGeek's category tree (search type Categories, no keyword needed). URL mode reads specific SeatGeek pages you paste. |
querystring | Search mode: a keyword, for example an artist, team, venue or city name. Used with Search type below. |
searchTypestring | Search mode: what the keyword should find. Events returns upcoming events. Performers returns team, artist and league entries. Venues returns venue entries. Categories returns the site's category list (taxonomies). |
taxonomystring | Events search type only: narrow the events to one broad category. Leave empty for all categories. |
performerIdsarray | Events search type only: numeric SeatGeek performer ids (teams, artists, leagues). Events featuring any of them are returned. Example: 8 for the New York Yankees. |
venueIdstring | Events search type only: a numeric SeatGeek venue id. Only events at that venue are returned. Example: 35 for Madison Square Garden. |
citystring | Events search type only: only events at venues in this city, matched on the venue city name exactly (for example Chicago or New York). Combines with the other filters. |
Show 15 more inputs
| Input | What it controls |
|---|---|
dateFromstring | Events search type only: only events on or after this date (YYYY-MM-DD). |
dateTostring | Events search type only: only events on or before this date (YYYY-MM-DD). |
sortstring | Events search type only: the order events are returned in. Defaults to soonest first. |
urlsarray | URL mode: SeatGeek pages to read, one per line. Event links (they end in the event id) are read as one record; performer pages (they end in -tickets), venue pages (/venues/...), search pages (/search?search=...) and category pages (/concert-tickets, /sports-tickets, /theater-tickets, /family-tickets, /comedy-tickets) have their upcoming events walked. Leaving this field untouched reads one example of each page type. Multi-value supported. |
maxItemsinteger | Stop after this many records (0 = no limit; the run then stops when the results run out). |
maxPagesinteger | Upper bound on how many pages each search or link is walked through. Defaults wide open so Max items is the only cap that stops a run early. |
resumeFromRunIdstring | Paste a previous run ID or dataset ID to continue a large pull without returning records already collected there. |
incrementalModeboolean | Turn this on for daily or recurring monitoring. The first run returns every matching record as NEW. Later runs normally return only NEW, UPDATED and REAPPEARED records. Ticket price statistics are excluded from change detection (they move hourly), so a price move alone is not an UPDATED row. Turn on Emit unchanged or Emit expired only when you also want those rows returned (and billed). |
stateKeystring | Optional. Name this monitoring campaign to keep its state stable, or deliberately share state across differently configured runs. Leave empty to let the actor derive a key automatically from the search and link settings. |
emitUnchangedboolean | Off by default. Turn on to also return records that have not changed since the last run, marked UNCHANGED. This returns, and bills, extra rows you already have. |
emitExpiredboolean | Off by default. Turn on to also return records that were present in a previous run but are no longer found, marked EXPIRED. Only produced once a run has fully scanned the tracked search. EXPIRED rows count against Max items (only the room left after the run's other rows); the rest are returned on a later run. |
ignoreFieldsForChangesarray | Optional. Field names that must NOT count as a change in incremental mode, for example "venueName" or "title". An event whose only differences are in these fields is treated as UNCHANGED, so it is not returned as UPDATED. Names match at any nesting depth. The fields still appear in the output of rows that are returned. |
mcpConnectorsarray | Optionally send results into the apps you already use, via Model Context Protocol (MCP) connectors. Authorize one under Apify, Settings, API & Integrations, then select it here. Notion gets a rich page-per-item export; other connectors get a best-effort write or digest. Leave empty to skip; never changes the dataset output. |
notionParentPageUrlstring | URL or id of the Notion page under which item pages are created. Required to enable the Notion export; ignored by other connectors. |
maxNotifyListingsinteger | Cap on items written to each connector per run. Does not affect the dataset. |
Fields in the output
The documented dataset includes the fields below. Availability can depend on the source page and selected mode.
kindkindrecordIdrecordIdeventIdeventIdurlurltitletitleshortTitleshortTitleeventTypeeventTypestartDateTimeUtcstartDateTimeUtcstartDateTimeLocalstartDateTimeLocaldateTbddateTbdtimeTbdtimeTbdstatusstatusShow 68 more fields
announcedAtannouncedAtheadlinerheadlinerperformersperformersperformerIdsperformerIdstaxonomiestaxonomiesvenueIdvenueIdvenueNamevenueNamevenueCityvenueCityvenueStatevenueStatevenueCountryvenueCountryvenueAddressvenueAddressvenuePostalCodevenuePostalCodevenueTimezonevenueTimezonevenueCapacityvenueCapacityvenueLatitudevenueLatitudevenueLongitudevenueLongitudevenueUrlvenueUrllowestPricelowestPricehighestPricehighestPriceaveragePriceaveragePricemedianPricemedianPricegoodDealLowestPricegoodDealLowestPricelistingCountlistingCountticketCountticketCountperformerIdperformerIdnamenameperformerTypeperformerTypeslugslugimageUrlimageUrlhasUpcomingEventshasUpcomingEventsnumUpcomingEventsnumUpcomingEventseventCounteventCounthomeVenueIdhomeVenueIdlocationlocationcitycitystatestatecountrycountryaddressaddresspostalCodepostalCodetimezonetimezonecapacitycapacitylatitudelatitudelongitudelongitudechangeTypechangeTypechangedFieldschangedFieldsfirstSeenAtfirstSeenAtlastSeenAtlastSeenAtisOpenisOpenvisibleListingCountvisibleListingCountdatetimeTbddatetimeTbdcreatedAtcreatedAtendDatetimeUtcendDatetimeUtcsalesEndDatetimeUtcsalesEndDatetimeUtclowestSgBasePricelowestSgBasePricerelativeUrlrelativeUrlperformerNamesperformerNamesvenueSlugvenueSlugvenueExtendedAddressvenueExtendedAddressvenueDisplayLocationvenueDisplayLocationvenueNumUpcomingEventsvenueNumUpcomingEventsvenueHasUpcomingEventsvenueHasUpcomingEventspopularitypopularityscorescoresourcesourcescrapedAtscrapedAttaxonomyIdtaxonomyIdparentIdparentIdrawrawExample output
An example from this actor’s documentation. Values are illustrative; this is not a fresh live result.
{
"kind": "event",
"recordId": "event:88880001",
"eventId": 88880001,
"url": "https://seatgeek.com/the-marble-foxes-tickets/riverside-amphitheater/2027-06-10/88880001",
"title": "The Marble Foxes World Tour",
"shortTitle": "Marble Foxes",
"eventType": "concert",
"startDateTimeUtc": "2027-06-10T23:00:00",
"startDateTimeLocal": "2027-06-10T19:00:00",
"status": "normal",
"venueName": "Riverside Amphitheater",
"venueCity": "Harborview",
"venueState": "CA",
"venueCapacity": 19500,
"venueLatitude": 37.77,
"venueLongitude": -122.42,
"headliner": "The Marble Foxes",
"performers": [
{
"performerId": 5001,
"name": "The Marble Foxes",
"type": "band",
"primary": true
}
],
"performerIds": [
5001
],
"taxonomies": [
"concert",
"rock"
],
"lowestPrice": 45,
"highestPrice": 210,
"averagePrice": 88,
"medianPrice": 80,
"goodDealLowestPrice": 39,
"listingCount": 132,
"ticketCount": 400,
"raw": {}
}Ways to use this data
- Ticket price tracking: monitor a tour, team or venue's price statistics and catch new dates or reschedules on a schedule.
- Event discovery apps: feed upcoming events, venues and performers into your own site, bot or alerting tool.
- Market and pricing research: compare price ranges and listing counts across performers, venues or categories.
- Fan tools and calendars: build a personal or team event calendar from a search or a list of pasted links.
Before you run
Start with a small input and check the resulting records against your expected fields. Source content and actor options can change; the current Apify listing is the reference for availability and pricing.
Questions about this actor
What data does SeatGeek Scraper return?
The documented output for SeatGeek Scraper includes kind, recordid, eventid, url, title, shorttitle, eventtype and startdatetimeutc. Availability of each field depends on the source page and the selected mode.
How much does SeatGeek Scraper cost?
It costs $2.00 per 1,000 results on the Apify Free plan and from $1.20 on paid plans, with smaller per-run or optional feature charges listed on Apify. The Apify listing shows the current rate for every plan.
Does this include individual ticket listings?
No. Per-ticket offers behind each event require an authenticated account on the source. The actor returns each event's aggregated price statistics instead (lowest, highest, average, median, listing and ticket counts), which the open data interface publishes for every event.
Can I get only new or changed events on a schedule?
Yes. Schedule the actor from the Schedules tab and turn on Incremental mode. Each run then returns only new and updated records, and unchanged ones are not billed unless you turn on Emit unchanged.
Why did my run fail instead of returning an empty dataset?
If every request was rejected, the run stops with a clear message so "nothing matched" is never confused with "nothing could be read". Run it again in a few minutes. A search that genuinely matches nothing still succeeds quietly with a status message.
Can I use it with AI agents or MCP?
Yes. Call it from any Apify integration or MCP client, and use the connector field to push results into Notion, Linear or Airtable.
