Search songs, albums, artists, playlists and podcasts. Clean JSON responses. No auth required. Built with Cloudflare Workers.
# Search for songs
curl "https://ytm-api.vrma.dev/search?q=dil+dooba&type=songs"
Powered by Cloudflare Workers. Edge-deployed globally for sub-50ms responses.
Just make a GET request. No API keys, no OAuth, no rate limits.
No YouTube bloat. Get exactly what you need: titles, artists, durations, thumbnails.
Album art served via our CDN. Variable quality presets from 60px to 1200px.
Songs, albums, artists, playlists (featured & community), and podcasts.
Use directly from browser JavaScript. Perfect for web apps and SPAs.
/search
Search YouTube Music for songs, albums, artists, playlists, or podcasts.
q
string
Search query (required)
type
string
songs | albums | artists | playlists | featured_playlists | community_playlists | podcasts
{
"query": "dil dooba",
"type": "songs",
"results": [
{
"videoId": "eG-cS13QWmM",
"title": "DIL DOOBA",
"artists": [
{"name": "SONU NIGAM", "id": "UCsC4u-BJAd4OX1hJXtwXSOQ"}
],
"album": {"name": "KHAKEE", "id": "MPREb_cHdo0SY8o5f"},
"duration": "3:50",
"plays": "145M plays",
"thumbnail": "https://yt-music-images.w3abhishek.workers.dev/eG-cS13QWmM/cover/hq.png"
}
]
}
/{id}/cover/{quality}.{ext}
Get album/song/artist artwork by ID at variable quality.
id
string
videoId (songs) or browseId (albums/artists)
quality
xs|sm|md|lg|xl|hq|max
60px to 1200px
ext
png|jpg|webp
Image format
Examples:
https://yt-music-images.w3abhishek.workers.dev/eG-cS13QWmM/cover/hq.png
https://yt-music-images.w3abhishek.workers.dev/MPREb_cHdo0SY8o5f/cover/lg.jpg
Try the API right here. No setup required.
https://ytm-api.vrma.dev/search?q=dil+dooba&type=songs
Click "Search" to see results
// Results will appear here
const response = await fetch(
'https://ytm-api.vrma.dev/search?q=arijit&type=songs'
);
const data = await response.json();
console.log(data.results);
import requests
resp = requests.get(
'https://ytm-api.vrma.dev/search',
params={'q': 'arijit', 'type': 'songs'}
)
data = resp.json()
print(data['results'])
# Search for albums
curl "https://ytm-api.vrma.dev/search?q=khakee&type=albums"
# Get album art
curl "https://yt-music-images.w3abhishek.workers.dev/MPREb_cHdo0SY8o5f/cover/hq.png" -o cover.png