Skip to main content
The Taylor Swift API gives you access to every studio album along with the tracks each one contains. Album IDs are stable integers, so you can safely store and reference them across requests.

List albums

Retrieve all albums with their release dates.

Get album songs

Fetch the tracklist for any album by its ID.

List all albums

Send a GET request to /albums to retrieve every album in the catalog. Each object in the response includes the album ID, title, and release date.
curl https://taylor-swift-api.sarbo.workers.dev/albums
Example response
[
  { "album_id": 1,  "title": "1989",         "release_date": "2014-10-27" },
  { "album_id": 2,  "title": "Taylor Swift", "release_date": "2006-10-24" },
  ...
]

Album object fields

FieldTypeDescription
album_idintegerStable unique identifier for the album.
titlestringAlbum name.
release_datedateOriginal release date in YYYY-MM-DD format.
Album IDs are stable integers. You can persist an album_id in your database or configuration and rely on it remaining consistent across API calls.

Get songs in an album

Send a GET request to /albums/{albumID} with an album’s ID to retrieve its full tracklist. Each song object includes the song ID, title, and the album it belongs to. The example below fetches the tracklist for Midnights (album_id: 10).
curl https://taylor-swift-api.sarbo.workers.dev/albums/10
Example response
[
  { "song_id": 147, "title": "Snow on the Beach",              "album_id": 10 },
  { "song_id": 148, "title": "Maroon",                         "album_id": 10 },
  { "song_id": 149, "title": "Bejeweled",                      "album_id": 10 },
  { "song_id": 150, "title": "Labyrinth",                      "album_id": 10 },
  { "song_id": 151, "title": "Mastermind",                     "album_id": 10 },
  { "song_id": 152, "title": "Lavender Haze",                  "album_id": 10 },
  { "song_id": 153, "title": "Sweet Nothing",                  "album_id": 10 },
  { "song_id": 154, "title": "Vigilante Shit",                 "album_id": 10 },
  { "song_id": 155, "title": "Midnight Rain",                  "album_id": 10 },
  { "song_id": 156, "title": "Karma",                          "album_id": 10 },
  { "song_id": 157, "title": "Anti-Hero",                      "album_id": 10 },
  { "song_id": 158, "title": "Question…?",                     "album_id": 10 }
]

Song object fields (album tracklist)

FieldTypeDescription
song_idintegerStable unique identifier for the song.
titlestringSong title.
album_idintegerID of the album the song belongs to.
Once you have a song_id from an album tracklist, you can pass it directly to the /lyrics/{songID} endpoint to retrieve the full lyrics for that track. See the lyrics guide for details.

Build docs developers (and LLMs) love