Lyrics.ovh
Fetch a song's lyrics from just artist and title
Lyrics.ovh takes an artist and song title in the URL path and returns the lyrics as a single JSON field. It's keyless with open CORS, which makes it a common first stop for lyric-fetching side projects. The lyrics themselves are third-party copyrighted text, so mind reuse.
GET https://api.lyrics.ovh/v1/Coldplay/Adventure%20of%20a%20Lifetime
{
"lyrics": "Turn your magic on, umi, she'd say\nEverything you want's a dream away\nAnd we are legends every day\nThat's what she told me\n..."
}curl "https://api.lyrics.ovh/v1/Coldplay/Adventure%20of%20a%20Lifetime"const res = await fetch("https://api.lyrics.ovh/v1/Coldplay/Adventure%20of%20a%20Lifetime");
const data = await res.json();
console.log(data);import requests
res = requests.get("https://api.lyrics.ovh/v1/Coldplay/Adventure%20of%20a%20Lifetime")
print(res.json())/v1/Coldplay/Adventure%20of%20a%20LifetimePROBEDFetch a song's lyrics from just artist and title
/v1V1 — documented GET route.
/v1/1V1 details by ID (example: 1).
/v1?limit=10V1 — documented GET route.
/v1/search?q=testSearch by query parameters.
/v1/V1 — documented GET route.
We probe a documented GET and expect 2xx JSON — full uptime and health score. Export includes every documented route below.
Stable. No schema drift observed since monitoring began — the response shape has not changed under our checks.
Lyrics.ovh: common questions
Is Lyrics.ovh free to use?
Yes — Lyrics.ovh is a free media API. Free tier: Free — no key required. Whether the free tier allows commercial use is unclear — check the provider docs.
Does Lyrics.ovh need an API key?
No — Lyrics.ovh needs no API key or signup. You can call it straight away; rate limits still apply (Unpublished).
Can I call Lyrics.ovh from the browser?
Yes — Lyrics.ovh returns CORS headers over HTTPS, so front-end code can fetch it directly with no backend proxy. Use the fetch snippet on this page, or hit "Run live" to try it now.
Is Lyrics.ovh up right now?
As of our last scheduled check, Lyrics.ovh is unmonitored. We re-probe it every sweep — the status badge and uptime chart above always show the latest.