Feedback API question

Hi!

Sorry for the delay.

GET /1/recommendation/feedback/user/(*user_name*) is used for providing feedback on recommendations LB generates. This is not the same as loving/hating a track. We have not sketched out all the details yet so it remains to be seen how this feedback will interact with normal feedback.

GET /1/feedback/user/(user_name )/get-feedback is the one that is used for loving/hating a track. Its not possible to get recording msid from a recording mbid. We don’t have an endpoint to expose that but also msid to mbid is a many to one relation. The recording msid generated for a listen by LB is included in the payload returned by `GET 1/user/(user_name)/listens. Eg:

{
   payload:{
     count: 1,
     latest_listen_ts: 1641490465,
     listens:[
        {
            inserted_at: "Thu, 06 Jan 2022 20:42:36 GMT",
            listened_at: 1641490465,
            recording_msid: "987257dc-e539-46da-8942-68484cc9d444",
            track_metadata: {...},
            user_name: "amCap1712"
        }
     ],
     user_id: "amCap1712"
   }
}

We are working on adding support to give track feedback using recording mbids. There are still a few issues to be ironed out but you can track https://github.com/metabrainz/listenbrainz-server/pull/1794 for progress updates.

Regarding the richer metdata, you can pass the metadata=true query param i.e. GET 1/feedback/user/amCap1712/get-feedback?metadata=true. And the resulting payload will include commonly useful track metadata fields.

2 Likes