Genius API

⭐ Beginner's Pick Music / OAuth Advanced HTTPS
Varies by plan (check documentation)

Overview

Genius is a lyrics and music knowledge platform with one of the largest song annotation databases on the web. The API lets you search songs, retrieve lyrics metadata, and access community annotations. OAuth is required but Genius provides a simple client-access token for read-only requests.

💡

Beginner Tip

For read-only searches you can use a client access token instead of the full OAuth flow—just generate one in your Genius app settings and add it as a Bearer token in the Authorization header.

Available Data

track name and artist
album metadata
audio preview URLs
popularity score
genre classification

Example Response

JSON Response
{
  "name": "Bohemian Rhapsody",
  "artist": "Queen",
  "album": "A Night at the Opera",
  "duration_ms": 354000,
  "popularity": 92,
  "preview_url": "https://p.scdn.co/mp3-preview/..."
}

Field Reference

response.hits Array of search result objects.
response.hits[].result.id Unique Genius song ID used to fetch full song details.
response.hits[].result.title Full song title as listed on Genius.
response.hits[].result.primary_artist.name Name of the primary artist associated with the song.
response.hits[].result.url Direct URL to the Genius lyrics page for the song.
response.hits[].result.song_art_image_url URL of the album art thumbnail image.

Implementation Example

const url = "https://docs.genius.com/";
// Replace headers or query params with the values required by this API.
const response = await fetch(url, {
  headers: {
  "Authorization": "Bearer YOUR_API_KEY"
  }
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
const data = await response.json();
console.log(data);

What Can You Build?

Note: These code examples are AI-generated and unverified. Always refer to the official API documentation for accurate usage.

Common Errors & Troubleshooting

401 Unauthorized Missing or malformed Authorization header.
Add the header: Authorization: Bearer YOUR_ACCESS_TOKEN using your Genius client access token.
404 Not Found on /songs/{id} The song ID does not exist or was deleted.
Use the /search endpoint first to find the correct song ID before fetching details.
Lyrics not in response The API returns metadata only—actual lyrics text is not included in JSON responses.
Use the url field from the response to scrape the lyrics page, or use a third-party lyrics API.

Matrix Score Breakdown

🌐 Reachability 30/30
⚡ Speed 5/20
🔒 Security 15/15
🛠 Developer XP 3/20
✓ Reliability 10/15

Partially tested on Apr 5, 2026

Technical Specifications

Auth OAuth
HTTPS REQUIRED
CORS UNKNOWN
Category Music
Difficulty Advanced
Verified: 2026-04-04

Alternatives to Genius

Technical alternatives for different use cases.

Lyrics with annotations and artist-provided context

Better For

API-accessible full lyrics and music matching

Trade-off

Annotated lyrics and artist commentary

Similar APIs

View All →