Skip to content

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.

  • 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.

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.

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.

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.