45 lines
1.3 KiB
C#
45 lines
1.3 KiB
C#
using System.Collections.Generic;
|
|
using System.Threading.Tasks;
|
|
using ErsatzTV.Infrastructure.Plex.Models;
|
|
using Refit;
|
|
|
|
namespace ErsatzTV.Infrastructure.Plex
|
|
{
|
|
[Headers("Accept: application/json")]
|
|
public interface IPlexTvApi
|
|
{
|
|
[Post("/pins")]
|
|
Task<PlexPinResponse> StartPinFlow(
|
|
[Query] [AliasAs("X-Plex-Product")]
|
|
string product,
|
|
[Query] [AliasAs("X-Plex-Client-Identifier")]
|
|
string clientIdentifier,
|
|
[Query]
|
|
bool strong = true);
|
|
|
|
[Get("/pins/{id}")]
|
|
Task<PlexTokenResponse> GetPinStatus(
|
|
int id,
|
|
[Query]
|
|
string code,
|
|
[Query] [AliasAs("X-Plex-Client-Identifier")]
|
|
string clientIdentifier);
|
|
|
|
[Get("/user")]
|
|
Task<PlexUserResponse> GetUser(
|
|
[Query] [AliasAs("X-Plex-Product")]
|
|
string product,
|
|
[Query] [AliasAs("X-Plex-Client-Identifier")]
|
|
string clientIdentifier,
|
|
[Query] [AliasAs("X-Plex-Token")]
|
|
string token);
|
|
|
|
[Get("/resources")]
|
|
Task<List<PlexResource>> GetResources(
|
|
[Header("X-Plex-Client-Identifier")]
|
|
string clientIdentifier,
|
|
[Header("X-Plex-Token")]
|
|
string token);
|
|
}
|
|
}
|