Date: 2026-02-27
Related: Follow-up to the bug report filed on 2026-02-24 regarding cache_gapless_set returning placeholder data. That issue was reported as fixed, but the problem persists across all channels for the offline cache endpoint. The live streaming endpoint (/api/gapless) is working correctly.
GET /api/cache_gapless_set — used for offline downloads
GET /api/gapless — used for live streaming — returns correct data
# BROKEN — offline cache endpoint (all channels)
curl -s "https://api.radioparadise.com/api/cache_gapless_set?chan=0&bitrate=2&cache_action=cache_block"
curl -s "https://api.radioparadise.com/api/cache_gapless_set?chan=1&bitrate=2&cache_action=cache_block"
curl -s "https://api.radioparadise.com/api/cache_gapless_set?chan=2&bitrate=2&cache_action=cache_block"
curl -s "https://api.radioparadise.com/api/cache_gapless_set?chan=3&bitrate=2&cache_action=cache_block"
# Also broken with buffer_ahead:
curl -s "https://api.radioparadise.com/api/cache_gapless_set?chan=0&bitrate=2&cache_action=buffer_ahead"
# WORKING — live streaming endpoint
curl -s "https://api.radioparadise.com/api/gapless?chan=0&bitrate=4&numSongs=5&event=0"| Channel | Songs | Status |
|---|---|---|
| 0 - Main Mix | 8 | All placeholder |
| 1 - Mellow Mix | 8 | All placeholder |
| 2 - RockIt! | 7 | All placeholder |
| 3 - Globalized | 8 | All placeholder |
Every song returns:
{
"song_id": "0",
"artist": "Commercial-free",
"title": "Listener-supported",
"type": null,
"rating": 0,
"user_rating": 0,
"ratings_num": 0,
"cover_art": "covers/l/103.jpg"
}Note: In the previous report (2026-02-24), channel 2 (Rock) was the only channel that worked. Now all 4 channels are broken.
{
"song_id": 53162,
"artist": "Eric Hilton",
"title": "Madame Asha",
"type": "M"
}Real song IDs, real metadata, valid type values.
- Offline playback is completely broken.
type: nullfails client-side validation (expects a non-null string), causing"Invalid song format in playlist"errors. - Downloads succeed (audio files are valid), but the playlist can't be loaded for playback because the metadata is all placeholder data.
- Even if the
type: nullissue were worked around, users would see "Commercial-free — Listener-supported" for every track.
The fix that was applied after the 2026-02-24 report appears to have resolved the issue for the live streaming path (/api/gapless) but not for the offline cache path (/api/cache_gapless_set). Both cache_action=cache_block and cache_action=buffer_ahead are affected, across all 4 channels.