//------------------------------------------------------------------------------ // // 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.Requests; using LukeHagar.PlexAPI.SDK.Utils; using Newtonsoft.Json; using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.Linq; /// /// Logged in user details /// public class GetTokenDetailsUserPlexAccount { /// /// Unknown /// [JsonProperty("adsConsent", NullValueHandling = NullValueHandling.Include)] public bool? AdsConsent { get; set; } [JsonProperty("adsConsentReminderAt", NullValueHandling = NullValueHandling.Include)] public long? AdsConsentReminderAt { get; set; } [JsonProperty("adsConsentSetAt", NullValueHandling = NullValueHandling.Include)] public long? AdsConsentSetAt { get; set; } /// /// Unknown /// [JsonProperty("anonymous")] public bool? Anonymous { get; set; } = false; /// /// The account token /// [JsonProperty("authToken")] public string AuthToken { get; set; } = default!; /// /// If the two-factor authentication backup codes have been created /// [JsonProperty("backupCodesCreated")] public bool? BackupCodesCreated { get; set; } = false; /// /// If the account has been confirmed /// [JsonProperty("confirmed")] public bool? Confirmed { get; set; } = false; /// /// The account country /// [JsonProperty("country")] public string Country { get; set; } = default!; /// /// The account email address /// [JsonProperty("email")] public string Email { get; set; } = default!; /// /// If login with email only is enabled /// [JsonProperty("emailOnlyAuth")] public bool? EmailOnlyAuth { get; set; } = false; /// /// If experimental features are enabled /// [JsonProperty("experimentalFeatures")] public bool? ExperimentalFeatures { get; set; } = false; /// /// Your account full name /// [JsonProperty("friendlyName")] public string FriendlyName { get; set; } = default!; /// /// List of devices your allowed to use with this account /// [JsonProperty("entitlements")] public List Entitlements { get; set; } = default!; /// /// If the account is a Plex Home guest user /// [JsonProperty("guest")] public bool? Guest { get; set; } = false; /// /// If the account has a password /// [JsonProperty("hasPassword")] public bool? HasPassword { get; set; } = true; /// /// If the account is a Plex Home user /// [JsonProperty("home")] public bool? Home { get; set; } = false; /// /// If the account is the Plex Home admin /// [JsonProperty("homeAdmin")] public bool? HomeAdmin { get; set; } = false; /// /// The number of accounts in the Plex Home /// [JsonProperty("homeSize")] public int HomeSize { get; set; } = default!; /// /// The Plex account ID /// [JsonProperty("id")] public int Id { get; set; } = default!; /// /// Unix epoch datetime in seconds /// [JsonProperty("joinedAt")] public long JoinedAt { get; set; } = default!; /// /// The account locale /// [JsonProperty("locale", NullValueHandling = NullValueHandling.Include)] public string? Locale { get; set; } /// /// If you are subscribed to the Plex newsletter /// [JsonProperty("mailingListActive")] public bool? MailingListActive { get; set; } = false; /// /// Your current mailing list status (active or unsubscribed) /// [JsonProperty("mailingListStatus")] public MailingListStatus MailingListStatus { get; set; } = default!; /// /// The maximum number of accounts allowed in the Plex Home /// [JsonProperty("maxHomeSize")] public int MaxHomeSize { get; set; } = default!; /// /// [Might be removed] The hashed Plex Home PIN /// [Obsolete("This field will be removed in a future release, please migrate away from it as soon as possible")] [JsonProperty("pin")] public string? Pin { get; set; } [JsonProperty("profile")] public UserProfile Profile { get; set; } = default!; /// /// If the account has a Plex Home PIN enabled /// [JsonProperty("protected")] public bool? Protected { get; set; } = false; /// /// Unix epoch datetime in seconds /// [JsonProperty("rememberExpiresAt")] public long RememberExpiresAt { get; set; } = default!; /// /// If the account is a Plex Home managed user /// [JsonProperty("restricted")] public bool? Restricted { get; set; } = false; /// /// [Might be removed] List of account roles. Plexpass membership listed here /// [JsonProperty("roles")] public List? Roles { get; set; } /// /// Unknown /// [JsonProperty("scrobbleTypes")] public string ScrobbleTypes { get; set; } = default!; [JsonProperty("services")] public List Services { get; set; } = default!; /// /// If the account’s Plex Pass subscription is active /// [JsonProperty("subscription")] public Subscription Subscription { get; set; } = default!; /// /// Description of the Plex Pass subscription /// [JsonProperty("subscriptionDescription", NullValueHandling = NullValueHandling.Include)] public string? SubscriptionDescription { get; set; } [JsonProperty("subscriptions")] public List? Subscriptions { get; set; } /// /// URL of the account thumbnail /// [JsonProperty("thumb")] public string Thumb { get; set; } = default!; /// /// The title of the account (username or friendly name) /// [JsonProperty("title")] public string Title { get; set; } = default!; /// /// If two-factor authentication is enabled /// [JsonProperty("twoFactorEnabled")] public bool? TwoFactorEnabled { get; set; } = false; /// /// The account username /// [JsonProperty("username")] public string Username { get; set; } = default!; /// /// The account UUID /// [JsonProperty("uuid")] public string Uuid { get; set; } = default!; [JsonProperty("attributionPartner", NullValueHandling = NullValueHandling.Include)] public string? AttributionPartner { get; set; } } }