Infuse defined API Protocol for Integration?

Hi,

Currently, Infuse provides the Media Library with Plex, Jellyfin and Emby applications. Basically, they are all integrated with the help of their own APIs.

Instead of integrating every applications into infuse, Can infuse define their own unified API Protocol or Schema so that the other applications can integrate with infuse easily. Similar like how Stremio works with the addons.

It will be useful for developers to provide their own contents using the Infuse API.

PRESTO! :magic_wand:

I am not talking about the the x-callback url API which many of the apps already using it to play the stream.

What I am suggesting is that, a common API format which infuse can define for different types of tasks such as authentication, library listing, metadata and streaming.

Example:

Authentication
• POST /infuse/v1/auth/login
• POST /infuse/v1/auth/refresh
Libraries
• GET /infuse/v1/libraries
• GET /infuse/v1/libraries/{libraryId}/items
Metadata
• GET /infuse/v1/items/{itemId}
• GET /infuse/v1/items/{itemId}/poster
• GET /infuse/v1/items/{itemId}/backdrop
Streaming
• GET /infuse/v1/stream/{itemId}
• GET /infuse/v1/stream/{itemId}/hls/master.m3u8
Playback State
• POST /infuse/v1/playback/progress
• GET /infuse/v1/playback/resume/{itemId}

A player client, and you want to make it a Plex server? Are you kidding me?

Not really a plex server.

There are certain apps that works similar to plex and jellyfin media servers but they dont have physical files. Instead, they have a playlist of files collected from internet.

In my case, I am running a TorrServer which is kind of media server with torrents. I know torrenting is not recommended but in my country it’s not a big deal. It’s still provides a library and streams but they don’t have an actual files.

So what I am trying to achieve is that in someway I can integrate the TorrServer into infuse by writing a wrapper API.

I could mimic either plex or jellyfin APIs but that’s too much of work.

That’s why I wanted to check here if there are any APIs available here already or someone would have done this in a different way.