Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deezer's API returns alternative release with different GTIN and availability #45

Open
kellnerd opened this issue Jun 22, 2024 · 5 comments
Labels
blocked Something prevents this from being worked on bug Something isn't working Deezer

Comments

@kellnerd
Copy link
Owner

kellnerd commented Jun 22, 2024

Lookup using all providers

Providers have returned multiple different GTIN: 794558049368 (Spotify, iTunes, Tidal), 197189103209 (Deezer)

Lookup without Deezer returns a release which is only available outside of Europe

Lookup using only Deezer returns a release which is only available in Europe with a different barcode

Does this happen because Deezer does not have the other release or because their API is queried from a European server?

We should probably adapt the Deezer provider to return an error message which contains the correct GTIN to lookup instead of returning the result.

GTINs with similar issues:

  • 00602527812519 returns a different Deezer release which is available in 0 regions
  • 00602527650579 even returns two other barcodes, one for Deezer (see case above), and one for iTunes (known issue)
  • 5099908794857: US vs outside of US (Deezer) releases
@kellnerd kellnerd added bug Something isn't working Deezer labels Jun 22, 2024
@kellnerd
Copy link
Owner Author

kellnerd commented Jun 24, 2024

The problem is actually even worse, the API does this not only for GTIN lookups but even for ID lookups:

ID 324028037 is available in AT/CH/DE, which returns the expected result when queried from DE but ID 53024752 when queried from FR, for example.
The DE/AT/CH has the GTIN 4018939266684 and would match the results for the other providers, but Deezer rather returns the different release (GTIN 724353078027) which would be available in FR.
Not even specifying the correct Deezer ID in addition to the GTIN helps here.

No idea why Deezer suddenly changed the behavior of their API, but this makes the Deezer provider unusable for releases which are not available in the server's region 😭

@atj
Copy link
Collaborator

atj commented Jun 25, 2024

Is this definitely a change in behaviour or could it just not have been noticed before? I think I mentioned that the API sometimes returned "Various Artists" in French in the past, which I assumed was related to the server location, so this kind of weirdness is not unheard of.

@kellnerd
Copy link
Owner Author

It is a change in behaviour, not too long ago these lookups were still working as expected.
Only recently we got an increasing number of GTIN conflicts caused by Deezer, previously iTunes was the main offender.

According to the logs the issue probably started on June 20:

harmony-log | grep "Providers have returned multiple different GTIN" | grep "(Deezer)"

@atj
Copy link
Collaborator

atj commented Jun 26, 2024

The following thread on the forum indicates others have been experiencing different API behaviour recently:

https://en.deezercommunity.com/other-devices-49/deezer-lms-plugin-for-squeezebox-suddenly-not-working-79033

@kellnerd
Copy link
Owner Author

kellnerd commented Jul 8, 2024

For the time being I have at least made the Deezer provider fail lookups if they return an ID or GTIN which is different from the one which was requested: 4702fcb
Now combined lookups of multiple sources no longer fail because of a GTIN merge conflict.
The error message includes the returned release URL or GTIN, so it is simple to still get these Deezer results if that is desired.

@kellnerd kellnerd added the blocked Something prevents this from being worked on label Jul 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked Something prevents this from being worked on bug Something isn't working Deezer
Projects
None yet
Development

No branches or pull requests

2 participants