Audience requests
How fans request songs from your library, and how the bandleader manages the queue mid-gig.
Audience requests
A fan opens your gig's public URL on their phone. They see your library — only the songs you've marked open to requests. They tap one. Optionally they tip on the way (see Tips overview). The request lands in your queue.
You decide what to play.
What the fan sees
A clean public page with:
- Your band name and gig context ("Tonight at The Press Box")
- A search box
- A list of your library, filtered to open-to-requests songs
- A "Request this song" button on each row
- An optional "tip with this request" path
No account required. They submit the request, get a confirmation toast, and that's it.
[screenshot: public request page on a phone]
What the bandleader sees
In the app, open the gig page during the gig. The requests panel shows:
- Each request in arrival order
- Status: pending, queued, played, declined
- Tip amount (if any) attached to the request
Tap a request to:
- Queue — move it into your live setlist on the fly.
- Decline — politely decline (the requester doesn't get a notification; this is just for your records).
- Played — mark it done after you've performed it.
Rate limits and CAPTCHA
The public form is protected by:
- Per-IP rate limit — KV-backed. A single IP can't flood the queue.
- Turnstile CAPTCHA — invisible to most users, prompts only on suspicious behavior.
So you won't get spammed by one drunk regular with a clicker. Probably.
Open-to-requests vs. private songs
Each song in your library has an open to requests toggle (Songs editor → Details). Default is on for songs you add manually; importers set it on by default too.
Turn it off for:
- Songs you don't know well enough yet
- Songs you only play under specific circumstances ("just for weddings")
- Songs the bandleader has secret feelings about
Tip: Toggle a song open-to-requests on the morning of a gig if you're learning it that week. Toggle off after if it didn't go great. The setting is per-song, not per-gig — so it persists across every audience-request page that pulls from your library.
Stopping requests for a gig
If you need to stop new requests entirely, toggle Public requests enabled off on the gig page — the request URL will show a "show has ended" message to anyone who hits it.
What's next
- Public request page — the URL setup that makes audience requests work.
- Post-show summary — which requested songs landed well.
- Tips overview — tip-with-request mechanics.
Last updated: 2026-06-04