🤖 Chat Token Setup Guide
If you prefer not to use the WNP client's built-in bot integration, the Chat Token
lets you display your currently playing track in stream chat using Nightbot,
StreamElements, Streamlabs, or any chatbot that supports URL fetching.
The token is read-only and intended for use in public chat commands, but anyone with it
can view your current listening activity.
✅ Prerequisites
Before you begin, you'll need:
- A WNP account with a public profile — set this from the
Privacy & Settings tab in your dashboard.
- A Chat Token generated from the
Chat Token tab in your dashboard.
Copy the token shown there — you'll paste it into the commands below.
🛠️ Bot Setup
Nightbot
- Go to nightbot.tv → Commands → Add Command
- Set the command name, e.g.
!song
- Paste this as the response (replace
YOUR_TOKEN with your token):
$(urlfetch https://api.whatsnowplaying.com/v1/track/text?token=YOUR_TOKEN)
- Click Submit to save.
StreamElements
- Go to streamelements.com → Chatbot → Commands
- Click Add new command and set the name, e.g.
!song
- Paste this as the response (replace
YOUR_TOKEN with your token):
$(urlfetch https://api.whatsnowplaying.com/v1/track/text?token=YOUR_TOKEN)
- Click Save.
Streamlabs Cloudbot
- Go to streamlabs.com → Cloudbot → Commands
- Click Add Command and set the name, e.g.
!song
- Paste this as the response (replace
YOUR_TOKEN with your token):
🎶 Now Playing: {readapi.https://api.whatsnowplaying.com/v1/track/text?token=YOUR_TOKEN}
- Click Save.
🔌 API Endpoints
Text endpoint — best for chatbots
https://api.whatsnowplaying.com/v1/track/text?token=YOUR_TOKEN
Returns plain text: Artist - Title, or an empty string when nothing is playing.
This is the simplest option and works with any bot that can fetch a URL.
JSON endpoint — for overlays and custom integrations
https://api.whatsnowplaying.com/v1/track?token=YOUR_TOKEN
Returns a JSON object with all available track metadata:
{
"title": "Song Title",
"artist": "Artist Name",
"album": ["Album Name"],
"year": 2024,
"genres": ["Electronic", "House"],
"isrc": ["USRC12345678"],
"musicbrainz_recording_id": "...",
"musicbrainz_artist_id": ["..."],
"musicbrainz_album_id": ["..."]
}
Returns an empty object {} when nothing is playing.
📝 Notes
- The token is rate-limited to 60 requests per minute.
- Your profile must be set to public for the token to work.
- If your token is ever compromised, you can reroll it from the
Chat Token tab in your dashboard.
The old token stops working immediately.