SonicLiving is Way Totally | it's true!

SonicLiving has a Beta API which can return upcoming shows for artists. The SonicLiving API requires an API key and is available for both commercial and non-commercial use. More information about the terms of use and obtaining an API key is available below. Note that we are still developing our API, as such we welcome any feedback.

top Terms of Use

Non-commercial use
Sites and services which don't generate revenue (including ads) may freely use the SonicLiving API. Essentially all event listings must link back to the SonicLiving event pages and the ticket links cannot be augmented or replaced.

Commercial use
Sites and services which generate revenue (including ads) must contact SonicLiving and request a commercial API key.

Requesting an API key
Make an API key request now!
We usually respond within 24 hours.

top Getting Events

The SonicLiving API can return events for one or many artists with a single query.
This is extrememly powerful feature for listing events to go along with applications that support user playlists.

The API is available here:
http://api.sonicliving.com/api/

top Parameters
name values specification type
key API key auth
q query type : artists | all | pop query
artists[] artist names artist
venue_ids[] venue ids SL venue_id
zips[] zip codes location
lat[] latitude value location
lon[] longitude value location
current_ip_loc true get location from current ip address
ip_loc ip address get location from given ip address
radius[] number of miles location
start date value : YYYY-MM-DD date
end date value : YYYY-MM-DD date
date date value : YYYY-MM-DD date
fmt output format : json output

q: query type optional parameter

The default query type is "artists". This is used when the 'q' value is unspecified.
If query type is "all", then All events within the other specified restrictions will be returned (date/region/radius/etc..) and ordered by date
If query type is "pop", then All events within the other specified restrictions will be returned (date/region/radius/etc..) and ordered by popularity
query type "all" or "pop" overrides the artists[] parameter

artists[]: shows for a given artist. artists is currently required unless a different query type or venue is specified

This performs a lookup for a specific artist, as opposed to a general search. You can specify this argument multiple times, for multiple searches at once. artists[]=beck&artists[]=radiohead will return shows for both Beck and Radiohead. Note that the "&" (ampersand) character must be replaced with "and".

venue_ids[]: shows for a given venue. venue_ids are not required

This performs a lookup for a specific venue_id, as opposed to a general search. You can specify this argument multiple times, for multiple searches at once.
SonicLiving venue_id's are returned in the json resultset, and may change over time.

key: The API access key is currently required

Get your API key here

zips[]: restrict search to a zip code. zips not required

This limits your lookup to a specific zip code. If ommited, all the events for an artist will be returned. You can specify this argument multiple times, for multiple searches at once. zips[]=94610&zips[]=10012artists[]=beck&artists[]=radiohead will return shows for both Beck and Radiohead in Oakland and New York.

lat[]: restrict search to a geo location. lat/lon pairs not required

lon[]: restrict search to a geo location. lat/lon values must be paired evenly or no results will be returned

This limits your lookup to a specific geo location. If ommited, all the events for an artist will be returned. You can specify these argument multiple times, for multiple searches at once. &lat[]=38.325&lon[]=-122.708&artists[]=beck will return shows for both Beck in the SF area.

current_ip_loc=true: restrict search to a geo location based on the requesting current ip address.

ip_loc: strict search to a geo location based on a given ip address

This limits your lookup to a specific geo location. If ommited, all the events for an artist will be returned. You can specify either current_ip_loc or ip_loc, but not both. These will override any other location values.

start: restrict search to a start date. start/end date pairs not required

end: restrict search to an end date. start/end date pairs not required

date: restrict search to a single specific date. This is equivalent to setting start=end

This limits your lookup to a specific date range. The parameters are inclusive. You may not currently specify a start date in the past. &start=2008-12-20&end=2008-12-31 will return shows between the dates specified.

radius: specifiy the radius around zip codes to look for shows.

Radius around a zip code (or lat/long) in miles. If ommited, a default radius of 50 miles is used. You can specify this argument only once. zips[]=10012&artists[]=beck&radius=5 will return shows for both Beck within 5 miles of New York. Note: there is a 140 mile radius limit. Omit the zip and radius to return all shows for the specified artists.

fmt: specifiy the event output format.

Currently, fmt may only be json (the default it not specified). You can specify this argument only once.

top Examples

Here are examples of valid queries for the SonicLiving API:

All shows for a single artist
http://api.sonicliving.com/api/?artists[]=justin%20bieber&key=mykey

Shows for a single artist near a location, default range (around 50 miles)
http://api.sonicliving.com/api/?artists[]=justin%20bieber&zips[]=94110&key=mykey

Shows for a single artist near a location, with a specificed range
http://api.sonicliving.com/api/?artists[]=justin%20bieber&zips[]=94110&radius=300&key=mykey

All shows for multiple artists
http://api.sonicliving.com/api/?artists[]=justin%20bieber&artists[]=bikini%20kill&key=mykey

All shows for multiple artists near a location
http://api.sonicliving.com/api/?artists[]=justin%20bieber&?artists[]=bikini%20kill&zips[]=94110&key=mykey

All shows for multiple artists near multiple locations
http://api.sonicliving.com/api/?artists[]=justin%20bieber&?artists[]=bikini%20kill&zips[]=94110&zips[]=10012&key=mykey

Using 'curl'? Be sure to escape the brackets
curl "http://api.sonicliving.com/api/?q=all&lat\[\]=38.325&lon\[\]=-122.708&radius=10&key=mykey"

Shows for a single artist near a location, default range (around 50 miles)
top Results

The results are currently restricted to JSON.

Here is a sample JSON decoded result set from the following query:
http://api.sonicliving.com/api/?artists[]=css&artists[]=apple pie hopes&zips[]=94123&key=mykey

As the JSON string:


[[{"event_timestamp":1229144400,
"event_date":"Friday, December 12th, 2008",
"event_time":"9:00 pm",
"event_id":"1039168",
"links":[{"link_url":"http:\/\/sonicliving.com\/event\/1036341","link_title":"9:00 pm"}],
"event_title":"CSS \/ Natalie Portman's Shaved Head.",
"venue_id":"4320",
"venue_name":"Bimbo's 365 Club",
"venue_address":"1025 Columbus Avenue",
"venue_city":"San Francisco",
"venue_state":"CA",
"venue_country":"US",
"lat":"37.8005",
"lon":"-122.409"}]]

			
Shown as a json_decode()'ed PHP array:
Array
(
    [0] => Array
        (
            [0] => stdClass Object
                (
                    [event_timestamp] => 1229144400
                    [event_date] => Friday, December 12th, 2008
                    [event_time] => 9:00 pm
                    [event_id] => 1039168
                    [links] => Array
                        (
                            [0] => stdClass Object
                                (
                                    [link_url] => http://sonicliving.com/event/1036341
                                    [link_title] => 9:00 pm
                                )

                        )

                    [event_title] => CSS / Natalie Portman's Shaved Head.
                    [venue_id] => 4320
                    [venue_name] => Bimbo's 365 Club
                    [venue_city] => 1025 Columbus Avenue
                    [venue_city] => San Francisco
                    [venue_state] => CA
                    [venue_country] => US
                    [lat] => 37.8005
                    [lon] => -122.409
                )

        )

)

			

top Support
Got questions? Need support? contact our API support.