Hello,
I just submitted FB9939377 about this issue, but figured I'd still post on the forums as well.
I have been working on bringing song and album rating functionality to my app, using MusicDataRequest from MusicKit for Swift.
When I like or dislike a song, or delete the existing rating, those changes are reflected immediately in the Music app across all of my devices.
However, when I try to rate or delete an existing rating for an album, the API request is successful, but the changes are not reflected in Music.app on any of my devices. Querying the /v1/me/ratings/albums/[id] endpoint correctly shows the change that was made, but it does not seem to sync the change to any devices, which continue to show whatever the rating state was before the change I made in my app.
I ran 3 tests on albums with the following IDs:
1485040020 - Disliked -> Loved
- Disliked in Music.app
- /v1/me/ratings/albums/1485040020 shows the value of the rating attribute as “-1”
- Changed to “Loved” in my app
- /v1/me/ratings/albums/1485040020 confirms the value of the rating attribute has changed from “-1” to “1”
- Music.app on the iPod I used to make the change in my app, as well as another iPhone 11 signed into that Apple ID show the original “Disliked” rating for the album.
1485042017 - Loved -> No Rating
- Liked in Music.app
- /v1/me/ratings/albums/1485042017 shows the value of the rating attribute as “1”
- Deleted the rating from my app
- /v1/me/ratings/albums/1485042017 now 404s, indicating there is no rating for this album.
- Music.app on the iPod I used to make the change in my app, as well as another iPhone 11 signed into that Apple ID show the original “Loved” rating for the album.
1485037658 - No Rating -> Loved
- Confirmed /v1/me/ratings/albums/1485037658 returns a 404, as there is no rating for this album
- “Loved” the album in my app
- /v1/me/ratings/albums/1485037658 now returns a value of “1”
- Music.app on the iPod I used to make the change in my app, as well as another iPhone 11 signed into that Apple ID show me the option to either “Love” or “Suggest Less Like This,” indicating there is no existing rating for the album.
There are sysdiagnoses attached to the feedback. Please let me know here or in the Feedback if there is any more information I can provide. Thanks!
(P.S., I'm requiring iOS 15 for the next version of my app, so I've finally been digging into MusicKit. What a well-designed and useful API! It's been so quick and easy to replace most of my existing URLSession data task code with MusicKit, and MusicDataRequest is such a thoughtful inclusion to be able to interface with the elements of the API not natively in MusicKit, with the added benefit of not needing to deal with tokens anymore. Thanks to the team for all of their continued hard work on it.)