Client library for setlist.fm API
npm install --save @datafire/setlist_fm
let setlist_fm = require('@datafire/setlist_fm').create();
.then(data => {
console.log(data);
});
The setlist.fm API has been designed to give you easy access to setlist data in order to build fancy websites and other applications. Before starting to use the API, be sure to ...
- ... understand how setlist.fm works (the FAQ and the Guidelines are a good starting point),
- ... read this documentation carefully and
- ... apply for an API key (link for logged in users only) - if you're no registered user yet, then register first (it's free).
If this documentation isn't enough or if you've got other things you'd like to tell us about the API, visit the API Forum.
Note that the setlist.fm API is, according to the API terms of service, only free for non-commercial projects. If you're interested in using the API for commercial purposes, contact us.
This service provides methods to get both setlists and components of setlists such as artists, cities, countries or venues.
The REST service currently supports XML (default) and JSON content.
To receive a JSON response, set the Accept
header to application/json.
(Please note that this is an experimental feature and does not work for all cities!)
Most of the featured methods honor the Accept-Language
header. This header is used for
localizing cities and countries. The default language is English (en), but you can provide any of the languages
Spanish (es), French (fr), German (de), Portuguese (pt), Turkish (tr), Italian (it) or Polish (pl).
E.g. if you search a setlist for a concert that took place in Vienna and you pass "de" as header, you'll
get "Wien, Österreich" instead of "Vienna, Austria".
This also works if you use a different language than the country's native language.
E.g. for a concert in New York, you'll get "Nueva York, Estados Unidos" instead of "New York, United States" if you pass "es" as language.
API keys (application form) must be included in the request with
the x-api-key
header.
Version | Docs | End of Service |
---|---|---|
1.0 | Docs | - |
0.1 | December 31, 2017 |
Returns an artist for a given Musicbrainz MBID
setlist_fm.resource__1.0_artist__mbid__getArtist_GET({
"mbid": ""
}, context)
- input
object
- mbid required
string
: a Musicbrainz MBID, e.g. 0bfba3d3-6a04-4779-bb0a-df07df5b0558
- mbid required
- output json_Artist
Get a list of an artist's setlists.
setlist_fm.resource__1.0_artist__mbid__setlists_getArtistSetlists_GET({
"mbid": ""
}, context)
- input
object
- mbid required
string
: the Musicbrainz MBID of the artist - p
integer
: the number of the result page
- mbid required
- output json_Setlists
Get a city by its unique geoId.
setlist_fm.resource__1.0_city__geoId__getCity_GET({
"geoId": ""
}, context)
- input
object
- geoId required
string
: the city's geoId
- geoId required
- output json_City
Search for artists.
setlist_fm.resource__1.0_search_artists_getArtists_GET({}, context)
- input
object
- artistMbid
string
: the artist's Musicbrainz Identifier (mbid) - artistName
string
: the artist's name - artistTmid
integer
: the artist's Ticketmaster Identifier (tmid) - p
integer
: the number of the result page you'd like to have - sort
string
: the sort of the result, either sortName (default) or relevance
- artistMbid
- output json_Artists
Search for a city.
setlist_fm.resource__1.0_search_cities_getCities_GET({}, context)
- input
object
- country
string
: the city's country - name
string
: name of the city - p
integer
: the number of the result page you'd like to have - state
string
: state the city lies in - stateCode
string
: state code the city lies in
- country
- output json_Cities
Get a complete list of all supported countries.
setlist_fm.resource__1.0_search_countries_getCountries_GET(null, context)
This action has no parameters
- output json_Countries
Search for setlists.
setlist_fm.resource__1.0_search_setlists_getSetlists_GET({}, context)
- input
object
- artistMbid
string
: the artist's Musicbrainz Identifier (mbid) - artistName
string
: the artist's name - artistTmid
integer
: the artist's Ticketmaster Identifier (tmid) - cityId
string
: the city's geoId - cityName
string
: the name of the city - countryCode
string
: the country code - date
string
: the date of the event (format dd-MM-yyyy) - lastFm
integer
: the event's Last.fm Event ID (deprecated) - lastUpdated
string
: the date and time (UTC) when this setlist was last updated (format yyyyMMddHHmmss) - either edited or - p
integer
: the number of the result page - state
string
: the state - stateCode
string
: the state code - tourName
string
- venueId
string
: the venue id - venueName
string
: the name of the venue - year
string
: the year of the event
- artistMbid
- output json_Setlists
Search for venues.
setlist_fm.resource__1.0_search_venues_getVenues_GET({}, context)
- input
object
- cityId
string
: the city's geoId - cityName
string
: name of the city where the venue is located - country
string
: the city's country - name
string
: name of the venue - p
integer
: the number of the result page you'd like to have - state
string
: the city's state - stateCode
string
: the city's state code
- cityId
- output json_Venues
Returns a setlist for the given versionId. The setlist returned isn't necessarily the most recent version. E.g. if you pass the versionId of a setlist that got edited since you last accessed it, you'll get the same version as last time.
setlist_fm.resource__1.0_setlist_version__versionId__getSetlistVersion_GET({
"versionId": ""
}, context)
- input
object
- versionId required
string
: the version id
- versionId required
- output json_Setlist
Returns the current version of a setlist. E.g. if you pass the id of a setlist that got edited since you last accessed it, you'll get the current version.
setlist_fm.resource__1.0_setlist__setlistId__getSetlist_GET({
"setlistId": ""
}, context)
- input
object
- setlistId required
string
: the setlist id
- setlistId required
- output json_Setlist
Get a user by userId.
setlist_fm.resource__1.0_user__userId__getUser_GET({
"userId": ""
}, context)
- input
object
- userId required
string
: the user's userId
- userId required
- output json_User
Get a list of setlists of concerts attended by a user.
setlist_fm.resource__1.0_user__userId__attended_getUserAttendedSetlists_GET({
"userId": ""
}, context)
- input
object
- userId required
string
: the user's userId - p
integer
: the number of the result page
- userId required
- output json_Setlists
Get a list of setlists of concerts edited by a user. The list contains the current version, not the version edited.
setlist_fm.resource__1.0_user__userId__edited_getUserEditedSetlists_GET({
"userId": ""
}, context)
- input
object
- userId required
string
: the user's userId - p
integer
: the number of the result page
- userId required
- output json_Setlists
Get a venue by its unique id.
setlist_fm.resource__1.0_venue__venueId__getVenue_GET({
"venueId": ""
}, context)
- input
object
- venueId required
string
: the venue's id
- venueId required
- output json_Venue
Get setlists for a specific venue.
setlist_fm.resource__1.0_venue__venueId__setlists_getVenueSetlists_GET({
"venueId": ""
}, context)
- input
object
- venueId required
string
: the id of the venue - p
integer
: the number of the result page
- venueId required
- output json_Setlists
- artist
object
: This class represents an artist. An artist is a musician or a group of musicians. Each artist has a definite- disambiguation
string
: disambiguation to distinguish between artists with same names - mbid
string
: unique Musicbrainz Identifier (MBID), e.g. "b10bbbfc-cf9e-42e0-be17-e2c3e1d2600d" - name
string
: the artist's name, e.g. "The Beatles" - sortName
string
: the artist's sort name, e.g. "Beatles, The" or "Springsteen, Bruce" - tmid
number
: unique Ticket Master Identifier (TMID), e.g. 735610 - url
string
: the attribution url
- disambiguation
- artists
object
: A Result consisting of a list of artists.- artist
array
: result list of artists- items json_Artist
- itemsPerPage
number
: the amount of items you get per page - page
number
: the current page. starts at 1 - total
number
: the total amount of items matching the query
- artist
- cities
object
: A Result consisting of a list of cities.- cities
array
: result list of cities- items json_City
- itemsPerPage
number
: the amount of items you get per page - page
number
: the current page. starts at 1 - total
number
: the total amount of items matching the query
- cities
- city
object
: This class represents a city where Venues are located. Most of the original city data was taken from- coords json_Coords
- country json_Country
- id
string
: unique identifier - name
string
: the city's name, depending on the language valid values are e.g. "Müchen" or - state
string
: The name of city's state, e.g. "Bavaria" or "Florida" - stateCode
string
: The code of the city's state. For most countries this is a two-digit numeric code, with which the state can be
- coords
object
: Coordinates of a point on the globe. Mostly used for Cities.- lat
number
: The latitude part of the coordinates. - long
number
: The longitude part of the coordinates.
- lat
- countries
object
: A Result consisting of a list of countries.- country
array
: result list of countries- items json_Country
- itemsPerPage
number
: the amount of items you get per page - page
number
: the current page. starts at 1 - total
number
: the total amount of items matching the query
- country
- country
object
: This class represents a country on earth.- code
string
: The country's ISO code. E.g. - name
string
: The country's name. Can be a localized name - e.g. "Austria" or
- code
- error
object
: Returned in case of an error.- code
number
: the HTTP status code - message
string
: an additional error message - status
string
: the HTTP status message - timestamp
string
: current timestamp
- code
- set
object
: A setlist consists of different (at least one) sets. Sets can either be sets as defined in the- encore
number
: if the set is an encore, this is the number of the encore, starting with 1 for the first encore, 2 for the second - name
string
: the description/name of the set. E.g. "Acoustic set" or "Paul McCartney - song
array
: this set's songs- items json_Song
- encore
- setlist
object
: Setlists, that's what it's all about. So if you're trying to use this API without knowing what a setlist is then- artist json_Artist
- eventDate
string
: date of the concert in the format "dd-MM-yyyy" - id
string
: unique identifier - info
string
: additional information on the concert - see the setlist.fm - lastFmEventId
number
: the id this event has on last.fm (deprecated) - lastUpdated
string
: date, time and time zone of the last update to this setlist in the format - set
array
: all sets of this setlist- items json_Set
- tour json_Tour
- url
string
: the attribution url to which you have to link to wherever you use data from this setlist in your application - venue json_Venue
- versionId
string
: unique identifier of the version
- setlists
object
: A Result consisting of a list of setlists.- itemsPerPage
number
: the amount of items you get per page - page
number
: the current page. starts at 1 - setlist
array
: result list of setlists- items json_Setlist
- total
number
: the total amount of items matching the query
- itemsPerPage
- song
object
: This class represents a song that is part of a Set.- cover json_Artist
- info
string
: Special incidents or additional information about the way the song was performed at this specific concert. See - name
string
: The name of the song. E.g. Yesterday or "Wish You Were Here" - tape
boolean
: The song came from tape rather than being performed live. See the - with json_Artist
- tour
object
: The tour a setlist was a part of.- name
string
: The name of the tour.
- name
- user
object
: This class represents a user.- about
string
- flickr
string
- fullname
string
- lastFm
string
- mySpace
string
- twitter
string
- url
string
- userId
string
- website
string
- about
- venue
object
: Venues are places where concerts take place. They usually consist of a venue name and a city - but there are also- city json_City
- id
string
: unique identifier - name
string
: the name of the venue, usually without city and country. E.g. "Madison Square Garden" or - url
string
: the attribution url
- venues
object
: A Result consisting of a list of venues.- itemsPerPage
number
: the amount of items you get per page - page
number
: the current page. starts at 1 - total
number
: the total amount of items matching the query - venue
array
: result list of venues- items json_Venue
- itemsPerPage
- artist
object
: This class represents an artist. An artist is a musician or a group of musicians. Each artist has a definite- disambiguation
string
: disambiguation to distinguish between artists with same names - mbid
string
: unique Musicbrainz Identifier (MBID), e.g. "b10bbbfc-cf9e-42e0-be17-e2c3e1d2600d" - name
string
: the artist's name, e.g. "The Beatles" - sortName
string
: the artist's sort name, e.g. "Beatles, The" or "Springsteen, Bruce" - tmid
number
: unique Ticket Master Identifier (TMID), e.g. 735610 - url
string
: the attribution url
- disambiguation
- artists
object
: A Result consisting of a list of artists.- itemsPerPage
number
: the amount of items you get per page - page
number
: the current page. starts at 1 - total
number
: the total amount of items matching the query
- itemsPerPage
- cities
object
: A Result consisting of a list of cities.- itemsPerPage
number
: the amount of items you get per page - page
number
: the current page. starts at 1 - total
number
: the total amount of items matching the query
- itemsPerPage
- city
object
: This class represents a city where Venues are located. Most of the original city data was taken from- coords xml_ns0_coords
- country xml_ns0_country
- id
string
: unique identifier - name
string
: the city's name, depending on the language valid values are e.g. "Müchen" or - state
string
: The name of city's state, e.g. "Bavaria" or "Florida" - stateCode
string
: The code of the city's state. For most countries this is a two-digit numeric code, with which the state can be
- coords
object
: Coordinates of a point on the globe. Mostly used for Cities.- lat
number
: The latitude part of the coordinates. - long
number
: The longitude part of the coordinates.
- lat
- countries
object
: A Result consisting of a list of countries.- itemsPerPage
number
: the amount of items you get per page - page
number
: the current page. starts at 1 - total
number
: the total amount of items matching the query
- itemsPerPage
- country
object
: This class represents a country on earth.- code
string
: The country's ISO code. E.g. - name
string
: The country's name. Can be a localized name - e.g. "Austria" or
- code
- error
object
: Returned in case of an error.- code
number
: the HTTP status code - message
string
: an additional error message - status
string
: the HTTP status message - timestamp
string
: current timestamp
- code
- result
object
:- itemsPerPage
number
: the amount of items you get per page - page
number
: the current page. starts at 1 - total
number
: the total amount of items matching the query
- itemsPerPage
- set
object
: A setlist consists of different (at least one) sets. Sets can either be sets as defined in the- encore
number
: if the set is an encore, this is the number of the encore, starting with 1 for the first encore, 2 for the second - name
string
: the description/name of the set. E.g. "Acoustic set" or "Paul McCartney - song xml_ns0_song
- encore
- setlist
object
: Setlists, that's what it's all about. So if you're trying to use this API without knowing what a setlist is then- artist xml_ns0_artist
- eventDate
string
: date of the concert in the format "dd-MM-yyyy" - id
string
: unique identifier - info
string
: additional information on the concert - see the setlist.fm - lastFmEventId
number
: the id this event has on last.fm (deprecated) - lastUpdated
string
: date, time and time zone of the last update to this setlist in the format - set xml_ns0_set
- tour xml_ns0_tour
- url
string
: the attribution url to which you have to link to wherever you use data from this setlist in your application - venue xml_ns0_venue
- versionId
string
: unique identifier of the version
- setlists
object
: A Result consisting of a list of setlists.- itemsPerPage
number
: the amount of items you get per page - page
number
: the current page. starts at 1 - total
number
: the total amount of items matching the query
- itemsPerPage
- song
object
: This class represents a song that is part of a Set.- cover xml_ns0_artist
- info
string
: Special incidents or additional information about the way the song was performed at this specific concert. See - name
string
: The name of the song. E.g. Yesterday or "Wish You Were Here" - tape
boolean
: The song came from tape rather than being performed live. See the - with xml_ns0_artist
- tour
object
: The tour a setlist was a part of.- name
string
: The name of the tour.
- name
- user
object
: This class represents a user.- about
string
- flickr
string
- fullname
string
- lastFm
string
- mySpace
string
- twitter
string
- url
string
- userId
string
- website
string
- about
- venue
object
: Venues are places where concerts take place. They usually consist of a venue name and a city - but there are also- city xml_ns0_city
- id
string
: unique identifier - name
string
: the name of the venue, usually without city and country. E.g. "Madison Square Garden" or - url
string
: the attribution url
- venues
object
: A Result consisting of a list of venues.- itemsPerPage
number
: the amount of items you get per page - page
number
: the current page. starts at 1 - total
number
: the total amount of items matching the query
- itemsPerPage