using System.Threading.Tasks; using ErsatzTV.Infrastructure.Plex.Models; using Refit; namespace ErsatzTV.Infrastructure.Plex { public interface IPlexServerApi { [Get("/library/sections")] [Headers("Accept: application/json")] public Task>> GetLibraries( [Query] [AliasAs("X-Plex-Token")] string token); [Get("/library/sections/{key}/all")] [Headers("Accept: application/json")] public Task>> GetLibrarySectionContents( string key, [Query] [AliasAs("X-Plex-Token")] string token); [Get("/library/metadata/{key}")] [Headers("Accept: text/xml")] public Task GetVideoMetadata( string key, [Query] [AliasAs("X-Plex-Token")] string token); [Get("/library/metadata/{key}")] [Headers("Accept: text/xml")] public Task GetDirectoryMetadata( string key, [Query] [AliasAs("X-Plex-Token")] string token); [Get("/library/metadata/{key}/children")] [Headers("Accept: text/xml")] public Task GetShowChildren( string key, [Query] [AliasAs("X-Plex-Token")] string token); [Get("/library/metadata/{key}/children")] [Headers("Accept: text/xml")] public Task GetSeasonChildren( string key, [Query] [AliasAs("X-Plex-Token")] string token); } }