Files
ersatztv/ErsatzTV.Infrastructure/Emby/IEmbyApi.cs
T
Jason DoveandGitHub e506dd38a8 merge latest develop (#230)
* sync guids/provider ids (#227)

* sync guids from plex

* cleanup

* sync local guids

* sync jellyfin and emby guids

* add episodes to search index (#228)

* sync episode directors and writers

* display episode writers and directors

* remove missing episodes from search index

* show episodes in search results

* fix emby and jellyfin episode updates

* fix updating plex episodes

* don't delete channel logos on startup

* add episodes page; fix adding episodes to collection

* cleanup

* multi-part episode grouping fixes (#229)
2021-05-30 06:08:33 -05:00

83 lines
2.7 KiB
C#

using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using ErsatzTV.Infrastructure.Emby.Models;
using Refit;
namespace ErsatzTV.Infrastructure.Emby
{
[Headers("Accept: application/json")]
public interface IEmbyApi
{
[Get("/System/Info")]
public Task<EmbySystemInformationResponse> GetSystemInformation(
[Header("X-Emby-Token")]
string apiKey,
CancellationToken cancellationToken);
[Get("/Library/VirtualFolders")]
public Task<List<EmbyLibraryResponse>> GetLibraries(
[Header("X-Emby-Token")]
string apiKey);
[Get("/Items")]
public Task<EmbyLibraryItemsResponse> GetMovieLibraryItems(
[Header("X-Emby-Token")]
string apiKey,
[Query]
string parentId,
[Query]
string fields =
"Path,Genres,Tags,DateCreated,Etag,Overview,Taglines,Studios,People,ProductionYear,PremiereDate,MediaSources,OfficialRating,ProviderIds",
[Query]
string includeItemTypes = "Movie",
[Query]
bool recursive = true);
[Get("/Items")]
public Task<EmbyLibraryItemsResponse> GetShowLibraryItems(
[Header("X-Emby-Token")]
string apiKey,
[Query]
string parentId,
[Query]
string fields =
"Path,Genres,Tags,DateCreated,Etag,Overview,Taglines,Studios,People,ProductionYear,PremiereDate,MediaSources,OfficialRating,ProviderIds",
[Query]
string includeItemTypes = "Series",
[Query]
bool recursive = true);
[Get("/Items")]
public Task<EmbyLibraryItemsResponse> GetSeasonLibraryItems(
[Header("X-Emby-Token")]
string apiKey,
[Query]
string parentId,
[Query]
string fields = "Path,DateCreated,Etag,Taglines,ProviderIds",
[Query]
string includeItemTypes = "Season",
[Query]
string excludeLocationTypes = "Virtual",
[Query]
bool recursive = true);
[Get("/Items")]
public Task<EmbyLibraryItemsResponse> GetEpisodeLibraryItems(
[Header("X-Emby-Token")]
string apiKey,
[Query]
string parentId,
[Query]
string fields =
"Path,DateCreated,Etag,Overview,ProductionYear,PremiereDate,MediaSources,LocationType,ProviderIds,People",
[Query]
string includeItemTypes = "Episode",
[Query]
string excludeLocationTypes = "Virtual",
[Query]
bool recursive = true);
}
}