Skip to main content

beets-tidalv1

tidalv1 adds TIDAL v1 sources to the built-in beets lyrics and fetchart plugins.

The lyrics endpoint used is the legacy v1 endpoint:

GET https://api.tidal.com/v1/tracks/{track_id}/lyrics

TIDAL v2 does not currently expose the same lyrics payload.

Install

beets-tidalv1 requires Beets 2.7 or newer and Python 3.10–3.14.

python -m pip install "beets-tidalv1 @ git+https://github.com/treyturner/beets-plugins.git#subdirectory=plugins/tidalv1"

Configure beets

Enable this plugin before lyrics and fetchart so it registers before beets builds the source lists:

plugins:
  - tidalv1
  - lyrics
  - fetchart

lyrics:
  sources:
    - tidalv1
    - lrclib

fetchart:
  sources:
    - filesystem
    - tidalv1
    - coverart

tidalv1:
  v1_client_id: YOUR_TIDAL_V1_APP_CLIENT_ID
  v1_client_secret: YOUR_TIDAL_V1_APP_CLIENT_SECRET
  country_code: US
  prefer_synced: yes
  art_size: 1280
  match_threshold: 0.78

A legacy v1 client ID and secret are required. If you have a credential pair in the same format used by tiddl, you can provide a Base64-encoded <v1_client_id>;<v1_client_secret> value instead:

tidalv1:
  v1_client_id_secret_b64: BASE64_ENCODED_PAIR

If left empty, a best-effort attempt will be made to find it for you.

Run beet tidalv1 --auth once to authorize a TIDAL account, mirroring the official tidal plugin's beet tidal --auth interface. The command opens the authorization URL in your browser and stores a refreshable token cache named tidalv1_token.json in beets' application config directory.

Usage

Fetch lyrics through the normal beets command:

beet lyrics artist:"Daft Punk"

Fetch album art through the normal fetchart command:

beet fetchart -f album:"Discovery"

During imports, the built-in lyrics and fetchart plugins handle automatic updates when their own auto settings are enabled.

Development

Run tests:

uv sync
uv run pytest
uv run mypy
uv run pyright

Run a single module:

uv run pytest tests/test_client.py

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

beets_tidalv1-0.1.0.tar.gz (17.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

beets_tidalv1-0.1.0-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file beets_tidalv1-0.1.0.tar.gz.

File metadata

  • Download URL: beets_tidalv1-0.1.0.tar.gz
  • Upload date:
  • Size: 17.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for beets_tidalv1-0.1.0.tar.gz
Algorithm Hash digest
SHA256 05e460e24bd099fe1c9a62ebed2478ee596f588663070f6f40b29827d99363e5
MD5 73e21c47db18007d2d969df61d17de82
BLAKE2b-256 58c4fbff724e685a96e93c988eea97983325ff9b353bb6e20af8c9575554165f

See more details on using hashes here.

Provenance

The following attestation bundles were made for beets_tidalv1-0.1.0.tar.gz:

Publisher: publish.yml on treyturner/beets-plugins

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file beets_tidalv1-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: beets_tidalv1-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 13.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for beets_tidalv1-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 46e7620ddafc36189c5bd24f8e70606343e29552945aba72b4d76f71bf00877c
MD5 b077fbc390a067596215a8993e3cf9ee
BLAKE2b-256 158bfe3a9685f4c7e15498c729a09fa02e6f7ee60bcd0b4f211b56c748e5c028

See more details on using hashes here.

Provenance

The following attestation bundles were made for beets_tidalv1-0.1.0-py3-none-any.whl:

Publisher: publish.yml on treyturner/beets-plugins

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page