Songkick Scraper - Concert & Event Calendar
Pricing
from $1.20 / 1,000 event records
Songkick Scraper - Concert & Event Calendar
Scrape Songkick concert and event calendars: upcoming and past dates, venues, cities, artists, ticket availability and tour info across 100+ countries. Search by artist, venue or location, or paste event links. Incremental monitoring with NEW, UPDATED, REAPPEARED, EXPIRED, resume and MCP export.
Pricing
from $1.20 / 1,000 event records
Rating
0.0
(0)
Developer
Abot API
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Songkick Concert Calendar Scraper
Pull concerts, festival dates and tour information from Songkick (songkick.com), one of the largest global concert calendars. Search by artist, venue or city, or paste any Songkick page, and get structured event records: date and time, venue with full address and coordinates, artist and supporting acts, ticket availability, tour name and capacity. Coverage spans 100+ countries, and recurring runs can report only what changed.
Why This Scraper?
- Any surface, one schema: a single event record shape covers search results, artist tour dates, venue calendars, metro-area calendars and festival dates.
- Rich location data: venue name, street address, city, region, postal code, country and coordinates come with every calendar event, not just on detail pages.
- Ticket monitoring: each event's own page adds ticket availability (on sale, off sale, sold out), the ticket vendors and link, plus tour name, doors time and venue capacity.
- Artist, venue and city search: resolve a keyword to the top artist, venue or metro area and read its upcoming calendar, or search upcoming and past events directly.
- Incremental monitoring: recurring runs emit only NEW, UPDATED, REAPPEARED or EXPIRED events against the same search or links, with first-seen and last-seen timestamps.
- Resume support: continue an interrupted run without returning events already collected.
- Multi-value URL mode: paste any mix of artist, venue, metro-area, festival, calendar, search or event links in one run.
Data You Get
Sample shape, values are illustrative placeholders, not from a live listing.
| Field | Example value |
|---|---|
eventId | 00000000 |
url | https://www.songkick.com/concerts/00000000-sample-artist-at-sample-arena |
title | Sample Artist at Sample Arena |
startDate | 2027-01-15T19:30:00 |
endDate | 2027-01-15 |
eventStatus | scheduled |
eventType | concert |
headliner / artistName | Sample Artist |
artistGenres | ["indie", "rock"] |
performers | [{"name": "Sample Artist", "url": "https://www.songkick.com/artists/00000000-sample-artist", "genres": ["indie", "rock"]}, {"name": "Support Act", "url": null, "genres": []}] |
venueName | Sample Arena |
venueStreet | 1 Sample Road |
venueCity | Sample City |
venueRegion | ST |
venuePostalCode | 00000 |
venueCountry | US |
venueLatitude / venueLongitude | 40.7000 / -73.9000 |
venueCapacity | 20000 |
metroAreaName | Sample City, ST, US |
locationText | Sample Arena, Sample City, ST, US |
ticketAvailability | in_stock |
ticketVendors | [{"vendor": "Sample Ticket Vendor", "saleStatus": "on_sale_now"}] |
ticketUrl | https://www.songkick.com/tickets/00000000 |
tourName | Sample Tour |
doorsTime | 18:30 |
changeType | NEW, UPDATED, REAPPEARED, EXPIRED |
How to Use
Search for upcoming events by keyword:
{"mode": "search","query": "the killers","searchType": "events","maxItems": 50}
Resolve a keyword to an artist and read its tour dates:
{"mode": "search","query": "beyonce","searchType": "artists","maxItems": 50}
Paste Songkick links, mixed types supported (links shown are illustrative placeholders):
{"mode": "url","urls": ["https://www.songkick.com/metro-areas/00000-sample-region","https://www.songkick.com/artists/00000000-sample-artist/gigography","https://www.songkick.com/concerts/00000000-sample-artist-at-sample-arena"],"maxItems": 200}
Monitor a search daily for changes only:
{"mode": "search","query": "the killers","searchType": "events","incrementalMode": true,"maxItems": 500}
Input Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
mode | string | search | search finds concerts and events by keyword. url reads specific Songkick pages you paste. |
query | string | the killers | Search mode: a keyword such as an artist, venue or city name. |
searchType | string | events | Search mode: events, past_events, artists, venues or cities. Events and Past events return matching upcoming or past concerts and festivals; the others resolve the keyword to the top entity and return its calendar. |
urls | array of strings | empty | URL mode: Songkick pages, one per line. Artist, venue, metro-area, festival, gigography, venue calendar and search links are all accepted; a single concert or festival date link is read as one record. |
fetchDetails | boolean | true | Read each event's own page to add ticket availability, ticket vendors and link, tour name, doors time and venue capacity. Adds a per-event surcharge. |
maxItems | integer | 20 | Stop after this many events. 0 means no limit. |
maxPages | integer | 100 | Upper bound on pages read per artist, venue, location or search. Defaults wide open so maxItems is the only cap that stops a run early. |
resumeFromRunId | string | empty | A previous run or dataset ID to continue without returning events already collected there. |
incrementalMode | boolean | false | Recurring monitoring: the first run marks every event NEW; later runs emit only NEW, UPDATED and REAPPEARED events, plus EXPIRED when enabled. |
stateKey | string | empty | Optional name for a monitoring campaign so its state stays stable, or to deliberately share state across runs. |
emitUnchanged | boolean | false | Also return events that have not changed since the last run, marked UNCHANGED. Returns and bills extra rows. |
emitExpired | boolean | false | Also return events tracked before but no longer found, marked EXPIRED. Only produced after a run fully scans the tracked search. |
mcpConnectors | array of strings | empty | Optional MCP connectors to receive the results (see the section below). |
notionParentPageUrl | string | empty | Parent Notion page for the Notion connector export. |
maxNotifyListings | integer | 50 | Cap on items written to each connector per run. Does not affect the dataset. |
proxyConfiguration | object | standard | Apify Proxy settings. The default works on every Apify plan. |
Output Example
Sample shape, values are illustrative placeholders, not from a live listing.
{"kind": "event","recordId": "00000000","eventId": "00000000","url": "https://www.songkick.com/concerts/00000000-sample-artist-at-sample-arena","title": "Sample Artist at Sample Arena","startDate": "2027-01-15T19:30:00","endDate": "2027-01-15","eventStatus": "scheduled","eventType": "concert","headliner": "Sample Artist","performers": [{"name": "Sample Artist","url": "https://www.songkick.com/artists/00000000-sample-artist","genres": ["indie", "rock"]}],"artistName": "Sample Artist","artistUrl": "https://www.songkick.com/artists/00000000-sample-artist","artistGenres": ["indie", "rock"],"venueName": "Sample Arena","venueStreet": "1 Sample Road","venueCity": "Sample City","venueRegion": "ST","venuePostalCode": "00000","venueCountry": "US","venueLatitude": 40.7,"venueLongitude": -73.9,"venueCapacity": 20000,"metroAreaName": "Sample City, ST, US","locationText": "Sample Arena, Sample City, ST, US","description": "Sample Artist at Sample Arena at 2027-01-15T19:30:00","imageUrl": "https://images.sk-static.com/images/media/profile_images/artists/00000000/huge_avatar","ticketAvailability": "in_stock","ticketVendors": [{"vendor": "Sample Ticket Vendor","saleStatus": "on_sale_now"}],"ticketUrl": "https://www.songkick.com/tickets/00000000","tourName": "Sample Tour","doorsTime": "18:30"}
Send results into your apps (MCP connectors)
You can optionally pipe results into apps you already use via Model Context Protocol (MCP) connectors. Authorize a connector under Apify, Settings, API & Integrations, then select it in the mcpConnectors input field. For Notion, set notionParentPageUrl to the page under which item pages are created; the Notion export writes a page per event with a readable summary. Other connectors get a best-effort write or digest.
Each connector receives a condensed, human-readable summary per event (title plus the key fields flattened to plain text), not the full record. The complete event record always stays in the Apify dataset. Leave mcpConnectors empty to skip the export entirely; the dataset output is never changed by the connector surface.
Requires an Apify account. The default settings work on every plan.