setlist.fm API

Introduction

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 ...

  1. ... understand how setlist.fm works (the FAQ and the Guidelines are a good starting point),
  2. ... read this documentation carefully and
  3. ... 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.

About this Service

This service provides methods to get both setlists and components of setlists such as artists, cities, countries or venues.

Supported Content Types

The REST service currently supports XML (default) and JSON content.

To generate JSON, add the '.json' suffix to the path. The JSON follows the BadgerFish (see this Ajaxian article for details) convention for XML to JSON translation.

Content negotiation using Accept HTTP Header is not supported.

Internationalization

(Please note that this in experimental feature and does not work for all cities!)

Most of the featured methods feature a language parameter. This parameter 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 language, 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 as language, you'll get "Nueva York, Estados Unidos" instead of "New York, United States" if you pass "es" as language.

Data

All endpoints act on a common set of data. The data can be represented in different data formats (i.e. MIME types), depending on the endpoint that consumes and/or produces the data. The data can described by XML Schema, which definitively describes the XML representation of the data, but is also useful for describing the other formats of the data, such as JSON.

This document will describe the data using terms based on XML Schema. Data can be grouped by namespace, with a schema document describing the elements and types of the namespace. Generally speaking, types define the structure of the data and elements are instances of a type. For example, elements are usually produced by (or consumed by) a REST endpoint, and the structure of each element is described by its type.

Data Schemas

id namespace schema file
ns0 Default Namespace ns0.xsd

XML Data Elements

XML Data Types