Documentation
Everything you need — from first invite to advanced customisation. Browse by section or use the sidebar to jump to any command.
Ragalaya is a feature-rich Discord music bot — stream songs from multiple platforms, manage queues, apply audio filters, track listening stats, share playlists, and customise the bot's look per server. Every feature works via prefix commands and slash commands.
These are the Discord permissions Ragalaya needs to function. Grant them when inviting, or add them to the bot's role manually.
What you need to run different commands.
| Permission | Commands |
|---|---|
| None — any member | stats, radio, favourites, playlists, plshare, ping, invite, premium |
| Same VC as the bot | play, pause, resume, stop, skip, skipto, volume, loop, shuffle, clearqueue, queueremove, join, leave, repair, nowplaying, lyrics, filters, queue |
| Administrator | prefix, 247, votetoskip, panel, removepanel, log, logreset, customise |
Plays a song or adds it to the queue. Accepts a song name or URL from YouTube, SoundCloud, Spotify, or JioSaavn — including playlist URLs. Auto-joins your voice channel.
Toggles playback. pause pauses the current song. resume unpauses it.
Stops playback and clears the entire queue. If vote-to-skip is on, a listener vote is required unless you're an Administrator or the original requester.
skip — Skips the current track (vote-to-skip aware, alias: sk).
skipto — Jumps directly to position N in the queue.
Sets playback volume between 0 and 100. Applies immediately.
Controls repeat mode. No argument opens a dropdown. Pass track / 1 to loop the current song, queue / 2 to loop all, or off to disable.
Shuffles all upcoming songs in the queue.
join (j, connect) — Joins your voice channel.
leave (disconnect) — Disconnects and clears all music state.
repair (r) — Reconnects and fully restores queue and playback. Use when the bot gets stuck.
Restores your last session. continue resumes the last track. continue queue restores the entire last queue. Snapshots are taken on every track change automatically.
Shows the current queue — 10 songs per page — with title, artist, requester, and position. Each entry has Remove and Play Next buttons.
Clears all upcoming songs. A timed confirmation prompt appears (auto-expires after 60 s).
Removes the song at position N. Only the original requester or an Administrator can do this. Slash command supports autocomplete.
Real-time DSP effects. Run ,,filter for an interactive dropdown, or ,,filter <name> to apply directly. Must be in the same VC as the bot.
Interactive now-playing card with song info, duration bar, volume, loop mode, requester, and the next 2 upcoming songs. Includes Pause / Skip / Stop / Controls buttons.
Fetches lyrics via LRCLIB. Shows a live-scrolling embed highlighting the current line when synced lyrics are available; falls back to paginated plain text otherwise.
No argument opens the radio setup panel. Pass a language name to start streaming that station directly.
Saves the currently playing song to your personal favourites list.
Displays your full favourites list in a paginated embed.
Queues and plays all your favourite songs in sequence. Must be in a voice channel.
Create personal playlists, add songs, play them back, and share them with other users. Free users get 5 playlists / 25 songs each. Premium users get 20 playlists / 50 songs each.
No argument shows your playlist library with a dropdown to select and view each one. Passing a name opens that playlist directly.
Adds a song to one of your playlists. No argument uses the currently playing track. Pass a song name to search and add it. A dropdown lets you pick which playlist(s) to add to, or create a new one inline.
Queues all songs in the named playlist and starts playback. Must be in a voice channel.
Permanently deletes the named playlist and all its songs.
Opens the Playlist Sharing hub with two actions:
Top 50 most-played songs for you or a mentioned user, sorted by play count. Paginated at 10 per page.
Globally trending songs aggregated across all users and servers.
Most-played songs in the current server only.
A persistent music controller pinned to a dedicated channel. It auto-updates as tracks change and provides interactive buttons — no typing needed.
Creates a persistent music controller in the specified channel. Live-updates with the now-playing track and provides play/pause, skip, stop, filter, and loop buttons.
Removes the music panel controller from this server.
Shows the current prefix without arguments, or changes it when a new one is provided. Default is ,,.
Toggles 24/7 mode. When on, Ragalaya stays in the voice channel even when everyone leaves.
Enables or disables vote-to-skip. When on, skipping or stopping requires 60% of voice channel members to vote. Administrators and the original requester always bypass this.
Opens an interactive panel to personalise the bot's look for this server only. Only the command invoker can interact with buttons. Panel auto-disables after 5 minutes. See the Customise section for full details.
Log every command, panel button press, and interaction to a dedicated channel for moderation and audit purposes.
Sets the log channel. Omit the argument to disable logging entirely.
Removes the log channel and disables all activity logging.
Give Ragalaya a custom identity in your server — avatar, nickname, banner, and bio, scoped entirely to your server. Requires Guild Premium+ and Administrator.
| Option | What changes | Input |
|---|---|---|
| 🖼️ Profile Pic | Bot's server avatar | Direct image URL (PNG / JPG / GIF / WebP) |
| ✏️ Name | Bot's nickname in this server | Text, max 32 chars |
| 🎨 Banner | Bot's profile banner | Direct image URL (PNG / JPG / GIF) |
| 📝 Bio | Bot's guild member bio | Text, max 382 chars — "Powered by Ragalaya" is auto-appended |
| 👋 Welcome Name | Name in welcome/goodbye messages | Text (default: Ragalaya) |
| 🔄 Reset All | Restores all values to defaults | — |
| Error | Fix |
|---|---|
| "Join a voice channel first" / "Not in the same VC" | Join the bot's voice channel, or run ,,repair |
| "This panel has expired" | Re-run the command (5 min inactivity limit) |
| "Guild Premium+ required" | Contact support to upgrade your server plan |
| "Could not download that image" | Use a direct image URL ending in .png .jpg .gif .webp |
| "It's not your interaction" | Run your own ,,help or ,,customise command |
| "You already have a pending share" | Wait for the recipient to respond, or the 30-min share to expire |
| Bot doesn't respond at all | Try slash commands (/play) or check ,,ping |