UNIVERSAL TRACK LINK FINDER (BY TONETRAX) – VERSION 2.4.2
========================================================

Portable Windows application for resolving cross-platform music links through the MusicLink API.

SUPPORTED SEARCH INPUTS

- Spotify track link
- Spotify track ID (22 characters)
- Spotify track URI (spotify:track:…)
- Apple Music track link
- ISRC with or without hyphens, for example DE-YW8-26-11866 or DEYW82611866

Other sources such as Deezer or Tidal, as well as Spotify and Apple Music album links, are deliberately rejected. Validation happens before the API call, so invalid input does not consume a MusicLink request.

USAGE

1. Start Tonetrax_Universal_Track_Link_Finder.exe.
2. Enter your personal MusicLink API key under SETTINGS.
3. Enter a Spotify link/ID, Apple Music link, or ISRC.
4. Select FIND LINKS or press Enter.

The application displays the title, artist, ISRC, cover, and every valid platform link actually returned by MusicLink. Missing links are not invented or constructed.

COPY places a link on the clipboard. OPEN LINK launches it in the default browser.

CHECK LINKS tests all displayed platform links for reachability. Results distinguish reachable pages, redirects, clearly missing pages, and inconclusive responses. Music platforms may block automated requests; the correct track cannot be confirmed this way. Checking does not alter links or consume MusicLink requests.

BATCH SEARCH AND EXPORT

Enter one Spotify track link/ID, Apple Music track link, or ISRC per line in BATCH SEARCH. Duplicates are detected. Before starting, the app shows the maximum number of MusicLink requests needed. Cached entries are reused without an API call; remaining entries are processed sequentially. The search stops on a rate limit or invalid API key. Results already found remain exportable.

EXPORT ALL saves successful results together as JSON, TXT, or CSV. JSON uses the existing track package format with multiple entries in tracks; CSV has one column per platform. Invalid and failed inputs are excluded.

CACHE AND HISTORY

Successful results are stored locally in cache.json beside the EXE. LOAD HISTORY lets you search, load, delete, or completely refresh stored tracks. Refreshing through the API consumes a new request.

Check individual history entries, or use CHECK ALL to select every track. REFRESH CHECKED queries them again one at a time. Checks remain selected while filtering. The maximum number of API requests is confirmed before starting. A short pause separates requests. A short rate limit with a Retry-After value of up to ten seconds gets one retry after the indicated wait; longer limits and an invalid API key stop the search. Failed or ambiguously matched tracks remain unchanged. Review the remaining results and changes, uncheck any you do not want, then apply the selected updates together. CLOSE discards all unapplied results.

Before replacing cached data, the change comparison shows added, changed, and removed links. APPLY REFRESH saves the new data; KEEP OLD DATA discards it. Metadata and cover can change even when the links do not.

EXPORT

SAVE TRACK PACKAGE exports JSON or TXT containing the title, artist, ISRC, optional Spotify track ID, cover URL, and every returned platform link. The cover can be saved separately. One of the original sizes that is actually available can be selected. Arbitrary intermediate values and artificial upscaling are not offered.

LANGUAGE AND COLORS

DE and ENG switch the language immediately; the choice is stored in config.ini. Colors are freely configurable. Insufficient contrast is corrected. Custom theme presets can be saved, updated, renamed, deleted, imported, and exported.

INFORMATION AND STARTUP NOTICE

The Info tab lists the 20 currently known MusicLink destinations and explains variable availability. This information is also shown in a dialog on first startup. It can be disabled permanently and enabled again from the Info tab at any time.

PORTABLE FILES

- config.ini: API key, language, startup behavior, and settings
- cache.json: local track history
- theme-presets.json: custom theme presets

The application folder must be writable.

When upgrading from v2.4.1, copy the new EXE into your existing application folder to retain config.ini, cache.json, and theme-presets.json. Alternatively, copy those three files into the new Portable folder.

PRIVACY AND NETWORK ACCESS

The application contains no analytics or telemetry. Search queries are sent to MusicLink over HTTPS. Link checks send direct HTTP(S) requests to the platform links. Covers from MusicLink, Spotify oEmbed, and—when an Apple Music link is present—Apple Music are checked at their actual pixel dimensions. The largest available variant is displayed automatically. A MusicLink API key is required. Powered by MusicLink is visibly included in the header.

NOTICE AND LIABILITY

FOR PERSONAL USE ONLY. NO WARRANTY AND NO LIABILITY.

Check resolved links for plausibility before publishing them. Availability and matching can vary by region and platform.

CHANGELOG VERSION 2.4.2

- Spotify IDs from history use the matching MusicLink endpoint
- Short pause between bulk refresh API requests
- One bounded retry for a short Retry-After
- HTTP status and error message are clearer in the review window
