Endpoint for creating a stream link from an audio file. Files are stored permanently.
Endpoint: POST https://streamables.blrc.me/upload
Account attribution: API uploads are anonymous. Authenticated attribution is available only through the Streamables website; direct API requests carrying Firebase credentials are rejected.
Content Types: multipart/form-data or raw body bytes
Limit: 25 MB
Rate Limit: 10 uploads per hour per client IP
Protection: protected=true (default) disables direct download, raw access, and embedding. Set protected=false to allow.
Visibility: unlisted=true keeps the stream playable through its direct link while excluding it from Discover and public playlists. It is false by default.
Custom name: Use the preferred name field for multipart uploads, the x-stream-name header for raw uploads, or ?name=.... The older customId, customName, x-custom-id, and x-custom-name forms remain supported.
Success Response:
{
"success": true,
"id": "my-song",
"name": "my-song",
"url": "https://streamables.blrc.me/stream/my-song",
"streamUrl": "https://streamables.blrc.me/stream/my-song",
"path": "/stream/my-song",
"protected": false,
"unlisted": false,
"embedUrl": "https://streamables.blrc.me/embed/my-song",
"embedCode": "",
"accountId": "firebase-user-id",
"uploaderName": "Display name"
}
curl -X POST -F "[email protected]" -F "name=my-song" -F "protected=false" -F "unlisted=true" https://streamables.blrc.me/upload
curl -X POST --data-binary @song.mp3 -H "Content-Type: audio/mpeg" -H "x-stream-name: my-song" -H "x-protected: false" -H "x-unlisted: true" https://streamables.blrc.me/upload
https://streamables.blrc.me/stream/uuid?download
https://streamables.blrc.me/stream/uuid?raw
<iframe src="https://streamables.blrc.me/embed/playlist/my-playlist" title="Playlist my-playlist" width="100%" height="100%" loading="lazy" allow="autoplay" style="border:0;width:100%;height:100%;min-height:112px" referrerpolicy="no-referrer"></iframe>
Playlists use an ID with letters, numbers, hyphens, or underscores. From an unprotected stream page, enter a playlist ID to toggle that song in the playlist. The first add creates it; entering the same ID again removes the song.
POST https://streamables.blrc.me/playlist/my-playlist
Content-Type: application/json
{"streamId":"my-song"}
Playlist response:
{
"success": true,
"playlistId": "my-playlist",
"streamId": "my-song",
"action": "added",
"count": 1,
"embedUrl": "https://streamables.blrc.me/embed/playlist/my-playlist",
"embedCode": "<iframe ...></iframe>"
}
Read a playlist: GET https://streamables.blrc.me/playlist/my-playlist