This document provides examples of all supported WebSocket commands used to control Songify via a WebSocket connection.
Each message must be sent as raw JSON with an "action" key and an optional "data" object depending on the action.
- The
trackfield inqueue_addcan be a full Spotify link or a text search query. - The
requesterfield is optional and will default to""if not specified. - All messages must be sent as raw JSON strings through your WebSocket client.
Adds a song to the request queue by Spotify link or search term.
{
"action": "queue_add",
"data": {
"track": "https://open.spotify.com/track/4PTG3Z6ehGkBFwjybzWkR8",
"requester": "Viewer42"
}
}Sets the Spotify volume to a specific value between 0 and 100.
{
"action": "vol_set",
"data": {
"value": 80
}
}Skips the currently playing song.
{
"action": "skip"
}Alternative:
{
"action": "next"
}Toggles playback. Also supports explicit pause or play.
{
"action": "play_pause"
}{
"action": "pause"
}{
"action": "play"
}Sends the currently playing song info to Twitch chat.
{
"action": "send_to_chat"
}Blocks the currently playing song’s artist from future requests.
{
"action": "block_artist"
}Blocks all artists listed on the currently playing song.
{
"action": "block_all_artists"
}Blocks the currently playing song from being requested again.
{
"action": "block_song"
}Blocks the last user who requested a song.
{
"action": "block_user"
}Pauses all Twitch channel point song request rewards. (Only works if the Reward was created using Songify)
{
"action": "stop_sr_reward"
}Increases volume by 5%.
{
"action": "vol_up"
}Decreases volume by 5%.
{
"action": "vol_down"
}