Tidal
The Tidal connector links your Tidal account over OAuth. Today it powers
playlist write actions (the agent can create a playlist and add
tracks to it, with your approval), while the listening-history sync is
dormant because of a gap in Tidal’s public API. The manifest is still
tier: "core", so the Desktop client surfaces a Tidal configuration
card alongside Google and GitHub.
Status at a glance
Section titled “Status at a glance”- Working today — the OAuth connection, and the playlist write surface: search Tidal’s catalog, create a new playlist, and append tracks to it.
- Dormant — syncing your recently-played listening history into Carabase. This path has been retired (see below) and currently does nothing.
Listening history is dormant
Section titled “Listening history is dormant”Tidal’s v2 API never exposed a working “recently played” endpoint, and its taste/collection endpoints return empty even for accounts with a full library. This is an upstream gap on Tidal’s side that we can’t fix from here, so the listening-history sync — the hourly poll and its backfill — has been removed.
The underlying plumbing is kept in place for forward-compatibility: the listening-history substrate table, the daily and weekly listening-rollup emitters, and the rule-preview path all remain declared. They simply produce nothing until either Tidal restores API parity or a backfill from another source repopulates the same table. None of this surfaces data to the agent today.
Want your listening history now? Use the Last.fm connector instead. If you scrobble your Tidal (or Spotify, or anything else) plays to Last.fm, Carabase ingests that scrobble history into a listening-history substrate that the agent can query — covering the gap left by Tidal’s dead endpoint.
Playlist actions (write surface)
Section titled “Playlist actions (write surface)”Tidal is Carabase’s reference connector for the external-action write
surface. When an agent workflow decides to build a Tidal playlist, it
doesn’t call Tidal directly — it proposes the action, you approve it,
and only then does Carabase execute it. The connector declares a single
playlist write intent backed by three operations:
- Search the catalog to resolve tracks before writing.
- Create a playlist.
- Add the resolved tracks to it.
This propose-then-approve flow keeps any change to your Tidal account under your control. See the external-actions section of the project documentation for how the write surface works across connectors.
Register a Tidal OAuth Developer Application, then add its credentials to your Carabase Host from the OAuth Apps tab of the Tidal connector page in the Admin SPA. The connection itself uses the PKCE flow and supports multiple Tidal accounts per workspace, with automatic re-auth handling once an app is configured.
Reviving listening history later
Section titled “Reviving listening history later”Because the substrate schema and emitters are preserved, no migration work is required to bring listening history back. A future Tidal API change, or a one-time historical import into the same listening-history table, could restore the read path without redoing the storage layout. Until then, treat Tidal as a playlist-action connector and rely on Last.fm for listening trends.