Tamed integrates with several external services to enrich your listening experience. This page documents the preference keys for each integration, how they interact, and where to find the credentials you need. Sensitive values such as tokens and cookies are stored in Android DataStore and never transmitted beyond their intended service.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/calmerism/Tamed/llms.txt
Use this file to discover all available pages before exploring further.
Scrobbling
ListenBrainz
ListenBrainz is an open-source listening history platform. Enabling scrobbling sends a “listen” event to your ListenBrainz account each time a track plays beyond the scrobble threshold.Enable Scrobbling
Toggle
ListenBrainzEnabledKey (listenbrainz_enabled, Boolean) to start sending listens to your account.Authentication Token
Paste your personal access token into
ListenBrainzTokenKey (listenbrainz_token, String). Obtain it from your profile at listenbrainz.org/profile.| Preference Key | DataStore Key | Type | Default | Description |
|---|---|---|---|---|
ListenBrainzEnabledKey | listenbrainz_enabled | Boolean | false | Enables scrobbling to ListenBrainz. |
ListenBrainzTokenKey | listenbrainz_token | String | "" | Your ListenBrainz user token. The app shows “Set token” until a value is saved. |
Last.fm
Last.fm scrobbling has a dedicated settings screen accessible from Settings → Integrations → Last.fm. The keys below are stored by that screen.| Preference Key | DataStore Key | Type | Description |
|---|---|---|---|
EnableLastFMScrobblingKey | lastfmScrobblingEnable | Boolean | Master toggle for Last.fm scrobbling. |
LastFMSessionKey | lastfmSession | String | Last.fm authenticated session key obtained via OAuth. |
LastFMUsernameKey | lastfmUsername | String | Cached Last.fm username shown in the UI. |
Full Last.fm scrobbling configuration — including now-playing updates, scrobble delay percent, and minimum track duration — is documented on the Scrobbling page. This page covers only the keys relevant to the Integrations screen.
Discord Rich Presence
Discord RPC publishes your currently playing track as your Discord activity. The integration has its own dedicated screen reachable from Settings → Integrations → Discord.| Preference Key | DataStore Key | Type | Description |
|---|---|---|---|
EnableDiscordRPCKey | discordRPCEnable | Boolean | Master toggle for Discord Rich Presence. |
DiscordTokenKey | discordToken | String | Discord user token used to authenticate the RPC connection. |
DiscordUsernameKey | discordUsername | String | Cached Discord username displayed in the UI. |
DiscordNameKey | discordName | String | Cached Discord display name. |
| Preference Key | DataStore Key | Type | Description |
|---|---|---|---|
DiscordActivityNameKey | discordActivityName | String | Custom activity name overriding the default. |
DiscordActivityDetailsKey | discordActivityDetails | String | Activity details line (typically the track title). |
DiscordActivityStateKey | discordActivityState | String | Activity state line (typically the artist name). |
DiscordActivityTypeKey | discordActivityType | String | Activity type: PLAYING, STREAMING, LISTENING, WATCHING, or COMPETING. |
DiscordPresenceStatusKey | discordPresenceStatus | String | Presence status: ONLINE, IDLE, DND, or INVISIBLE. |
DiscordShowWhenPausedKey | discordShowWhenPaused | Boolean | Keep the activity visible in Discord when playback is paused. |
DiscordActivityButton1EnabledKey | discordActivityButton1Enabled | Boolean | Show the first custom activity button. |
DiscordActivityButton1LabelKey | discordActivityButton1Label | String | Label text for the first button. |
DiscordActivityButton1UrlSourceKey | discordActivityButton1UrlSource | String | URL source type for the first button. |
DiscordActivityButton1CustomUrlKey | discordActivityButton1CustomUrl | String | Custom URL for the first button when source is custom. |
DiscordActivityButton2EnabledKey | discordActivityButton2Enabled | Boolean | Show the second custom activity button. |
DiscordActivityButton2LabelKey | discordActivityButton2Label | String | Label text for the second button. |
DiscordActivityButton2UrlSourceKey | discordActivityButton2UrlSource | String | URL source type for the second button. |
DiscordActivityButton2CustomUrlKey | discordActivityButton2CustomUrl | String | Custom URL for the second button when source is custom. |
DiscordLargeImageTypeKey | discordLargeImageType | String | Large image source: thumbnail, artist, appicon, or custom. |
DiscordLargeTextSourceKey | discordLargeTextSource | String | Text shown on hover over the large image. |
DiscordLargeTextCustomKey | discordLargeTextCustom | String | Custom hover text when DiscordLargeTextSourceKey is custom. |
DiscordLargeImageCustomUrlKey | discordLargeImageCustomUrl | String | Custom image URL when DiscordLargeImageTypeKey is custom. |
DiscordSmallImageTypeKey | discordSmallImageType | String | Small image source: thumbnail, artist, appicon, or custom. |
DiscordSmallImageCustomUrlKey | discordSmallImageCustomUrl | String | Custom image URL when DiscordSmallImageTypeKey is custom. |
DiscordActivityPlatformKey | discordActivityPlatform | String | Discord client platform identifier for the activity. |
DiscordPresenceIntervalValueKey | discordPresenceIntervalValue | Int | Numeric value for the presence update interval. |
DiscordPresenceIntervalUnitKey | discordPresenceIntervalUnit | String | Time unit for the presence interval: S (seconds), M (minutes), H (hours). |
DiscordInfoDismissedKey | discordInfoDismissed | Boolean | Tracks whether the Discord setup info banner has been dismissed. |
YouTube Music Account
Linking your Google account enables personalized recommendations, syncing of liked songs and playlists, and browsing your library on YouTube Music.Account Credentials
Account Credentials
| Preference Key | DataStore Key | Type | Description |
|---|---|---|---|
AccountNameKey | accountName | String | Display name of the signed-in Google account. |
AccountEmailKey | accountEmail | String | Email address of the signed-in Google account. |
AccountChannelHandleKey | accountChannelHandle | String | YouTube channel handle (@handle) for the account. |
InnerTubeCookieKey | innerTubeCookie | String | Full cookie header string for authenticated InnerTube requests. |
VisitorDataKey | visitorData | String | YouTube visitor data token used in API requests. |
DataSyncIdKey | dataSyncId | String | Account data sync identifier used to correlate library state. |
UseLoginForBrowse | useLoginForBrowse | Boolean | Uses the authenticated session for catalog browsing, enabling personalized results. |
PoToken (Proof of Origin)
PoToken (Proof of Origin)
PoToken is YouTube’s client-integrity token. Providing a valid PoToken allows playback of age-restricted and certain premium-quality streams that would otherwise be blocked.
| Preference Key | DataStore Key | Type | Description |
|---|---|---|---|
PoTokenKey | poToken | String | Primary PoToken value. |
WebClientPoTokenEnabledKey | webClientPoTokenEnabled | Boolean | Enable PoToken for the web client request path. |
PoTokenGvsKey | poTokenGvs | String | PoToken for the GVS (Google Video Server) path. |
PoTokenPlayerKey | poTokenPlayer | String | PoToken for the player endpoint. |
UseVisitorDataKey | useVisitorData | Boolean | Include visitor data in requests alongside the PoToken. |
PoTokenSourceUrlKey | poTokenSourceUrl | String | URL of an external PoToken generation service. |
YTM Library Sync
YTM Library Sync
| Preference Key | DataStore Key | Type | Description |
|---|---|---|---|
YtmSyncKey | ytmSync | Boolean | Enables periodic synchronization of your YouTube Music library (likes, albums, playlists, artists) with Tamed’s local database. |
SelectedYtmPlaylistsKey | ytm_selected_playlists | String | Comma-separated list of YouTube Music playlist IDs to include in sync. |
Content Settings
These preferences control what content appears in search results and the library.| Preference Key | DataStore Key | Type | Default | Description |
|---|---|---|---|---|
HideExplicitKey | hideExplicit | Boolean | false | Filters explicit-tagged tracks from search results and recommendations. |
HideVideoKey | hideVideo | Boolean | false | Excludes video entries from search results, showing audio-only tracks. |
Content Language & Region
| Preference Key | DataStore Key | Type | Default | Description |
|---|---|---|---|---|
ContentLanguageKey | contentLanguage | String (BCP-47) | "SYSTEM_DEFAULT" | Language used for YouTube Music catalog metadata (track titles, album names). "SYSTEM_DEFAULT" follows the device locale. |
ContentCountryKey | contentCountry | String (ISO 3166-1 alpha-2) | "SYSTEM_DEFAULT" | Country used for YouTube Music catalog regionalization. "SYSTEM_DEFAULT" follows the device locale. |
LanguageCodeToName and CountryCodeToName maps defined in PreferenceKeys.kt. Supported countries include JP, KR, US, GB, CN, TW, HK, FR, DE, ES, MX, BR, RU, IT, NL, PL, TR, AU, CA, IN, ID, TH, VN, PH, MY, SG, AR, CL, CO, PE, ZA, EG, SA, AE.
Miscellaneous
Artist Name Separators
| Preference Key | DataStore Key | Type | Default | Description |
|---|---|---|---|---|
ArtistSeparatorsKey | artistSeparators | String | ",;/&" | Characters Tamed uses to split compound artist name strings into individual artist entries. For example, "Artist A & Artist B" is split into two separate artists. |
External Downloader
| Preference Key | DataStore Key | Type | Default | Description |
|---|---|---|---|---|
ExternalDownloaderEnabledKey | externalDownloaderEnabled | Boolean | false | Routes track downloads through a third-party downloader app. |
ExternalDownloaderPackageKey | externalDownloaderPackage | String | "" | Package name of the external downloader (e.g. com.example.downloader). |
