//------------------------------------------------------------------------------ // // This code was generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. // // Changes to this file may cause incorrect behavior and will be lost when // the code is regenerated. // //------------------------------------------------------------------------------ #nullable enable namespace LukeHagar.PlexAPI.SDK.Models.Requests { using LukeHagar.PlexAPI.SDK.Models.Components; using LukeHagar.PlexAPI.SDK.Models.Requests; using LukeHagar.PlexAPI.SDK.Utils; public class CreateSubscriptionRequest { /// /// Indicates the client accepts the indicated media types /// [SpeakeasyMetadata("header:style=simple,explode=false,name=accepts")] public Accepts? Accepts { get; set; } = LukeHagar.PlexAPI.SDK.Models.Components.Accepts.ApplicationXml; /// /// An opaque identifier unique to the client /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Client-Identifier")] public string? ClientIdentifier { get; set; } /// /// The name of the client product /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Product")] public string? Product { get; set; } /// /// The version of the client application /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Version")] public string? Version { get; set; } /// /// The platform of the client /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Platform")] public string? Platform { get; set; } /// /// The version of the platform /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Platform-Version")] public string? PlatformVersion { get; set; } /// /// A relatively friendly name for the client device /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Device")] public string? Device { get; set; } /// /// A potentially less friendly identifier for the device model /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Model")] public string? Model { get; set; } /// /// The device vendor /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Device-Vendor")] public string? DeviceVendor { get; set; } /// /// A friendly name for the client /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Device-Name")] public string? DeviceName { get; set; } /// /// The marketplace on which the client application is distributed /// [SpeakeasyMetadata("header:style=simple,explode=false,name=X-Plex-Marketplace")] public string? Marketplace { get; set; } /// /// The library section into which we'll grab the media. Not actually required when the subscription is to a playlist. /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=targetLibrarySectionID")] public long? TargetLibrarySectionID { get; set; } /// /// The section location into which to grab. /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=targetSectionLocationID")] public long? TargetSectionLocationID { get; set; } /// /// The type of the thing we're subscribing too (e.g. show, season). /// [SpeakeasyMetadata("queryParam:style=form,explode=true,name=type")] public long? Type { get; set; } /// /// Hints describing what we're looking for. Note: The hint `ratingKey` is required for downloading from a PMS remote. /// [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=hints")] public Hints? Hints { get; set; } /// /// Subscription preferences. /// [SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=prefs")] public CreateSubscriptionQueryParamPrefs? Prefs { get; set; } /// /// Subscription parameters.
/// /// /// - `mediaProviderID`: Required for downloads to indicate which MP the subscription will download into
/// - `source`: Required for downloads to indicate the source of the downloaded content.
/// ///
///
[SpeakeasyMetadata("queryParam:style=deepObject,explode=true,name=params")] public Params? Params { get; set; } } }