Documentation for controlling and preserving Bose SoundTouch devices
This guide explains how to link your Spotify or Amazon Music account to AfterTouch so your speakers can stream music from those services.
Connecting a music service happens in three separate steps, each done once:
Each step is described below. If someone else is hosting AfterTouch for you, step 1 may already be done — ask them.
The developer app is what allows AfterTouch to talk to Spotify’s or Amazon’s servers on behalf of users. It requires registering an account on a developer portal.
If you run AfterTouch for yourself only: You register one app and use it yourself.
If you run AfterTouch for a group (e.g., your household): You register one app, configure it in AfterTouch, and everyone who uses your AfterTouch instance shares it. They never see your app credentials — those stay on your server. However, they do need to trust you, since their music account tokens are stored by your AfterTouch installation.
If you don’t trust the AfterTouch operator: Run your own AfterTouch instance and register your own app. That way everything stays under your control.
http://<your-aftertouch-ip>:8000/mgmt/spotify/callback
Replace <your-aftertouch-ip>:8000 with the address of your AfterTouch server.
The status should change to Active.
After authorizing, each speaker needs to be told about the Spotify source.
Repeat step 4 for each speaker.
Current status: account linking works, streaming does not.
The OAuth flow and token storage are fully functional. However, the speaker’s
AmazonClientcontactsmusic-api.amazon.comdirectly with the access token and receives a 401. Amazon Music’s streaming API requires scopes that are only available to registered Amazon Music partners — a standard Login with Amazon app does not qualify. The infrastructure is in place and will work if those scopes ever become available, but following these steps will not result in working Amazon Music playback today.
http://<your-aftertouch-ip>:8000/mgmt/amazon/callback
Replace <your-aftertouch-ip>:8000 with the address of your AfterTouch server.
The status should change to Active.
Repeat step 4 for each speaker.
“Failed to initialize” when clicking Connect: The app credentials in Settings are missing or incorrect. Double-check the Client ID, Client Secret, and Redirect URI. The Redirect URI in AfterTouch must exactly match the one registered in the developer portal.
The login window opens but redirects to an error page: The Redirect URI registered with Spotify/Amazon does not match what AfterTouch is sending. Make sure the address (including the port) is identical in both places.
The speaker doesn’t show the new source after priming: Try rebooting the speaker. It may take a minute to update its source list after priming.
The login window doesn’t open (popup blocked): Allow popups from the AfterTouch address in your browser settings, then try again. Alternatively, the status message will show a direct link you can click.