I’m looking at making a fun project for generating media recommendations based on past viewing behavior and I’d like to know if the API exposes something like “previous N items that user X played”

Looking through the swagger docs on my server, i see an endpoint of /Users/{UserID}/Views but that only seems to return all of my libraries, not the individual media for that given user’s playback history. I’d like to get the last X (configurable) items that a given user Id has played, but no luck so far.

I’m using the python library here

  • @[email protected]
    link
    fedilink
    English
    2
    edit-2
    1 year ago

    I browsed to my jellyfin media library with the network tab open and set the filter to “Played” and it made a request like this:

    https://{ host }/Users/{ user_id }/Items?SortBy=DateCreated%2CSortName%2CProductionYear&SortOrder=Descending&IncludeItemTypes=Movie&Recursive=true&Fields=PrimaryImageAspectRatio%2CMediaSourceCount%2CBasicSyncInfo&ImageTypeLimit=1&EnableImageTypes=Primary%2CBackdrop%2CBanner%2CThumb&StartIndex=0&Limit=100&Filters=IsPlayed

    • @kaktus
      link
      English
      11 year ago

      I can’t check right now, but if you go to your.ip:8096/api-docs/swagger/index.html you can see all endpoints.

      Sorry for posting here, somehow I cant respond to the op.

    • @ArtVandelayOP
      link
      English
      11 year ago

      Thanks, that’s a great start. Perhaps a combination of the limit, filters, and sort by query parameters might get me there. Now to find what all options there are other than date created for the sorting.

  • Chaphasilor [he/him]
    link
    fedilink
    English
    11 year ago

    The PlaybackReporting plugin supports that. You can get the item IDs of every media item each user played, along with the timestamp and duration. You can also filter the results using a SQP query. Let me know if you need additional pointers!