darklyrics.com APIdarklyrics.com ↗
Access DarkLyrics.com data via API: band listings, full discographies, album lyrics, and individual song lyrics for thousands of metal artists.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/16b0df97-4e3b-43c9-88cf-cd56ae75ad24/get_homepage' \ -H 'X-API-Key: $PARSE_API_KEY'
Get newly added albums from the DarkLyrics homepage. Returns a list of recently added albums with band name, album title, and thumbnail image URL.
No input parameters required.
{
"type": "object",
"fields": {
"new_albums": "array of objects with band_name, band_url, album_title, album_url, and thumbnail"
},
"sample": {
"data": {
"new_albums": [
{
"band_url": "http://www.darklyrics.com/o/obituary.html",
"album_url": "http://www.darklyrics.com/lyrics/obituary/dyingofeverything.html",
"band_name": "OBITUARY",
"thumbnail": "http://www.darklyrics.com/hot/obituary23.jpg",
"album_title": "Dying Of Everything"
}
]
},
"status": "success"
}
}About the darklyrics.com API
The DarkLyrics API provides 6 endpoints covering the full DarkLyrics.com metal lyrics archive, from browsing recently added albums on the homepage to retrieving complete lyrics for every track on a specific release. The get_album_lyrics endpoint alone returns structured song objects with track numbers, titles, and full lyric text for an entire album in a single call. Band slugs and album slugs map directly to the URL hierarchy, making it straightforward to build programmatic access into any metal-focused application.
Browse and Discover
The get_homepage endpoint returns a list of recently added albums, each containing band_name, band_url, album_title, album_url, and a thumbnail image URL. This is useful for tracking new additions to the archive without polling individual band pages. For alphabetical browsing, get_bands_by_letter accepts a letter parameter (a–z, or # for numeric names) and returns an array of band objects with name, url, and slug fields.
Band Discographies
get_band_page takes a letter and band_slug and returns the band's full discography array. Each entry includes the album title, year, type (album, demo, EP, etc.), and a songs array with track numbers. This gives a complete structural map of a band's catalog without fetching lyrics for every release.
Lyrics Retrieval
get_album_lyrics accepts a band_slug and album_slug and returns the album title, year, and a songs array where every object includes track_number (integer), title, and lyrics (full text). For targeting a single track, get_song_lyrics adds a track_number parameter and returns the same lyric content alongside band_slug, album_name, album_slug, and track_number for use as identifiers in downstream storage.
Search
The search endpoint accepts a free-text query and returns three separate arrays: artists, albums, and songs. Results span all three entity types simultaneously, so a single query can surface a band page, a specific release, or an individual track.
- Build a metal lyric search tool returning full song text via
get_song_lyrics - Track new metal releases by polling
get_homepagefor freshly added albums and thumbnails - Generate complete discography pages for any band using
get_band_pagealbum and track data - Compile a full album lyric corpus with
get_album_lyricsfor NLP or text analysis projects - Power an alphabetical band directory using
get_bands_by_letterfor each letter a–z and # - Implement autocomplete for metal artists, albums, and songs using the
searchendpoint - Cross-reference track listings from discography data with lyrics to build structured song databases
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does DarkLyrics have an official developer API?+
What does `get_band_page` return versus `get_album_lyrics`?+
get_band_page returns structural discography data — album titles, years, types, and track listings — without lyric text. get_album_lyrics returns the actual lyric strings for every song on a specific album. Use get_band_page first to map a band's catalog, then call get_album_lyrics with the relevant album_slug to retrieve the text.Does the `search` endpoint distinguish between artist, album, and song results?+
artists, albums, and songs. Each is populated independently based on what the query matches, so you can consume only the entity type relevant to your use case.Are artist biography, band member, or genre metadata fields available?+
Does the API support pagination for band or search results?+
get_bands_by_letter, all bands matching the letter are returned in a single response. If you need paginated or filtered subsets, you can fork the API on Parse and revise it to add pagination support.