Jump to content

Developer API: Add an item to Resume/Next Up without starting playback


Go to solution Solved by Lasikie,

Recommended Posts

Posted

Please add a supported, user-scoped API to place an item in Emby's native Resume/Next Up rail without starting a playback session or changing play history.

Use case: Plembfin (https://plembfin.com/) is an open-source, cross-service watch-history and queue manager (source: https://github.com/Lasikiewicz/plembfin). It calculates an Up Next queue and wants the next movie or episode to appear in Emby's native Resume/Next Up rows before the user has played it. Emby exposes the read side (for example /Users/{UserId}/Items/Resume) and clients can remove items, but there is no clean write operation for explicit queue membership.

The current workaround is to report a synthetic client session through /Sessions/Playing, /Sessions/Playing/Progress and /Sessions/Playing/Stopped. This makes the item appear, but it also creates a real-looking playback session and can increment PlayCount. The integration then has to restore UserData and suppress the synthetic session. A small resume position alone is stored but filtered out of the native rail.

Please add an idempotent endpoint or explicit QueueOnly/ResumeMembership flag that can add, remove and list an item for a user while:
- leaving PlaybackPositionTicks/Played/PlayCount/watch history unchanged unless explicitly requested;
- creating no playback session, now-playing event or scrobble;
- supporting both movies in Resume and episodes in Next Up;
- allowing normal playback to replace the synthetic queue membership with a real checkpoint.

This would let Plembfin and similar trusted integrations manage queues safely across clients, removing the need for a fake 6% resume marker while preserving normal playback behavior.

Posted

Hi, this is not possible because the resume list is not a list that is stored anywhere. it is calculated on the fly based on current watch data.

  • Solution
Posted

Thanks for clarifying. I’ve achieved a workaround by reporting a synthetic client session through /Sessions/Playing, /Sessions/Playing/Progress, and /Sessions/Playing/Stopped. This makes the item appear in Resume/Next Up without actually starting playback.

I then restore the item’s original UserData and suppress the synthetic session so PlayCount and watch history remain unchanged. It works, although it would be much cleaner to have a supported queue-only API.

  • Thanks 1

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...