Expand description
HTTP client for the Monochrome / Hi-Fi Tidal proxy API
All responses wrap a top-level "version": "2.5" field.
Verified endpoint shapes (tested against https://api.monochrome.tf):
GET /info/?id=<track_id> → { version, data: { id, title, duration, trackNumber, audioQuality, artist: {id,name,picture}, album: {id,title,cover} } }
GET /album/?id=<album_id> → { version, data: { id, title, duration, numberOfTracks, releaseDate, cover, artist: {name}, items: [{ item: { track fields } }] } }
GET /artist/?id=<artist_id> → { version, artist: { id, name, picture, popularity }, cover: { id, name, “750”: “https://…” } } (note: top-level key is “artist”, NOT “data”)
GET /search/?s=&limit=N (track search)
→ { version, data: { totalNumberOfItems, items: [ track objects ] } }
GET /search/?al=&limit=N (album search)
→ { version, data: { albums: { items: [ album objects ] }, artists: { items: [] } } }
GET /search/?a=&limit=N (artist search)
→ { version, data: { artists: { items: [ artist objects ] } } }
GET /lyrics/?id=<track_id> → { version, lyrics: { lyrics: “plain text”, subtitles: “lrc string” } } subtitles format: “[MM:SS.cc] text\n[MM:SS.cc] text\n…”
GET /recommendations/?id=<track_id> → { version, data: { items: [{ track: { track fields } }] } } (note: items wrap with “track” key)
GET /cover/?id=<track_id> → { version, covers: [{ id, name, “1280”: “url”, “640”: “url”, “80”: “url” }] } (note: size keys are strings: “1280”, “640”, “80”)
Structs§
- Mono
Client - HTTP client wrapping the Monochrome API.