Search

Search the Hep.gg high-quality music library, as a normalized ISRC-keyed list or as the full metadata payload.

Search

Two search endpoints against the high-quality music library. /search returns a small, normalized list keyed by ISRC, the shape you want for feeding straight into /download. /searchfull returns the full metadata payload for when you need every field, at a lower limit.

Query params
q
stringrequired
The search query. Trimmed to 250 characters.
limit
integeroptionaldefault: 10
Number of results, clamped to 1-50.

Response

200 with a JSON object. Each result carries the fields you need to download or stream it.

{
  "query": "daft punk",
  "count": 2,
  "results": [
    {
      "isrc": "USQX91300108",
      "name": "Get Lucky (feat. Pharrell Williams and Nile Rodgers)",
      "artist": "Daft Punk, Pharrell Williams, Nile Rodgers",
      "album": "Random Access Memories",
      "durationMs": 369626,
      "url": "https://..."
    }
  ]
}
Result fields
isrc
stringoptional
The track's ISRC. Pass this to /download, /stream/:isrc, or /artwork/:isrc.
name
stringoptional
Track title.
artist
stringoptional
Artist names, comma-joined when there is more than one.
album
stringoptional
Album title (empty string if unavailable).
durationMs
integeroptional
Track duration in milliseconds.
url
stringoptional
A canonical web URL for the track.

Errors

  • 400 { "error": "Query is required" } when q is missing or empty after trimming.
  • 500 { "error": "Search failed" } on any other failure.

Examples

curl
curl "https://music.jakeypri.me/search?q=daft+punk&limit=5&key=YOUR_KEY"
GEThttps://music.jakeypri.me/searchfullAuth required
Search and return the full track metadata payload.

Returns richer per-track metadata than /search, including album and track detail. The shape is heavier, so the default and maximum limits are lower. Reach for it only when you need fields /search does not surface.

Query params
q
stringrequired
The search query. Trimmed to 250 characters.
limit
integeroptionaldefault: 3
Number of results, clamped to 1-10.

Response

200 with the full-metadata JSON. Errors mirror /search: 400 when q is missing, and 500 { "error": "Search failed" } otherwise.

curl
curl "https://music.jakeypri.me/searchfull?q=get+lucky&limit=2&key=YOUR_KEY"