namespace Jellyfin.Plugin.SRFPlay.Constants;
///
/// Centralized API endpoints and URL templates used throughout the plugin.
///
public static class ApiEndpoints
{
///
/// SRG SSR Integration Layer API base URL.
/// Used for fetching media compositions, video metadata, and stream URLs.
///
public const string IntegrationLayerBaseUrl = "https://il.srgssr.ch/integrationlayer/2.0";
///
/// Play V3 API URL template. Format: {0} = business unit (srf, rts, rsi, rtr, swi).
/// Used for fetching shows, topics, and latest content.
///
public const string PlayV3BaseUrlTemplate = "https://www.{0}.ch/play/v3/api/{0}/production/";
///
/// Akamai token authentication endpoint.
/// Used to get hdnts tokens for stream authentication.
///
public const string AkamaiTokenEndpoint = "https://tp.srgssr.ch/akahd/token";
///
/// SRF Play homepage URL.
///
public const string SrfPlayHomepage = "https://www.srf.ch/play";
///
/// Media composition endpoint template (relative to IntegrationLayerBaseUrl).
/// Format: {0} = URN.
///
public const string MediaCompositionByUrnPath = "/mediaComposition/byUrn/{0}.json";
///
/// Base proxy route for stream proxying (relative to server root).
///
public const string ProxyBasePath = "/Plugins/SRFPlay/Proxy";
///
/// HLS master manifest route template (relative to server root).
/// Format: {0} = item ID.
///
public const string ProxyMasterManifestPath = "/Plugins/SRFPlay/Proxy/{0}/master.m3u8";
///
/// Image proxy route template (relative to server root).
/// Format: {0} = base64-encoded original URL.
///
public const string ImageProxyPath = "/Plugins/SRFPlay/Image/{0}";
///
/// Play V3 shows endpoint (relative to PlayV3 base URL).
///
public const string PlayV3ShowsPath = "shows";
///
/// Play V3 topics endpoint (relative to PlayV3 base URL).
///
public const string PlayV3TopicsPath = "topics";
///
/// Play V3 livestreams endpoint (relative to PlayV3 base URL).
///
public const string PlayV3LivestreamsPath = "livestreams";
///
/// Play V3 scheduled livestreams endpoint (relative to PlayV3 base URL).
///
public const string PlayV3ScheduledLivestreamsPath = "scheduled-livestreams";
}