trakt-tools / universal-trakt-scrobbler

MIT License
536 stars 52 forks source link

Disney+ History #171

Open KibosJ opened 2 years ago

KibosJ commented 2 years ago

The extension below allows collecting Disney+ History

https://chrome.google.com/webstore/detail/yougov-safe/lbenbpjiigbogcmofbmoojbkojdmojfl

Not sure if it's possible, but could this be adapted to work with this extension?

nyffchanium commented 2 years ago

I've looked into it a bit.

Sadly, from what I can tell, this extension does not seem to collect the actual history. It merely monitors the "Continue Watching" information on the overview and the episode info in the season-view.

General findings: While the information of when you played what exists somewhere (the information is returned for some requests as "bookmarks"; this includes watching progress and when the progress last changed), there does still not seem to be a way to get that in a history-like way. At the moment, the best one can do, is to request these bookmarks on a per season basis. So to get the whole history, we would have to loop through every movie / season of every series available. While this is probably possible, it would take forever. There is also no way to know what changed, so this would have to be done over and over again.

I've also discovered this GraphQL endpoint by sheer luck: https://disney.content.edge.bamgrid.com/svc/search/v2/graphql/persisted/query/core/Bookmarks. It's possible to request the bookmark data for specific content IDs ?variables={"contentIds": ["bc4be7e3-8405-4414-91a1-269137a0ed15", etc...]}. That much was implied by the error messages. However I've never worked with GraphQL and don't know if this could somehow be used in any way that doesn't require any content IDs to be provided. Probably not, as this field is required and I couldn't find an endpoint that accepts custom queries.

Any ideas?